PageSourceSearch

https://app.sendx.io/_nuxt/DcOrGnEZ.js

js sendx.io collected 2026-09-24 17:11:50 UTC 952,251 bytes, 997 lines download raw bytes

1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./C0w3OV8d.js","./Id6SAYLI.js","./BzuA_EJp.js","./Op4w2AQ-.js","./BpFprnO2.js","./Bku5b180.js","./ERjOz6Bj.js","./BASX16ae.js","./B8BFI-Uw.js","./zRFedEKM.js","./BzVE5D8y.js"])))=>i.map(i=>d[i]);
2var cw=Object.defineProperty;var dw=(e,t,n)=>t in e?cw(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ht=(e,t,n)=>dw(e,typeof t!="symbol"?t+"":t,n);import{s as uy,a as uw,c as Gr}from"./Op4w2AQ-.js";import{m as Fs}from"./BpFprnO2.js";import{g as pw}from"./Bku5b180.js";/**
3* @vue/shared v3.4.31
4* (c) 2018-present Yuxi (Evan) You and Vue contributors
5* @license MIT
6**//*! #__NO_SIDE_EFFECTS__ */function hw(e,t){const n=new Set(e.split(","));return s=>n.has(s)}const py=()=>{},fw=Object.assign,gw=Object.prototype.hasOwnProperty,Ya=(e,t)=>gw.call(e,t),Ps=Array.isArray,Ga=e=>hy(e)==="[object Map]",vp=e=>typeof e=="function",mw=e=>typeof e=="string",Ur=e=>typeof e=="symbol",Fr=e=>e!==null&&typeof e=="object",yw=Object.prototype.toString,hy=e=>yw.call(e),_w=e=>hy(e).slice(8,-1),Sp=e=>mw(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,mo=(e,t)=>!Object.is(e,t),bw=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})};/**
7* @vue/reactivity v3.4.31
8* (c) 2018-present Yuxi (Evan) You and Vue contributors
9* @license MIT
10**/let cn;class Ep{constructor(t=!1){this.detached=t,this._active=!0,this.effects=[],this.cleanups=[],this.parent=cn,!t&&cn&&(this.index=(cn.scopes||(cn.scopes=[])).push(this)-1)}get active(){return this._active}run(t){if(this._active){const n=cn;try{return cn=this,t()}finally{cn=n}}}on(){cn=this}off(){cn=this.parent}stop(t){if(this._active){let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.scopes)for(n=0,s=this.scopes.length;n<s;n++)this.scopes[n].stop(!0);if(!this.detached&&this.parent&&!t){const i=this.parent.scopes.pop();i&&i!==this&&(this.parent.scopes[this.index]=i,i.index=this.index)}this.parent=void 0,this._active=!1}}}function Gl(e){return new Ep(e)}function fy(e,t=cn){t&&t.active&&t.effects.push(e)}function Br(){return cn}function Xa(e){cn&&cn.cleanups.push(e)}let si;class to{constructor(t,n,s,i){this.fn=t,this.trigger=n,this.scheduler=s,this.active=!0,this.deps=[],this._dirtyLevel=4,this._trackId=0,this._runnings=0,this._shouldSchedule=!1,this._depsLength=0,fy(this,i)}get dirty(){if(this._dirtyLevel===2||this._dirtyLevel===3){this._dirtyLevel=1,Ws();for(let t=0;t<this._depsLength;t++){const n=this.deps[t];if(n.computed&&(vw(n.computed),this._dirtyLevel>=4))break}this._dirtyLevel===1&&(this._dirtyLevel=0),zs()}return this._dirtyLevel>=4}set dirty(t){this._dirtyLevel=t?4:0}run(){if(this._dirtyLevel=0,!this.active)return this.fn();let t=Ns,n=si;try{return Ns=!0,si=this,this._runnings++,Lf(this),this.fn()}finally{Df(this),this._runnings--,si=n,Ns=t}}stop(){this.active&&(Lf(this),Df(this),this.onStop&&this.onStop(),this.active=!1)}}function vw(e){return e.value}function Lf(e){e._trackId++,e._depsLength=0}function Df(e){if(e.deps.length>e._depsLength){for(let t=e._depsLength;t<e.deps.length;t++)gy(e.deps[t],e);e.deps.length=e._depsLength}}function gy(e,t){const n=e.get(t);n!==void 0&&t._trackId!==n&&(e.delete(t),e.size===0&&e.cleanup())}function Sw(e,t){e.effect instanceof to&&(e=e.effect.fn);const n=new to(e,py,()=>{n.dirty&&n.run()});t&&(fw(n,t),t.scope&&fy(n,t.scope)),(!t||!t.lazy)&&n.run();const s=n.run.bind(n);return s.effect=n,s}function Ew(e){e.effect.stop()}let Ns=!0,Dd=0;const my=[];function Ws(){my.push(Ns),Ns=!1}function zs(){const e=my.pop();Ns=e===void 0?!0:e}function wp(){Dd++}function Tp(){for(Dd--;!Dd&&Gd.length;)Gd.shift()()}function yy(e,t,n){if(t.get(e)!==e._trackId){t.set(e,e._trackId);const s=e.deps[e._depsLength];s!==t?(s&&gy(s,e),e.deps[e._depsLength++]=t):e._depsLength++}}const Gd=[];function _y(e,t,n){wp();for(const s of e.keys()){let i;s._dirtyLevel<t&&(i??(i=e.get(s)===s._trackId))&&(s._shouldSchedule||(s._shouldSchedule=s._dirtyLevel===0),s._dirtyLevel=t),s._shouldSchedule&&(i??(i=e.get(s)===s._trackId))&&(s.trigger(),(!s._runnings||s.allowRecurse)&&s._dirtyLevel!==2&&(s._shouldSchedule=!1,s.scheduler&&Gd.push(s.scheduler)))}Tp()}const by=(e,t)=>{const n=new Map;return n.cleanup=e,n.computed=t,n},Ja=new WeakMap,ii=Symbol(""),Ud=Symbol("");function nn(e,t,n){if(Ns&&si){let s=Ja.get(e);s||Ja.set(e,s=new Map);let i=s.get(n);i||s.set(n,i=by(()=>s.delete(n))),yy(si,i)}}function as(e,t,n,s,i,o){const a=Ja.get(e);if(!a)return;let c=[];if(t==="clear")c=[...a.values()];else if(n==="length"&&Ps(e)){const u=Number(s);a.forEach((h,m)=>{(m==="length"||!Ur(m)&&m>=u)&&c.push(h)})}else switch(n!==void 0&&c.push(a.get(n)),t){case"add":Ps(e)?Sp(n)&&c.push(a.get("length")):(c.push(a.get(ii)),Ga(e)&&c.push(a.get(Ud)));break;case"delete":Ps(e)||(c.push(a.get(ii)),Ga(e)&&c.push(a.get(Ud)));break;case"set":Ga(e)&&c.push(a.get(ii));break}wp();for(const u of c)u&&_y(u,4);Tp()}function ww(e,t){const n=Ja.get(e);return n&&n.get(t)}const Tw=hw("__proto__,__v_isRef,__isVue"),vy=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(Ur)),Gf=Cw();function Cw(){const e={};return["includes","indexOf","lastIndexOf"].forEach(t=>{e[t]=function(...n){const s=we(this);for(let o=0,a=this.length;o<a;o++)nn(s,"get",o+"");const i=s[t](...n);return i===-1||i===!1?s[t](...n.map(we)):i}}),["push","pop","shift","unshift","splice"].forEach(t=>{e[t]=function(...n){Ws(),wp();const s=we(this)[t].apply(this,n);return Tp(),zs(),s}}),e}function Aw(e){Ur(e)||(e=String(e));const t=we(this);return nn(t,"has",e),t.hasOwnProperty(e)}class Sy{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){const i=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!i;if(n==="__v_isReadonly")return i;if(n==="__v_isShallow")return o;if(n==="__v_raw")return s===(i?o?Ry:Ay:o?Cy:Ty).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const a=Ps(t);if(!i){if(a&&Ya(Gf,n))return Reflect.get(Gf,n,s);if(n==="hasOwnProperty")return Aw}const c=Reflect.get(t,n,s);return(Ur(n)?vy.has(n):Tw(n))||(i||nn(t,"get",n),o)?c:ht(c)?a&&Sp(n)?c:c.value:Fr(c)?i?Ap(c):_n(c):c}}class Ey extends Sy{constructor(t=!1){super(!1,t)}set(t,n,s,i){let o=t[n];if(!this._isShallow){const u=no(o);if(!vr(s)&&!no(s)&&(o=we(o),s=we(s)),!Ps(t)&&ht(o)&&!ht(s))return u?!1:(o.value=s,!0)}const a=Ps(t)&&Sp(n)?Number(n)<t.length:Ya(t,n),c=Reflect.set(t,n,s,i);return t===we(i)&&(a?mo(s,o)&&as(t,"set",n,s):as(t,"add",n,s)),c}deleteProperty(t,n){const s=Ya(t,n);t[n];const i=Reflect.deleteProperty(t,n);return i&&s&&as(t,"delete",n,void 0),i}has(t,n){const s=Reflect.has(t,n);return(!Ur(n)||!vy.has(n))&&nn(t,"has",n),s}ownKeys(t){return nn(t,"iterate",Ps(t)?"length":ii),Reflect.ownKeys(t)}}class wy extends Sy{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Rw=new Ey,xw=new wy,Iw=new Ey(!0),Ow=new wy(!0),Cp=e=>e,Ul=e=>Reflect.getPrototypeOf(e);function oa(e,t,n=!1,s=!1){e=e.__v_raw;const i=we(e),o=we(t);n||(mo(t,o)&&nn(i,"get",t),nn(i,"get",o));const{has:a}=Ul(i),c=s?Cp:n?xp:Sr;
10if(a.call(i,t))return c(e.get(t));if(a.call(i,o))return c(e.get(o));e!==i&&e.get(t)}function ra(e,t=!1){const n=this.__v_raw,s=we(n),i=we(e);return t||(mo(e,i)&&nn(s,"has",e),nn(s,"has",i)),e===i?n.has(e):n.has(e)||n.has(i)}function aa(e,t=!1){return e=e.__v_raw,!t&&nn(we(e),"iterate",ii),Reflect.get(e,"size",e)}function Uf(e){e=we(e);const t=we(this);return Ul(t).has.call(t,e)||(t.add(e),as(t,"add",e,e)),this}function Ff(e,t){t=we(t);const n=we(this),{has:s,get:i}=Ul(n);let o=s.call(n,e);o||(e=we(e),o=s.call(n,e));const a=i.call(n,e);return n.set(e,t),o?mo(t,a)&&as(n,"set",e,t):as(n,"add",e,t),this}function Bf(e){const t=we(this),{has:n,get:s}=Ul(t);let i=n.call(t,e);i||(e=we(e),i=n.call(t,e)),s&&s.call(t,e);const o=t.delete(e);return i&&as(t,"delete",e,void 0),o}function Hf(){const e=we(this),t=e.size!==0,n=e.clear();return t&&as(e,"clear",void 0,void 0),n}function la(e,t){return function(s,i){const o=this,a=o.__v_raw,c=we(a),u=t?Cp:e?xp:Sr;return!e&&nn(c,"iterate",ii),a.forEach((h,m)=>s.call(i,u(h),u(m),o))}}function ca(e,t,n){return function(...s){const i=this.__v_raw,o=we(i),a=Ga(o),c=e==="entries"||e===Symbol.iterator&&a,u=e==="keys"&&a,h=i[e](...s),m=n?Cp:t?xp:Sr;return!t&&nn(o,"iterate",u?Ud:ii),{next(){const{value:_,done:b}=h.next();return b?{value:_,done:b}:{value:c?[m(_[0]),m(_[1])]:m(_),done:b}},[Symbol.iterator](){return this}}}}function _s(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function kw(){const e={get(o){return oa(this,o)},get size(){return aa(this)},has:ra,add:Uf,set:Ff,delete:Bf,clear:Hf,forEach:la(!1,!1)},t={get(o){return oa(this,o,!1,!0)},get size(){return aa(this)},has:ra,add:Uf,set:Ff,delete:Bf,clear:Hf,forEach:la(!1,!0)},n={get(o){return oa(this,o,!0)},get size(){return aa(this,!0)},has(o){return ra.call(this,o,!0)},add:_s("add"),set:_s("set"),delete:_s("delete"),clear:_s("clear"),forEach:la(!0,!1)}
10,s={get(o){return oa(this,o,!0,!0)},get size(){return aa(this,!0)},has(o){return ra.call(this,o,!0)},add:_s("add"),set:_s("set"),delete:_s("delete"),clear:_s("clear"),forEach:la(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach(o=>{e[o]=ca(o,!1,!1),n[o]=ca(o,!0,!1),t[o]=ca(o,!1,!0),s[o]=ca(o,!0,!0)}),[e,n,t,s]}const[Mw,Pw,Nw,Lw]=kw();function Fl(e,t){const n=t?e?Lw:Nw:e?Pw:Mw;return(s,i,o)=>i==="__v_isReactive"?!e:i==="__v_isReadonly"?e:i==="__v_raw"?s:Reflect.get(Ya(n,i)&&i in s?n:s,i,o)}const Dw={get:Fl(!1,!1)},Gw={get:Fl(!1,!0)},Uw={get:Fl(!0,!1)},Fw={get:Fl(!0,!0)},Ty=new WeakMap,Cy=new WeakMap,Ay=new WeakMap,Ry=new WeakMap;function Bw(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function Hw(e){return e.__v_skip||!Object.isExtensible(e)?0:Bw(_w(e))}function _n(e){return no(e)?e:Bl(e,!1,Rw,Dw,Ty)}function Ui(e){return Bl(e,!1,Iw,Gw,Cy)}function Ap(e){return Bl(e,!0,xw,Uw,Ay)}function $w(e){return Bl(e,!0,Ow,Fw,Ry)}function Bl(e,t,n,s,i){if(!Fr(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=i.get(e);if(o)return o;const a=Hw(e);if(a===0)return e;const c=new Proxy(e,a===2?s:n);return i.set(e,c),c}function Ls(e){return no(e)?Ls(e.__v_raw):!!(e&&e.__v_isReactive)}function no(e){return!!(e&&e.__v_isReadonly)}function vr(e){return!!(e&&e.__v_isShallow)}function Rp(e){return e?!!e.__v_raw:!1}function we(e){const t=e&&e.__v_raw;return t?we(t):e}function Hl(e){return Object.isExtensible(e)&&bw(e,"__v_skip",!0),e}const Sr=e=>Fr(e)?_n(e):e,xp=e=>Fr(e)?Ap(e):e;class xy{constructor(t,n,s,i){this.getter=t,this._setter=n,this.dep=void 0,this.__v_isRef=!0,this.__v_isReadonly=!1,this.effect=new to(()=>t(this._value),()=>zi(this,this.effect._dirtyLevel===2?2:3)),this.effect.computed=this,this.effect.active=this._cacheable=!i,this.__v_isReadonly=s}get value(){const t=we(this);return(!t._cacheable||t.effect.dirty)&&mo(t._value,t._value=t.effect.run())&&zi(t,4),Ip(t),t.effect._dirtyLevel>=2&&zi(t,2),t._value}set value(t){this._setter(t)}get _dirty(){return this.effect.dirty}set _dirty(t){this.effect.dirty=t}}function Ww(e,t,n=!1){let s,i;const o=vp(e);return o?(s=e,i=py):(s=e.get,i=e.set),new xy(s,i,o||!i,n)}function Ip(e){var t;Ns&&si&&(e=we(e),yy(si,(t=e.dep)!=null?t:e.dep=by(()=>e.dep=void 0,e instanceof xy?e:void 0)))}function zi(e,t=4,n,s){e=we(e);const i=e.dep;i&&_y(i,t)}function ht(e){return!!(e&&e.__v_isRef===!0)}function It(e){return Oy(e,!1)}function Iy(e){return Oy(e,!0)}function Oy(e,t){return ht(e)?e:new zw(e,t)}class zw{constructor(t,n){this.__v_isShallow=n,this.dep=void 0,this.__v_isRef=!0,this._rawValue=n?t:we(t),this._value=n?t:Sr(t)}get value(){return Ip(this),this._value}set value(t){const n=this.__v_isShallow||vr(t)||no(t);t=n?t:we(t),mo(t,this._rawValue)&&(this._rawValue,this._rawValue=t,this._value=n?t:Sr(t),zi(this,4))}}function Vw(e){zi(e,4)}function yo(e){return ht(e)?e.value:e}function Is(e){return vp(e)?e():yo(e)}const qw={get:(e,t,n)=>yo(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const i=e[t];return ht(i)&&!ht(n)?(i.value=n,!0):Reflect.set(e,t,n,s)}};function Op(e){return Ls(e)?e:new Proxy(e,qw)}class jw{constructor(t){this.dep=void 0,this.__v_isRef=!0;const{get:n,set:s}=t(()=>Ip(this),()=>zi(this));this._get=n,this._set=s}get value(){return this._get()}set value(t){this._set(t)}}function ky(e){return new jw(e)}function My(e){const t=Ps(e)?new Array(e.length):{};for(const n in e)t[n]=Py(e,n);return t}class Kw{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0}get value(){const t=this._object[this._key];return t===void 0?this._defaultValue:t}set value(t){this._object[this._key]=t}get dep(){return ww(we(this._object),this._key)}}class Yw{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0}get value(){return this._getter()}}function kp(e,t,n){return ht(e)?e:vp(e)?new Yw(e):Fr(e)&&arguments.length>1?Py(e,t,n):It(e)}function Py(e,t,n){const s=e[t];return ht(s)?s:new Kw(e,t,n)}const Xw={GET:"get",HAS:"has",ITERATE:"iterate"},Jw={SET:"set",ADD:"add",DELETE:"delete",CLEAR:"clear"};/**
11* @vue/shared v3.4.31
12* (c) 2018-present Yuxi (Evan) You and Vue contributors
13* @license MIT
14**//*! #__NO_SIDE_EFFECTS__ */function Ny(e,t){const n=new Set(e.split(","));return s=>n.has(s)}const Je={},Vi=[],Tn=()=>{},Qw=()=>!1,$l=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Ly=e=>e.startsWith("onUpdate:"),bt=Object.assign,Mp=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Zw=Object.prototype.hasOwnProperty,Ve=(e,t)=>Zw.call(e,t),Oe=Array.isArray,Dy=e=>Wl(e)==="[object Map]",Gy=e=>Wl(e)==="[object Set]",eT=e=>Wl(e)==="[object RegExp]",Re=e=>typeof e=="function",vt=e=>typeof e=="string",Uy=e=>typeof e=="symbol",gt=e=>e!==null&&typeof e=="object",Pp=e=>(gt(e)||Re(e))&&Re(e.then)&&Re(e.catch),Fy=Object.prototype.toString,Wl=e=>Fy.call(e),By=e=>Wl(e)==="[object Object]",qi=Ny(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),zl=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},tT=/-(\w)/g,Rn=zl(e=>e.replace(tT,(t,n)=>n?n.toUpperCase():"")),nT=/\B([A-Z])/g,Hr=zl(e=>e.replace(nT,"-$1").toLowerCase()),Vl=zl(e=>e.charAt(0).toUpperCase()+e.slice(1)),er=zl(e=>e?`on${Vl(e)}`:""),Er=(e,t)=>!Object.is(e,t),tr=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},sT=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},iT=e=>{const t=parseFloat(e);return isNaN(t)?e:t},oT=e=>{const t=vt(e)?Number(e):NaN;return isNaN(t)?e:t};let $f;const Hy=()=>$f||($f=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}),rT="Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt,console,Error",aT=Ny(rT);function $r(e){if(Oe(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],i=vt(s)?uT(s):$r(s);if(i)for(const o in i)t[o]=i[o]}return t}else if(vt(e)||gt(e))return e}const lT=/;(?![^(]*\))/g,cT=/:([^]+)/,dT=/\/\*[^]*?\*\//g;function uT(e){const t={};return e.replace(dT,"").split(lT).forEach(n=>{if(n){const s=n.split(cT);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function Wr(e){let t="";if(vt(e))t=e;else if(Oe(e))for(let n=0;n<e.length;n++){const s=Wr(e[n]);s&&(t+=s+" ")}else if(gt(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}function pT(e){if(!e)return null;let{class:t,style:n}=e;return t&&!vt(t)&&(e.class=Wr(t)),n&&(e.style=$r(n)),e}const $y=e=>!!(e&&e.__v_isRef===!0),Wy=e=>vt(e)?e:e==null?"":Oe(e)||gt(e)&&(e.toString===Fy||!Re(e.toString))?$y(e)?Wy(e.value):JSON.stringify(e,zy,2):String(e),zy=(e,t)=>$y(t)?zy(e,t.value):Dy(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,i],o)=>(n[qc(s,o)+" =>"]=i,n),{})}:Gy(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>qc(n))}:Uy(t)?qc(t):gt(t)&&!Oe(t)&&!By(t)?String(t):t,qc=(e,t="")=>{var n;return Uy(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
15* @vue/runtime-core v3.4.31
16* (c) 2018-present Yuxi (Evan) You and Vue contributors
17* @license MIT
18**/function hT(e,t){}const fT={SETUP_FUNCTION:0,0:"SETUP_FUNCTION",RENDER_FUNCTION:1,1:"RENDER_FUNCTION",WATCH_GETTER:2,2:"WATCH_GETTER",WATCH_CALLBACK:3,3:"WATCH_CALLBACK",WATCH_CLEANUP:4,4:"WATCH_CLEANUP",NATIVE_EVENT_HANDLER:5,5:"NATIVE_EVENT_HANDLER",COMPONENT_EVENT_HANDLER:6,6:"COMPONENT_EVENT_HANDLER",VNODE_HOOK:7,7:"VNODE_HOOK",DIRECTIVE_HOOK:8,8:"DIRECTIVE_HOOK",TRANSITION_HOOK:9,9:"TRANSITION_HOOK",APP_ERROR_HANDLER:10,10:"APP_ERROR_HANDLER",APP_WARN_HANDLER:11,11:"APP_WARN_HANDLER",FUNCTION_REF:12,12:"FUNCTION_REF",ASYNC_COMPONENT_LOADER:13,13:"ASYNC_COMPONENT_LOADER",SCHEDULER:14,14:"SCHEDULER"},gT={sp:"serverPrefetch hook",bc:"beforeCreate hook",c:"created hook",bm:"beforeMount hook",m:"mounted hook",bu:"beforeUpdate hook",u:"updated",bum:"beforeUnmount hook",um:"unmounted hook",a:"activated hook",da:"deactivated hook",ec:"errorCaptured hook",rtc:"renderTracked hook",rtg:"renderTriggered hook",0:"setup function",1:"render function",2:"watcher getter",3:"watcher callback",4:"watcher cleanup function",5:"native event handler",6:"component event handler",7:"vnode hook",8:"directive hook",9:"transition hook",10:"app errorHandler",11:"app warnHandler",12:"ref function",13:"async component loader",14:"scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."};function ls(e,t,n,s){try{return s?e(...s):e()}catch(i){fi(i,t,n)}}function hn(e,t,n,s){if(Re(e)){const i=ls(e,t,n,s);return i&&Pp(i)&&i.catch(o=>{fi(o,t,n)}),i}if(Oe(e)){const i=[];for(let o=0;o<e.length;o++)i.push(hn(e[o],t,n,s));return i}}function fi(e,t,n,s=!0){const i=t?t.vnode:null;if(t){let o=t.parent;const a=t.proxy,c=`https://vuejs.org/error-reference/#runtime-${n}`;for(;o;){const h=o.ec;if(h){for(let m=0;m<h.length;m++)if(h[m](e,a,c)===!1)return}o=o.parent}const u=t.appContext.config.errorHandler;if(u){Ws(),ls(u,null,10,[e,a,c]),zs();return}}mT(e,n,i,s)}function mT(e,t,n,s=!0){console.error(e)}let wr=!1,Fd=!1;const Gt=[];let Hn=0;const ji=[];let Cs=null,ti=0;const Vy=Promise.resolve();let Np=null;function cs(e){const t=Np||Vy;return e?t.then(this?e.bind(this):e):t}function yT(e){let t=Hn+1,n=Gt.length;for(;t<n;){const s=t+n>>>1,i=Gt[s],o=Tr(i);o<e||o===e&&i.pre?t=s+1:n=s}return t}function ql(e){(!Gt.length||!Gt.includes(e,wr&&e.allowRecurse?Hn+1:Hn))&&(e.id==null?Gt.push(e):Gt.splice(yT(e.id),0,e),qy())}function qy(){!wr&&!Fd&&(Fd=!0,Np=Vy.then(jy))}function _T(e){const t=Gt.indexOf(e);t>Hn&&Gt.splice(t,1)}function Qa(e){Oe(e)?ji.push(...e):(!Cs||!Cs.includes(e,e.allowRecurse?ti+1:ti))&&ji.push(e),qy()}function Wf(e,t,n=wr?Hn+1:0){for(;n<Gt.length;n++){const s=Gt[n];if(s&&s.pre){if(e&&s.id!==e.uid)continue;Gt.splice(n,1),n--,s()}}}function Za(e){if(ji.length){const t=[...new Set(ji)].sort((n,s)=>Tr(n)-Tr(s));if(ji.length=0,Cs){Cs.push(...t);return}for(Cs=t,ti=0;ti<Cs.length;ti++){const n=Cs[ti];n.active!==!1&&n()}Cs=null,ti=0}}const Tr=e=>e.id==null?1/0:e.id,bT=(e,t)=>{const n=Tr(e)-Tr(t);if(n===0){if(e.pre&&!t.pre)return-1;if(t.pre&&!e.pre)return 1}return n};function jy(e){Fd=!1,wr=!0,Gt.sort(bT);try{for(Hn=0;Hn<Gt.length;Hn++){const t=Gt[Hn];t&&t.active!==!1&&ls(t,null,14)}}finally{Hn=0,Gt.length=0,Za(),wr=!1,Np=null,(Gt.length||ji.length)&&jy()}}let Mi,da=[];function Ky(e,t){var n,s;Mi=e,Mi?(Mi.enabled=!0,da.forEach(({event:i,args:o})=>Mi.emit(i,...o)),da=[]):typeof window<"u"&&window.HTMLElement&&!((s=(n=window.navigator)==null?void 0:n.userAgent)!=null&&s.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push(o=>{Ky(o,t)}),setTimeout(()=>{Mi||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,da=[])},3e3)):da=[]}function vT(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||Je;let i=n;const o=t.startsWith("update:"),a=o&&t.slice(7);if(a&&a in s){const m=`${a==="modelValue"?"model":a}Modifiers`,{number:_,trim:b}=s[m]||Je;b&&(i=n.map(v=>vt(v)?v.trim():v)),_&&(i=n.map(iT))}let c,u=s[c=er(t)]||s[c=er(Rn(t))];!u&&o&&(u=s[c=er(Hr(t))]),u&&hn(u,e,6,i);const h=s[c+"Once"];if(h){if(!e.emitted)e.emitted={};else if(e.emitted[c])return;e.emitted[c]=!0,hn(h,e,6,i)}}function Yy(e,t,n=!1){const s=t.emitsCache,i=s.get(e);if(i!==void 0)return i;const o=e.emits;let a={},c=!1;if(!Re(e)){const u=h=>{const m=Yy(h,t,!0);m&&(c=!0,bt(a,m))};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}return!o&&!c?(gt(e)&&s.set(e,null),null):(Oe(o)?o.forEach(u=>a[u]=null):bt(a,o),gt(e)&&s.set(e,a),a)}function jl(e,t){return!e||!$l(t)?!1:(t=t.slice(2).replace(/Once$/,""),Ve(e,t[0].toLowerCase()+t.slice(1))||Ve(e,Hr(t))||Ve(e,t))}let yt=null,Kl=null;function Cr(e){const t=yt;return yt=e,Kl=e&&e.type.__scopeId||null,t}function ST(e){Kl=e}function ET(){Kl=null}const wT=e=>Lp;function Lp(e,t=yt,n){if(!t||e._n)return e;const s=(...i)=>{s._d&&Kd(-1);const o=Cr(t);let a;try{a=e(...i)}finally{Cr(o),s._d&&Kd(1)}return a};return s._n=!0,s._c=!0,s._d=!0,s}function Ua(e){const{type:t,vnode:n,proxy:s,withProxy:i,propsOptions:[o],slots:a,attrs:c,emit:u,render:h,renderCache:m,props:_,data:b,setupState:v,ctx:w,inheritAttrs:A}=e,B=Cr(e);let H,I;try{if(n.shapeFlag&4){const S=i||s,C=S;
vendor: 18,146 bytes, line 18
18H=un(h.call(C,S,m,_,v,b,w)),I=c}else{const S=t;H=un(S.length>1?S(_,{attrs:c,slots:a,emit:u}):S(_,null)),I=t.props?c:CT(c)}}catch(S){ir.length=0,fi(S,e,1),H=xe(xt)}let T=H;if(I&&A!==!1){const S=Object.keys(I),{shapeFlag:C}=T;S.length&&C&7&&(o&&S.some(Ly)&&(I=AT(I,o)),T=Nn(T,I,!1,!0))}return n.dirs&&(T=Nn(T,null,!1,!0),T.dirs=T.dirs?T.dirs.concat(n.dirs):n.dirs),n.transition&&(T.transition=n.transition),H=T,Cr(B),H}function TT(e,t=!0){let n;for(let s=0;s<e.length;s++){const i=e[s];if(Vn(i)){if(i.type!==xt||i.children==="v-if"){if(n)return;n=i}}else return}return n}const CT=e=>{let t;for(const n in e)(n==="class"||n==="style"||$l(n))&&((t||(t={}))[n]=e[n]);return t},AT=(e,t)=>{const n={};for(const s in e)(!Ly(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function RT(e,t,n){const{props:s,children:i,component:o}=e,{props:a,children:c,patchFlag:u}=t,h=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&u>=0){if(u&1024)return!0;if(u&16)return s?zf(s,a,h):!!a;if(u&8){const m=t.dynamicProps;for(let _=0;_<m.length;_++){const b=m[_];if(a[b]!==s[b]&&!jl(h,b))return!0}}}else return(i||c)&&(!c||!c.$stable)?!0:s===a?!1:s?a?zf(s,a,h):!0:!!a;return!1}function zf(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let i=0;i<s.length;i++){const o=s[i];if(t[o]!==e[o]&&!jl(n,o))return!0}return!1}function Dp({vnode:e,parent:t},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.el=e.el),s===e)(e=t.vnode).el=n,t=t.parent;else break}}const Gp="components",xT="directives";function IT(e,t){return Up(Gp,e,!0,t)||e}const Xy=Symbol.for("v-ndc");function OT(e){return vt(e)?Up(Gp,e,!1)||e:e||Xy}function kT(e){return Up(xT,e)}function Up(e,t,n=!0,s=!1){const i=yt||mt;if(i){const o=i.type;if(e===Gp){const c=Zd(o,!1);if(c&&(c===t||c===Rn(t)||c===Vl(Rn(t))))return o}const a=Vf(i[e]||o[e],t)||Vf(i.appContext[e],t);return!a&&s?o:a}}function Vf(e,t){return e&&(e[t]||e[Rn(t)]||e[Vl(Rn(t))])}const Bd=e=>e.__isSuspense;let Hd=0;const MT={name:"Suspense",__isSuspense:!0,process(e,t,n,s,i,o,a,c,u,h){if(e==null)NT(t,n,s,i,o,a,c,u,h);else{if(o&&o.deps>0&&!e.suspense.isInFallback){t.suspense=e.suspense,t.suspense.vnode=t,t.el=e.el;return}LT(e,t,n,s,i,a,c,u,h)}},hydrate:DT,normalize:GT},PT=MT;function Ar(e,t){const n=e.props&&e.props[t];Re(n)&&n()}function NT(e,t,n,s,i,o,a,c,u){const{p:h,o:{createElement:m}}=u,_=m("div"),b=e.suspense=Jy(e,i,s,t,_,n,o,a,c,u);h(null,b.pendingBranch=e.ssContent,_,null,s,b,o,a),b.deps>0?(Ar(e,"onPending"),Ar(e,"onFallback"),h(null,e.ssFallback,t,n,s,null,o,a),Ki(b,e.ssFallback)):b.resolve(!1,!0)}function LT(e,t,n,s,i,o,a,c,{p:u,um:h,o:{createElement:m}}){const _=t.suspense=e.suspense;_.vnode=t,t.el=e.el;const b=t.ssContent,v=t.ssFallback,{activeBranch:w,pendingBranch:A,isInFallback:B,isHydrating:H}=_;if(A)_.pendingBranch=b,Mn(b,A)?(u(A,b,_.hiddenContainer,null,i,_,o,a,c),_.deps<=0?_.resolve():B&&(H||(u(w,v,n,s,i,null,o,a,c),Ki(_,v)))):(_.pendingId=Hd++,H?(_.isHydrating=!1,_.activeBranch=A):h(A,i,_),_.deps=0,_.effects.length=0,_.hiddenContainer=m("div"),B?(u(null,b,_.hiddenContainer,null,i,_,o,a,c),_.deps<=0?_.resolve():(u(w,v,n,s,i,null,o,a,c),Ki(_,v))):w&&Mn(b,w)?(u(w,b,n,s,i,_,o,a,c),_.resolve(!0)):(u(null,b,_.hiddenContainer,null,i,_,o,a,c),_.deps<=0&&_.resolve()));else if(w&&Mn(b,w))u(w,b,n,s,i,_,o,a,c),Ki(_,b);else if(Ar(t,"onPending"),_.pendingBranch=b,b.shapeFlag&512?_.pendingId=b.component.suspenseId:_.pendingId=Hd++,u(null,b,_.hiddenContainer,null,i,_,o,a,c),_.deps<=0)_.resolve();else{const{timeout:I,pendingId:T}=_;I>0?setTimeout(()=>{_.pendingId===T&&_.fallback(v)},I):I===0&&_.fallback(v)}}function Jy(e,t,n,s,i,o,a,c,u,h,m=!1){const{p:_,m:b,um:v,n:w,o:{parentNode:A,remove:B}}=h;let H;const I=UT(e);I&&t&&t.pendingBranch&&(H=t.pendingId,t.deps++);const T=e.props?oT(e.props.timeout):void 0,S=o,C={vnode:e,parent:t,parentComponent:n,namespace:a,container:s,hiddenContainer:i,deps:0,pendingId:Hd++,timeout:typeof T=="number"?T:-1,activeBranch:null,pendingBranch:null,isInFallback:!m,isHydrating:m,isUnmounted:!1,effects:[],resolve(M=!1,U=!1){const{vnode:D,activeBranch:k,pendingBranch:F,pendingId:g,effects:W,parentComponent:Z,container:P}=C;let pe=!1;C.isHydrating?C.isHydrating=!1:M||(pe=k&&F.transition&&F.transition.mode==="out-in",pe&&(k.transition.afterLeave=()=>{g===C.pendingId&&(b(F,P,o===S?w(k):o,0),Qa(W))}),k&&(A(k.el)!==C.hiddenContainer&&(o=w(k)),v(k,Z,C,!0)),pe||b(F,P,o,0)),Ki(C,F),C.pendingBranch=null,C.isInFallback=!1;let se=C.parent,te=!1;for(;se;){if(se.pendingBranch){se.effects.push(...W),te=!0;break}se=se.parent}!te&&!pe&&Qa(W),C.effects=[],I&&t&&t.pendingBranch&&H===t.pendingId&&(t.deps--,t.deps===0&&!U&&t.resolve()),Ar(D,"onResolve")},fallback(M){if(!C.pendingBranch)return;const{vnode:U,activeBranch:D,parentComponent:k,container:F,namespace:g}=C;Ar(U,"onFallback");const W=w(D),Z=()=>{C.isInFallback&&(_(null,M,F,W,k,null,g,c,u),Ki(C,M))},P=M.transition&&M.transition.mode==="out-in";P&&(D.transition.afterLeave=Z),C.isInFallback=!0,v(D,k,null,!0),P||Z()},move(M,U,D){C.activeBranch&&b(C.activeBranch,M,U,D),C.container=M},next(){return C.activeBranch&&w(C.activeBranch)},registerDep(M,U,D){const k=!!C.pendingBranch;k&&C.deps++;const F=M.vnode.el;M.asyncDep.catch(g=>{fi(g,M,0)}).then(g=>{if(M.isUnmounted||C.isUnmounted||C.pendingId!==M.suspenseId)return;M.asyncResolved=!0;const{vnode:W}=M;Jd(M,g,!1),F&&(W.el=F);const Z=!F&&M.subTree.el;U(M,W,A(F||M.subTree.el),F?null:w(M.subTree),C,a,D),Z&&B(Z),Dp(M,W.el),k&&--C.deps===0&&C.resolve()})},unmount(M,U){C.isUnmounted=!0,C.activeBranch&&v(C.activeBranch,n,M,U),C.pendingBranch&&v(C.pendingBranch,n,M,U)}};return C}function DT(e,t,n,s,i,o,a,c,u){const h=t.suspense=Jy(t,s,n,e.parentNode,document.createElement("div"),null,i,o,a,c,!0),m=u(e,h.pendingBranch=t.ssContent,n,h,o,a);return h.deps===0&&h.resolve(!1,!0),m}function GT(e){const{shapeFlag:t,children:n}=e,s=t&32;e.ssContent=qf(s?n.default:n),e.ssFallback=s?qf(n.fallback):xe(xt)}function qf(e){let t;if(Re(e)){const n=ci&&e._c;n&&(e._d=!1,Zl()),e=e(),n&&(e._d=!0,t=en,M_())}return Oe(e)&&(e=TT(e)),e=un(e),t&&!e.dynamicChildren&&(e.dynamicChildren=t.filter(n=>n!==e)),e}function Qy(e,t){t&&t.pendingBranch?Oe(e)?t.effects.push(...e):t.effects.push(e):Qa(e)}function Ki(e,t){e.activeBranch=t;const{vnode:n,parentComponent:s}=e;let i=t.el;for(;!i&&t.component;)t=t.component.subTree,i=t.el;n.el=i,s&&s.subTree===n&&(s.vnode.el=i,Dp(s,i))}function UT(e){const t=e.props&&e.props.suspensible;return t!=null&&t!==!1}function Yl(e,t,n=mt,s=!1){if(n){const i=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...a)=>{Ws();const c=di(n),u=hn(t,n,e,a);return c(),zs(),u});return s?i.unshift(o):i.push(o),o}}const ds=e=>(t,n=mt)=>{(!jr||e==="sp")&&Yl(e,(...s)=>t(...s),n)},Fp=ds("bm"),gi=ds("m"),Zy=ds("bu"),Xl=ds("u"),zr=ds("bum"),mi=ds("um"),e_=ds("sp"),t_=ds("rtg"),n_=ds("rtc");function s_(e,t=mt){Yl("ec",e,t)}function FT(e,t){if(yt===null)return e;const n=Kr(yt),s=e.dirs||(e.dirs=[]);for(let i=0;i<t.length;i++){let[o,a,c,u=Je]=t[i];o&&(Re(o)&&(o={mounted:o,updated:o}),o.deep&&Os(a),s.push({dir:o,instance:n,value:a,oldValue:void 0,arg:c,modifiers:u}))}return e}function Fn(e,t,n,s){const i=e.dirs,o=t&&t.dirs;for(let a=0;a<i.length;a++){const c=i[a];o&&(c.oldValue=o[a].value);let u=c.dir[s];u&&(Ws(),hn(u,n,8,[e.el,c,e,t]),zs())}}function BT(e,t,n,s){let i;const o=n&&n[s];if(Oe(e)||vt(e)){i=new Array(e.length);for(let a=0,c=e.length;a<c;a++)i[a]=t(e[a],a,void 0,o&&o[a])}else if(typeof e=="number"){i=new Array(e);for(let a=0;a<e;a++)i[a]=t(a+1,a,void 0,o&&o[a])}else if(gt(e))if(e[Symbol.iterator])i=Array.from(e,(a,c)=>t(a,c,void 0,o&&o[c]));else{const a=Object.keys(e);i=new Array(a.length);for(let c=0,u=a.length;c<u;c++){const h=a[c];i[c]=t(e[h],h,c,o&&o[c])}}else i=[];return n&&(n[s]=i),i}function HT(e,t){for(let n=0;n<t.length;n++){const s=t[n];if(Oe(s))for(let i=0;i<s.length;i++)e[s[i].name]=s[i].fn;else s&&(e[s.name]=s.key?(...i)=>{const o=s.fn(...i);return o&&(o.key=s.key),o}:s.fn)}return e}/*! #__NO_SIDE_EFFECTS__ */function yi(e,t){return Re(e)?bt({name:e.name},t,{setup:e}):e}const oi=e=>!!e.type.__asyncLoader;/*! #__NO_SIDE_EFFECTS__ */function $T(e){Re(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:s,delay:i=200,timeout:o,suspensible:a=!0,onError:c}=e;let u=null,h,m=0;const _=()=>(m++,u=null,b()),b=()=>{let v;return u||(v=u=t().catch(w=>{if(w=w instanceof Error?w:new Error(String(w)),c)return new Promise((A,B)=>{c(w,()=>A(_()),()=>B(w),m+1)});throw w}).then(w=>v!==u&&u?u:(w&&(w.__esModule||w[Symbol.toStringTag]==="Module")&&(w=w.default),h=w,w)))};return yi({name:"AsyncComponentWrapper",__asyncLoader:b,get __asyncResolved(){return h},setup(){const v=mt;if(h)return()=>jc(h,v);const w=I=>{u=null,fi(I,v,13,!s)};if(a&&v.suspense||jr)return b().then(I=>()=>jc(I,v)).catch(I=>(w(I),()=>s?xe(s,{error:I}):null));const A=It(!1),B=It(),H=It(!!i);return i&&setTimeout(()=>{H.value=!1},i),o!=null&&setTimeout(()=>{if(!A.value&&!B.value){const I=new Error(`Async component timed out after ${o}ms.`);w(I),B.value=I}},o),b().then(()=>{A.value=!0,v.parent&&qr(v.parent.vnode)&&(v.parent.effect.dirty=!0,ql(v.parent.update))}).catch(I=>{w(I),B.value=I}),()=>{if(A.value&&h)return jc(h,v);if(B.value&&s)return xe(s,{error:B.value});if(n&&!H.value)return xe(n)}}})}function jc(e,t){const{ref:n,props:s,children:i,ce:o}=t.vnode,a=xe(e,s,i);return a.ref=n,a.ce=o,delete t.vnode.ce,a}function WT(e,t,n={},s,i){if(yt.isCE||yt.parent&&oi(yt.parent)&&yt.parent.isCE)return t!=="default"&&(n.name=t),xe("slot",n,s&&s());let o=e[t];o&&o._c&&(o._d=!1),Zl();const a=o&&i_(o(n)),c=jp(Rt,{key:n.key||a&&a.key||`_${t}`},a||(s?s():[]),a&&e._===1?64:-2);return!i&&c.scopeId&&(c.slotScopeIds=[c.scopeId+"-s"]),o&&o._c&&(o._d=!0),c}function i_(e){return e.some(t=>Vn(t)?!(t.type===xt||t.type===Rt&&!i_(t.children)):!0)?e:null}function zT(e,t){const n={};for(const s in e)n[t&&/[A-Z]/.test(s)?`on:${s}`:er(s)]=e[s];return n}const $d=e=>e?G_(e)?Kr(e):$d(e.parent):null,nr=bt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>$d(e.parent),$root:e=>$d(e.root),$emit:e=>e.emit,$options:e=>Bp(e),$forceUpdate:e=>e.f||(e.f=()=>{e.effect.dirty=!0,ql(e.update)}),$nextTick:e=>e.n||(e.n=cs.bind(e.proxy)),$watch:e=>SC.bind(e)}),Kc=(e,t)=>e!==Je&&!e.__isScriptSetup&&Ve(e,t),Wd={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:i,props:o,accessCache:a,type:c,appContext:u}=e;let h;if(t[0]!=="$"){const v=a[t];if(v!==void 0)switch(v){case 1:return s[t];case 2:return i[t];case 4:return n[t];case 3:return o[t]}else{if(Kc(s,t))return a[t]=1,s[t];if(i!==Je&&Ve(i,t))return a[t]=2,i[t];if((h=e.propsOptions[0])&&Ve(h,t))return a[t]=3,o[t];if(n!==Je&&Ve(n,t))return a[t]=4,n[t];zd&&(a[t]=0)}}const m=nr[t];let _,b;if(m)return t==="$attrs"&&nn(e.attrs,"get",""),m(e);if((_=c.__cssModules)&&(_=_[t]))return _;if(n!==Je&&Ve(n,t))return a[t]=4,n[t];if(b=u.config.globalProperties,Ve(b,t))return b[t]},set({_:e},t,n){const{data:s,setupState:i,ctx:o}=e;return Kc(i,t)?(i[t]=n,!0):s!==Je&&Ve(s,t)?(s[t]=n,!0):Ve(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:i,propsOptions:o}},a){let c;return!!n[a]||e!==Je&&Ve(e,a)||Kc(t,a)||(c=o[0])&&Ve(c,a)||Ve(s,a)||Ve(nr,a)||Ve(i.config.globalProperties,a)},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:Ve(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},VT=bt({},Wd,{get(e,t){if(t!==Symbol.unscopables)return Wd.get(e,t,e)},has(e,t){return t[0]!=="_"&&!aT(t)}});function qT(){return null}function jT(){return null}function KT(e){}function YT(e){}function XT(){return null}function JT(){}function QT(e,t){return null}function ZT(){return o_().slots}function eC(){return o_().attrs}function o_(){const e=In();return e.setupContext||(e.setupContext=B_(e))}function Rr(e){return Oe(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function tC(e,t){const n=Rr(e);for(const s in t){if(s.startsWith("__skip"))continue;let i=n[s];i?Oe(i)||Re(i)?i=n[s]={type:i,default:t[s]}:i.default=t[s]:i===null&&(i=n[s]={default:t[s]}),i&&t[`__skip_${s}`]&&(i.skipFactory=!0)}return n}function nC(e,t){return!e||!t?e||t:Oe(e)&&Oe(t)?e.concat(t):bt({},Rr(e),Rr(t))}function sC(e,t){const n={};for(const s in e)t.includes(s)||Object.defineProperty(n,s,{enumerable:!0,get:()=>e[s]});return n}function iC(e){const t=In();let n=e();return Xd(),Pp(n)&&(n=n.catch(s=>{throw di(t),s})),[n,()=>di(t)]}let zd=!0;function oC(e){const t=Bp(e),n=e.proxy,s=e.ctx;zd=!1,t.beforeCreate&&jf(t.beforeCreate,e,"bc");const{data:i,computed:o,methods:a,watch:c,provide:u,inject:h,created:m,beforeMount:_,mounted:b,beforeUpdate:v,updated:w,activated:A,deactivated:B,beforeDestroy:H,beforeUnmount:I,destroyed:T,unmounted:S,render:C,renderTracked:M,renderTriggered:U,errorCaptured:D,serverPrefetch:k,expose:F,inheritAttrs:g,components:W,directives:Z,filters:P}=t;if(h&&rC(h,s,null),a)for(const te in a){const de=a[te];Re(de)&&(s[te]=de.bind(n))}if(i){const te=i.call(n,n);gt(te)&&(e.data=_n(te))}if(zd=!0,o)for(const te in o){const de=o[te],Fe=Re(de)?de.bind(n,n):Re(de.get)?de.get.bind(n,n):Tn,et=!Re(de)&&Re(de.set)?de.set.bind(n):Tn,Ye=pt({get:Fe,set:et});Object.defineProperty(s,te,{enumerable:!0,configurable:!0,get:()=>Ye.value,set:$e=>Ye.value=$e})}if(c)for(const te in c)r_(c[te],s,n,te);if(u){const te=Re(u)?u.call(n):u;Reflect.ownKeys(te).forEach(de=>{l_(de,te[de])})}m&&jf(m,e,"c");function se(te,de){Oe(de)?de.forEach(Fe=>te(Fe.bind(n))):de&&te(de.bind(n))}if(se(Fp,_),se(gi,b),se(Zy,v),se(Xl,w),se(Wp,A),se(zp,B),se(s_,D),se(n_,M),se(t_,U),se(zr,I),se(mi,S),se(e_,k),Oe(F))if(F.length){const te=e.exposed||(e.exposed={});F.forEach(de=>{Object.defineProperty(te,de,{get:()=>n[de],set:Fe=>n[de]=Fe})})}else e.exposed||(e.exposed={});C&&e.render===Tn&&(e.render=C),g!=null&&(e.inheritAttrs=g),W&&(e.components=W),Z&&(e.directives=Z)}function rC(e,t,n=Tn){Oe(e)&&(e=Vd(e));for(const s in e){const i=e[s];let o;gt(i)?"default"in i?o=Ds(i.from||s,i.default,!0):o=Ds(i.from||s):o=Ds(i),ht(o)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>o.value,set:a=>o.value=a}):t[s]=o}}function jf(e,t,n){hn(Oe(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function r_(e,t,n,s){const i=s.includes(".")?A_(n,s):()=>n[s];if(vt(e)){const o=t[e];Re(o)&&Gs(i,o)}else if(Re(e))Gs(i,e.bind(n));else if(gt(e))if(Oe(e))e.forEach(o=>r_(o,t,n,s));else{const o=Re(e.handler)?e.handler.bind(n):t[e.handler];Re(o)&&Gs(i,o,e)}}function Bp(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:i,optionsCache:o,config:{optionMergeStrategies:a}}=e.appContext,c=o.get(t);let u;return c?u=c:!i.length&&!n&&!s?u=t:(u={},i.length&&i.forEach(h=>el(u,h,a,!0)),el(u,t,a)),gt(t)&&o.set(t,u),u}function el(e,t,n,s=!1){const{mixins:i,extends:o}=t;o&&el(e,o,n,!0),i&&i.forEach(a=>el(e,a,n,!0));for(const a in t)if(!(s&&a==="expose")){const c=aC[a]||n&&n[a];e[a]=c?c(e[a],t[a]):t[a]}return e}const aC={data:Kf,props:Yf,emits:Yf,methods:$o,computed:$o,beforeCreate:Wt,created:Wt,beforeMount:Wt,mounted:Wt,beforeUpdate:Wt,updated:Wt,beforeDestroy:Wt,beforeUnmount:Wt,destroyed:Wt,unmounted:Wt,activated:Wt,deactivated:Wt,errorCaptured:Wt,serverPrefetch:Wt,components:$o,directives:$o,watch:cC,provide:Kf,inject:lC};function Kf(e,t){return t?e?function(){return bt(Re(e)?e.call(this,this):e,Re(t)?t.call(this,this):t)}:t:e}function lC(e,t){return $o(Vd(e),Vd(t))}function Vd(e){if(Oe(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function Wt(e,t){return e?[...new Set([].concat(e,t))]:t}function $o(e,t){return e?bt(Object.create(null),e,t):t}function Yf(e,t){return e?Oe(e)&&Oe(t)?[...new Set([...e,...t])]:bt(Object.create(null),Rr(e),Rr(t??{})):t}function cC(e,t){if(!e)return t;if(!t)return e;const n=bt(Object.create(null),e);for(const s in t)n[s]=Wt(e[s],t[s]);return n}function a_(){return{app:null,config:{isNativeTag:Qw,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let dC=0;function uC(e,t){return function(s,i=null){Re(s)||(s=bt({},s)),i!=null&&!gt(i)&&(i=null);const o=a_(),a=new WeakSet;let c=!1;const u=o.app={_uid:dC++,_component:s,_props:i,_container:null,_context:o,_instance:null,version:Jp,get config(){return o.config},set config(h){},use(h,...m){return a.has(h)||(h&&Re(h.install)?(a.add(h),h.install(u,...m)):Re(h)&&(a.add(h),h(u,...m))),u},mixin(h){return o.mixins.includes(h)||o.mixins.push(h),u},component(h,m){return m?(o.components[h]=m,u):o.components[h]},directive(h,m){return m?(o.directives[h]=m,u):o.directives[h]},mount(h,m,_){if(!c){const b=xe(s,i);return b.appContext=o,_===!0?_="svg":_===!1&&(_=void 0),m&&t?t(b,h):e(b,h,_),c=!0,u._container=h,h.__vue_app__=u,Kr(b.component)}},unmount(){c&&(e(null,u._container),delete u._container.__vue_app__)},provide(h,m){return o.provides[h]=m,u},runWithContext(h){const m=Yi;Yi=u;try{return h()}finally{Yi=m}}};return u}}let Yi=null;function l_(e,t){if(mt){let n=mt.provides;const s=mt.parent&&mt.parent.provides;s===n&&(n=mt.provides=Object.create(s)),n[e]=t}}function Ds(e,t,n=!1){const s=mt||yt;if(s||Yi){const i=s?s.parent==null?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:Yi._context.provides;if(i&&e in i)return i[e];if(arguments.length>1)return n&&Re(t)?t.call(s&&s.proxy):t}}function Jl(){return!!(mt||yt||Yi)}const c_={},d_=()=>Object.create(c_),u_=e=>Object.getPrototypeOf(e)===c_;function pC(e,t,n,s=!1){const i={},o=d_();e.propsDefaults=Object.create(null),p_(e,t,i,o);for(const a in e.propsOptions[0])a in i||(i[a]=void 0);n?e.props=s?i:Ui(i):e.type.props?e.props=i:e.props=o,e.attrs=o}function hC(e,t,n,s){const{props:i,attrs:o,vnode:{patchFlag:a}}=e,c=we(i),[u]=e.propsOptions;let h=!1;if((s||a>0)&&!(a&16)){if(a&8){const m=e.vnode.dynamicProps;for(let _=0;_<m.length;_++){let b=m[_];if(jl(e.emitsOptions,b))continue;const v=t[b];if(u)if(Ve(o,b))v!==o[b]&&(o[b]=v,h=!0);else{const w=Rn(b);i[w]=qd(u,c,w,v,e,!1)}else v!==o[b]&&(o[b]=v,h=!0)}}}else{p_(e,t,i,o)&&(h=!0);let m;
18for(const _ in c)(!t||!Ve(t,_)&&((m=Hr(_))===_||!Ve(t,m)))&&(u?n&&(n[_]!==void 0||n[m]!==void 0)&&(i[_]=qd(u,c,_,void 0,e,!0)):delete i[_]);if(o!==c)for(const _ in o)(!t||!Ve(t,_))&&(delete o[_],h=!0)}h&&as(e.attrs,"set","")}function p_(e,t,n,s){const[i,o]=e.propsOptions;let a=!1,c;if(t)for(let u in t){if(qi(u))continue;const h=t[u];let m;i&&Ve(i,m=Rn(u))?!o||!o.includes(m)?n[m]=h:(c||(c={}))[m]=h:jl(e.emitsOptions,u)||(!(u in s)||h!==s[u])&&(s[u]=h,a=!0)}if(o){const u=we(n),h=c||Je;for(let m=0;m<o.length;m++){const _=o[m];n[_]=qd(i,u,_,h[_],e,!Ve(h,_))}}return a}function qd(e,t,n,s,i,o){const a=e[n];if(a!=null){const c=Ve(a,"default");if(c&&s===void 0){const u=a.default;if(a.type!==Function&&!a.skipFactory&&Re(u)){const{propsDefaults:h}=i;if(n in h)s=h[n];else{const m=di(i);s=h[n]=u.call(null,t),m()}}else s=u}a[0]&&(o&&!c?s=!1:a[1]&&(s===""||s===Hr(n))&&(s=!0))}return s}function h_(e,t,n=!1){const s=t.propsCache,i=s.get(e);if(i)return i;const o=e.props,a={},c=[];let u=!1;if(!Re(e)){const m=_=>{u=!0;const[b,v]=h_(_,t,!0);bt(a,b),v&&c.push(...v)};!n&&t.mixins.length&&t.mixins.forEach(m),e.extends&&m(e.extends),e.mixins&&e.mixins.forEach(m)}if(!o&&!u)return gt(e)&&s.set(e,Vi),Vi;if(Oe(o))for(let m=0;m<o.length;m++){const _=Rn(o[m]);Xf(_)&&(a[_]=Je)}else if(o)for(const m in o){const _=Rn(m);if(Xf(_)){const b=o[m],v=a[_]=Oe(b)||Re(b)?{type:b}:bt({},b);if(v){const w=Zf(Boolean,v.type),A=Zf(String,v.type);v[0]=w>-1,v[1]=A<0||w<A,(w>-1||Ve(v,"default"))&&c.push(_)}}}const h=[a,c];return gt(e)&&s.set(e,h),h}function Xf(e){return e[0]!=="$"&&!qi(e)}function Jf(e){return e===null?"null":typeof e=="function"?e.name||"":typeof e=="object"&&e.constructor&&e.constructor.name||""}function Qf(e,t){return Jf(e)===Jf(t)}function Zf(e,t){return Oe(t)?t.findIndex(n=>Qf(n,e)):Re(t)&&Qf(t,e)?0:-1}const f_=e=>e[0]==="_"||e==="$stable",Hp=e=>Oe(e)?e.map(un):[un(e)],fC=(e,t,n)=>{if(t._n)return t;const s=Lp((...i)=>Hp(t(...i)),n);return s._c=!1,s},g_=(e,t,n)=>{const s=e._ctx;for(const i in e){if(f_(i))continue;const o=e[i];if(Re(o))t[i]=fC(i,o,s);else if(o!=null){const a=Hp(o);t[i]=()=>a}}},m_=(e,t)=>{const n=Hp(t);e.slots.default=()=>n},gC=(e,t)=>{const n=e.slots=d_();if(e.vnode.shapeFlag&32){const s=t._;s?(bt(n,t),sT(n,"_",s,!0)):g_(t,n)}else t&&m_(e,t)},mC=(e,t,n)=>{const{vnode:s,slots:i}=e;let o=!0,a=Je;if(s.shapeFlag&32){const c=t._;c?n&&c===1?o=!1:(bt(i,t),!n&&c===1&&delete i._):(o=!t.$stable,g_(t,i)),a=t}else t&&(m_(e,t),a={default:1});if(o)for(const c in i)!f_(c)&&a[c]==null&&delete i[c]};function tl(e,t,n,s,i=!1){if(Oe(e)){e.forEach((b,v)=>tl(b,t&&(Oe(t)?t[v]:t),n,s,i));return}if(oi(s)&&!i)return;const o=s.shapeFlag&4?Kr(s.component):s.el,a=i?null:o,{i:c,r:u}=e,h=t&&t.r,m=c.refs===Je?c.refs={}:c.refs,_=c.setupState;if(h!=null&&h!==u&&(vt(h)?(m[h]=null,Ve(_,h)&&(_[h]=null)):ht(h)&&(h.value=null)),Re(u))ls(u,c,12,[a,m]);else{const b=vt(u),v=ht(u);if(b||v){const w=()=>{if(e.f){const A=b?Ve(_,u)?_[u]:m[u]:u.value;i?Oe(A)&&Mp(A,o):Oe(A)?A.includes(o)||A.push(o):b?(m[u]=[o],Ve(_,u)&&(_[u]=m[u])):(u.value=[o],e.k&&(m[e.k]=u.value))}else b?(m[u]=a,Ve(_,u)&&(_[u]=a)):v&&(u.value=a,e.k&&(m[e.k]=a))};a?(w.id=-1,Ct(w,n)):w()}}}let eg=!1;const Ci=()=>{eg||(console.error("Hydration completed but contains mismatches."),eg=!0)},yC=e=>e.namespaceURI.includes("svg")&&e.tagName!=="foreignObject",_C=e=>e.namespaceURI.includes("MathML"),ua=e=>{if(yC(e))return"svg";if(_C(e))return"mathml"},pa=e=>e.nodeType===8;function bC(e){const{mt:t,p:n,o:{patchProp:s,createText:i,nextSibling:o,parentNode:a,remove:c,insert:u,createComment:h}}=e,m=(T,S)=>{if(!S.hasChildNodes()){n(null,T,S),Za(),S._vnode=T;return}_(S.firstChild,T,null,null,null),Za(),S._vnode=T},_=(T,S,C,M,U,D=!1)=>{D=D||!!S.dynamicChildren;const k=pa(T)&&T.data==="[",F=()=>A(T,S,C,M,U,k),{type:g,ref:W,shapeFlag:Z,patchFlag:P}=S;let pe=T.nodeType;S.el=T,P===-2&&(D=!1,S.dynamicChildren=null);let se=null;switch(g){case li:pe!==3?S.children===""?(u(S.el=i(""),a(T),T),se=T):se=F():(T.data!==S.children&&(Ci(),T.data=S.children),se=o(T));break;case xt:I(T)?(se=o(T),H(S.el=T.content.firstChild,T,C)):pe!==8||k?se=F():se=o(T);break;case ri:if(k&&(T=o(T),pe=T.nodeType),pe===1||pe===3){se=T;const te=!S.children.length;for(let de=0;de<S.staticCount;de++)te&&(S.children+=se.nodeType===1?se.outerHTML:se.data),de===S.staticCount-1&&(S.anch
18or=se),se=o(se);return k?o(se):se}else F();break;case Rt:k?se=w(T,S,C,M,U,D):se=F();break;default:if(Z&1)(pe!==1||S.type.toLowerCase()!==T.tagName.toLowerCase())&&!I(T)?se=F():se=b(T,S,C,M,U,D);else if(Z&6){S.slotScopeIds=U;const te=a(T);if(k?se=B(T):pa(T)&&T.data==="teleport start"?se=B(T,T.data,"teleport end"):se=o(T),t(S,te,null,C,M,ua(te),D),oi(S)){let de;k?(de=xe(Rt),de.anchor=se?se.previousSibling:te.lastChild):de=T.nodeType===3?Yp(""):xe("div"),de.el=T,S.component.subTree=de}}else Z&64?pe!==8?se=F():se=S.type.hydrate(T,S,C,M,U,D,e,v):Z&128&&(se=S.type.hydrate(T,S,C,M,ua(a(T)),U,D,e,_))}return W!=null&&tl(W,null,M,S),se},b=(T,S,C,M,U,D)=>{D=D||!!S.dynamicChildren;const{type:k,props:F,patchFlag:g,shapeFlag:W,dirs:Z,transition:P}=S,pe=k==="input"||k==="option";if(pe||g!==-1){Z&&Fn(S,null,C,"created");let se=!1;if(I(T)){se=v_(M,P)&&C&&C.vnode.props&&C.vnode.props.appear;const de=T.content.firstChild;se&&P.beforeEnter(de),H(de,T,C),S.el=T=de}if(W&16&&!(F&&(F.innerHTML||F.textContent))){let de=v(T.firstChild,S,T,C,M,U,D);for(;de;){Ci();const Fe=de;de=de.nextSibling,c(Fe)}}else W&8&&T.textContent!==S.children&&(Ci(),T.textContent=S.children);if(F)if(pe||!D||g&48)for(const de in F)(pe&&(de.endsWith("value")||de==="indeterminate")||$l(de)&&!qi(de)||de[0]===".")&&s(T,de,null,F[de],void 0,void 0,C);else F.onClick&&s(T,"onClick",null,F.onClick,void 0,void 0,C);let te;(te=F&&F.onVnodeBeforeMount)&&Jt(te,C,S),Z&&Fn(S,null,C,"beforeMount"),((te=F&&F.onVnodeMounted)||Z||se)&&Qy(()=>{te&&Jt(te,C,S),se&&P.enter(T),Z&&Fn(S,null,C,"mounted")},M)}return T.nextSibling},v=(T,S,C,M,U,D,k)=>{k=k||!!S.dynamicChildren;const F=S.children,g=F.length;for(let W=0;W<g;W++){const Z=k?F[W]:F[W]=un(F[W]);T?T=_(T,Z,M,U,D,k):Z.type===li&&!Z.children?u(Z.el=i(""),C):(Ci(),n(null,Z,C,null,M,U,ua(C),D))}return T},w=(T,S,C,M,U,D)=>{const{slotScopeIds:k}=S;k&&(U=U?U.concat(k):k);const F=a(T),g=v(o(T),S,F,C,M,U,D);return g&&pa(g)&&g.data==="]"?o(S.anchor=g):(Ci(),u(S.anchor=h("]"),F,g),g)},A=(T,S,C,M,U,D)=>
vendor: 4,476 bytes, line 18
18{if(Ci(),S.el=null,D){const g=B(T);for(;;){const W=o(T);if(W&&W!==g)c(W);else break}}const k=o(T),F=a(T);return c(T),n(null,S,F,k,C,M,ua(F),U),k},B=(T,S="[",C="]")=>{let M=0;for(;T;)if(T=o(T),T&&pa(T)&&(T.data===S&&M++,T.data===C)){if(M===0)return o(T);M--}return T},H=(T,S,C)=>{const M=S.parentNode;M&&M.replaceChild(T,S);let U=C;for(;U;)U.vnode.el===S&&(U.vnode.el=U.subTree.el=T),U=U.parent},I=T=>T.nodeType===1&&T.tagName.toLowerCase()==="template";return[m,_]}const Ct=Qy;function y_(e){return b_(e)}function __(e){return b_(e,bC)}function b_(e,t){const n=Hy();n.__VUE__=!0;const{insert:s,remove:i,patchProp:o,createElement:a,createText:c,createComment:u,setText:h,setElementText:m,parentNode:_,nextSibling:b,setScopeId:v=Tn,insertStaticContent:w}=e,A=(R,N,V,X=null,Q=null,ie=null,ae=void 0,ne=null,re=!!N.dynamicChildren)=>{if(R===N)return;R&&!Mn(R,N)&&(X=bn(R),$e(R,Q,ie,!0),R=null),N.patchFlag===-2&&(re=!1,N.dynamicChildren=null);const{type:j,ref:he,shapeFlag:be}=N;switch(j){case li:B(R,N,V,X);break;case xt:H(R,N,V,X);break;case ri:R==null&&I(N,V,X,ae);break;case Rt:W(R,N,V,X,Q,ie,ae,ne,re);break;default:be&1?C(R,N,V,X,Q,ie,ae,ne,re):be&6?Z(R,N,V,X,Q,ie,ae,ne,re):(be&64||be&128)&&j.process(R,N,V,X,Q,ie,ae,ne,re,rn)}he!=null&&Q&&tl(he,R&&R.ref,ie,N||R,!N)},B=(R,N,V,X)=>{if(R==null)s(N.el=c(N.children),V,X);else{const Q=N.el=R.el;N.children!==R.children&&h(Q,N.children)}},H=(R,N,V,X)=>{R==null?s(N.el=u(N.children||""),V,X):N.el=R.el},I=(R,N,V,X)=>{[R.el,R.anchor]=w(R.children,N,V,X,R.el,R.anchor)},T=({el:R,anchor:N},V,X)=>{let Q;for(;R&&R!==N;)Q=b(R),s(R,V,X),R=Q;s(N,V,X)},S=({el:R,anchor:N})=>{let V;for(;R&&R!==N;)V=b(R),i(R),R=V;i(N)},C=(R,N,V,X,Q,ie,ae,ne,re)=>{N.type==="svg"?ae="svg":N.type==="math"&&(ae="mathml"),R==null?M(N,V,X,Q,ie,ae,ne,re):k(R,N,Q,ie,ae,ne,re)},M=(R,N,V,X,Q,ie,ae,ne)=>{let re,j;const{props:he,shapeFlag:be,transition:ye,dirs:Ee}=R;if(re=R.el=a(R.type,ie,he&&he.is,he),be&8?m(re,R.children):be&16&&D(R.children,re,null,X,Q,Yc(R,ie),ae,ne),Ee&&Fn(R,null,X,"created"),U(re,R,R.scopeId,ae,X),he){for(const Me in he)Me!=="value"&&!qi(Me)&&o(re,Me,null,he[Me],ie,R.children,X,Q,Et);"value"in he&&o(re,"value",null,he.value,ie),(j=he.onVnodeBeforeMount)&&Jt(j,X,R)}Ee&&Fn(R,null,X,"beforeMount");const Pe=v_(Q,ye);Pe&&ye.beforeEnter(re),s(re,N,V),((j=he&&he.onVnodeMounted)||Pe||Ee)&&Ct(()=>{j&&Jt(j,X,R),Pe&&ye.enter(re),Ee&&Fn(R,null,X,"mounted")},Q)},U=(R,N,V,X,Q)=>{if(V&&v(R,V),X)for(let ie=0;ie<X.length;ie++)v(R,X[ie]);if(Q){let ie=Q.subTree;if(N===ie){const ae=Q.vnode;U(R,ae,ae.scopeId,ae.slotScopeIds,Q.parent)}}},D=(R,N,V,X,Q,ie,ae,ne,re=0)=>{for(let j=re;j<R.length;j++){const he=R[j]=ne?Rs(R[j]):un(R[j]);A(null,he,N,V,X,Q,ie,ae,ne)}},k=(R,N,V,X,Q,ie,ae)=>{const ne=N.el=R.el;let{patchFlag:re,dynamicChildren:j,dirs:he}=N;re|=R.patchFlag&16;const be=R.props||Je,ye=N.props||Je;let Ee;if(V&&qs(V,!1),(Ee=ye.onVnodeBeforeUpdate)&&Jt(Ee,V,N,R),he&&Fn(N,R,V,"beforeUpdate"),V&&qs(V,!0),j?F(R.dynamicChildren,j,ne,V,X,Yc(N,Q),ie):ae||de(R,N,ne,null,V,X,Yc(N,Q),ie,!1),re>0){if(re&16)g(ne,N,be,ye,V,X,Q);else if(re&2&&be.class!==ye.class&&o(ne,"class",null,ye.class,Q),re&4&&o(ne,"style",be.style,ye.style,Q),re&8){const Pe=N.dynamicProps;for(let Me=0;Me<Pe.length;Me++){const ke=Pe[Me],ze=be[ke],Ft=ye[ke];(Ft!==ze||ke==="value")&&o(ne,ke,ze,Ft,Q,R.children,V,X,Et)}}re&1&&R.children!==N.children&&m(ne,N.children)}else!ae&&j==null&&g(ne,N,be,ye,V,X,Q);((Ee=ye.onVnodeUpdated)||he)&&Ct(()=>{Ee&&Jt(Ee,V,N,R),he&&Fn(N,R,V,"updated")},X)},F=(R,N,V,X,Q,ie,ae)=>{for(let ne=0;ne<N.length;ne++){const re=R[ne],j=N[ne],he=re.el&&(re.type===Rt||!Mn(re,j)||re.shapeFlag&70)?_(re.el):V;A(re,j,he,null,X,Q,ie,ae,!0)}},g=(R,N,V,X,Q,ie,ae)=>{if(V!==X){if(V!==Je)for(const ne in V)!qi(ne)&&!(ne in X)&&o(R,ne,V[ne],null,ae,N.children,Q,ie,Et);for(const ne in X){if(qi(ne))continue;const re=X[ne],j=V[ne];re!==j&&ne!=="value"&&o(R,ne,j,re,ae,N.children,Q,ie,Et)}"value"in X&&o(R,"value",V.value,X.value,ae)}},W=(R,N,V,X,Q,ie,ae,ne,re)=>{const j=N.el=R?R.el:c(""),he=N.anchor=R?R.anchor:c("");let{patchFlag:be,dynamicChildren:ye,slotScopeIds:Ee}=N;Ee&&(ne=ne?ne.concat(Ee):Ee),R==null?(s(j,V,X),s(he,V,X),D(N.children||[],V,he,Q,ie,ae,ne,re)):be>0&&be&64&&ye&&R.dynamicChildren?(F(R.dynamicChildren,ye,V,Q,ie,ae,ne),(N.key!=null||Q&&N===Q.subTree)&&$p(R,N,!0)):de(R,N,V,he,Q,ie,ae,ne,re)},Z=(R,N,V,X,Q,ie,ae,ne,re)=>{N.slotScopeIds=ne,R==null?N.shapeFlag&512?Q.ctx.activate(N,V,X,ae,re):P(N,V,X,Q,ie,ae,re):pe(R,N,re)},P=(R,N,V,X,Q,ie,ae)=>
18{const ne=R.component=D_(R,X,Q);if(qr(R)&&(ne.ctx.renderer=rn),U_(ne),ne.asyncDep){if(Q&&Q.registerDep(ne,se,ae),!R.el){const re=ne.subTree=xe(xt);H(null,re,N,V)}}else se(ne,R,N,V,Q,ie,ae)},pe=(R,N,V)=>{const X=N.component=R.component;if(RT(R,N,V))if(X.asyncDep&&!X.asyncResolved){te(X,N,V);return}else X.next=N,_T(X.update),X.effect.dirty=!0,X.update();else N.el=R.el,X.vnode=N},se=(R,N,V,X,Q,ie,ae)=>{const ne=()=>{if(R.isMounted){let{next:he,bu:be,u:ye,parent:Ee,vnode:Pe}=R;{const jn=S_(R);if(jn){he&&(he.el=Pe.el,te(R,he,ae)),jn.asyncDep.then(()=>{R.isUnmounted||ne()});return}}let Me=he,ke;qs(R,!1),he?(he.el=Pe.el,te(R,he,ae)):he=Pe,be&&tr(be),(ke=he.props&&he.props.onVnodeBeforeUpdate)&&Jt(ke,Ee,he,Pe),qs(R,!0);const ze=Ua(R),Ft=R.subTree;R.subTree=ze,A(Ft,ze,_(Ft.el),bn(Ft),R,Q,ie),he.el=ze.el,Me===null&&Dp(R,ze.el),ye&&Ct(ye,Q),(ke=he.props&&he.props.onVnodeUpdated)&&Ct(()=>Jt(ke,Ee,he,Pe),Q)}else{let he;const{el:be,props:ye}=N,{bm:Ee,m:Pe,parent:Me}=R,ke=oi(N);if(qs(R,!1),Ee&&tr(Ee),!ke&&(he=ye&&ye.onVnodeBeforeMount)&&Jt(he,Me,N),qs(R,!0),be&&jt){const ze=()=>{R.subTree=Ua(R),jt(be,R.subTree,R,Q,null)};ke?N.type.__asyncLoader().then(()=>!R.isUnmounted&&ze()):ze()}else{const ze=R.subTree=Ua(R);A(null,ze,V,X,R,Q,ie),N.el=ze.el}if(Pe&&Ct(Pe,Q),!ke&&(he=ye&&ye.onVnodeMounted)){const ze=N;Ct(()=>Jt(he,Me,ze),Q)}(N.shapeFlag&256||Me&&oi(Me.vnode)&&Me.vnode.shapeFlag&256)&&R.a&&Ct(R.a,Q),R.isMounted=!0,N=V=X=null}},re=R.effect=new to(ne,Tn,()=>ql(j),R.scope),j=R.update=()=>{re.dirty&&re.run()};j.id=R.uid,qs(R,!0),j()},te=(R,N,V)=>{N.component=R;const X=R.vnode.props;R.vnode=N,R.next=null,hC(R,N.props,X,V),mC(R,N.children,V),Ws(),Wf(R),zs()},de=(R,N,V,X,Q,ie,ae,ne,re=!1)=>{const j=R&&R.children,he=R?R.shapeFlag:0,be=N.children,{patchFlag:ye,shapeFlag:Ee}=N;if(ye>0){if(ye&128){et(j,be,V,X,Q,ie,ae,ne,re);return}else if(ye&256){Fe(j,be,V,X,Q,ie,ae,ne,re);return}}Ee&8?(he&16&&Et(j,Q,ie),be!==j&&m(V,be)):he&16?Ee&16?et(j,be,V,X,Q,ie,ae,ne,re):Et(j,Q,ie,!0):(he&8&&m(V,""),Ee&16&&D(be,V,X,Q,ie,ae,ne,re))},Fe=(R,N,V,X,Q,ie,ae,ne,re)=>{R=R||Vi,N=N||Vi;const j=R.length,he=N.length,be=Math.min(j,he);let ye;for(ye=0;ye<be;ye++){const Ee=N[ye]=re?Rs(N[ye]):un(N[ye]);A(R[ye],Ee,V,null,Q,ie,ae,ne,re)}j>he?Et(R,Q,ie,!0,!1,be):D(N,V,X,Q,ie,ae,ne,re,be)},et=(R,N,V,X,Q,ie,ae,ne,re)=>{let j=0;const he=N.length;let be=R.length-1,ye=he-1;for(;j<=be&&j<=ye;){const Ee=R[j],Pe=N[j]=re?Rs(N[j]):un(N[j]);if(Mn(Ee,Pe))A(Ee,Pe,V,null,Q,ie,ae,ne,re);else break;j++}for(;j<=be&&j<=ye;){const Ee=R[be],Pe=N[ye]=re?Rs(N[ye]):un(N[ye]);if(Mn(Ee,Pe))A(Ee,Pe,V,null,Q,ie,ae,ne,re);else break;be--,ye--}if(j>be){if(j<=ye){const Ee=ye+1,Pe=Ee<he?N[Ee].el:X;for(;j<=ye;)A(null,N[j]=re?Rs(N[j]):un(N[j]),V,Pe,Q,ie,ae,ne,re),j++}}else if(j>ye)for(;j<=be;)$e(R[j],Q,ie,!0),j++;else{const Ee=j,Pe=j,Me=new Map;for(j=Pe;j<=ye;j++){const Ot=N[j]=re?Rs(N[j]):un(N[j]);Ot.key!=null&&Me.set(Ot.key,j)}let ke,ze=0;const Ft=ye-Pe+1;let jn=!1,_o=0;const hs=new Array(Ft);for(j=0;j<Ft;j++)hs[j]=0;for(j=Ee;j<=be;j++){const Ot=R[j];if(ze>=Ft){$e(Ot,Q,ie,!0);continue}let an;if(Ot.key!=null)an=Me.get(Ot.key);else for(ke=Pe;ke<=ye;ke++)if(hs[ke-Pe]===0&&Mn(Ot,N[ke])){an=ke;break}an===void 0?$e(Ot,Q,ie,!0):(hs[an-Pe]=j+1,an>=_o?_o=an:jn=!0,A(Ot,N[an],V,null,Q,ie,ae,ne,re),ze++)}const _i=jn?vC(hs):Vi;for(ke=_i.length-1,j=Ft-1;j>=0;j--){const Ot=Pe+j,an=N[Ot],bo=Ot+1<he?N[Ot+1].el:X;hs[j]===0?A(null,an,V,bo,Q,ie,ae,ne,re):jn&&(ke<0||j!==_i[ke]?Ye(an,V,bo,2):ke--)}}},Ye=(R,N,V,X,Q=null)=>{const{el:ie,type:ae,transition:ne,children:re,shapeFlag:j}=R;if(j&6){Ye(R.component.subTree,N,V,X);return}if(j&128){R.suspense.move(N,V,X);return}if(j&64){ae.move(R,N,V,rn);return}if(ae===Rt){s(ie,N,V);for(let be=0;be<re.length;be++)Ye(re[be],N,V,X);s(R.anchor,N,V);return}if(ae===ri){T(R,N,V);return}if(X!==2&&j&1&&ne)if(X===0)ne.beforeEnter(ie),s(ie,N,V),Ct(()=>ne.enter(ie),Q);else{const{leave:be,delayLeave:ye,afterLeave:Ee}=ne,Pe=()=>s(ie,N,V),Me=()=>{be(ie,()=>{Pe(),Ee&&Ee()})};ye?ye(ie,Pe,Me):Me()}else s(ie,N,V)},$e=(R,N,V,X=!1,Q=!1)=>{const{type:ie,props:ae,ref:ne,children:re,dynamicChildren:j,shapeFlag:he,patchFlag:be,dirs:ye,memoIndex:Ee}=R;if(be===-2&&(Q=!1),ne!=null&&tl(ne,null,V,R,!0),Ee!=null&&(N.renderCache[Ee]=void 0),he&256){N.ctx.deactivate(R);return}const Pe=he&1&&ye,Me=!oi(R);let ke;if(Me&&(ke=ae&&ae.onVnodeBeforeUnmount)&&Jt(ke,N,R),he&6)Ut(R.component,V,X
18);else{if(he&128){R.suspense.unmount(V,X);return}Pe&&Fn(R,null,N,"beforeUnmount"),he&64?R.type.remove(R,N,V,rn,X):j&&(ie!==Rt||be>0&&be&64)?Et(j,N,V,!1,!0):(ie===Rt&&be&384||!Q&&he&16)&&Et(re,N,V),X&&St(R)}(Me&&(ke=ae&&ae.onVnodeUnmounted)||Pe)&&Ct(()=>{ke&&Jt(ke,N,R),Pe&&Fn(R,null,N,"unmounted")},V)},St=R=>{const{type:N,el:V,anchor:X,transition:Q}=R;if(N===Rt){Pt(V,X);return}if(N===ri){S(R);return}const ie=()=>{i(V),Q&&!Q.persisted&&Q.afterLeave&&Q.afterLeave()};if(R.shapeFlag&1&&Q&&!Q.persisted){const{leave:ae,delayLeave:ne}=Q,re=()=>ae(V,ie);ne?ne(R.el,ie,re):re()}else ie()},Pt=(R,N)=>{let V;for(;R!==N;)V=b(R),i(R),R=V;i(N)},Ut=(R,N,V)=>{const{bum:X,scope:Q,update:ie,subTree:ae,um:ne,m:re,a:j}=R;nl(re),nl(j),X&&tr(X),Q.stop(),ie&&(ie.active=!1,$e(ae,R,N,V)),ne&&Ct(ne,N),Ct(()=>{R.isUnmounted=!0},N),N&&N.pendingBranch&&!N.isUnmounted&&R.asyncDep&&!R.asyncResolved&&R.suspenseId===N.pendingId&&(N.deps--,N.deps===0&&N.resolve())},Et=(R,N,V,X=!1,Q=!1,ie=0)=>{for(let ae=ie;ae<R.length;ae++)$e(R[ae],N,V,X,Q)},bn=R=>R.shapeFlag&6?bn(R.component.subTree):R.shapeFlag&128?R.suspense.next():b(R.anchor||R.el);let wt=!1;const on=(R,N,V)=>{R==null?N._vnode&&$e(N._vnode,null,null,!0):A(N._vnode||null,R,N,null,null,null,V),wt||(wt=!0,Wf(),Za(),wt=!1),N._vnode=R},rn={p:A,um:$e,m:Ye,r:St,mt:P,mc:D,pc:de,pbc:F,n:bn,o:e};let ps,jt;return t&&([ps,jt]=t(rn)),{render:on,hydrate:ps,createApp:uC(on,ps)}}function Yc({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function qs({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function v_(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function $p(e,t,n=!1){const s=e.children,i=t.children;if(Oe(s)&&Oe(i))for(let o=0;o<s.length;o++){const a=s[o];let c=i[o];c.shapeFlag&1&&!c.dynamicChildren&&((c.patchFlag<=0||c.patchFlag===32)&&(c=i[o]=Rs(i[o]),c.el=a.el),!n&&c.patchFlag!==-2&&$p(a,c)),c.type===li&&(c.el=a.el)}}function vC(e){const t=e.slice(),n=[0];let s,i,o,a,c;const u=e.length;for(s=0;s<u;s++){const h=e[s];if(h!==0){if(i=n[n.length-1],e[i]<h){t[s]=i,n.push(s);continue}for(o=0,a=n.length-1;o<a;)c=o+a>>1,e[n[c]]<h?o=c+1:a=c;h<e[n[o]]&&(o>0&&(t[s]=n[o-1]),n[o]=s)}}for(o=n.length,a=n[o-1];o-- >0;)n[o]=a,a=t[a];return n}function S_(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:S_(t)}function nl(e){if(e)for(let t=0;t<e.length;t++)e[t].active=!1}const E_=Symbol.for("v-scx"),w_=()=>Ds(E_);function Xi(e,t){return Vr(e,null,t)}function T_(e,t){return Vr(e,null,{flush:"post"})}function C_(e,t){return Vr(e,null,{flush:"sync"})}const ha={};function Gs(e,t,n){return Vr(e,t,n)}function Vr(e,t,{immediate:n,deep:s,flush:i,once:o,onTrack:a,onTrigger:c}=Je){if(t&&o){const M=t;t=(...U)=>{M(...U),C()}}const u=mt,h=M=>s===!0?M:Os(M,s===!1?1:void 0);let m,_=!1,b=!1;if(ht(e)?(m=()=>e.value,_=vr(e)):Ls(e)?(m=()=>h(e),_=!0):Oe(e)?(b=!0,_=e.some(M=>Ls(M)||vr(M)),m=()=>e.map(M=>{if(ht(M))return M.value;if(Ls(M))return h(M);if(Re(M))return ls(M,u,2)})):Re(e)?t?m=()=>ls(e,u,2):m=()=>(v&&v(),hn(e,u,3,[w])):m=Tn,t&&s){const M=m;m=()=>Os(M())}let v,w=M=>{v=T.onStop=()=>{ls(M,u,4),v=T.onStop=void 0}},A;if(jr)if(w=Tn,t?n&&hn(t,u,3,[m(),b?[]:void 0,w]):m(),i==="sync"){const M=w_();A=M.__watcherHandles||(M.__watcherHandles=[])}else return Tn;let B=b?new Array(e.length).fill(ha):ha;const H=()=>{if(!(!T.active||!T.dirty))if(t){const M=T.run();(s||_||(b?M.some((U,D)=>Er(U,B[D])):Er(M,B)))&&(v&&v(),hn(t,u,3,[M,B===ha?void 0:b&&B[0]===ha?[]:B,w]),B=M)}else T.run()};H.allowRecurse=!!t;let I;i==="sync"?I=H:i==="post"?I=()=>Ct(H,u&&u.suspense):(H.pre=!0,u&&(H.id=u.uid),I=()=>ql(H));const T=new to(m,Tn,I),S=Br(),C=()=>{T.stop(),S&&Mp(S.effects,T)};return t?n?H():B=T.run():i==="post"?Ct(T.run.bind(T),u&&u.suspense):T.run(),A&&A.push(C),C}function SC(e,t,n){const s=this.proxy,i=vt(e)?e.includes(".")?A_(s,e):()=>s[e]:e.bind(s,s);let o;Re(t)?o=t:(o=t.handler,n=t);const a=di(this),c=Vr(i,o.bind(s),n);return a(),c}function A_(e,t){const n=t.split(".");return()=>{let s=e;for(let i=0;i<n.length&&s;i++)s=s[n[i]];return s}}function Os(e,t=1/0,n){if(t<=0||!gt(e)||e.__v_skip||(n=n||new Set,n.has(e)))return e;if(n.add(e),t--,ht(e))Os(e.value,t,n);else if(Oe(e))for(let s=0;s<e.length;s++)Os(e[s],t,n);else if(Gy(e)||Dy(e))e.forEach(s=>{Os(s,t,n)});else if(By(e)){for(const s in e)Os(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&Os(e[s],t,n)}return e}const qr=e=>e.type.__isKeepAlive,EC={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array
vendor: 4,844 bytes, line 18
18],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=In(),s=n.ctx;if(!s.renderer)return()=>{const I=t.default&&t.default();return I&&I.length===1?I[0]:I};const i=new Map,o=new Set;let a=null;const c=n.suspense,{renderer:{p:u,m:h,um:m,o:{createElement:_}}}=s,b=_("div");s.activate=(I,T,S,C,M)=>{const U=I.component;h(I,T,S,0,c),u(U.vnode,I,T,S,U,c,C,I.slotScopeIds,M),Ct(()=>{U.isDeactivated=!1,U.a&&tr(U.a);const D=I.props&&I.props.onVnodeMounted;D&&Jt(D,U.parent,I)},c)},s.deactivate=I=>{const T=I.component;nl(T.m),nl(T.a),h(I,b,null,1,c),Ct(()=>{T.da&&tr(T.da);const S=I.props&&I.props.onVnodeUnmounted;S&&Jt(S,T.parent,I),T.isDeactivated=!0},c)};function v(I){Xc(I),m(I,n,c,!0)}function w(I){i.forEach((T,S)=>{const C=Zd(T.type);C&&(!I||!I(C))&&A(S)})}function A(I){const T=i.get(I);!a||!Mn(T,a)?v(T):a&&Xc(a),i.delete(I),o.delete(I)}Gs(()=>[e.include,e.exclude],([I,T])=>{I&&w(S=>Wo(I,S)),T&&w(S=>!Wo(T,S))},{flush:"post",deep:!0});let B=null;const H=()=>{B!=null&&(Bd(n.subTree.type)?Ct(()=>{i.set(B,fa(n.subTree))},n.subTree.suspense):i.set(B,fa(n.subTree)))};return gi(H),Xl(H),zr(()=>{i.forEach(I=>{const{subTree:T,suspense:S}=n,C=fa(T);if(I.type===C.type&&I.key===C.key){Xc(C);const M=C.component.da;M&&Ct(M,S);return}v(I)})}),()=>{if(B=null,!t.default)return null;const I=t.default(),T=I[0];if(I.length>1)return a=null,I;if(!Vn(T)||!(T.shapeFlag&4)&&!(T.shapeFlag&128))return a=null,T;let S=fa(T);const C=S.type,M=Zd(oi(S)?S.type.__asyncResolved||{}:C),{include:U,exclude:D,max:k}=e;if(U&&(!M||!Wo(U,M))||D&&M&&Wo(D,M))return a=S,T;const F=S.key==null?C:S.key,g=i.get(F);return S.el&&(S=Nn(S),T.shapeFlag&128&&(T.ssContent=S)),B=F,g?(S.el=g.el,S.component=g.component,S.transition&&Bs(S,S.transition),S.shapeFlag|=512,o.delete(F),o.add(F)):(o.add(F),k&&o.size>parseInt(k,10)&&A(o.values().next().value)),S.shapeFlag|=256,a=S,Bd(T.type)?T:S}}},wC=EC;function Wo(e,t){return Oe(e)?e.some(n=>Wo(n,t)):vt(e)?e.split(",").includes(t):eT(e)?e.test(t):!1}function Wp(e,t){R_(e,"a",t)}function zp(e,t){R_(e,"da",t)}function R_(e,t,n=mt){const s=e.__wdc||(e.__wdc=()=>{let i=n;for(;i;){if(i.isDeactivated)return;i=i.parent}return e()});if(Yl(t,s,n),n){let i=n.parent;for(;i&&i.parent;)qr(i.parent.vnode)&&TC(s,t,n,i),i=i.parent}}function TC(e,t,n,s){const i=Yl(t,e,s,!0);mi(()=>{Mp(s[t],i)},n)}function Xc(e){e.shapeFlag&=-257,e.shapeFlag&=-513}function fa(e){return e.shapeFlag&128?e.ssContent:e}const As=Symbol("_leaveCb"),ga=Symbol("_enterCb");function Vp(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return gi(()=>{e.isMounted=!0}),zr(()=>{e.isUnmounting=!0}),e}const vn=[Function,Array],qp={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:vn,onEnter:vn,onAfterEnter:vn,onEnterCancelled:vn,onBeforeLeave:vn,onLeave:vn,onAfterLeave:vn,onLeaveCancelled:vn,onBeforeAppear:vn,onAppear:vn,onAfterAppear:vn,onAppearCancelled:vn},x_=e=>{const t=e.subTree;return t.component?x_(t.component):t},CC={name:"BaseTransition",props:qp,setup(e,{slots:t}){const n=In(),s=Vp();return()=>{const i=t.default&&Ql(t.default(),!0);if(!i||!i.length)return;let o=i[0];if(i.length>1){for(const b of i)if(b.type!==xt){o=b;break}}const a=we(e),{mode:c}=a;if(s.isLeaving)return Jc(o);const u=tg(o);if(!u)return Jc(o);let h=so(u,a,s,n,b=>h=b);Bs(u,h);const m=n.subTree,_=m&&tg(m);if(_&&_.type!==xt&&!Mn(u,_)&&x_(n).type!==xt){const b=so(_,a,s,n);if(Bs(_,b),c==="out-in"&&u.type!==xt)return s.isLeaving=!0,b.afterLeave=()=>{s.isLeaving=!1,n.update.active!==!1&&(n.effect.dirty=!0,n.update())},Jc(o);c==="in-out"&&u.type!==xt&&(b.delayLeave=(v,w,A)=>{const B=O_(s,_);B[String(_.key)]=_,v[As]=()=>{w(),v[As]=void 0,delete h.delayedLeave},h.delayedLeave=A})}return o}}},I_=CC;function O_(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function so(e,t,n,s,i){const{appear:o,mode:a,persisted:c=!1,onBeforeEnter:u,onEnter:h,onAfterEnter:m,onEnterCancelled:_,onBeforeLeave:b,onLeave:v,onAfterLeave:w,onLeaveCancelled:A,onBeforeAppear:B,onAppear:H,onAfterAppear:I,onAppearCancelled:T}=t,S=String(e.key),C=O_(n,e),M=(k,F)=>{k&&hn(k,s,9,F)},U=(k,F)=>{const g=F[1];M(k,F),Oe(k)?k.every(W=>W.length<=1)&&g():k.length<=1&&g()},D={mode:a,persisted:c,beforeEnter(k){let F=u;if(!n.isMounted)if(o)F=B||u;else return;k[As]&&k[As](!0);const g=C[S];g&&Mn(e,g)&&g.el[As]&&g.el[As](),M(F,[k])},enter(k){let F=h,g=m,W=_;if(!n.isMounted)if(o)F=H||h,g=I||m,W=T||_;else return;let Z=!1;const P=k[ga]=pe=>{Z||(Z=!0,pe?M(W,[k]):M(g,[k]),D.delayedLeave&&D.delayedLeave(),k[ga]=void 0)};F?U(F,[k,P]):P()},leave(k,F){const g=String(e.key);if(k[ga]&&k[ga](!0),n.isUnmounting)return F();M(b,[k]);let W=!1;const Z=k[As]=P=>{W||(W=!0,F(),P?M(A,[k]):M(w,[k]),k[As]=void 0,C[g]===e&&delete C[g])};C[g]=e,v?U(v,[k,Z]):Z()},clone(k){const F=so(k,t,n,s,i);return i&&i(F),F}};return D}
18function Jc(e){if(qr(e))return e=Nn(e),e.children=null,e}function tg(e){if(!qr(e))return e;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Re(n.default))return n.default()}}function Bs(e,t){e.shapeFlag&6&&e.component?Bs(e.component.subTree,t):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Ql(e,t=!1,n){let s=[],i=0;for(let o=0;o<e.length;o++){let a=e[o];const c=n==null?a.key:String(n)+String(a.key!=null?a.key:o);a.type===Rt?(a.patchFlag&128&&i++,s=s.concat(Ql(a.children,t,c))):(t||a.type!==xt)&&s.push(c!=null?Nn(a,{key:c}):a)}if(i>1)for(let o=0;o<s.length;o++)s[o].patchFlag=-2;return s}const AC=e=>e.__isTeleport,sr=e=>e&&(e.disabled||e.disabled===""),ng=e=>typeof SVGElement<"u"&&e instanceof SVGElement,sg=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,jd=(e,t)=>{const n=e&&e.to;return vt(n)?t?t(n):null:n},RC={name:"Teleport",__isTeleport:!0,process(e,t,n,s,i,o,a,c,u,h){const{mc:m,pc:_,pbc:b,o:{insert:v,querySelector:w,createText:A,createComment:B}}=h,H=sr(t.props);let{shapeFlag:I,children:T,dynamicChildren:S}=t;if(e==null){const C=t.el=A(""),M=t.anchor=A("");v(C,n,s),v(M,n,s);const U=t.target=jd(t.props,w),D=t.targetAnchor=A("");U&&(v(D,U),a==="svg"||ng(U)?a="svg":(a==="mathml"||sg(U))&&(a="mathml"));const k=(F,g)=>{I&16&&m(T,F,g,i,o,a,c,u)};H?k(n,M):U&&k(U,D)}else{t.el=e.el;const C=t.anchor=e.anchor,M=t.target=e.target,U=t.targetAnchor=e.targetAnchor,D=sr(e.props),k=D?n:M,F=D?C:U;if(a==="svg"||ng(M)?a="svg":(a==="mathml"||sg(M))&&(a="mathml"),S?(b(e.dynamicChildren,S,k,i,o,a,c),$p(e,t,!0)):u||_(e,t,k,F,i,o,a,c,!1),H)D?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):ma(t,n,C,h,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const g=t.target=jd(t.props,w);g&&ma(t,g,null,h,0)}else D&&ma(t,M,U,h,1)}k_(t)},remove(e,t,n,{um:s,o:{remove:i}},o){const{shapeFlag:a,children:c,anchor:u,targetAnchor:h,target:m,props:_}=e;if(m&&i(h),o&&i(u),a&16){const b=o||!sr(_);for(let v=0;v<c.length;v++){const w=c[v];s(w,t,n,b,!!w.dynamicChildren)}}},move:ma,hydrate:xC};function ma(e,t,n,{o:{insert:s},m:i},o=2){o===0&&s(e.targetAnchor,t,n);const{el:a,anchor:c,shapeFlag:u,children:h,props:m}=e,_=o===2;if(_&&s(a,t,n),(!_||sr(m))&&u&16)for(let b=0;b<h.length;b++)i(h[b],t,n,2);_&&s(c,t,n)}function xC(e,t,n,s,i,o,{o:{nextSibling:a,parentNode:c,querySelector:u}},h){const m=t.target=jd(t.props,u);if(m){const _=m._lpa||m.firstChild;if(t.shapeFlag&16)if(sr(t.props))t.anchor=h(a(e),t,c(e),n,s,i,o),t.targetAnchor=_;else{t.anchor=a(e);let b=_;for(;b;)if(b=a(b),b&&b.nodeType===8&&b.data==="teleport anchor"){t.targetAnchor=b,m._lpa=t.targetAnchor&&a(t.targetAnchor);break}h(_,t,m,n,s,i,o)}k_(t)}return t.anchor&&a(t.anchor)}const IC=RC;function k_(e){const t=e.ctx;if(t&&t.ut){let n=e.children[0].el;for(;n&&n!==e.targetAnchor;)n.nodeType===1&&n.setAttribute("data-v-owner",t.uid),n=n.nextSibling;t.ut()}}const Rt=Symbol.for("v-fgt"),li=Symbol.for("v-txt"),xt=Symbol.for("v-cmt"),ri=Symbol.for("v-stc"),ir=[];let en=null;function Zl(e=!1){ir.push(en=e?null:[])}function M_(){ir.pop(),en=ir[ir.length-1]||null}let ci=1;function Kd(e){ci+=e}function P_(e){return e.dynamicChildren=ci>0?en||Vi:null,M_(),ci>0&&en&&en.push(e),e}function OC(e,t,n,s,i,o){return P_(Kp(e,t,n,s,i,o,!0))}function jp(e,t,n,s,i){return P_(xe(e,t,n,s,i,!0))}function Vn(e){return e?e.__v_isVNode===!0:!1}function Mn(e,t){return e.type===t.type&&e.key===t.key}function kC(e){}const N_=({key:e})=>e??null,Fa=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?vt(e)||ht(e)||Re(e)?{i:yt,r:e,k:t,f:!!n}:e:null);function Kp(e,t=null,n=null,s=0,i=null,o=e===Rt?0:1,a=!1,c=!1){const u={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&N_(t),ref:t&&Fa(t),scopeId:Kl,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:s,dynamicProps:i,dynamicChildren:null,appContext:null,ctx:yt};return c?(Xp(u,n),o&128&&e.normalize(u)):n&&(u.shapeFlag|=vt(n)?8:16),ci>0&&!a&&en&&(u.patchFlag>0||o&6)&&u.patchFlag!==32&&en.push(u),u}const xe=MC;
vendor: 3,337 bytes, line 18
18function MC(e,t=null,n=null,s=0,i=null,o=!1){if((!e||e===Xy)&&(e=xt),Vn(e)){const c=Nn(e,t,!0);return n&&Xp(c,n),ci>0&&!o&&en&&(c.shapeFlag&6?en[en.indexOf(e)]=c:en.push(c)),c.patchFlag=-2,c}if(HC(e)&&(e=e.__vccOpts),t){t=L_(t);let{class:c,style:u}=t;c&&!vt(c)&&(t.class=Wr(c)),gt(u)&&(Rp(u)&&!Oe(u)&&(u=bt({},u)),t.style=$r(u))}const a=vt(e)?1:Bd(e)?128:AC(e)?64:gt(e)?4:Re(e)?2:0;return Kp(e,t,n,s,i,a,o,!0)}function L_(e){return e?Rp(e)||u_(e)?bt({},e):e:null}function Nn(e,t,n=!1,s=!1){const{props:i,ref:o,patchFlag:a,children:c,transition:u}=e,h=t?qn(i||{},t):i,m={__v_isVNode:!0,__v_skip:!0,type:e.type,props:h,key:h&&N_(h),ref:t&&t.ref?n&&o?Oe(o)?o.concat(Fa(t)):[o,Fa(t)]:Fa(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:c,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Rt?a===-1?16:a|16:a,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:u,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Nn(e.ssContent),ssFallback:e.ssFallback&&Nn(e.ssFallback),el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return u&&s&&Bs(m,u.clone(m)),m}function Yp(e=" ",t=0){return xe(li,null,e,t)}function PC(e,t){const n=xe(ri,null,e);return n.staticCount=t,n}function NC(e="",t=!1){return t?(Zl(),jp(xt,null,e)):xe(xt,null,e)}function un(e){return e==null||typeof e=="boolean"?xe(xt):Oe(e)?xe(Rt,null,e.slice()):typeof e=="object"?Rs(e):xe(li,null,String(e))}function Rs(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Nn(e)}function Xp(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(Oe(t))n=16;else if(typeof t=="object")if(s&65){const i=t.default;i&&(i._c&&(i._d=!1),Xp(e,i()),i._c&&(i._d=!0));return}else{n=32;const i=t._;!i&&!u_(t)?t._ctx=yt:i===3&&yt&&(yt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Re(t)?(t={default:t,_ctx:yt},n=32):(t=String(t),s&64?(n=16,t=[Yp(t)]):n=8);e.children=t,e.shapeFlag|=n}function qn(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const i in s)if(i==="class")t.class!==s.class&&(t.class=Wr([t.class,s.class]));else if(i==="style")t.style=$r([t.style,s.style]);else if($l(i)){const o=t[i],a=s[i];a&&o!==a&&!(Oe(o)&&o.includes(a))&&(t[i]=o?[].concat(o,a):a)}else i!==""&&(t[i]=s[i])}return t}function Jt(e,t,n,s=null){hn(e,t,7,[n,s])}const LC=a_();let DC=0;function D_(e,t,n){const s=e.type,i=(t?t.appContext:e.appContext)||LC,o={uid:DC++,vnode:e,type:s,parent:t,appContext:i,root:null,next:null,subTree:null,effect:null,update:null,scope:new Ep(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:h_(s,i),emitsOptions:Yy(s,i),emit:null,emitted:null,propsDefaults:Je,inheritAttrs:s.inheritAttrs,ctx:Je,data:Je,props:Je,attrs:Je,slots:Je,refs:Je,setupState:Je,setupContext:null,attrsProxy:null,slotsProxy:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return o.ctx={_:o},o.root=t?t.root:o,o.emit=vT.bind(null,o),e.ce&&e.ce(o),o}let mt=null;const In=()=>mt||yt;let sl,Yd;{const e=Hy(),t=(n,s)=>{let i;
18return(i=e[n])||(i=e[n]=[]),i.push(s),o=>{i.length>1?i.forEach(a=>a(o)):i[0](o)}};sl=t("__VUE_INSTANCE_SETTERS__",n=>mt=n),Yd=t("__VUE_SSR_SETTERS__",n=>jr=n)}const di=e=>{const t=mt;return sl(e),e.scope.on(),()=>{e.scope.off(),sl(t)}},Xd=()=>{mt&&mt.scope.off(),sl(null)};function G_(e){return e.vnode.shapeFlag&4}let jr=!1;function U_(e,t=!1){t&&Yd(t);const{props:n,children:s}=e.vnode,i=G_(e);pC(e,n,i,t),gC(e,s);const o=i?GC(e,t):void 0;return t&&Yd(!1),o}function GC(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Wd);const{setup:s}=n;if(s){const i=e.setupContext=s.length>1?B_(e):null,o=di(e);Ws();const a=ls(s,e,0,[e.props,i]);if(zs(),o(),Pp(a)){if(a.then(Xd,Xd),t)return a.then(c=>{Jd(e,c,t)}).catch(c=>{fi(c,e,0)});e.asyncDep=a}else Jd(e,a,t)}else F_(e,t)}function Jd(e,t,n){Re(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:gt(t)&&(e.setupState=Op(t)),F_(e,n)}let il,Qd;function UC(e){il=e,Qd=t=>{t.render._rc&&(t.withProxy=new Proxy(t.ctx,VT))}}const FC=()=>!il;function F_(e,t,n){const s=e.type;if(!e.render){if(!t&&il&&!s.render){const i=s.template||Bp(e).template;if(i){const{isCustomElement:o,compilerOptions:a}=e.appContext.config,{delimiters:c,compilerOptions:u}=s,h=bt(bt({isCustomElement:o,delimiters:c},a),u);s.render=il(i,h)}}e.render=s.render||Tn,Qd&&Qd(e)}{const i=di(e);Ws();try{oC(e)}finally{zs(),i()}}}const BC={get(e,t){return nn(e,"get",""),e[t]}};function B_(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,BC),slots:e.slots,emit:e.emit,expose:t}}function Kr(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Op(Hl(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in nr)return nr[n](e)},has(t,n){return n in t||n in nr}})):e.proxy}function Zd(e,t=!0){return Re(e)?e.displayName||e.name:e.name||t&&e.__name}function HC(e){return Re(e)&&"__vccOpts"in e}const pt=(e,t)=>Ww(e,t,jr);function $C(e,t,n=Je){const s=In(),i=Rn(t),o=Hr(t),a=ky((u,h)=>{let m;return C_(()=>{const _=e[t];Er(m,_)&&(m=_,h())}),{get(){return u(),n.get?n.get(m):m},set(_){const b=s.vnode.props;!(b&&(t in b||i in b||o in b)&&(`onUpdate:${t}`in b||`onUpdate:${i}`in b||`onUpdate:${o}`in b))&&Er(_,m)&&(m=_,h()),s.emit(`update:${t}`,n.set?n.set(_):_)}}}),c=t==="modelValue"?"modelModifiers":`${t}Modifiers`;return a[Symbol.iterator]=()=>{let u=0;return{next(){return u<2?{value:u++?e[c]||{}:a,done:!1}:{done:!0}}}},a}function Fi(e,t,n){const s=arguments.length;return s===2?gt(t)&&!Oe(t)?Vn(t)?xe(e,null,[t]):xe(e,t):xe(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Vn(n)&&(n=[n]),xe(e,t,n))}function WC(){}function zC(e,t,n,s){const i=n[s];if(i&&H_(i,e))return i;const o=t();return o.memo=e.slice(),o.memoIndex=s,n[s]=o}function H_(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let s=0;s<n.length;s++)if(Er(n[s],t[s]))return!1;return ci>0&&en&&en.push(e),!0}const Jp="3.4.31",VC=Tn,qC=gT,jC=Mi,KC=Ky,YC={createComponentInstance:D_,setupComponent:U_,renderComponentRoot:Ua,setCurrentRenderingInstance:Cr,isVNode:Vn,normalizeVNode:un,getComponentPublicInstance:Kr},XC=YC,JC=null,QC=null,ZC=null;/**
19* @vue/shared v3.4.31
20* (c) 2018-present Yuxi (Evan) You and Vue contributors
21* @license MIT
22**//*! #__NO_SIDE_EFFECTS__ */function eA(e,t){const n=new Set(e.split(","));return s=>n.has(s)}const Qc={},tA=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),nA=e=>e.startsWith("onUpdate:"),Yr=Object.assign,mn=Array.isArray,Xr=e=>W_(e)==="[object Set]",ig=e=>W_(e)==="[object Date]",$_=e=>typeof e=="function",xr=e=>typeof e=="string",eu=e=>typeof e=="symbol",tu=e=>e!==null&&typeof e=="object",sA=Object.prototype.toString,W_=e=>sA.call(e),Qp=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},iA=/-(\w)/g,Zc=Qp(e=>e.replace(iA,(t,n)=>n?n.toUpperCase():"")),oA=/\B([A-Z])/g,ks=Qp(e=>e.replace(oA,"-$1").toLowerCase()),rA=Qp(e=>e.charAt(0).toUpperCase()+e.slice(1)),aA=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},nu=e=>{const t=parseFloat(e);return isNaN(t)?e:t},su=e=>{const t=xr(e)?Number(e):NaN;return isNaN(t)?e:t},lA="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",cA=eA(lA);function z_(e){return!!e||e===""}function dA(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=Hs(e[s],t[s]);return n}function Hs(e,t){if(e===t)return!0;let n=ig(e),s=ig(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=eu(e),s=eu(t),n||s)return e===t;if(n=mn(e),s=mn(t),n||s)return n&&s?dA(e,t):!1;if(n=tu(e),s=tu(t),n||s){if(!n||!s)return!1;const i=Object.keys(e).length,o=Object.keys(t).length;if(i!==o)return!1;for(const a in e){const c=e.hasOwnProperty(a),u=t.hasOwnProperty(a);if(c&&!u||!c&&u||!Hs(e[a],t[a]))return!1}}return String(e)===String(t)}function ec(e,t){return e.findIndex(n=>Hs(n,t))}/**
23* @vue/runtime-dom v3.4.31
24* (c) 2018-present Yuxi (Evan) You and Vue contributors
25* @license MIT
26**/const uA="http://www.w3.org/2000/svg",pA="http://www.w3.org/1998/Math/MathML",ns=typeof document<"u"?document:null,og=ns&&ns.createElement("template"),hA={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const i=t==="svg"?ns.createElementNS(uA,e):t==="mathml"?ns.createElementNS(pA,e):n?ns.createElement(e,{is:n}):ns.createElement(e);return e==="select"&&s&&s.multiple!=null&&i.setAttribute("multiple",s.multiple),i},createText:e=>ns.createTextNode(e),createComment:e=>ns.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ns.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,i,o){const a=n?n.previousSibling:t.lastChild;if(i&&(i===o||i.nextSibling))for(;t.insertBefore(i.cloneNode(!0),n),!(i===o||!(i=i.nextSibling)););else{og.innerHTML=s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e;const c=og.content;if(s==="svg"||s==="mathml"){const u=c.firstChild;for(;u.firstChild;)c.appendChild(u.firstChild);c.removeChild(u)}t.insertBefore(c,n)}return[a?a.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},bs="transition",ko="animation",io=Symbol("_vtc"),Zp=(e,{slots:t})=>Fi(I_,q_(e),t);Zp.displayName="Transition";const V_={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},fA=Zp.props=Yr({},qp,V_),js=(e,t=[])=>{mn(e)?e.forEach(n=>n(...t)):e&&e(...t)},rg=e=>e?mn(e)?e.some(t=>t.length>1):e.length>1:!1;function q_(e){const t={};for(const W in e)W in V_||(t[W]=e[W]);if(e.css===!1)return t;const{name:n="v",type:s,duration:i,enterFromClass:o=`${n}-enter-from`,enterActiveClass:a=`${n}-enter-active`,enterToClass:c=`${n}-enter-to`,appearFromClass:u=o,appearActiveClass:h=a,appearToClass:m=c,leaveFromClass:_=`${n}-leave-from`,leaveActiveClass:b=`${n}-leave-active`,leaveToClass:v=`${n}-leave-to`}=e,w=gA(i),A=w&&w[0],B=w&&w[1],{onBeforeEnter:H,onEnter:I,onEnterCancelled:T,onLeave:S,onLeaveCancelled:C,onBeforeAppear:M=H,onAppear:U=I,onAppearCancelled:D=T}=t,k=(W,Z,P)=>{ws(W,Z?m:c),ws(W,Z?h:a),P&&P()},F=(W,Z)=>{W._isLeaving=!1,ws(W,_),ws(W,v),ws(W,b),Z&&Z()},g=W=>(Z,P)=>{const pe=W?U:I,se=()=>k(Z,W,P);js(pe,[Z,se]),ag(()=>{ws(Z,W?u:o),es(Z,W?m:c),rg(pe)||lg(Z,s,A,se)})};return Yr(t,{onBeforeEnter(W){js(H,[W]),es(W,o),es(W,a)},onBeforeAppear(W){js(M,[W]),es(W,u),es(W,h)},onEnter:g(!1),onAppear:g(!0),onLeave(W,Z){W._isLeaving=!0;const P=()=>F(W,Z);es(W,_),es(W,b),K_(),ag(()=>{W._isLeaving&&(ws(W,_),es(W,v),rg(S)||lg(W,s,B,P))}),js(S,[W,P])},onEnterCancelled(W){k(W,!1),js(T,[W])},onAppearCancelled(W){k(W,!0),js(D,[W])},onLeaveCancelled(W){F(W),js(C,[W])}})}function gA(e){if(e==null)return null;if(tu(e))return[ed(e.enter),ed(e.leave)];{const t=ed(e);return[t,t]}}function ed(e){return su(e)}function es(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[io]||(e[io]=new Set)).add(t)}function ws(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[io];n&&(n.delete(t),n.size||(e[io]=void 0))}function ag(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let mA=0;function lg(e,t,n,s){const i=e._endId=++mA,o=()=>{i===e._endId&&s()};if(n)return setTimeout(o,n);const{type:a,timeout:c,propCount:u}=j_(e,t);if(!a)return s();const h=a+"end";let m=0;const _=()=>{e.removeEventListener(h,b),o()},b=v=>{v.target===e&&++m>=u&&_()};setTimeout(()=>{m<u&&_()},c+1),e.addEventListener(h,b)}function j_(e,t){const n=window.getComputedStyle(e),s=w=>(n[w]||"").split(", "),i=s(`${bs}Delay`),o=s(`${bs}Duration`),a=cg(i,o),c=s(`${ko}Delay`),u=s(`${ko}Duration`),h=cg(c,u);let m=null,_=0,b=0;t===bs?a>0&&(m=bs,_=a,b=o.length):t===ko?h>0&&(m=ko,_=h,b=u.length):(_=Math.max(a,h),m=_>0?a>h?bs:ko:null,b=m?m===bs?o.length:u.length:0);const v=m===bs&&/\b(transform|all)(,|$)/.test(s(`${bs}Property`).toString());return{type:m,timeout:_,propCount:b,hasTransform:v}}function cg(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,s)=>dg(n)+dg(e[s])))}function dg(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function K_(){return document.body.offsetHeight}function yA(e,t,n){const s=e[io];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const ol=Symbol("_vod"),Y_=Symbol("_vsh"),X_={beforeMount(e,{value:t},{transition:n}){e[ol]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Mo(e,t)}
vendor: 4,722 bytes, line 26
26,mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:s}){!t!=!n&&(s?t?(s.beforeEnter(e),Mo(e,!0),s.enter(e)):s.leave(e,()=>{Mo(e,!1)}):Mo(e,t))},beforeUnmount(e,{value:t}){Mo(e,t)}};function Mo(e,t){e.style.display=t?e[ol]:"none",e[Y_]=!t}function _A(){X_.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}}}const J_=Symbol("");function bA(e){const t=In();if(!t)return;const n=t.ut=(i=e(t.proxy))=>{Array.from(document.querySelectorAll(`[data-v-owner="${t.uid}"]`)).forEach(o=>ou(o,i))},s=()=>{const i=e(t.proxy);iu(t.subTree,i),n(i)};gi(()=>{T_(s);const i=new MutationObserver(s);i.observe(t.subTree.el.parentNode,{childList:!0}),mi(()=>i.disconnect())})}function iu(e,t){if(e.shapeFlag&128){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push(()=>{iu(n.activeBranch,t)})}for(;e.component;)e=e.component.subTree;if(e.shapeFlag&1&&e.el)ou(e.el,t);else if(e.type===Rt)e.children.forEach(n=>iu(n,t));else if(e.type===ri){let{el:n,anchor:s}=e;for(;n&&(ou(n,t),n!==s);)n=n.nextSibling}}function ou(e,t){if(e.nodeType===1){const n=e.style;let s="";for(const i in t)n.setProperty(`--${i}`,t[i]),s+=`--${i}: ${t[i]};`;n[J_]=s}}const vA=/(^|;)\s*display\s*:/;function SA(e,t,n){const s=e.style,i=xr(n);let o=!1;if(n&&!i){if(t)if(xr(t))for(const a of t.split(";")){const c=a.slice(0,a.indexOf(":")).trim();n[c]==null&&Ba(s,c,"")}else for(const a in t)n[a]==null&&Ba(s,a,"");for(const a in n)a==="display"&&(o=!0),Ba(s,a,n[a])}else if(i){if(t!==n){const a=s[J_];a&&(n+=";"+a),s.cssText=n,o=vA.test(n)}}else t&&e.removeAttribute("style");ol in e&&(e[ol]=o?s.display:"",e[Y_]&&(s.display="none"))}const ug=/\s*!important$/;function Ba(e,t,n){if(mn(n))n.forEach(s=>Ba(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=EA(e,t);ug.test(n)?e.setProperty(ks(s),n.replace(ug,""),"important"):e[s]=n}}const pg=["Webkit","Moz","ms"],td={};function EA(e,t){const n=td[t];if(n)return n;let s=Rn(t);if(s!=="filter"&&s in e)return td[t]=s;s=rA(s);for(let i=0;i<pg.length;i++){const o=pg[i]+s;if(o in e)return td[t]=o}return t}const hg="http://www.w3.org/1999/xlink";function fg(e,t,n,s,i,o=cA(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(hg,t.slice(6,t.length)):e.setAttributeNS(hg,t,n):n==null||o&&!z_(n)?e.removeAttribute(t):e.setAttribute(t,o?"":eu(n)?String(n):n)}function wA(e,t,n,s,i,o,a){if(t==="innerHTML"||t==="textContent"){s&&a(s,i,o),e[t]=n??"";return}const c=e.tagName;if(t==="value"&&c!=="PROGRESS"&&!c.includes("-")){const h=c==="OPTION"?e.getAttribute("value")||"":e.value,m=n==null?"":String(n);(h!==m||!("_value"in e))&&(e.value=m),n==null&&e.removeAttribute(t),e._value=n;return}let u=!1;if(n===""||n==null){const h=typeof e[t];h==="boolean"?n=z_(n):n==null&&h==="string"?(n="",u=!0):h==="number"&&(n=0,u=!0)}try{e[t]=n}catch{}u&&e.removeAttribute(t)}function is(e,t,n,s){e.addEventListener(t,n,s)}function TA(e,t,n,s){e.removeEventListener(t,n,s)}const gg=Symbol("_vei");function CA(e,t,n,s,i=null){const o=e[gg]||(e[gg]={}),a=o[t];if(s&&a)a.value=s;else{const[c,u]=AA(t);if(s){const h=o[t]=IA(s,i);is(e,c,h,u)}else a&&(TA(e,c,a,u),o[t]=void 0)}}const mg=/(?:Once|Passive|Capture)$/;function AA(e){let t;if(mg.test(e)){t={};let s;for(;s=e.match(mg);)e=e.slice(0,e.length-s[0].length),t[s[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):ks(e.slice(2)),t]}let nd=0;const RA=Promise.resolve(),xA=()=>nd||(RA.then(()=>nd=0),nd=Date.now());function IA(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;hn(OA(s,n.value),t,5,[s])};return n.value=e,n.attached=xA(),n}function OA(e,t){if(mn(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>i=>!i._stopped&&s&&s(i))}else return t}const yg=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,kA=(e,t,n,s,i,o,a,c,u)=>{const h=i==="svg";t==="class"?yA(e,s,h):t==="style"?SA(e,n,s):tA(t)?nA(t)||CA(e,t,n,s,a):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):MA(e,t,s,h))?(wA(e,t,s,o,a,c,u),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&fg(e,t,s,h,a,t!=="value")):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),fg(e,t,s,h))};function MA(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&yg(t)&&$_(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const i=e.tagName;if(i==="IMG"||i==="VIDEO"||i==="CANVAS"||i==="SOURCE")return!1}return yg(t)&&xr(n)?!1:t in e}/*! #__NO_SIDE_EFFECTS__ */function Q_(e,t,n){const s=yi(e,t);
26class i extends tc{constructor(a){super(s,a,n)}}return i.def=s,i}/*! #__NO_SIDE_EFFECTS__ */const PA=(e,t)=>Q_(e,t,cb),NA=typeof HTMLElement<"u"?HTMLElement:class{};class tc extends NA{constructor(t,n={},s){super(),this._def=t,this._props=n,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this._ob=null,this.shadowRoot&&s?s(this._createVNode(),this.shadowRoot):(this.attachShadow({mode:"open"}),this._def.__asyncLoader||this._resolveProps(this._def))}connectedCallback(){this._connected=!0,this._instance||(this._resolved?this._update():this._resolveDef())}disconnectedCallback(){this._connected=!1,cs(()=>{this._connected||(this._ob&&(this._ob.disconnect(),this._ob=null),ru(null,this.shadowRoot),this._instance=null)})}_resolveDef(){this._resolved=!0;for(let s=0;s<this.attributes.length;s++)this._setAttr(this.attributes[s].name);this._ob=new MutationObserver(s=>{for(const i of s)this._setAttr(i.attributeName)}),this._ob.observe(this,{attributes:!0});const t=(s,i=!1)=>{const{props:o,styles:a}=s;let c;if(o&&!mn(o))for(const u in o){const h=o[u];(h===Number||h&&h.type===Number)&&(u in this._props&&(this._props[u]=su(this._props[u])),(c||(c=Object.create(null)))[Zc(u)]=!0)}this._numberProps=c,i&&this._resolveProps(s),this._applyStyles(a),this._update()},n=this._def.__asyncLoader;n?n().then(s=>t(s,!0)):t(this._def)}_resolveProps(t){const{props:n}=t,s=mn(n)?n:Object.keys(n||{});for(const i of Object.keys(this))i[0]!=="_"&&s.includes(i)&&this._setProp(i,this[i],!0,!1);for(const i of s.map(Zc))Object.defineProperty(this,i,{get(){return this._getProp(i)},set(o){this._setProp(i,o)}})}_setAttr(t){let n=this.hasAttribute(t)?this.getAttribute(t):void 0;const s=Zc(t);this._numberProps&&this._numberProps[s]&&(n=su(n)),this._setProp(s,n,!1)}_getProp(t){return this._props[t]}_setProp(t,n,s=!0,i=!0){n!==this._props[t]&&(this._props[t]=n,i&&this._instance&&this._update(),s&&(n===!0?this.setAttribute(ks(t),""):typeof n=="string"||typeof n=="number"?this.setAttribute(ks(t),n+""):n||this.removeAttribute(ks(t))))}_update(){ru(this._createVNode(),this.shadowRoot)}_createVNode(){const t=xe(this._def,Yr({},this._props));return this._instance||(t.ce=n=>{this._instance=n,n.isCE=!0;const s=(o,a)=>{this.dispatchEvent(new CustomEvent(o,{detail:a}))};n.emit=(o,...a)=>{s(o,a),ks(o)!==o&&s(ks(o),a)};let i=this;for(;i=i&&(i.parentNode||i.host);)if(i instanceof tc){n.parent=i._instance,n.provides=i._instance.provides;break}}),t}_applyStyles(t){t&&t.forEach(n=>{const s=document.createElement("style");s.textContent=n,this.shadowRoot.appendChild(s)})}}function LA(e="$style"){{const t=In();if(!t)return Qc;const n=t.type.__cssModules;if(!n)return Qc;const s=n[e];return s||Qc}}const Z_=new WeakMap,eb=new WeakMap,rl=Symbol("_moveCb"),_g=Symbol("_enterCb"),tb={name:"TransitionGroup",props:Yr({},fA,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=In(),s=Vp();let i,o;return Xl(()=>{if(!i.length)return;const a=e.moveClass||`${e.name||"v"}-move`;if(!HA(i[0].el,n.vnode.el,a))return;i.forEach(UA),i.forEach(FA);
26const c=i.filter(BA);K_(),c.forEach(u=>{const h=u.el,m=h.style;es(h,a),m.transform=m.webkitTransform=m.transitionDuration="";const _=h[rl]=b=>{b&&b.target!==h||(!b||/transform$/.test(b.propertyName))&&(h.removeEventListener("transitionend",_),h[rl]=null,ws(h,a))};h.addEventListener("transitionend",_)})}),()=>{const a=we(e),c=q_(a);let u=a.tag||Rt;if(i=[],o)for(let h=0;h<o.length;h++){const m=o[h];m.el&&m.el instanceof Element&&(i.push(m),Bs(m,so(m,c,s,n)),Z_.set(m,m.el.getBoundingClientRect()))}o=t.default?Ql(t.default()):[];for(let h=0;h<o.length;h++){const m=o[h];m.key!=null&&Bs(m,so(m,c,s,n))}return xe(u,null,o)}}},DA=e=>delete e.mode;tb.props;const GA=tb;function UA(e){const t=e.el;t[rl]&&t[rl](),t[_g]&&t[_g]()}function FA(e){eb.set(e,e.el.getBoundingClientRect())}function BA(e){const t=Z_.get(e),n=eb.get(e),s=t.left-n.left,i=t.top-n.top;if(s||i){const o=e.el.style;return o.transform=o.webkitTransform=`translate(${s}px,${i}px)`,o.transitionDuration="0s",e}}function HA(e,t,n){const s=e.cloneNode(),i=e[io];i&&i.forEach(c=>{c.split(/\s+/).forEach(u=>u&&s.classList.remove(u))}),n.split(/\s+/).forEach(c=>c&&s.classList.add(c)),s.style.display="none";const o=t.nodeType===1?t:t.parentNode;o.appendChild(s);const{hasTransform:a}=j_(s);return o.removeChild(s),a}const $s=e=>{const t=e.props["onUpdate:modelValue"]||!1;return mn(t)?n=>aA(t,n):t};function $A(e){e.target.composing=!0}function bg(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Cn=Symbol("_assign"),al={created(e,{modifiers:{lazy:t,trim:n,number:s}},i){e[Cn]=$s(i);const o=s||i.props&&i.props.type==="number";is(e,t?"change":"input",a=>{if(a.target.composing)return;let c=e.value;n&&(c=c.trim()),o&&(c=nu(c)),e[Cn](c)}),n&&is(e,"change",()=>{e.value=e.value.trim()}),t||(is(e,"compositionstart",$A),is(e,"compositionend",bg),is(e,"change",bg))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:i,number:o}},a){if(e[Cn]=$s(a),e.composing)return;const c=(o||e.type==="number")&&!/^0\d/.test(e.value)?nu(e.value):e.value,u=t??"";c!==u&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||i&&e.value.trim()===u)||(e.value=u))}},eh={deep:!0,created(e,t,n){e[Cn]=$s(n),is(e,"change",()=>{const s=e._modelValue,i=oo(e),o=e.checked,a=e[Cn];if(mn(s)){const c=ec(s,i),u=c!==-1;if(o&&!u)a(s.concat(i));else if(!o&&u){const h=[...s];h.splice(c,1),a(h)}}else if(Xr(s)){const c=new Set(s);o?c.add(i):c.delete(i),a(c)}else a(sb(e,o))})},mounted:vg,beforeUpdate(e,t,n){e[Cn]=$s(n),vg(e,t,n)}};function vg(e,{value:t,oldValue:n},s){e._modelValue=t,mn(t)?e.checked=ec(t,s.props.value)>-1:Xr(t)?e.checked=t.has(s.props.value):t!==n&&(e.checked=Hs(t,sb(e,!0)))}const th={created(e,{value:t},n){e.checked=Hs(t,n.props.value),e[Cn]=$s(n),is(e,"change",()=>{e[Cn](oo(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e[Cn]=$s(s),t!==n&&(e.checked=Hs(t,s.props.value))}},nb={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const i=Xr(t);is(e,"change",()=>{const o=Array.prototype.filter.call(e.options,a=>a.selected).map(a=>n?nu(oo(a)):oo(a));e[Cn](e.multiple?i?new Set(o):o:o[0]),e._assigning=!0,cs(()=>{e._assigning=!1})}),e[Cn]=$s(s)},mounted(e,{value:t,modifiers:{number:n}}){Sg(e,t)},beforeUpdate(e,t,n){e[Cn]=$s(n)},updated(e,{value:t,modifiers:{number:n}}){e._assigning||Sg(e,t)}};function Sg(e,t,n){const s=e.multiple,i=mn(t);if(!(s&&!i&&!Xr(t))){for(let o=0,a=e.options.length;o<a;o++){const c=e.options[o],u=oo(c);if(s)if(i){const h=typeof u;h==="string"||h==="number"?c.selected=t.some(m=>String(m)===String(u)):c.selected=ec(t,u)>-1}else c.selected=t.has(u);else if(Hs(oo(c),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!s&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function oo(e){return"_value"in e?e._value:e.value}function sb(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const ib={created(e,t,n){ya(e,t,n,null,"created")},mounted(e,t,n){ya(e,t,n,null,"mounted")},beforeUpdate(e,t,n,s){ya(e,t,n,s,"beforeUpdate")},updated(e,t,n,s){ya(e,t,n,s,"updated")}};function ob(e,t){switch(e){case"SELECT":return nb;case"TEXTAREA":return al;default:switch(t){case"checkbox":return eh;case"radio":return th;default:return al}}}function ya(e,t,n,s,i){const a=ob(e.tagName,n.props&&n.props.type)[i];a&&a(e,t,n,s)}function WA(){al.getSSRProps=({value:e})=>({value:e}),th.getSSRProps=({value:e},t)=>{if(t.props&&Hs(t.props.value,e))return{checked:!0}},eh.getSSRProps=({value:e},t)=>{if(mn(e)){if(t.props&&ec(e,t.props.value)>-1)return{checked:!0}}else if(Xr(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},ib.getSSRProps=(e,t)=>{if(typeof t.type!="string")return;const n=ob(t.type.toUpperCase(),t.props&&t.props.type);if(n.getSSRProps)return n.getSSRProps(e,t)}}const zA=["ctrl","shift","alt","meta"],VA={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>
26zA.some(n=>e[`${n}Key`]&&!t.includes(n))},qA=(e,t)=>{const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(i,...o)=>{for(let a=0;a<t.length;a++){const c=VA[t[a]];if(c&&c(i,t))return}return e(i,...o)})},jA={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},KA=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=i=>{if(!("key"in i))return;const o=ks(i.key);if(t.some(a=>a===o||jA[a]===o))return e(i)})},rb=Yr({patchProp:kA},hA);let or,Eg=!1;function ab(){return or||(or=y_(rb))}function lb(){return or=Eg?or:__(rb),Eg=!0,or}const ru=(...e)=>{ab().render(...e)},cb=(...e)=>{lb().hydrate(...e)},db=(...e)=>{const t=ab().createApp(...e),{mount:n}=t;return t.mount=s=>{const i=pb(s);if(!i)return;const o=t._component;!$_(o)&&!o.render&&!o.template&&(o.template=i.innerHTML),i.innerHTML="";const a=n(i,!1,ub(i));return i instanceof Element&&(i.removeAttribute("v-cloak"),i.setAttribute("data-v-app","")),a},t},YA=(...e)=>{const t=lb().createApp(...e),{mount:n}=t;return t.mount=s=>{const i=pb(s);if(i)return n(i,!0,ub(i))},t};function ub(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function pb(e){return xr(e)?document.querySelector(e):e}let wg=!1;const XA=()=>{wg||(wg=!0,WA(),_A())};/**
27* vue v3.4.31
28* (c) 2018-present Yuxi (Evan) You and Vue contributors
29* @license MIT
30**/const JA=()=>{},r1=Object.freeze(Object.defineProperty({__proto__:null,BaseTransition:I_,BaseTransitionPropsValidators:qp,Comment:xt,DeprecationTypes:ZC,EffectScope:Ep,ErrorCodes:fT,ErrorTypeStrings:qC,Fragment:Rt,KeepAlive:wC,ReactiveEffect:to,Static:ri,Suspense:PT,Teleport:IC,Text:li,TrackOpTypes:Xw,Transition:Zp,TransitionGroup:GA,TriggerOpTypes:Jw,VueElement:tc,assertNumber:hT,callWithAsyncErrorHandling:hn,callWithErrorHandling:ls,camelize:Rn,capitalize:Vl,cloneVNode:Nn,compatUtils:QC,compile:JA,computed:pt,createApp:db,createBlock:jp,createCommentVNode:NC,createElementBlock:OC,createElementVNode:Kp,createHydrationRenderer:__,createPropsRestProxy:sC,createRenderer:y_,createSSRApp:YA,createSlots:HT,createStaticVNode:PC,createTextVNode:Yp,createVNode:xe,customRef:ky,defineAsyncComponent:$T,defineComponent:yi,defineCustomElement:Q_,defineEmits:jT,defineExpose:KT,defineModel:JT,defineOptions:YT,defineProps:qT,defineSSRCustomElement:PA,defineSlots:XT,devtools:jC,effect:Sw,effectScope:Gl,getCurrentInstance:In,getCurrentScope:Br,getTransitionRawChildren:Ql,guardReactiveProps:L_,h:Fi,handleError:fi,hasInjectionContext:Jl,hydrate:cb,initCustomFormatter:WC,initDirectivesForSSR:XA,inject:Ds,isMemoSame:H_,isProxy:Rp,isReactive:Ls,isReadonly:no,isRef:ht,isRuntimeOnly:FC,isShallow:vr,isVNode:Vn,markRaw:Hl,mergeDefaults:tC,mergeModels:nC,mergeProps:qn,nextTick:cs,normalizeClass:Wr,normalizeProps:pT,normalizeStyle:$r,onActivated:Wp,onBeforeMount:Fp,onBeforeUnmount:zr,onBeforeUpdate:Zy,onDeactivated:zp,onErrorCaptured:s_,onMounted:gi,onRenderTracked:n_,onRenderTriggered:t_,onScopeDispose:Xa,onServerPrefetch:e_,onUnmounted:mi,onUpdated:Xl,openBlock:Zl,popScopeId:ET,provide:l_,proxyRefs:Op,pushScopeId:ST,queuePostFlushCb:Qa,reactive:_n,readonly:Ap,ref:It,registerRuntimeCompiler:UC,render:ru,renderList:BT,renderSlot:WT,resolveComponent:IT,resolveDirective:kT,resolveDynamicComponent:OT,resolveFilter:JC,resolveTransitionHooks:so,setBlockTracking:Kd,setDevtoolsHook:KC,setTransitionHooks:Bs,shallowReactive:Ui,shallowReadonly:$w,shallowRef:Iy,ssrContextKey:E_,ssrUtils:XC,stop:Ew,toDisplayString:Wy,toHandlerKey:er,toHandlers:zT,toRaw:we,toRef:kp,toRefs:My,toValue:Is,transformVNodeArgs:kC,triggerRef:Vw,unref:yo,useAttrs:eC,useCssModule:LA,useCssVars:bA,useModel:$C,useSSRContext:w_,useSlots:ZT,useTransitionState:Vp,vModelCheckbox:eh,vModelDynamic:ib,vModelRadio:th,vModelSelect:nb,vModelText:al,vShow:X_,version:Jp,warn:VC,watch:Gs,watchEffect:Xi,watchPostEffect:T_,watchSyncEffect:C_,withAsyncContext:iC,withCtx:Lp,withDefaults:QT,withDirectives:FT,withKeys:KA,withMemo:zC,withModifiers:qA,withScopeId:wT},Symbol.toStringTag,{value:"Module"})),QA=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,ZA=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,eR=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function tR(e,t){if(e==="__proto__"||e==="constructor"&&t&&typeof t=="object"&&"prototype"in t){nR(e);return}return t}function nR(e){console.warn(`[destr] Dropping "${e}" key to prevent prototype pollution.`)}function a1(e,t={}){if(typeof e!="string")return e;if(e[0]==='"'&&e[e.length-1]==='"'&&e.indexOf("\\")===-1)return e.slice(1,-1);const n=e.trim();if(n.length<=9)switch(n.toLowerCase()){case"true":return!0;case"false":return!1;case"undefined":return;case"null":return null;case"nan":return Number.NaN;case"infinity":return Number.POSITIVE_INFINITY;case"-infinity":return Number.NEGATIVE_INFINITY}if(!eR.test(e)){if(t.strict)throw new SyntaxError("[destr] Invalid JSON");return e}try{if(QA.test(e)||ZA.test(e)){if(t.strict)throw new Error("[destr] Possible prototype pollution");return JSON.parse(e,tR)}return JSON.parse(e)}catch(s){if(t.strict)throw s;return e}}const sR=/#/g,iR=/&/g,oR=/\//g,rR=/=/g,nh=/\+/g,aR=/%5e/gi,lR=/%60/gi,cR=/%7c/gi,dR=/%20/gi;function uR(e){return encodeURI(""+e).replace(cR,"|")}function au(e){return uR(typeof e=="string"?e:JSON.stringify(e)).replace(nh,"%2B").replace(dR,"+").replace(sR,"%23").replace(iR,"%2
306").replace(lR,"`").replace(aR,"^").replace(oR,"%2F")}function sd(e){return au(e).replace(rR,"%3D")}function ll(e=""){try{return decodeURIComponent(""+e)}catch{return""+e}}function pR(e){return ll(e.replace(nh," "))}function hR(e){return ll(e.replace(nh," "))}function fR(e=""){const t=Object.create(null);e[0]==="?"&&(e=e.slice(1));for(const n of e.split("&")){const s=n.match(/([^=]+)=?(.*)/)||[];if(s.length<2)continue;const i=pR(s[1]);if(i==="__proto__"||i==="constructor")continue;const o=hR(s[2]||"");t[i]===void 0?t[i]=o:Array.isArray(t[i])?t[i].push(o):t[i]=[t[i],o]}return t}function gR(e,t){return(typeof t=="number"||typeof t=="boolean")&&(t=String(t)),t?Array.isArray(t)?t.map(n=>`${sd(e)}=${au(n)}`).join("&"):`${sd(e)}=${au(t)}`:sd(e)}function mR(e){return Object.keys(e).filter(t=>e[t]!==void 0).map(t=>gR(t,e[t])).filter(Boolean).join("&")}const yR=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,_R=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,bR=/^([/\\]\s*){2,}[^/\\]/,vR=/^[\s\0]*(blob|data|javascript|vbscript):$/i,SR=/\/$|\/\?|\/#/,ER=/^\.?\//;function nc(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?yR.test(e):_R.test(e)||(t.acceptRelative?bR.test(e):!1)}function wR(e){return!!e&&vR.test(e)}function lu(e="",t){return t?SR.test(e):e.endsWith("/")}function hb(e="",t){if(!t)return(lu(e)?e.slice(0,-1):e)||"/";if(!lu(e,!0))return e||"/";let n=e,s="";const i=e.indexOf("#");i!==-1&&(n=e.slice(0,i),s=e.slice(i));const[o,...a]=n.split("?");return((o.endsWith("/")?o.slice(0,-1):o)||"/")+(a.length>0?`?${a.join("?")}`:"")+s}function cu(e="",t){if(!t)return e.endsWith("/")?e:e+"/";if(lu(e,!0))return e||"/";let n=e,s="";const i=e.indexOf("#");if(i!==-1&&(n=e.slice(0,i),s=e.slice(i),!n))return s;const[o,...a]=n.split("?");return o+"/"+(a.length>0?`?${a.join("?")}`:"")+s}function TR(e=""){return e.startsWith("/")}function Tg(e=""){return TR(e)?e:"/"+e}function l1(e,t){if(fb(t)||nc(e))return e;const n=hb(t);return e.startsWith(n)?e:RR(n,e)}function c1(e,t){if(fb(t))return e;const n=hb(t);if(!e.startsWith(n))return e;const s=e.slice(n.length);return s[0]==="/"?s:"/"+s}function CR(e,t){const n=xR(e),s={...fR(n.search),...t};return n.search=mR(s),IR(n)}function fb(e){return!e||e==="/"}function AR(e){return e&&e!=="/"}function RR(e,...t){let n=e||"";for(const s of t.filter(i=>AR(i)))if(n){const i=s.replace(ER,"");n=cu(n)+i}else n=s;return n}function d1(...e){const t=/\/(?!\/)/,n=e.filter(Boolean),s=[];let i=0;for(const a of n)if(!(!a||a==="/")){for(const[c,u]of a.split(t).entries())if(!(!u||u===".")){if(u===".."){if(s.length===1&&nc(s[0]))continue;s.pop(),i--;continue}if(c===1&&s[s.length-1]?.endsWith(":/")){s[s.length-1]+="/"+u;continue}s.push(u),i++}}let o=s.join("/");return i>=0?n[0]?.startsWith("/")&&!o.startsWith("/")?o="/"+o:n[0]?.startsWith("./")&&!o.startsWith("./")&&(o="./"+o):o="../".repeat(-1*i)+o,n[n.length-1]?.endsWith("/")&&!o.endsWith("/")&&(o+="/"),o}function u1(e,t,n={}){return n.trailingSlash||(e=cu(e),t=cu(t)),n.leadingSlash||(e=Tg(e),t=Tg(t)),n.encoding||(e=ll(e),t=ll(t)),e===t}const gb=Symbol.for("ufo:protocolRelative");function xR(e="",t){const n=e.match(/^[\s\0]*(blob:|data:|javascript:|vbscript:)(.*)/i);if(n){const[,_,b=""]=n;return{protocol:_.toLowerCase(),pathname:b,href:_+b,auth:"",host:"",search:"",hash:""}}if(!nc(e,{acceptRelative:!0}))return Cg(e);const[,s="",i,o=""]=e.replace(/\\/g,"/").match(/^[\s\0]*([\w+.-]{2,}:)?\/\/([^/@]+@)?(.*)/)||[];let[,a="",c=""]=o.match(/([^#/?]*)(.*)?/)||[];s==="file:"&&(c=c.replace(/\/(?=[A-Za-z]:)/,""));const{pathname:u,search:h,hash:m}=Cg(c);return{protocol:s.toLowerCase(),auth:i?i.slice(0,Math.max(0,i.length-1)):"",host:a,pathname:u,search:h,hash:m,[gb]:!s}}function Cg(e=""){const[t="",n="",s=""]=(e.match(/([^#?]*)(\?[^#]*)?(#.*)?/)||[]).splice(1);return{pathname:t,search:n,hash:s}}function IR(e){const t=e.pathname||"",n=e.search?(e.search.startsWith("?")?"":"?")+e.search:"",s=e.hash||"",i=e.auth?e.auth+"@":"",o=e.host||"";return(e.protocol||e[gb]?(e.protocol||"")+"//":"")+i+o+t+n+s}function du(e,t={},n){for(const s in e){const i=e[s],o=n?`${n}:${s}`:s;typeof i=="object"&&i!==null?du(i,t,o):typeof i=="function"&&(t[o]=i)}return t}const OR={run:e=>e()},kR=()=>OR,mb=typeof console.createTask<"u"?console.createTask:kR;function MR(e,t){const n=t.shift(),s=mb(n);return e.reduce((i,o)=>i.then(()=>s.run(()=>o(...t))),Promise.resolve())}function PR(e,t){const n=t.shift(),s=mb(n);return Promise.all(e.map(i=>s.run(()=>i(...t))))}function id(e,t){for(const n of[...e])n(t)}class NR{constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(t,n,s={}){if(!t||typeof n!="function")return()=>{};const i=t;let o;for(;this._deprecatedHooks[t];)o=this._deprecatedHooks[t],t=o.to;if(o&&!s.allowDeprecated){let a=o.message;a||(a=`${i} hook has been deprecated`+(o.to?`, please use ${o.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(a)||(console.warn(a),this._deprecatedMessages.add(a))}if(!n.name)try{Object.defineProperty(n,"name",{get:()=>"_"+t.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[t]=this._hooks[t]||[],this._hooks[t].push(n),()=>{n&&(this.removeHook(t,n),n=void 0)}}hookOnce(t,n){let s,i=(...o)=>(typeof s=="function"&&s(),s=void 0,i=void 0,n(...o));return s=this.hook(t,i),s}removeHook(t,n){if(this._hooks[t]){const s=this._hooks[t].indexOf(n);s!==-1&&this._hooks[t].splice(s,1),this._hooks[t].length===0&&delete this._hooks[t]}}deprecateHook(t,n){this._deprecatedHooks[t]=typeof n=="string"?{to:n}:n;const s=this._hooks[t]||[];delete this._hooks[t];for(const i of s)this.hook(t,i)}deprecateHooks(t){Object.assign(this._deprecatedHooks,t);for(const n in t)this.deprecateHook(n,t[n])}addHooks(t){const n=du(t),s=Object.keys(n).map(i=>this.hook(i,n[i]));return()=>{for(const i of s.splice(0,s.length))i()}}removeHooks(t){const n=du(t);for(const s in n)this.removeHook(s,n[s])}removeAllHooks(){for(const t in this._hooks)delete this._hooks[t]}callHook(t,...n){return n.unshift(t),this.callHookWith(MR,t,...n)}callHookParallel(t,...n){return n.unshift(t),this.callHookWith(PR,t,...n)}
30callHookWith(t,n,...s){const i=this._before||this._after?{name:n,args:s,context:{}}:void 0;this._before&&id(this._before,i);const o=t(n in this._hooks?[...this._hooks[n]]:[],s);return o instanceof Promise?o.finally(()=>{this._after&&i&&id(this._after,i)}):(this._after&&i&&id(this._after,i),o)}beforeEach(t){return this._before=this._before||[],this._before.push(t),()=>{if(this._before!==void 0){const n=this._before.indexOf(t);n!==-1&&this._before.splice(n,1)}}}afterEach(t){return this._after=this._after||[],this._after.push(t),()=>{if(this._after!==void 0){const n=this._after.indexOf(t);n!==-1&&this._after.splice(n,1)}}}}function yb(){return new NR}function LR(e={}){let t,n=!1;const s=a=>{if(t&&t!==a)throw new Error("Context conflict")};let i;if(e.asyncContext){const a=e.AsyncLocalStorage||globalThis.AsyncLocalStorage;a?i=new a:console.warn("[unctx] `AsyncLocalStorage` is not provided.")}const o=()=>{if(i){const a=i.getStore();if(a!==void 0)return a}return t};return{use:()=>{const a=o();if(a===void 0)throw new Error("Context is not available");return a},tryUse:()=>o(),set:(a,c)=>{c||s(a),t=a,n=!0},unset:()=>{t=void 0,n=!1},call:(a,c)=>{s(a),t=a;try{return i?i.run(a,c):c()}finally{n||(t=void 0)}},async callAsync(a,c){t=a;const u=()=>{t=a},h=()=>t===a?u:void 0;uu.add(h);try{const m=i?i.run(a,c):c();return n||(t=void 0),await m}finally{uu.delete(h)}}}}function DR(e={}){const t={};return{get(n,s={}){return t[n]||(t[n]=LR({...e,...s})),t[n]}}}const cl=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof global<"u"?global:typeof window<"u"?window:{},Ag="__unctx__",GR=cl[Ag]||(cl[Ag]=DR()),UR=(e,t={})=>GR.get(e,t),Rg="__unctx_async_handlers__",uu=cl[Rg]||(cl[Rg]=new Set);function Yt(e){const t=[];for(const i of uu){const o=i();o&&t.push(o)}const n=()=>{for(const i of t)i()};let s=e();return s&&typeof s=="object"&&"catch"in s&&(s=s.catch(i=>{throw n(),i})),[s,n]}const p1={name:"page",mode:"out-in"},h1=!1,f1=!1,g1={componentName:"NuxtLink"},Bi={value:null,errorValue:null,deep:!0},FR=null,BR={},m1="#__nuxt",_b="nuxt-app",y1=36e5;function bb(e=_b){return UR(e,{asyncContext:!1})}const HR="__nuxt_plugin";function _1(e){let t=0;const n={_name:_b,_scope:Gl(),provide:void 0,globalName:"nuxt",versions:{get nuxt(){return"3.12.2"},get vue(){return n.vueApp.version}},payload:Ui({data:Ui({}),state:_n({}),once:new Set,_errors:Ui({})}),static:{data:{}},runWithContext(i){return n._scope.active&&!Br()?n._scope.run(()=>xg(n,i)):xg(n,i)},isHydrating:!0,deferHydration(){if(!n.isHydrating)return()=>{};t++;let i=!1;return()=>{if(!i&&(i=!0,t--,t===0))return n.isHydrating=!1,n.callHook("app:suspense:resolve")}},_asyncDataPromises:{},_asyncData:Ui({}),_payloadRevivers:{},...e};if(window.__NUXT__)for(const i in window.__NUXT__)switch(i){case"data":case"state":case"_errors":Object.assign(n.payload[i],window.__NUXT__[i]);break;default:n.payload[i]=window.__NUXT__[i]}n.hooks=yb(),n.hook=n.hooks.hook,n.callHook=n.hooks.callHook,n.provide=(i,o)=>{const a="$"+i;_a(n,a,o),_a(n.vueApp.config.globalProperties,a,o)},_a(n.vueApp,"$nuxt",n),_a(n.vueApp.config.globalProperties,"$nuxt",n);{window.addEventListener("nuxt.preloadError",o=>{n.callHook("app:chunkError",{error:o.payload})}),window.useNuxtApp=window.useNuxtApp||yn;const i=n.hook("app:error",(...o)=>{console.error("[nuxt] error caught during app initialization",...o)});n.hook("app:mounted",i)}const s=n.payload.config;return n.provide("config",s),n}function $R(e,t){t.hooks&&e.hooks.addHooks(t.hooks)}async function WR(e,t){if(typeof t=="function"){const{provide:n}=await e.runWithContext(()=>t(e))||{};if(n&&typeof n=="object")for(const s in n)e.provide(s,n[s])}}async function b1(e,t){const n=[],s=[],i=[],o=[];let a=0;async function c(u){const h=u.dependsOn?.filter(m=>t.some(_=>_._name===m)&&!n.includes(m))??[];if(h.length>0)s.push([new Set(h),u]);else{const m=WR(e,u).then(async()=>{u._name&&(n.push(u._name),await Promise.all(s.map(async([_,b])=>{_.has(u._name)&&(_.delete(u._name),_.size===0&&(a++,await c(b)))})))});u.parallel?i.push(m.catch(_=>o.push(_))):await m}}for(const u of t)$R(e,u);for(const u of t)await c(u);if(await Promise.all(i),a)for(let u=0;u<a;u++)await Promise.all(i);if(o.length)throw o[0]}function zR(e){if(typeof e=="function")return e;const t=e._name||e.name;return delete e.name,Object.assign(e.setup||(()=>{}),e,{[HR]:!0,_name:t})}function xg(e,t,n){const s=()=>t();return bb(e._name).set(e),e.vueApp.runWithContext(s)}function VR(e){let t;return Jl()&&(t=In()?.appContext.app.$nuxt),t=t||bb(e).tryUse(),t||null}function yn(e){const t=VR(e);if(!t)throw new Error("[nuxt] instance unavailable");return t}function Ir(e){return yn().$config}function _a(e,t,n){Object.defineProperty(e,t,{get:()=>n})}function v1(e,t){if(typeof e!="string")throw new TypeError("argument str must be a string");const n={},s=t||{},i=s.decode||qR;let o=0;for(;o<e.length;){const a=e.indexOf("=",o);if(a===-1)break;let c=e.indexOf(";",o);if(c===-1)c=e.length;else if(c<a){o=e.lastIndexOf(";",a-1)+1;continue}const u=e.slice(o,a).trim();
30if(s?.filter&&!s?.filter(u)){o=c+1;continue}if(n[u]===void 0){let h=e.slice(a+1,c).trim();h.codePointAt(0)===34&&(h=h.slice(1,-1)),n[u]=jR(h,i)}o=c+1}return n}function qR(e){return e.includes("%")?decodeURIComponent(e):e}function jR(e,t){try{return t(e)}catch{return e}}const ba=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function S1(e,t,n){const s=n||{},i=s.encode||encodeURIComponent;if(typeof i!="function")throw new TypeError("option encode is invalid");if(!ba.test(e))throw new TypeError("argument name is invalid");const o=i(t);if(o&&!ba.test(o))throw new TypeError("argument val is invalid");let a=e+"="+o;if(s.maxAge!==void 0&&s.maxAge!==null){const c=s.maxAge-0;if(Number.isNaN(c)||!Number.isFinite(c))throw new TypeError("option maxAge is invalid");a+="; Max-Age="+Math.floor(c)}if(s.domain){if(!ba.test(s.domain))throw new TypeError("option domain is invalid");a+="; Domain="+s.domain}if(s.path){if(!ba.test(s.path))throw new TypeError("option path is invalid");a+="; Path="+s.path}if(s.expires){if(!KR(s.expires)||Number.isNaN(s.expires.valueOf()))throw new TypeError("option expires is invali
30d");a+="; Expires="+s.expires.toUTCString()}if(s.httpOnly&&(a+="; HttpOnly"),s.secure&&(a+="; Secure"),s.priority)switch(typeof s.priority=="string"?s.priority.toLowerCase():s.priority){case"low":{a+="; Priority=Low";break}case"medium":{a+="; Priority=Medium";break}case"high":{a+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(s.sameSite)switch(typeof s.sameSite=="string"?s.sameSite.toLowerCase():s.sameSite){case!0:{a+="; SameSite=Strict";break}case"lax":{a+="; SameSite=Lax";break}case"strict":{a+="; SameSite=Strict";break}case"none":{a+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return s.partitioned&&(a+="; Partitioned"),a}function KR(e){return Object.prototype.toString.call(e)==="[object Date]"||e instanceof Date}function YR(e,t){return{ctx:{table:e},matchAll:n=>Sb(n,e)}}function vb(e){const t={};for(const n in e)t[n]=n==="dynamic"?new Map(Object.entries(e[n]).map(([s,i])=>[s,vb(i)])):new Map(Object.entries(e[n]));return t}function E1(e){return YR(vb(e))}function Sb(e,t,n){e.endsWith("/")&&(e=e.slice(0,-1)||"/");const s=[];for(const[o,a]of Ig(t.wildcard))(e===o||e.startsWith(o+"/"))&&s.push(a);for(const[o,a]of Ig(t.dynamic))if(e.startsWith(o+"/")){const c="/"+e.slice(o.length).split("/").splice(2).join("/");s.push(...Sb(c,a))}const i=t.static.get(e);return i&&s.push(i),s.filter(Boolean)}function Ig(e){return[...e.entries()].sort((t,n)=>t[0].length-n[0].length)}function od(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function pu(e,t,n=".",s){if(!od(t))return pu(e,{},n,s);const i=Object.assign({},t);for(const o in e){if(o==="__proto__"||o==="constructor")continue;const a=e[o];a!=null&&(s&&s(i,o,a,n)||(Array.isArray(a)&&Array.isArray(i[o])?i[o]=[...a,...i[o]]:od(a)&&od(i[o])?i[o]=pu(a,i[o],(n?`${n}.`:"")+o.toString(),s):i[o]=a))}return i}function Eb(e){return(...t)=>t.reduce((n,s)=>pu(n,s,"",e),{})}const w1=Eb(),T1=Eb((e,t,n)=>{if(e[t]!==void 0&&typeof n=="function")return e[t]=n(e[t]),!0});function XR(e,t){try{return t in e}catch{return!1}}class hu extends Error{constructor(n,s={}){super(n,s);Ht(this,"statusCode",500);Ht(this,"fatal",!1);Ht(this,"unhandled",!1);Ht(this,"statusMessage");Ht(this,"data");Ht(this,"cause");s.cause&&!this.cause&&(this.cause=s.cause)}toJSON(){const n={message:this.message,statusCode:fu(this.statusCode,500)};return this.statusMessage&&(n.statusMessage=wb(this.statusMessage)),this.data!==void 0&&(n.data=this.data),n}}Ht(hu,"__h3_error__",!0);function JR(e){if(typeof e=="string")return new hu(e);if(QR(e))return e;const t=new hu(e.message??e.statusMessage??"",{cause:e.cause||e});if(XR(e,"stack"))try{Object.defineProperty(t,"stack",{get(){return e.stack}})}catch{try{t.stack=e.stack}catch{}}if(e.data&&(t.data=e.data),e.statusCode?t.statusCode=fu(e.statusCode,t.statusCode):e.status&&(t.statusCode=fu(e.status,t.statusCode)),e.statusMessage?t.statusMessage=e.statusMessage:e.statusText&&(t.statusMessage=e.statusText),t.statusMessage){const n=t.statusMessage;wb(t.statusMessage)!==n&&console.warn("[h3] Please prefer using `message` for longer error messages instead of `statusMessage`. In the future, `statusMessage` will be sanitized by default.")}return e.fatal!==void 0&&(t.fatal=e.fatal),e.unhandled!==void 0&&(t.unhandled=e.unhandled),t}function QR(e){return e?.constructor?.__h3_error__===!0}const ZR=/[^\u0009\u0020-\u007E]/g;function wb(e=""){return e.replace(ZR,"")}function fu(e,t=200){return!e||(typeof e=="string"&&(e=Number.parseInt(e,10)),e<100||e>999)?t:e}const C1=Symbol("layout-meta"),ex=Symbol("route"),Tb=()=>yn()?.$router,gu=()=>Jl()?Ds(ex,yn()._route):yn()._route;function A1(e){return e}const tx=()=>{try{if(yn()._processingMiddleware)return!0}catch{return!1}return!1},Le=(e,t)=>{e||(e="/");const n=typeof e=="string"?e:CR(e.path||"/",e.query||{})+(e.hash||"");if(t?.open){const{target:c="_blank",windowFeatures:u={}}=t.open,h=Object.entries(u).filter(([m,_])=>_!==void 0).map(([m,_])=>`${m.toLowerCase()}=${_}`).join(", ");return open(n,c,h),Promise.resolve()}const s=t?.external||nc(n,{acceptRelative:!0});if(s){if(!t?.external)throw new Error("Navigating to an external URL is not allowed by default. Use `navigateTo(url, { external: true })`.");const{protocol:c}=new URL(n,window.location.href);if(c&&wR(c))throw new Error(`Cannot navigate to a URL with '${c}' protocol.`)}const i=tx();if(!s&&i)return e;const o=Tb(),a=yn();return s?(a._scope.stop(),t?.replace?location.replace(n):location.href=n,i?a.isHydrating?new Promise(()=>{}
30):!1:Promise.resolve()):t?.replace?o.replace(e):o.push(e)},Cb="__nuxt_error",Ab=()=>kp(yn().payload,"error"),R1=e=>{const t=sh(e);try{const n=yn(),s=Ab();n.hooks.callHook("app:error",t),s.value=s.value||t}catch{throw t}return t},x1=async(e={})=>{const t=yn(),n=Ab();t.callHook("app:error:cleared",e),e.redirect&&await Tb().replace(e.redirect),n.value=FR},I1=e=>!!e&&typeof e=="object"&&Cb in e,sh=e=>{const t=JR(e);return Object.defineProperty(t,Cb,{value:!0,configurable:!1,writable:!1}),t},nx=new Set(["title","titleTemplate","script","style","noscript"]),Ha=new Set(["base","meta","link","style","script","noscript"]),sx=new Set(["title","titleTemplate","templateParams","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"]),ix=new Set(["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"]),Rb=new Set(["tagPosition","tagPriority","tagDuplicateStrategy","children","innerHTML","textContent","processTemplateParams"]),ox=typeof window<"u";function dl(e){let t=9;for(let n=0;n<e.length;)t=Math.imul(t^e.charCodeAt(n++),9**9);return((t^t>>>9)+65536).toString(16).substring(1,8).toLowerCase()}function mu(e){if(e._h)return e._h;if(e._d)return dl(e._d);let t=`${e.tag}:${e.textContent||e.innerHTML||""}:`;for(const n in e.props)t+=`${n}:${String(e.props[n])},`;return dl(t)}function rx(e,t){return e instanceof Promise?e.then(t):t(e)}function yu(e,t,n,s){const i=s||Ib(typeof t=="object"&&typeof t!="function"&&!(t instanceof Promise)?{...t}:{[e==="script"||e==="noscript"||e==="style"?"innerHTML":"textContent"]:t},e==="templateParams"||e==="titleTemplate");if(i instanceof Promise)return i.then(a=>yu(e,t,n,a));const o={tag:e,props:i};for(const a of Rb){const c=o.props[a]!==void 0?o.props[a]:n[a];c!==void 0&&((!(a==="innerHTML"||a==="textContent"||a==="children")||nx.has(o.tag))&&(o[a==="children"?"innerHTML":a]=c),delete o.props[a])}return o.props.body&&(o.tagPosition="bodyClose",delete o.props.body),o.tag==="script"&&typeof o.innerHTML=="object"&&(o.innerHTML=JSON.stringify(o.innerHTML),o.props.type=o.props.type||"application/json"),Array.isArray(o.props.content)?o.props.content.map(a=>({...o,props:{...o.props,content:a}})):o}function ax(e,t){const n=e==="class"?" ":";";return t&&typeof t=="object"&&!Array.isArray(t)&&(t=Object.entries(t).filter(([,s])=>s).map(([s,i])=>e==="style"?`${s}:${i}`:s)),String(Array.isArray(t)?t.join(n):t)?.split(n).filter(s=>!!s.trim()).join(n)}function xb(e,t,n,s){for(let i=s;i<n.length;i+=1){const o=n[i];if(o==="class"||o==="style"){e[o]=ax(o,e[o]);continue}if(e[o]instanceof Promise)return e[o].then(a=>(e[o]=a,xb(e,t,n,i)));if(!t&&!Rb.has(o)){const a=String(e[o]),c=o.startsWith("data-");a==="true"||a===""?e[o]=c?"true":!0:e[o]||(c&&a==="false"?e[o]="false":delete e[o])}}}function Ib(e,t=!1){const n=xb(e,t,Object.keys(e),0);return n instanceof Promise?n.then(()=>e):e}const lx=10;function Ob(e,t,n){for(let s=n;s<t.length;s+=1){const i=t[s];if(i instanceof Promise)return i.then(o=>(t[s]=o,Ob(e,t,s)));Array.isArray(i)?e.push(...i):e.push(i)}}function cx(e){const t=[],n=e.resolvedInput;for(const i in n){if(!Object.prototype.hasOwnProperty.call(n,i))continue;const o=n[i];if(!(o===void 0||!sx.has(i))){if(Array.isArray(o)){for(const a of o)t.push(yu(i,a,e));continue}t.push(yu(i,o,e))}}if(t.length===0)return[];const s=[];return rx(Ob(s,t,0),()=>s.map((i,o)=>(i._e=e._i,e.mode&&(i._m=e.mode),i._p=(e._i<<lx)+o,i)))}const Og=new Set(["onload","onerror","onabort","onprogress","onloadstart"]),kg={base:-10,title:10},Mg={critical:-80,high:-10,low:20};function ul(e){const t=e.tagPriority;if(typeof t=="number")return t;let n=100;return e.tag==="meta"?e.props["http-equiv"]==="content-security-policy"?n=-30:e.props.charset?n=-20:e.props.name==="viewport"&&(n=-15):e.tag==="link"&&e.props.rel==="preconnect"?n=20:e.tag in kg&&(n=kg[e.tag]),t&&t in Mg?n+Mg[t]:n}const dx=[{prefix:"before:",offset:-1},{prefix:"after:",offset:1}],ux=["name","property","http-equiv"];function kb(e){const{props:t,tag:n}=e;if(ix.has(n))return n;if(n==="link"&&t.rel==="canonical")return"canonical";if(t.charset)return"charset";if(t.id)return`${n}:id:${t.id}`;for(const s of ux)if(t[s]!==void 0)return`${n}:${s}:${t[s]}`;return!1}const xs="%separator";function px(e,t,n=!1){let s;if(t==="s"||t==="pageTitle")s=e.pageTitle;else if(t.includes(".")){const i=t.indexOf(".");
30s=e[t.substring(0,i)]?.[t.substring(i+1)]}else s=e[t];if(s!==void 0)return n?(s||"").replace(/"/g,'\\"'):s||""}const hx=new RegExp(`${xs}(?:\\s*${xs})*`,"g");function va(e,t,n,s=!1){if(typeof e!="string"||!e.includes("%"))return e;let i=e;try{i=decodeURI(e)}catch{}const o=i.match(/%\w+(?:\.\w+)?/g);if(!o)return e;const a=e.includes(xs);return e=e.replace(/%\w+(?:\.\w+)?/g,c=>{if(c===xs||!o.includes(c))return c;const u=px(t,c.slice(1),s);return u!==void 0?u:c}).trim(),a&&(e.endsWith(xs)&&(e=e.slice(0,-xs.length)),e.startsWith(xs)&&(e=e.slice(xs.length)),e=e.replace(hx,n).trim()),e}function Pg(e,t){return e==null?t||null:typeof e=="function"?e(t):e}async function fx(e,t={}){const n=t.document||e.resolvedOptions.document;if(!n||!e.dirty)return;const s={shouldRender:!0,tags:[]};if(await e.hooks.callHook("dom:beforeRender",s),!!s.shouldRender)return e._domUpdatePromise||(e._domUpdatePromise=new Promise(async i=>{const o=(await e.resolveTags()).map(_=>({tag:_,id:Ha.has(_.tag)?mu(_):_.tag,shouldRender:!0}));let a=e._dom;if(!a){a={elMap:{htmlAttrs:n.documentElement,bodyAttrs:n.body}};const _=new Set;for(const b of["body","head"]){const v=n[b]?.children;for(const w of v){const A=w.tagName.toLowerCase();if(!Ha.has(A))continue;const B={tag:A,props:await Ib(w.getAttributeNames().reduce((S,C)=>({...S,[C]:w.getAttribute(C)}),{})),innerHTML:w.innerHTML},H=kb(B);let I=H,T=1;for(;I&&_.has(I);)I=`${H}:${T++}`;I&&(B._d=I,_.add(I)),a.elMap[w.getAttribute("data-hid")||mu(B)]=w}}}a.pendingSideEffects={...a.sideEffects},a.sideEffects={};function c(_,b,v){const w=`${_}:${b}`;a.sideEffects[w]=v,delete a.pendingSideEffects[w]}function u({id:_,$el:b,tag:v}){const w=v.tag.endsWith("Attrs");if(a.elMap[_]=b,w||(v.textContent&&v.textContent!==b.textContent&&(b.textContent=v.textContent),v.innerHTML&&v.innerHTML!==b.innerHTML&&(b.innerHTML=v.innerHTML),c(_,"el",()=>{a.elMap[_]?.remove(),delete a.elMap[_]})),v._eventHandlers)for(const A in v._eventHandlers)Object.prototype.hasOwnProperty.call(v._eventHandlers,A)&&b.getAttribute(`data-${A}`)!==""&&((v.tag==="bodyAttrs"?n.defaultView:b).addEventListener(A.substring(2),v._eventHandlers[A].bind(b)),b.setAttribute(`data-${A}`,""));for(const A in v.props){if(!Object.prototype.hasOwnProperty.call(v.props,A))continue;const B=v.props[A],H=`attr:${A}`;if(A==="class"){if(!B)continue;for(const I of B.split(" "))w&&c(_,`${H}:${I}`,()=>b.classList.remove(I)),!b.classList.contains(I)&&b.classList.add(I)}else if(A==="style"){if(!B)continue;for(const I of B.split(";")){const T=I.indexOf(":"),S=I.substring(0,T).trim(),C=I.substring(T+1).trim();c(_,`${H}:${S}`,()=>{b.style.removeProperty(S)}),b.style.setProperty(S,C)}}else b.getAttribute(A)!==B&&b.setAttribute(A,B===!0?"":String(B)),w&&c(_,H,()=>b.removeAttribute(A))}}const h=[],m={bodyClose:void 0,bodyOpen:void 0,head:void 0};for(const _ of o){const{tag:b,shouldRender:v,id:w}=_;if(v){if(b.tag==="title"){n.title=b.textContent;continue}_.$el=_.$el||a.elMap[w],_.$el?u(_):Ha.has(b.tag)&&h.push(_)}}for(const _ of h){const b=_.tag.tagPosition||"head";_.$el=n.createElement(_.tag.tag),u(_),m[b]=m[b]||n.createDocumentFragment(),m[b].appendChild(_.$el)}for(const _ of o)await e.hooks.callHook("dom:renderTag",_,n,c);m.head&&n.head.appendChild(m.head),m.bodyOpen&&n.body.insertBefore(m.bodyOpen,n.body.firstChild),m.bodyClose&&n.body.appendChild(m.bodyClose);for(const _ in a.pendingSideEffects)a.pendingSideEffects[_]();e._dom=a,await e.hooks.callHook("dom:rendered",{renders:o}),i()}).finally(()=>{e._domUpdatePromise=void 0,e.dirty=!1})),e._domUpdatePromise}function gx(e,t={}){const n=t.delayFn||(s=>setTimeout(s,10));return e._domDebouncedUpdatePromise=e._domDebouncedUpdatePromise||new Promise(s=>n(()=>fx(e,t).then(()=>{delete e._domDebouncedUpdatePromise,s()})))}function mx(e){return t=>{const n=t.resolvedOptions.document?.head.querySelector('script[id="unhead:payload"]')?.innerHTML||!1;return n&&t.push(JSON.parse(n)),{mode:"client",hooks:{"entries:updated":s=>{gx(s,e)}}}}}const yx=new Set(["templateParams","htmlAttrs","bodyAttrs"]),_x={hooks:{"tag:normalise":({tag:e})=>{e.props.hid&&(e.key=e.props.hid,delete e.props.hid),e.props.vmid&&(e.key=e.props.vmid,delete e.props.vmid),e.props.key&&
30(e.key=e.props.key,delete e.props.key);const t=kb(e);t&&!t.startsWith("meta:og:")&&!t.startsWith("meta:twitter:")&&delete e.key;const n=t||(e.key?`${e.tag}:${e.key}`:!1);n&&(e._d=n)},"tags:resolve":e=>{const t=Object.create(null);for(const s of e.tags){const i=(s.key?`${s.tag}:${s.key}`:s._d)||mu(s),o=t[i];if(o){let c=s?.tagDuplicateStrategy;if(!c&&yx.has(s.tag)&&(c="merge"),c==="merge"){const u=o.props;u.style&&s.props.style&&(u.style[u.style.length-1]!==";"&&(u.style+=";"),s.props.style=`${u.style} ${s.props.style}`),u.class&&s.props.class?s.props.class=`${u.class} ${s.props.class}`:u.class&&(s.props.class=u.class),t[i].props={...u,...s.props};continue}else if(s._e===o._e){o._duped=o._duped||[],s._d=`${o._d}:${o._duped.length+1}`,o._duped.push(s);continue}else if(ul(s)>ul(o))continue}if(!(s.innerHTML||s.textContent||Object.keys(s.props).length!==0)&&Ha.has(s.tag)){delete t[i];continue}t[i]=s}const n=[];for(const s in t){const i=t[s],o=i._duped;n.push(i),o&&(delete i._duped,n.push(...o))}e.tags=n,e.tags=e.tags.filter(s=>!(s.tag==="meta"&&(s.props.name||s.props.property)&&!s.props.content))}}},bx=new Set(["script","link","bodyAttrs"]),vx=e=>({hooks:{"tags:resolve":t=>{for(const n of t.tags){if(!bx.has(n.tag))continue;const s=n.props;for(const i in s){if(i[0]!=="o"||i[1]!=="n"||!Object.prototype.hasOwnProperty.call(s,i))continue;const o=s[i];typeof o=="function"&&(e.ssr&&Og.has(i)?s[i]=`this.dataset.${i}fired = true`:delete s[i],n._eventHandlers=n._eventHandlers||{},n._eventHandlers[i]=o)}e.ssr&&n._eventHandlers&&(n.props.src||n.props.href)&&(n.key=n.key||dl(n.props.src||n.props.href))}},"dom:renderTag":({$el:t,tag:n})=>{const s=t?.dataset;if(s)for(const i in s){if(!i.endsWith("fired"))continue;const o=i.slice(0,-5);Og.has(o)&&n._eventHandlers?.[o]?.call(t,new Event(o.substring(2)))}}}}),Sx=new Set(["link","style","script","noscript"]),Ex={hooks:{"tag:normalise":({tag:e})=>{e.key&&Sx.has(e.tag)&&(e.props["data-hid"]=e._h=dl(e.key))}}},wx={mode:"server",hooks:{"tags:beforeResolve":e=>{const t={};let n=!1;for(const s of e.tags)s._m!=="server"||s.tag!=="titleTemplate"&&s.tag!=="templateParams"&&s.tag!=="title"||(t[s.tag]=s.tag==="title"||s.tag==="titleTemplate"?s.textContent:s.props,n=!0);n&&e.tags.push({tag:"script",innerHTML:JSON.stringify(t),props:{id:"unhead:payload",type:"application/json"}})}}},Tx={hooks:{"tags:resolve":e=>{for(const t of e.tags)if(typeof t.tagPriority=="string")for(const{prefix:n,offset:s}of dx){if(!t.tagPriority.startsWith(n))continue;const i=t.tagPriority.substring(n.length),o=e.tags.find(a=>a._d===i)?._p;if(o!==void 0){t._p=o+s;break}}e.tags.sort((t,n)=>{const s=ul(t),i=ul(n);return s<i?-1:s>i?1:t._p-n._p})}}},Cx={meta:"content",link:"href",htmlAttrs:"lang"},Ax=["innerHTML","textContent"],Rx=e=>({hooks:{"tags:resolve":t=>{const{tags:n}=t;let s;for(let a=0;a<n.length;a+=1)n[a].tag==="templateParams"&&(s=t.tags.splice(a,1)[0].props,a-=1);const i=s||{},o=i.separator||"|";delete i.separator,i.pageTitle=va(i.pageTitle||n.find(a=>a.tag==="title")?.textContent||"",i,o);for(const a of n){if(a.processTemplateParams===!1)continue;const c=Cx[a.tag];if(c&&typeof a.props[c]=="string")a.props[c]=va(a.props[c],i,o);else if(a.processTemplateParams||a.tag==="titleTemplate"||a.tag==="title")for(const u of Ax)typeof a[u]=="string"&&(a[u]=va(a[u],i,o,a.tag==="script"&&a.props.type.endsWith("json")))}e._templateParams=i,e._separator=o},"tags:afterResolve":({tags:t})=>{let n;for(let s=0;s<t.length;s+=1){const i=t[s];i.tag==="title"&&i.processTemplateParams!==!1&&(n=i)}n?.textContent&&(n.textContent=va(n.textContent,e._templateParams,e._separator))}}}),xx={hooks:{"tags:resolve":e=>{const{tags:t}=e;let n,s;for(let i=0;i<t.length;i+=1){const o=t[i];o.tag==="title"?n=o:o.tag==="titleTemplate"&&(s=o)}if(s&&n){const i=Pg(s.textContent,n.textContent);i!==null?n.textContent=i||n.textContent:e.tags.splice(e.tags.indexOf(n),1)}else if(s){const i=Pg(s.textContent);i!==null&&(s.textContent=i,s.tag="title",s=void 0)}s&&e.tags.splice(e.tags.indexOf(s),1)}}},Ix={hooks:{"tags:afterResolve":e=>{for(const t of e.tags)typeof t.innerHTML=="string"&&(t.innerHTML&&(t.props.type==="application/ld+json"||t.props.type==="application/json")?t.innerHTML=t.innerHTML.replace(/</g,"\\u003C"):t.innerHTML=t.innerHTML.replace(new RegExp(`</${t.tag}`,"g"),`<\\/${t.tag}`))}}};let Mb;function Ox(e={}){const t=kx(e);return t.use(mx()),Mb=t}function Ng(e,t){return!e||e==="server"&&t||e==="client"&&!t}function kx(e={}){const t=yb();t.addHooks(e.hooks||{}),e.document=e.document||(ox?document:void 0);const n=!e.document,s=()=>{c.dirty=!0,t.callHook("entries:updated",c)};let i=0,o=[];const a=[],c={plugins:a,dirty:!1,resolvedOptions:e,hooks:t,headEntries(){return o},use(u){const h=typeof u=="function"?u(c):u;
30(!h.key||!a.some(m=>m.key===h.key))&&(a.push(h),Ng(h.mode,n)&&t.addHooks(h.hooks||{}))},push(u,h){delete h?.head;const m={_i:i++,input:u,...h};return Ng(m.mode,n)&&(o.push(m),s()),{dispose(){o=o.filter(_=>_._i!==m._i),s()},patch(_){for(const b of o)b._i===m._i&&(b.input=m.input=_);s()}}},async resolveTags(){const u={tags:[],entries:[...o]};await t.callHook("entries:resolve",u);for(const h of u.entries){const m=h.resolvedInput||h.input;if(h.resolvedInput=await(h.transform?h.transform(m):m),h.resolvedInput)for(const _ of await cx(h)){const b={tag:_,entry:h,resolvedOptions:c.resolvedOptions};await t.callHook("tag:normalise",b),u.tags.push(b.tag)}}return await t.callHook("tags:beforeResolve",u),await t.callHook("tags:resolve",u),await t.callHook("tags:afterResolve",u),u.tags},ssr:n};return[_x,wx,vx,Ex,Tx,Rx,xx,Ix,...e?.plugins||[]].forEach(u=>c.use(u)),c.hooks.callHook("init",c),c}function Mx(){return Mb}const Px=Jp[0]==="3";function Nx(e){return typeof e=="function"?e():yo(e)}function pl(e){if(e instanceof Promise||e instanceof Date||e instanceof RegExp)return e;const t=Nx(e);if(!e||!t)return t;if(Array.isArray(t))return t.map(n=>pl(n));if(typeof t=="object"){const n={};for(const s in t)if(Object.prototype.hasOwnProperty.call(t,s)){if(s==="titleTemplate"||s[0]==="o"&&s[1]==="n"){n[s]=yo(t[s]);continue}n[s]=pl(t[s])}return n}return t}const Lx={hooks:{"entries:resolve":e=>{for(const t of e.entries)t.resolvedInput=pl(t.input)}}},Pb="usehead";function Dx(e){return{install(n){Px&&(n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(Pb,e))}}.install}function O1(e={}){e.domDelayFn=e.domDelayFn||(n=>cs(()=>setTimeout(()=>n(),0)));const t=Ox(e);return t.use(Lx),t.install=Dx(t),t}const _u=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},bu="__unhead_injection_handler__";function k1(e){_u[bu]=e}function Gx(){return bu in _u?_u[bu]():Ds(Pb)||Mx()}function M1(e,t={}){const n=t.head||Gx();if(n)return n.ssr?n.push(e,t):Ux(n,e,t)}function Ux(e,t,n={}){const s=It(!1),i=It({});Xi(()=>{i.value=s.value?{}:pl(t)});const o=e.push(i.value,n);return Gs(i,c=>{o.patch(c)}),In()&&(zr(()=>{o.dispose()}),zp(()=>{s.value=!0}),Wp(()=>{s.value=!1})),o}const Fx="modulepreload",Bx=function(e,t){return new URL(e,t).href},Lg={},Hx=function(t,n,s){let i=Promise.resolve();if(n&&n.length>0){const a=document.getElementsByTagName("link"),c=document.querySelector("meta[property=csp-nonce]"),u=c?.nonce||c?.getAttribute("nonce");i=Promise.allSettled(n.map(h=>{if(h=Bx(h,s),h in Lg)return;Lg[h]=!0;const m=h.endsWith(".css"),_=m?'[rel="stylesheet"]':"";if(!!s)for(let w=a.length-1;w>=0;w--){const A=a[w];if(A.href===h&&(!m||A.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${h}"]${_}`))return;const v=document.createElement("link");if(v.rel=m?"stylesheet":Fx,m||(v.as="script"),v.crossOrigin="",v.href=h,u&&v.setAttribute("nonce",u),document.head.appendChild(v),m)return new Promise((w,A)=>{v.addEventListener("load",w),v.addEventListener("error",()=>A(new Error(`Unable to preload CSS for ${h}`)))})}))}function o(a){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=a,window.dispatchEvent(c),!c.defaultPrevented)throw a}return i.then(a=>{for(const c of a||[])c.status==="rejected"&&o(c.reason);return t().catch(o)})},st=(...e)=>Hx(...e).catch(t=>{const n=new Event("nuxt.preloadError");throw n.payload=t,window.dispatchEvent(n),t}),Dg=Object.freeze({ignoreUnknown:!1,respectType:!1,respectFunctionNames:!1,respectFunctionProperties:!1,unorderedObjects:!0,unorderedArrays:!1,unorderedSets:!1,excludeKeys:void 0,excludeValues:void 0,replacer:void 0});function vu(e,t){t?t={...Dg,...t}:t=Dg;const n=Nb(t);return n.dispatch(e),n.toString()}const $x=Object.freeze(["prototype","__proto__","constructor"]);function Nb(e){let t="",n=new Map;const s=i=>{t+=i};return{toString(){return t},getContext(){return n},dispatch(i){return e.replacer&&(i=e.replacer(i)),this[i===null?"null":typeof i](i)},object(i){if(i&&typeof i.toJSON=="function")return this.object(i.toJSON());const o=Object.prototype.toString.call(i);let a="";const c=o.length;c<10?a="unknown:["+o+"]":a=o.slice(8,c-1),a=a.toLowerCase();let u=null;if((u=n.get(i))===void 0)n.set(i,n.size);else return this.dispatch("[CIRCULAR:"+u+"]");if(typeof Buffer<"u"&&Buffer.isBuffer&&Buffer.isBuffer(i))return s("buffer:"),s(i.toString("utf8"));if(a!=="object"&&a!=="function"&&a!=="asyncfunction")this[a]?this[a](i):e.ignoreUnknown||this.unkown(i,a);else{let h=Object.keys(i);e.unorderedObjects&&(h=h.sort());let m=[];e.respectType!==!1&&!Gg(i)&&(m=$x),e.excludeKeys&&(h=h.filter(b=>!e.excludeKeys(b)),m=m.filter(b=>!e.excludeKeys(b))),s("object:"+(h.length+m.length)+":");const _=b=>{this.dispatch(b),s(":"),e.excludeValues||this.dispatch(i[b]),s(",")};for(const b of h)_(b);for(const b of m)_(b)}},array(i,o){if(o=o===void 0?e.unorderedArrays!==!1:o,s("array:"+i.length+":"),!o||i.length<=1){for(const u of i)this.dispatch(u);return}const a=new Map,c=i.map(u=>{const h=Nb(e);h.dispatch(u);for(const[m,_]of h.getContext())a.set(m,_);return h.toString()});return n=a,c.sort(),this.array(c,!1)},date(i){return s("date:"+i.toJSON())},symbol(i){return s("symbol:"+i.toString())},unkown(i,o){if(s(o),!!i&&(s(":"),i&&typeof i.entries=="function"))return this.array(Array.from(i.entries()),!0)},error(i){return s("error:"+i.toString())},boolean(i){return s("bool:"+i)},string(i){s("string:"+i.length+":"),s(i)},function(i){s("fn:"),Gg(i)?this.dispatch("[native]"):this.dispatch(i.toString()),e.respectFunctionNames!==!1&&this.dispatch("function-name:"+String(i.name)),e.respectFunctionProperties&&this.object(i)},number(i){return s("number:"+i)},xml(i){return s("xml:"+i.toString())},null(){return s("Null")},undefined(){return s("Undefined")},regexp(i){return s("regex:"+i.toString())},uint8array(i){return s("uint8array:"),this.dispatch(Array.prototype.slice.call(i))},uint8clampedarray(i){return s("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(i))},int8array(i){return s("int8array:"),this.dispatch(Array.prototype.slice.call(i))},uint16array(i){return s("uint16array:"),this.dispatch(Array.prototype.slice.call(i))},int16array(i){return s("int16array:"),this.dispatch(Array.prototype.slice.call(i))},uint32array(i){return s("uint32array:"),this.dispatch(Array.prototype.slice.call(i))},int32array(i){return s("int32array:"),this.dispatch(Array.prototype.slice.call(i))},float32array(i){return s("float32array:"),this.dispatch(Array.prototype.slice.call(i))},float64array(i){return s("float64array:"),this.dispatch(Array.prototype.slice.call(i))},arraybuffer(i){return s("arraybuffer:"),this.dispatch(new Uint8Array(i))},url(i){return s("url:"+i.toString())},map(i){s("map:");const o=[...i];return this.array(o,e.unorderedSets!==!1)},set(i){s("set:");const o=[...i];return this.array(o,e.unorderedSets!==!1)},file(i){return s("file:"),this.dispatch([i.name,i.size,i.type,i.lastModfied])},blob(){if(e.ignoreUnknown)return s("[blob]");throw new Error(`Hashing Blob objects is currently not supported
31Use "options.replacer" or "options.ignoreUnknown"
32`)},domwindow(){return s("domwindow")},bigint(i){return s("bigint:"+i.toString())},process(){return s("process")},timer(){return s("timer")},pipe(){return s("pipe")},tcp(){return s("tcp")},udp(){return s("udp")},tty(){return s("tty")},statwatcher(){return s("statwatcher")},securecontext(){return s("securecontext")},connection(){return s("connection")},zlib(){return s("zlib")}
32,context(){return s("context")},nodescript(){return s("nodescript")},httpparser(){return s("httpparser")},dataview(){return s("dataview")},signal(){return s("signal")},fsevent(){return s("fsevent")},tlswrap(){return s("tlswrap")}}}const Lb="[native code] }",Wx=Lb.length;function Gg(e){return typeof e!="function"?!1:Function.prototype.toString.call(e).slice(-Wx)===Lb}function P1(e,t,n={}){return e===t||vu(e,n)===vu(t,n)}class Us{constructor(t,n){Ht(this,"words");Ht(this,"sigBytes");t=this.words=t||[],this.sigBytes=n===void 0?t.length*4:n}toString(t){return(t||zx).stringify(this)}concat(t){if(this.clamp(),this.sigBytes%4)for(let n=0;n<t.sigBytes;n++){const s=t.words[n>>>2]>>>24-n%4*8&255;this.words[this.sigBytes+n>>>2]|=s<<24-(this.sigBytes+n)%4*8}else for(let n=0;n<t.sigBytes;n+=4)this.words[this.sigBytes+n>>>2]=t.words[n>>>2];return this.sigBytes+=t.sigBytes,this}clamp(){this.words[this.sigBytes>>>2]&=4294967295<<32-this.sigBytes%4*8,this.words.length=Math.ceil(this.sigBytes/4)}clone(){return new Us([...this.words])}}const zx={stringify(e){const t=[];for(let n=0;n<e.sigBytes;n++){const s=e.words[n>>>2]>>>24-n%4*8&255;t.push((s>>>4).toString(16),(s&15).toString(16))}return t.join("")}},Vx={stringify(e){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",n=[];for(let s=0;s<e.sigBytes;s+=3){const i=e.words[s>>>2]>>>24-s%4*8&255,o=e.words[s+1>>>2]>>>24-(s+1)%4*8&255,a=e.words[s+2>>>2]>>>24-(s+2)%4*8&255,c=i<<16|o<<8|a;for(let u=0;u<4&&s*8+u*6<e.sigBytes*8;u++)n.push(t.charAt(c>>>6*(3-u)&63))}return n.join("")}},qx={parse(e){const t=e.length,n=[];for(let s=0;s<t;s++)n[s>>>2]|=(e.charCodeAt(s)&255)<<24-s%4*8;return new Us(n,t)}},jx={parse(e){return qx.parse(unescape(encodeURIComponent(e)))}};class Kx{constructor(){Ht(this,"_data",new Us);Ht(this,"_nDataBytes",0);Ht(this,"_minBufferSize",0);Ht(this,"blockSize",512/32)}reset(){this._data=new Us,this._nDataBytes=0}_append(t){typeof t=="string"&&(t=jx.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes}_doProcessBlock(t,n){}_process(t){let n,s=this._data.sigBytes/(this.blockSize*4);t?s=Math.ceil(s):s=Math.max((s|0)-this._minBufferSize,0);const i=s*this.blockSize,o=Math.min(i*4,this._data.sigBytes);if(i){for(let a=0;a<i;a+=this.blockSize)this._doProcessBlock(this._data.words,a);n=this._data.words.splice(0,i),this._data.sigBytes-=o}return new Us(n,o)}}class Yx extends Kx{update(t){return this._append(t),this._process(),this}finalize(t){t&&this._append(t)}}const Ug=[1779033703,-1150833019,1013904242,-1521486534,1359893119,-1694144372,528734635,1541459225],Xx=[1116352408,1899447441,-1245643825,-373957723,961987163,1508970993,-1841331548,-1424204075,-670586216,310598401,607225278,1426881987,1925078388,-2132889090,-1680079193,-1046744716,-459576895,-272742522,264347078,604807628,770255983,1249150122,1555081692,1996064986,-1740746414,-1473132947,-1341970488,-1084653625,-958395405,-710438585,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,-2117940946,-1838011259,-1564481375,-1474664885,-1035236496,-949202525,-778901479,-694614492,-200395387,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,-2067236844,-1933114872,-1866530822,-1538233109,-1090935817,-965641998],Ks=[];class Jx extends Yx{constructor(){super(...arguments);Ht(this,"_hash",new Us([...Ug]))}reset(){super.reset(),this._hash=new Us([...Ug])}_doProcessBlock(n,s){const i=this._hash.words;let o=i[0],a=i[1],c=i[2],u=i[3],h=i[4],m=i[5],_=i[6],b=i[7];for(let v=0;v<64;v++){if(v<16)Ks[v]=n[s+v]|0;else{const S=Ks[v-15],C=(S<<25|S>>>7)^(S<<14|S>>>18)^S>>>3,M=Ks[v-2],U=(M<<15|M>>>17)^(M<<13|M>>>19)^M>>>10;Ks[v]=C+Ks[v-7]+U+Ks[v-16]}const w=h&m^~h&_,A=o&a^o&c^a&c,B=(o<<30|o>>>2)^(o<<19|o>>>13)^(o<<10|o>>>22),H=(h<<26|h>>>6)^(h<<21|h>>>11)^(h<<7|h>>>25),I=b+H+w+Xx[v]+Ks[v],T=B+A;b=_,_=m,m=h,h=u+I|0,u=c,c=a,a=o,o=I+T|0}i[0]=i[0]+o|0,i[1]=i[1]+a|0,i[2]=i[2]+c|0,i[3]=i[3]+u|0,i[4]=i[4]+h|0,i[5]=i[5]+m|0,i[6]=i[6]+_|0,i[7]=i[7]+b|0}finalize(n){super.finalize(n);const s=this._nDataBytes*8,i=this._data.sigBytes*8;return this._data.words[i>>>5]|=128<<24-i%32,this._data.words[(i+64>>>9<<4)+14]=Math.floor(s/4294967296),this._data.words[(i+64>>>9<<4)+15]=s,this._data.sigBytes=this._data.words.length*4,this._process(),this._hash}}function Qx(e){return new Jx().finalize(e).toString(Vx)}function Zx(e,t={}){const n=typeof e=="string"?e:vu(e,t);return Qx(n).slice(0,10)}function N1(e){return{}}const Fg=globalThis.requestIdleCallback||(e=>{const t=Date.now(),n={didTimeout:!1,timeRemaining:()=>Math.max(0,50-(Date.now()-t))};return setTimeout(()=>{e(n)},1)}),L1=globalThis.cancelIdleCallback||(e=>{clearTimeout(e)}),D1=e=>{const t=yn();t.isHydrating?t.hooks.hookOnce("app:suspense:resolve",()=>{Fg(()=>e())}):Fg(()=>e())},eI=e=>e==="defer"||e===!1;function tI(...e){var w;const t=typeof e[e.length-1]=="string"?e.pop():void 0;
32typeof e[0]!="string"&&e.unshift(t);let[n,s,i={}]=e;if(typeof n!="string")throw new TypeError("[nuxt] [asyncData] key must be a string.");if(typeof s!="function")throw new TypeError("[nuxt] [asyncData] handler must be a function.");const o=yn(),a=s,c=()=>Bi.value,u=()=>o.isHydrating?o.payload.data[n]:o.static.data[n];i.server=i.server??!0,i.default=i.default??c,i.getCachedData=i.getCachedData??u,i.lazy=i.lazy??!1,i.immediate=i.immediate??!0,i.deep=i.deep??Bi.deep,i.dedupe=i.dedupe??"cancel";const h=()=>i.getCachedData(n,o)!=null;if(!o._asyncData[n]||!i.immediate){(w=o.payload._errors)[n]??(w[n]=Bi.errorValue);const A=i.deep?It:Iy;o._asyncData[n]={data:A(i.getCachedData(n,o)??i.default()),pending:It(!h()),error:kp(o.payload._errors,n),status:It("idle"),_default:i.default}}const m={...o._asyncData[n]};delete m._default,m.refresh=m.execute=(A={})=>{if(o._asyncDataPromises[n]){if(eI(A.dedupe??i.dedupe))return o._asyncDataPromises[n];o._asyncDataPromises[n].cancelled=!0}if((A._initial||o.isHydrating&&A._initial!==!1)&&h())return Promise.resolve(i.getCachedData(n,o));m.pending.value=!0,m.status.value="pending";const B=new Promise((H,I)=>{try{H(a(o))}catch(T){I(T)}}).then(async H=>{if(B.cancelled)return o._asyncDataPromises[n];let I=H;i.transform&&(I=await i.transform(H)),i.pick&&(I=sI(I,i.pick)),o.payload.data[n]=I,m.data.value=I,m.error.value=Bi.errorValue,m.status.value="success"}).catch(H=>{if(B.cancelled)return o._asyncDataPromises[n];m.error.value=sh(H),m.data.value=yo(i.default()),m.status.value="error"}).finally(()=>{B.cancelled||(m.pending.value=!1,delete o._asyncDataPromises[n])});return o._asyncDataPromises[n]=B,o._asyncDataPromises[n]},m.clear=()=>nI(o,n);const _=()=>m.refresh({_initial:!0}),b=i.server!==!1&&o.payload.serverRendered;{const A=In();if(A&&!A._nuxtOnBeforeMountCbs){A._nuxtOnBeforeMountCbs=[];const I=A._nuxtOnBeforeMountCbs;Fp(()=>{I.forEach(T=>{T()}),I.splice(0,I.length)}),mi(()=>I.splice(0,I.length))}b&&o.isHydrating&&(m.error.value||h())?(m.pending.value=!1,m.status.value=m.error.value?"error":"success"):A&&(o.payload.serverRendered&&o.isHydrating||i.lazy)&&i.immediate?A._nuxtOnBeforeMountCbs.push(_):i.immediate&&_();const B=Br();if(i.watch){const I=Gs(i.watch,()=>m.refresh());B&&Xa(I)}const H=o.hook("app:data:refresh",async I=>{(!I||I.includes(n))&&await m.refresh()});B&&Xa(H)}const v=Promise.resolve(o._asyncDataPromises[n]).then(()=>m);return Object.assign(v,m),v}function nI(e,t){t in e.payload.data&&(e.payload.data[t]=void 0),t in e.payload._errors&&(e.payload._errors[t]=Bi.errorValue),e._asyncData[t]&&(e._asyncData[t].data.value=void 0,e._asyncData[t].error.value=Bi.errorValue,e._asyncData[t].pending.value=!1,e._asyncData[t].status.value="idle"),t in e._asyncDataPromises&&(e._asyncDataPromises[t].cancelled=!0,e._asyncDataPromises[t]=void 0)}function sI(e,t){const n={};for(const s of t)n[s]=e[s];return n}function Y(e,t,n){const[s={},i]=typeof t=="string"?[{},t]:[t,n],o=pt(()=>Is(e)),a=s.key||Zx([i,typeof o.value=="string"?o.value:"",...iI(s)]);if(!a||typeof a!="string")throw new TypeError("[nuxt] [useFetch] key must be a string: "+a);if(!e)throw new Error("[nuxt] [useFetch] request is missing.");const c=a===i?"$f"+a:a;if(!s.baseURL&&typeof o.value=="string"&&o.value[0]==="/"&&o.value[1]==="/")throw new Error('[nuxt] [useFetch] the request URL must not start with "//".');const{server:u,lazy:h,default:m,transform:_,pick:b,watch:v,immediate:w,getCachedData:A,deep:B,dedupe:H,...I}=s,T=_n({...BR,...I,cache:typeof s.cache=="boolean"?void 0:s.cache}),S={server:u,lazy:h,default:m,transform:_,pick:b,immediate:w,getCachedData:A,deep:B,dedupe:H,watch:v===!1?[]:[T,o,...v||[]]};let C;return tI(c,()=>{C?.abort?.(),C=typeof AbortController<"u"?new AbortController:{};const U=Is(s.timeout);let D;return U&&(D=setTimeout(()=>C.abort(),U),C.signal.onabort=()=>clearTimeout(D)),(s.$fetch||globalThis.$fetch)(o.value,{signal:C.signal,...T}).finally(()=>{clearTimeout(D)})},S)}function iI(e){const t=[Is(e.method)?.toUpperCase()||"GET",Is(e.baseURL)];for(const n of[e.params||e.query]){const s=Is(n);if(!s)continue;const i={};for(const[o,a]of Object.entries(s))i[Is(o)]=Is(a);t.push(i)}return t}let Sa=null,Ea=null,wa=null,Su=null;function G1(e){Su=e}async function oI(){return Sa||(Sa=(async()=>{const{initializeApp:e}=await st(async()=>{const{initializeApp:t}=await import("./Bku5b180.js").then(n=>n.a);return{initializeApp:t}},[],import.meta.url);if(!Su)throw new Error("Firebase config not set. Call setFirebaseConfig first.");return e(Su)})(),Sa)}async function sn(){return Ea||(Ea=st(()=>import("./Bku5b180.js").then(e=>e.i),[],import.meta.url),Ea)}async function fn(){return wa||(wa=(async()=>{const e=await oI();return(await sn()).getAuth(e)})(),wa)}async function U1(){const e=await fn(),t=await sn();return await t.setPersistence(e,t.browserLocalPersistence),e}async function rd(e,t){const n=await fn();return(await sn()).createUserWithEmailAndPassword(n,e,t)}async function rI(e,t){const n=await fn();
vendor: 4,399 bytes, lines 32-36
32return(await sn()).signInWithEmailAndPassword(n,e,t)}async function Bg(e){const t=await fn();return(await sn()).signInWithPopup(t,e)}async function aI(e){const t=await fn();return(await sn()).signInWithCustomToken(t,e)}async function lI(){const e=await fn();return(await sn()).signOut(e)}async function cI(e){const t=await fn();return(await sn()).sendPasswordResetEmail(t,e)}async function dI(e){const t=await fn();return(await sn()).updatePassword(t.currentUser,e)}async function uI(e){const t=await fn(),n=await sn(),s=n.EmailAuthProvider.credential(t.currentUser.email,e);return n.reauthenticateWithCredential(t.currentUser,s)}async function Hg(){const e=await sn();return new e.GoogleAuthProvider}async function pI(e){return(await sn()).getAdditionalUserInfo(e)}async function hI(e){return(await sn()).deleteUser(e)}async function fI(e){const t=await fn();return(await sn()).onAuthStateChanged(t,e)}/*!
33 * pinia v2.1.7
34 * (c) 2023 Eduardo San Martin Morote
35 * @license MIT
36 */let Db;const sc=e=>Db=e,Gb=Symbol();function Eu(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var rr;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(rr||(rr={}));function F1(){const e=Gl(!0),t=e.run(()=>It({}));let n=[],s=[];const i=Hl({install(o){sc(i),i._a=o,o.provide(Gb,i),o.config.globalProperties.$pinia=i,s.forEach(a=>n.push(a)),s=[]},use(o){return this._a?n.push(o):s.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return i}const Ub=()=>{};function $g(e,t,n,s=Ub){e.push(t);const i=()=>{const o=e.indexOf(t);o>-1&&(e.splice(o,1),s())};return!n&&Br()&&Xa(i),i}function Ai(e,...t){e.slice().forEach(n=>{n(...t)})}const gI=e=>e();function wu(e,t){e instanceof Map&&t instanceof Map&&t.forEach((n,s)=>e.set(s,n)),e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],i=e[n];Eu(i)&&Eu(s)&&e.hasOwnProperty(n)&&!ht(s)&&!Ls(s)?e[n]=wu(i,s):e[n]=s}return e}const mI=Symbol();function yI(e){return!Eu(e)||!e.hasOwnProperty(mI)}const{assign:Ts}=Object;function _I(e){return!!(ht(e)&&e.effect)}function bI(e,t,n,s){const{state:i,actions:o,getters:a}=t,c=n.state.value[e];let u;function h(){c||(n.state.value[e]=i?i():{});const m=My(n.state.value[e]);return Ts(m,o,Object.keys(a||{}).reduce((_,b)=>(_[b]=Hl(pt(()=>{sc(n);const v=n._s.get(e);return a[b].call(v,v)})),_),{}))}return u=Fb(e,h,t,n,s,!0),u}function Fb(e,t,n={},s,i,o){let a;const c=Ts({actions:{}},n),u={deep:!0};let h,m,_=[],b=[],v;const w=s.state.value[e];!o&&!w&&(s.state.value[e]={}),It({});let A;function B(D){let k;h=m=!1,typeof D=="function"?(D(s.state.value[e]),k={type:rr.patchFunction,storeId:e,events:v}):(wu(s.state.value[e],D),k={type:rr.patchObject,payload:D,storeId:e,events:v});const F=A=Symbol();cs().then(()=>{A===F&&(h=!0)}),m=!0,Ai(_,k,s.state.value[e])}const H=o?function(){const{state:k}=n,F=k?k():{};this.$patch(g=>{Ts(g,F)})}:Ub;function I(){a.stop(),_=[],b=[],s._s.delete(e)}function T(D,k){return function(){sc(s);const F=Array.from(arguments),g=[],W=[];function Z(se){g.push(se)}function P(se){W.push(se)}Ai(b,{args:F,name:D,store:C,after:Z,onError:P});let pe;try{pe=k.apply(this&&this.$id===e?this:C,F)}catch(se){throw Ai(W,se),se}return pe instanceof Promise?pe.then(se=>(Ai(g,se),se)).catch(se=>(Ai(W,se),Promise.reject(se))):(Ai(g,pe),pe)}}const S={_p:s,$id:e,$onAction:$g.bind(null,b),$patch:B,$reset:H,$subscribe(D,k={}){const F=$g(_,D,k.detached,()=>g()),g=a.run(()=>Gs(()=>s.state.value[e],W=>{(k.flush==="sync"?m:h)&&D({storeId:e,type:rr.direct,events:v},W)},Ts({},u,k)));return F},$dispose:I},C=_n(S);s._s.set(e,C);const U=(s._a&&s._a.runWithContext||gI)(()=>s._e.run(()=>(a=Gl()).run(t)));for(const D in U){const k=U[D];if(ht(k)&&!_I(k)||Ls(k))o||(w&&yI(k)&&(ht(k)?k.value=w[D]:wu(k,w[D])),s.state.value[e][D]=k);else if(typeof k=="function"){const F=T(D,k);U[D]=F,c.actions[D]=k}}return Ts(C,U),Ts(we(C),U),Object.defineProperty(C,"$state",{get:()=>s.state.value[e],set:D=>{B(k=>{Ts(k,D)})}}),s._p.forEach(D=>{Ts(C,a.run(()=>D({store:C,app:s._a,pinia:s,options:c})))}),w&&o&&n.hydrate&&n.hydrate(C.$state,w),h=!0,m=!0,C}function ic(e,t,n){let s,i;const o=typeof t=="function";typeof e=="string"?(s=e,i=o?n:t):(i=e,s=e.id);function a(c,u){const h=Jl();return c=c||(h?Ds(Gb,null):null),c&&sc(c),c=Db,c._s.has(s)||(o?Fb(s,t,i,c):bI(s,i,c
vendor: 5,983 bytes, line 36
36)),c._s.get(s)}return a.$id=s,a}const Jr={TOP_LEFT:"top-left",TOP_RIGHT:"top-right",TOP_CENTER:"top-center",BOTTOM_LEFT:"bottom-left",BOTTOM_RIGHT:"bottom-right",BOTTOM_CENTER:"bottom-center"},ro={LIGHT:"light",DARK:"dark",COLORED:"colored",AUTO:"auto"},qt={INFO:"info",SUCCESS:"success",WARNING:"warning",ERROR:"error",DEFAULT:"default"},vI={BOUNCE:"bounce",SLIDE:"slide",FLIP:"flip",ZOOM:"zoom",NONE:"none"},SI={dangerouslyHTMLString:!1,multiple:!0,position:Jr.TOP_RIGHT,autoClose:5e3,transition:"bounce",hideProgressBar:!1,pauseOnHover:!0,pauseOnFocusLoss:!0,closeOnClick:!0,className:"",bodyClassName:"",style:{},progressClassName:"",progressStyle:{},role:"alert",theme:"light"},EI={rtl:!1,newestOnTop:!1,toastClassName:""},Bb={...SI,...EI};qt.DEFAULT;var We=(e=>(e[e.COLLAPSE_DURATION=300]="COLLAPSE_DURATION",e[e.DEBOUNCE_DURATION=50]="DEBOUNCE_DURATION",e.CSS_NAMESPACE="Toastify",e))(We||{}),Tu=(e=>(e.ENTRANCE_ANIMATION_END="d",e))(Tu||{});const Hb={enter:"Toastify--animate Toastify__bounce-enter",exit:"Toastify--animate Toastify__bounce-exit",appendPosition:!0},$b={enter:"Toastify--animate Toastify__slide-enter",exit:"Toastify--animate Toastify__slide-exit",appendPosition:!0},Wb={enter:"Toastify--animate Toastify__zoom-enter",exit:"Toastify--animate Toastify__zoom-exit"},zb={enter:"Toastify--animate Toastify__flip-enter",exit:"Toastify--animate Toastify__flip-exit"},Wg="Toastify--animate Toastify__none-enter";function Vb(e,t=!1){var n;let s=Hb;if(!e||typeof e=="string")switch(e){case"flip":s=zb;break;case"zoom":s=Wb;break;case"slide":s=$b;break}else s=e;if(t)s.enter=Wg;else if(s.enter===Wg){const i=(n=s.exit.split("__")[1])==null?void 0:n.split("-")[0];s.enter=`Toastify--animate Toastify__${i}-enter`}return s}function wI(e){return e.containerId||String(e.position)}const oc="will-unmount";function TI(e=Jr.TOP_RIGHT){return!!document.querySelector(`.${We.CSS_NAMESPACE}__toast-container--${e}`)}function CI(e=Jr.TOP_RIGHT){return`${We.CSS_NAMESPACE}__toast-container--${e}`}function AI(e,t,n=!1){const s=[`${We.CSS_NAMESPACE}__toast-container`,`${We.CSS_NAMESPACE}__toast-container--${e}`,n?`${We.CSS_NAMESPACE}__toast-container--rtl`:null].filter(Boolean).join(" ");return Ji(t)?t({position:e,rtl:n,defaultClassName:s}):`${s} ${t||""}`}function RI(e){var t;const{position:n,containerClassName:s,rtl:i=!1,style:o={}}=e,a=We.CSS_NAMESPACE,c=CI(n),u=document.querySelector(`.${a}`),h=document.querySelector(`.${c}`),m=!!h&&!((t=h.className)!=null&&t.includes(oc)),_=u||document.createElement("div"),b=document.createElement("div");b.className=AI(n,s,i),b.dataset.testid=`${We.CSS_NAMESPACE}__toast-container--${n}`,b.id=wI(e);for(const v in o)if(Object.prototype.hasOwnProperty.call(o,v)){const w=o[v];b.style[v]=w}return u||(_.className=We.CSS_NAMESPACE,document.body.appendChild(_)),m||_.appendChild(b),b}function Cu(e){var t,n,s;const i=typeof e=="string"?e:((t=e.currentTarget)==null?void 0:t.id)||((n=e.target)==null?void 0:n.id),o=document.getElementById(i);o&&o.removeEventListener("animationend",Cu,!1);try{ao[i].unmount(),(s=document.getElementById(i))==null||s.remove(),delete ao[i],delete At[i]}catch{}}const ao=_n({});function qb(e,t){const n=document.getElementById(String(t));n&&(ao[n.id]=e)}function hl(e,t=!0){const n=String(e);if(!ao[n])return;const s=document.getElementById(n);s&&s.classList.add(oc),t?(xI(e),s&&s.addEventListener("animationend",Cu,!1)):Cu(n),Ln.items=Ln.items.filter(i=>i.containerId!==e)}function jb(e){for(const t in ao)hl(t,e);Ln.items=[]}function ih(e,t){const n=document.getElementById(e.toastId);if(n){let s=e;s={...s,...Vb(s.transition)};const i=s.appendPosition?`${s.exit}--${s.position}`:s.exit;n.className+=` ${i}`,t&&t(n)}}function xI(e){for(const t in At)if(t===e)for(const n of At[t]||[])ih(n)}function II(e){const t=ui().find(n=>n.toastId===e);return t?.containerId}function oh(e){return document.getElementById(e)}function OI(e){const t=oh(e.containerId);return t&&t.classList.contains(oc)}function zg(e){var t;const n=Vn(e.content)?we(e.content.props):null;return n??we((t=e.data)!=null?t:{})}function kI(e){return e?Ln.items.filter(t=>t.containerId===e).length>0:Ln.items.length>0}function Kb(){if(Ln.items.length>0){const e=Ln.items.shift();ar(e?.toastContent,e?.toastProps)}}const At=_n({}),Ln=_n({items:[]});function ui(){const e=we(At);return Object.values(e).reduce((t,n)=>[...t,...n],[])}function Yb(e){return ui().find(t=>t.toastId===e)}function ar(e,t={}){if(OI(t)){const n=oh(t.containerId);n&&n.addEventListener("animationend",Au.bind(null,e,t),!1)}else Au(e,t)}function Au(e,t={}){const n=oh(t.containerId);n&&n.removeEventListener("animationend",Au.bind(null,e,t),!1);const s=At[t.containerId]||[],i=s.length>0;if(!i&&!TI(t.position)){const o=RI(t),a=db(ev,t);a.mount(o),qb(a,o.id)}i&&!t.updateId&&(t.position=s[0].position),cs(()=>{t.updateId?Zt.update(t):Zt.add(e,t)})}const Zt={add(e,t){const{containerId:n=""}=t;n&&(At[n]=At[n]||[],At[n].find(s=>s.toastId===t.toastId)||setTimeout(()=>{var s,i;t.newestOnTop?(s=At[n])==null||s.unshift(t):(i=At[n])==null||i.push(t),t.onOpen&&t.onOpen(zg(t))},t.delay||0))},remove(e){if(e){const t=II(e);if(t){const n=At[t];let s=n.find(i=>i.toastId===e);At[t]=n.filter(i=>i.toastId!==e),!At[t].length&&!kI(t)&&hl(t,!1),Kb(),cs(()=>{s!=null&&s.onClose&&(s.onClose(zg(s)),s=void 0)})}}},update(e={}){const{containerId:t=""}=e;if(t&&e.updateId){At[t]=At[t]||[];const n=At[t].find(o=>o.toastId===e.toastId),s=n?.position!==e.position||n?.transition!==e.transition,i={...e,disabledEnterTransition:!s,updateId:void 0};Zt.dismissForce(e?.toastId),setTimeout(()=>{ee(i.content,i)},e.delay||0)}},clear(e,t=!0){e?hl(e,t):jb(t)},dismissCallback(e){var t;const n=(t=e.currentTarget)==null?void 0:t.id,s=document.getElementById(n);s&&(s.removeEventListener("animationend",Zt.dismissCallback,!1),setTimeout(()=>{Zt.remove(n)}))},dismiss(e){if(e){const t=ui();for(const n of t)if(n.toastId===e){ih(n,s=>{s.addEventListener("animationend",Zt.dismissCallback,!1)});break}}}
36,dismissForce(e){if(e){const t=ui();for(const n of t)if(n.toastId===e){const s=document.getElementById(e);s&&(s.remove(),s.removeEventListener("animationend",Zt.dismissCallback,!1),Zt.remove(e));break}}}},rh=_n({}),Or=_n({});function Xb(){return Math.random().toString(36).substring(2,9)}function MI(e){return typeof e=="number"&&!isNaN(e)}function Ru(e){return typeof e=="string"}function Ji(e){return typeof e=="function"}function rc(...e){return qn(...e)}function $a(e){return typeof e=="object"&&(!!(e!=null&&e.render)||!!(e!=null&&e.setup)||typeof e?.type=="object")}function PI(e={}){rh[`${We.CSS_NAMESPACE}-default-options`]=e}function NI(){return rh[`${We.CSS_NAMESPACE}-default-options`]||Bb}function LI(){return document.documentElement.classList.contains("dark")?"dark":"light"}var lr=(e=>(e[e.Enter=0]="Enter",e[e.Exit=1]="Exit",e))(lr||{});const Jb={containerId:{type:[String,Number],required:!1,default:""},clearOnUrlChange:{type:Boolean,required:!1,default:!0},disabledEnterTransition:{type:Boolean,required:!1,default:!1},dangerouslyHTMLString:{type:Boolean,required:!1,default:!1},multiple:{type:Boolean,required:!1,default:!0},limit:{type:Number,required:!1,default:void 0},position:{type:String,required:!1,default:Jr.TOP_LEFT},bodyClassName:{type:String,required:!1,default:""},autoClose:{type:[Number,Boolean],required:!1,default:!1},closeButton:{type:[Boolean,Function,Object],required:!1,default:void 0},transition:{type:[String,Object],required:!1,default:"bounce"},hideProgressBar:{type:Boolean,required:!1,default:!1},pauseOnHover:{type:Boolean,required:!1,default:!0},pauseOnFocusLoss:{type:Boolean,required:!1,default:!0},closeOnClick:{type:Boolean,required:!1,default:!0},progress:{type:Number,required:!1,default:void 0},progressClassName:{type:String,required:!1,default:""},toastStyle:{type:Object,required:!1,default(){return{}}},progressStyle:{type:Object,required:!1,default(){return{}}},role:{type:String,required:!1,default:"alert"},theme:{type:String,required:!1,default:ro.AUTO},content:{type:[String,Object,Function],required:!1,default:""},toastId:{type:[String,Number],required:!1,default:""},data:{type:[Object,String],required:!1,default(){return{}}},type:{type:String,required:!1,default:qt.DEFAULT},icon:{type:[Boolean,String,Number,Object,Function],required:!1,default:void 0},delay:{type:Number,required:!1,default:void 0},onOpen:{type:Function,required:!1,default:void 0},onClose:{type:Function,required:!1,default:void 0},onClick:{type:Function,required:!1,default:void 0},isLoading:{type:Boolean,required:!1,default:void 0},rtl:{type:Boolean,required:!1,default:!1},toastClassName:{type:String,required:!1,default:""},updateId:{type:[String,Number],required:!1,default:""}},DI={autoClose:{type:[Number,Boolean],required:!0},isRunning:{type:Boolean,required:!1,default:void 0},type:{type:String,required:!1,default:qt.DEFAULT},theme:{type:String,required:!1,default:ro.AUTO},hide:{type:Boolean,required:!1,default:void 0},className:{type:[String,Function],required:!1,default:""},controlledProgress:{type:Boolean,required:!1,default:void 0},rtl:{type:Boolean,required:!1,default:void 0},isIn:{type:Boolean,required:!1,default:void 0},progress:{type:Number,required:!1,default:void 0},closeToast:{type:Function,required:!1,default:void 0}},GI=yi({name:"ProgressBar",props:DI,setup(e,{attrs:t}){const n=It(),s=pt(()=>e.hide?"true":"false"),i=pt(()=>({...t.style||{},animationDuration:`${e.autoClose===!0?5e3:e.autoClose}ms`,animationPlayState:e.isRunning?"running":"paused",opacity:e.hide||e.autoClose===!1?0:1,transform:e.controlledProgress?`scaleX(${e.progress})`:"none"})),o=pt(()=>[`${We.CSS_NAMESPACE}__progress-bar`,e.controlledProgress?`${We.CSS_NAMESPACE}__progress-bar--controlled`:`${We.CSS_NAMESPACE}__progress-bar--animated`,`${We.CSS_NAMESPACE}__progress-bar-theme--${e.theme}`,`${We.CSS_NAMESPACE}__progress-bar--${e.type}`,e.rtl?`${We.CSS_NAMESPACE}__progress-bar--rtl`:null].filter(Boolean).join(" ")),a=pt(()=>`${o.value} ${t?.class||""}`),c=()=>{n.value&&(n.value.onanimationend=null,n.value.ontransitionend=null)},u=()=>{e.isIn&&e.closeToast&&e.autoClose!==!1&&(e.closeToast(),c())}
36,h=pt(()=>e.controlledProgress?null:u),m=pt(()=>e.controlledProgress?u:null);return Xi(()=>{n.value&&(c(),n.value.onanimationend=h.value,n.value.ontransitionend=m.value)}),()=>xe("div",{ref:n,role:"progressbar","aria-hidden":s.value,"aria-label":"notification timer",class:a.value,style:i.value},null)}}),UI=yi({name:"CloseButton",inheritAttrs:!1,props:{theme:{type:String,required:!1,default:ro.AUTO},type:{type:String,required:!1,default:ro.LIGHT},ariaLabel:{type:String,required:!1,default:"close"},closeToast:{type:Function,required:!1,default:void 0}},setup(e){return()=>xe("button",{class:`${We.CSS_NAMESPACE}__close-button ${We.CSS_NAMESPACE}__close-button--${e.theme}`,type:"button",onClick:t=>{t.stopPropagation(),e.closeToast&&e.closeToast(t)},"aria-label":e.ariaLabel},[xe("svg",{"aria-hidden":"true",viewBox:"0 0 14 16"},[xe("path",{"fill-rule":"evenodd",d:"M7.71 8.23l3.75 3.75-1.48 1.48-3.75-3.75-3.75 3.75L1 11.98l3.75-3.75L1 4.48 2.48 3l3.75 3.75L9.98 3l1.48 1.48-3.75 3.75z"},null)])])}}),ac=({theme:e,type:t,path:n,...s})=>xe("svg",qn({viewBox:"0 0 24 24",width:"100%",height:"100%",fill:e==="colored"?"currentColor":`var(--toastify-icon-color-${t})`},s),[xe("path",{d:n},null)]);function FI(e){return xe(ac,qn(e,{path:"M23.32 17.191L15.438 2.184C14.728.833 13.416 0 11.996 0c-1.42 0-2.733.833-3.443 2.184L.533 17.448a4.744 4.744 0 000 4.368C1.243 23.167 2.555 24 3.975 24h16.05C22.22 24 24 22.044 24 19.632c0-.904-.251-1.746-.68-2.44zm-9.622 1.46c0 1.033-.724 1.823-1.698 1.823s-1.698-.79-1.698-1.822v-.043c0-1.028.724-1.822 1.698-1.822s1.698.79 1.698 1.822v.043zm.039-12.285l-.84 8.06c-.057.581-.408.943-.897.943-.49 0-.84-.367-.896-.942l-.84-8.065c-.057-.624.25-1.095.779-1.095h1.91c.528.005.84.476.784 1.1z"}),null)}function BI(e){return xe(ac,qn(e,{path:"M12 0a12 12 0 1012 12A12.013 12.013 0 0012 0zm.25 5a1.5 1.5 0 11-1.5 1.5 1.5 1.5 0 011.5-1.5zm2.25 13.5h-4a1 1 0 010-2h.75a.25.25 0 00.25-.25v-4.5a.25.25 0 00-.25-.25h-.75a1 1 0 010-2h1a2 2 0 012 2v4.75a.25.25 0 00.25.25h.75a1 1 0 110 2z"}),null)}function HI(e){return xe(ac,qn(e,{path:"M12 0a12 12 0 1012 12A12.014 12.014 0 0012 0zm6.927 8.2l-6.845 9.289a1.011 1.011 0 01-1.43.188l-4.888-3.908a1 1 0 111.25-1.562l4.076 3.261 6.227-8.451a1 1 0 111.61 1.183z"}),null)}function $I(e){return xe(ac,qn(e,{path:"M11.983 0a12.206 12.206 0 00-8.51 3.653A11.8 11.8 0 000 12.207 11.779 11.779 0 0011.8 24h.214A12.111 12.111 0 0024 11.791 11.766 11.766 0 0011.983 0zM10.5 16.542a1.476 1.476 0 011.449-1.53h.027a1.527 1.527 0 011.523 1.47 1.475 1.475 0 01-1.449 1.53h-.027a1.529 1.529 0 01-1.523-1.47zM11 12.5v-6a1 1 0 012 0v6a1 1 0 11-2 0z"}),null)}function WI(){return xe("div",{class:`${We.CSS_NAMESPACE}__spinner`},null)}const xu={info:BI,warning:FI,success:HI,error:$I,spinner:WI},zI=e=>e in xu;function VI({theme:e,type:t,isLoading:n,icon:s}){let i;const o={theme:e,type:t};return n?i=xu.spinner():s===!1?i=void 0:$a(s)?i=we(s):Ji(s)?i=s(o):Vn(s)?i=Nn(s,o):Ru(s)||MI(s)?i=s:zI(t)&&(i=xu[t](o)),i}const qI=()=>{};function jI(e,t,n=We.COLLAPSE_DURATION){const{scrollHeight:s,style:i}=e,o=n;requestAnimationFrame(()=>{i.minHeight="initial",i.height=s+"px",i.transition=`all ${o}ms`,requestAnimationFrame(()=>{i.height="0",i.padding="0",i.margin="0",setTimeout(t,o)})})}function Qb(e){const t=It(!1),n=It(!1),s=It(!1),i=It(lr.Enter),o=_n({...e,appendPosition:e.appendPosition||!1,collapse:typeof e.collapse>"u"?!0:e.collapse,collapseDuration:e.collapseDuration||We.COLLAPSE_DURATION}),a=o.done||qI,c=pt(()=>o.appendPosition?`${o.enter}--${o.position}`:o.enter),u=pt(()=>o.appendPosition?`${o.exit}--${o.position}`:o.exit),h=pt(()=>e.pauseOnHover?{onMouseenter:B,onMouseleave:A}:{});function m(){const I=c.value.split(" ");b().addEventListener(Tu.ENTRANCE_ANIMATION_END,A,{once:!0});const T=C=>{const M=b();C.target===M&&(M.dispatchEvent(new Event(Tu.ENTRANCE_ANIMATION_END)),M.removeEventListener("animationend",T),M.removeEventListener("animationcancel",T),i.value===lr.Enter&&C.type!=="animationcancel"&&M.classList.remove(...I))},S=()=>{const C=b();C.classList.add(...I),C.addEventListener("animationend",T),C.addEventListener("animationcancel",T)};e.pauseOnFocusLoss&&v(),S()}function _(){if(!b())return;const I=()=>{const S=b();S.removeEventListener("animationend",I),o.collapse?jI(S,a,o.collapseDuration):a()},T=()=>{const S=b();i.value=lr.Exit,S&&(S.className+=` ${u.value}`,S.addEventListener("animationend",I))};n.value||(s.value?I():setTimeout(T))}function b(){return e.toastRef.value}function v(){document.hasFocus()||B(),window.addEventListener("focus",A),window.addEventListener("blur",B)}function w(){window.removeEventListener("focus",A),window.removeEventListener("blur",B)}function A(){(!e.loading.value||e.isLoading===void 0)&&(t.value=!0)}function B(){t.value=!1}function H(I){I&&(I.stopPropagation(),I.preventDefault()),n.value=!1}return Xi(_),Xi(()=>{const I=ui();n.value=I.findIndex(T=>T.toastId===o.toastId)>-1}),Xi(()=>{e.isLoading!==void 0&&(e.loading.value?B():A())}),gi(m),mi(()=>{e.pauseOnFocusLoss&&w()}),{isIn:n,isRunning:t,hideToast:H,eventHandlers:h}}const KI=yi({name:"ToastItem",inheritAttrs:!1,props:Jb,setup(e){const t=It(),n=pt(()=>!!e.isLoading),s=pt(()=>e.progress!==void 0&&e.progress!==null),i=pt(()=>VI(e)),o=pt(()=>[`${We.CSS_NAMESPACE}__toast`,`${We.CSS_NAMESPACE}__toast-theme--${e.theme}`,`${We.CSS_NAMESPACE}__toast--${e.type}`,e.rtl?`${We.CSS_NAMESPACE}
36__toast--rtl`:void 0,e.toastClassName||""].filter(Boolean).join(" ")),{isRunning:a,isIn:c,hideToast:u,eventHandlers:h}=Qb({toastRef:t,loading:n,done:()=>{Zt.remove(e.toastId)},...Vb(e.transition,e.disabledEnterTransition),...e});return()=>xe("div",qn({id:e.toastId,class:o.value,style:e.toastStyle||{},ref:t,"data-testid":`toast-item-${e.toastId}`,onClick:m=>{e.closeOnClick&&u(),e.onClick&&e.onClick(m)}},h.value),[xe("div",{role:e.role,"data-testid":"toast-body",class:`${We.CSS_NAMESPACE}__toast-body ${e.bodyClassName||""}`},[i.value!=null&&xe("div",{"data-testid":`toast-icon-${e.type}`,class:[`${We.CSS_NAMESPACE}__toast-icon`,e.isLoading?"":`${We.CSS_NAMESPACE}--animate-icon ${We.CSS_NAMESPACE}__zoom-enter`].join(" ")},[$a(i.value)?Fi(we(i.value),{theme:e.theme,type:e.type}):Ji(i.value)?i.value({theme:e.theme,type:e.type}):i.value]),xe("div",{"data-testid":"toast-content"},[$a(e.content)?Fi(we(e.content),{toastProps:we(e),closeToast:u,data:e.data}):Ji(e.content)?e.content({toastProps:we(e),closeToast:u,data:e.data}):e.dangerouslyHTMLString?Fi("div",{innerHTML:e.content}):e.content])]),(e.closeButton===void 0||e.closeButton===!0)&&xe(UI,{theme:e.theme,closeToast:m=>{m.stopPropagation(),m.preventDefault(),u()}},null),$a(e.closeButton)?Fi(we(e.closeButton),{closeToast:u,type:e.type,theme:e.theme}):Ji(e.closeButton)?e.closeButton({closeToast:u,type:e.type,theme:e.theme}):null,xe(GI,{className:e.progressClassName,style:e.progressStyle,rtl:e.rtl,theme:e.theme,isIn:c.value,type:e.type,hide:e.hideProgressBar,isRunning:a.value,autoClose:e.autoClose,controlledProgress:s.value,progress:e.progress,closeToast:e.isLoading?void 0:u},null)])}});let cr=0;function Zb(){typeof window>"u"||(cr&&window.cancelAnimationFrame(cr),cr=window.requestAnimationFrame(Zb),Or.lastUrl!==window.location.href&&(Or.lastUrl=window.location.href,Zt.clear()))}const ev=yi({name:"ToastifyContainer",inheritAttrs:!1,props:Jb,setup(e){const t=pt(()=>e.containerId),n=pt(()=>At[t.value]||[]),s=pt(()=>n.value.filter(i=>i.position===e.position));return gi(()=>{typeof window<"u"&&e.clearOnUrlChange&&window.requestAnimationFrame(Zb)}),mi(()=>{typeof window<"u"&&cr&&(window.cancelAnimationFrame(cr),Or.lastUrl="")}),()=>xe(Rt,null,[s.value.map(i=>{const{toastId:o=""}=i;return xe(KI,qn({key:o},i),null)})])}});let ad=!1;function tv(){const e=[];return ui().forEach(t=>{const n=document.getElementById(t.containerId);n&&!n.classList.contains(oc)&&e.push(t)}),e}function YI(e){const t=tv().length,n=e??0;return n>0&&t+Ln.items.length>=n}function XI(e){YI(e.limit)&&!e.updateId&&Ln.items.push({toastId:e.toastId,containerId:e.containerId,toastContent:e.content,toastProps:e})}function Vs(e,t,n={}){if(ad)return;n=rc(NI(),{type:t}
36,we(n)),(!n.toastId||typeof n.toastId!="string"&&typeof n.toastId!="number")&&(n.toastId=Xb()),n={...n,content:e,containerId:n.containerId||String(n.position)};const s=Number(n?.progress);return s<0&&(n.progress=0),s>1&&(n.progress=1),n.theme==="auto"&&(n.theme=LI()),XI(n),Or.lastUrl=window.location.href,n.multiple?Ln.items.length?n.updateId&&ar(e,n):ar(e,n):(ad=!0,ee.clearAll(void 0,!1),setTimeout(()=>{ar(e,n)},0),setTimeout(()=>{ad=!1},390)),n.toastId}const ee=(e,t)=>Vs(e,qt.DEFAULT,t);ee.info=(e,t)=>Vs(e,qt.DEFAULT,{...t,type:qt.INFO});ee.error=(e,t)=>Vs(e,qt.DEFAULT,{...t,type:qt.ERROR});ee.warning=(e,t)=>Vs(e,qt.DEFAULT,{...t,type:qt.WARNING});ee.warn=ee.warning;ee.success=(e,t)=>Vs(e,qt.DEFAULT,{...t,type:qt.SUCCESS});ee.loading=(e,t)=>Vs(e,qt.DEFAULT,rc(t,{isLoading:!0,autoClose:!1,closeOnClick:!1,closeButton:!1,draggable:!1}));ee.dark=(e,t)=>Vs(e,qt.DEFAULT,rc(t,{theme:ro.DARK}));ee.remove=e=>{e?Zt.dismiss(e):Zt.clear()};ee.clearAll=(e,t)=>{cs(()=>{Zt.clear(e,t)})};ee.isActive=e=>{let t=!1;return t=tv().findIndex(n=>n.toastId===e)>-1,t};ee.update=(e,t={})=>{setTimeout(()=>{const n=Yb(e);if(n){const s=we(n),{content:i}=s,o={...s,...t,toastId:t.toastId||e,updateId:Xb()},a=o.render||i;delete o.render,Vs(a,o.type,o)}},0)};ee.done=e=>{ee.update(e,{isLoading:!1,progress:1})};ee.promise=JI;function JI(e,{pending:t,error:n,success:s},i){var o,a,c;let u;const h={...i||{},autoClose:!1};t&&(u=Ru(t)?ee.loading(t,h):ee.loading(t.render,{...h,...t}));const m={autoClose:(o=i?.autoClose)!=null?o:!0,closeOnClick:(a=i?.closeOnClick)!=null?a:!0,closeButton:(c=i?.autoClose)!=null?c:null,isLoading:void 0,draggable:null,delay:100},_=(v,w,A)=>{if(w==null){ee.remove(u);return}const B={type:v,...m,...i,data:A},H=Ru(w)?{render:w}:w;return u?ee.update(u,{...B,...H,isLoading:!1}):ee(H.render,{...B,...H,isLoading:!1}),A},b=Ji(e)?e():e;return b.then(v=>{_("success",s,v)}).catch(v=>{_("error",n,v)}),b}ee.POSITION=Jr;ee.THEME=ro;ee.TYPE=qt;ee.TRANSITIONS=vI;const nv={install(e,t={}){sv(t)}};typeof window<"u"&&(window.Vue3Toastify=nv);function sv(e={}){const t=rc(Bb,e);PI(t)}const B1=Object.freeze(Object.defineProperty({__proto__:null,AnimationStep:lr,Bounce:Hb,Flip:zb,Slide:$b,ToastActions:Zt,ToastifyContainer:ev,Zoom:Wb,addExitAnimateToNode:ih,appendFromQueue:Kb,cacheRenderInstance:qb,clearContainers:jb,containerInstances:ao,default:nv,doAppend:ar,getAllToast:ui,getToast:Yb,globalCache:Or,globalOptions:rh,queue:Ln,removeContainer:hl,toast:ee,toastContainers:At,updateGlobalOptions:sv,useCssTransition:Qb},Symbol.toStringTag,{value:"Module"})),QI=["aol.com","att.net","comcast.net","facebook.com","gmail.com","gmx.com","googlemail.com","google.com","hotmail.com","hotmail.co.uk","mac.com","me.com","mail.com","msn.com","live.com","sbcglobal.net","verizon.net","yahoo.com","yahoo.co.uk","email.com","games.com","gmx.net","hush.com","hushmail.com","icloud.com","inbox.com","lavabit.com","love.com","outlook.com","pobox.com","rocketmail.com","safe-mail.net","wow.com","ygm.com","ymail.com","zoho.com","fastmail.fm","yandex.com","bellsouth.net","charter.net","cox.net","earthlink.net","juno.com","btinternet.com","virginmedia.com","blueyonder.co.uk","freeserve.co.uk","live.co.uk","ntlworld.com","o2.co.uk","orange.net","sky.com","talktalk.co.uk","tiscali.co.uk","virgin.net","wanadoo.co.uk","bt.com","sina.com","qq.com","naver.com","hanmail.net","daum.net","nate.com","yahoo.co.jp","yahoo.co.kr","yahoo.co.id","yahoo.co.in","yahoo.com.sg","yahoo.com.ph","hotmail.fr","live.fr","laposte.net","yahoo.fr","wanadoo.fr","orange.fr","gmx.fr","sfr.fr","neuf.fr","free.fr","gmx.de","hotmail.de","live.de","online.de","t-online.de","web.de","yahoo.de","mail.ru","rambler.ru","yandex.ru","ya.ru","list.ru","hotmail.be","live.be","skynet.be","voo.be","tvcablenet.be","telenet.be","hotmail.com.ar","live.com.ar","yahoo.com.ar","fibertel.com.ar","speedy.com.ar","arnet.com.ar","hotmail.com.mx","yahoo.com.mx","live.com.mx","hotmail.es","prodigy.net.mx","yahoo.com.br","hotmail.com.br","outlook.com.br","uol.com.br","bol.com.br","terra.com.br","ig.com.br","itelefonica.com.br","r7.com","zipmail.com.br","globo.com","globomail.com","oi.com.br","proton.me","protonmail.com","protonmail.ch","pm.me","tutanota.com","tuta.io","tutamail.com","hey.com","seznam.cz"],ZI=new Set(QI);function eO(e){if(!e||typeof e!="string")return"";const t=e.lastIndexOf("@");return t===-1?"":e.slice(t+1).trim().toLowerCase()}function tO(e){const t=eO(e);return t?!ZI.has(t):!0}function nO(e){try{const t=e?.member;if(!t)return;uy({id:t.id!=null?String(t.id):void 0,email:t.email||void 0,team_id:e?.team?.i
36d??void 0,account_id:e?.account?.Id??void 0})}catch{}}function sO(){try{uy(null)}catch{}}function iO(e={}){try{Gr("auth.transient_null_recovered",{level:"info",tags:{auth_event:"transient_null_recovered"},extra:e})}catch{}}function fl(e,t={}){try{Gr("auth.forced_logout",{level:"warning",tags:{auth_event:"forced_logout",reason:e||"unknown"},extra:t})}catch{}}function oO(e,t={}){try{uw({category:"auth",level:"warning",message:"auth/info request failed",data:{status:e??"unknown",...t}})}catch{}}const H1=10,ni="X-Token",$1="X-Admin-Token",W1="Loading Data...",z1="No Data",V1=0,q1=0,j1=0,K1=1,Y1="https://sendx-cdn.s3.us-east-1.amazonaws.com/app/SendXPlaceholder.png",X1=()=>Ir().public.env,K=()=>Ir().public.appServer,J1=()=>Ir().public.stripePublicKey,Q1=[46796,2,19,36545],Z1={type:"doc",content:[{type:"logo",attrs:{src:"https://maily.to/brand/logo.png",alt:null,title:null,"maily-component":"logo",size:"md",alignment:"left"}},{type:"spacer",attrs:{height:"xl"}},{type:"heading",attrs:{textAlign:"left",level:2},content:[{type:"text",marks:[{type:"bold"}],text:"Discover Our Platform"}]},{type:"paragraph",attrs:{textAlign:"left"},content:[{type:"text",text:"Are you ready to transform your email communication? An advanced ESP that helps you craft, automate, and optimize your email campaigns effortlessly."}]},{type:"paragraph",attrs:{textAlign:"left"},content:[{type:"text",text:"Elevate your email marketing! Click below to try it out:"}]},{type:"button",attrs:{text:"Get Started →",url:"",alignment:"left",variant:"filled",borderRadius:"round",buttonColor:"#000000",textColor:"#ffffff"}},{type:"spacer",attrs:{height:"xl"}},{type:"paragraph",attrs:{textAlign:"left"},content:[{type:"text",text:"Join our growing community of users and developers — together, we’re shaping the future of email marketing."}]},{type:"paragraph",attrs:{textAlign:"left"},content:[{type:"text",text:"Regards,"},{type:"hardBreak"},{type:"text",text:"The Team"}]}]},ah='{"type":"doc","content":[{"type":"paragraph","attrs":{"textAlign":null,"showIfKey":null}}]}',rO=`<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html dir="ltr" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta name="viewport" content="width=device-width"/><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/><meta name="x-apple-disable-message-reformatting"/><link rel="preconnect" href="https://fonts.googleapis.com"/><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin="anonymous"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><meta name="x-apple-disable-message-reformatting"/><meta name="format-detection" content="telephone=no,address=no,email=no,date=no,url=no"/><meta name="color-scheme" content="light"/><meta name="supported-color-schemes" content="light"/><!--$--><style></style><style>
37    @font-face {
38      font-family: 'Inter';
39      font-style: normal;
40      font-weight: 400;
41      mso-font-alt: 'sans-serif';
42      src: url(https://rsms.me/inter/font-files/Inter-Regular.woff2?v=3.19) format('woff2');
43    }
44
45    * {
46      font-family: 'Inter', sans-serif;
47    }
48  </style><style>blockquote,h1,h2,h3,img,li,ol,p,ul{margin-top:0;margin-bottom:0}@media only screen and (max-width:425px){.tab-row-full{width:100%!important}.tab-col-full{display:block!important;width:100%!important}.tab-pad{padding:0!important}}</style></head><body style="margin:0"><table align="center" width="100%" border="0" cellPadding="0" cellSpacing="0" role="presentation" style="max-width:600px;min-width:300px;width:100%;margin-left:auto;margin-right:auto;padding:0.5rem"><tbody><tr style="width:100%"><td><p style="font-size:15px;line-height:26.25px;margin:0 0 20px 0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#374151"> </p></td></tr></tbody></table><!--/$--></body></html>`,Ta={"Product Changelog":{type:"doc",content:[{type:"image",attrs:{src:"https://placehold.co/64x64/0a0a0a/ffffff?text=Logo",alt:null,title:null,width:32,height:32,alignment:"center",externalLink:null,isExternalLinkVariable:!1,isSrcVariable:!1,showIfKey:null}},{type:"spacer",attrs:{height:40,showIfKey:null}},{type:"paragraph",attrs:{textAlign:"center",showIfKey:null},content:[{type:"text",marks:[{type:"bold"},{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"MARCH 12, 2026 · v2.4.0"}]},{type:"spacer",attrs:{height:8,showIfKey:null}},{type:"heading",attrs:{textAlign:"center",level:1,showIfKey:null},content:[{type:"text",text:"What's new this month"}]},{type:"spacer",attrs:{height:12,showIfKey:null}},{type:"paragraph",attrs:{textAlign:"center",showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#525252",fontFamily:null}}],text:"Smoother search, mobile fixes, and your most-requested feature."}]},{type:"spacer",attrs:{height:48,showIfKey:null}},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"},{type:"textStyle",attrs:{color:"#10b981",fontFamily:null}}],text:"● ADDED"}]},{type:"spacer",attrs:{height:8,showIfKey:null}},{type:"bulletList",content:[{type:"listItem",attrs:{color:""},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"}],text:"Full-text search across templates"},{type:"text",text:" — Find any template by name, category, or content. Type / from anywhere to jump in."}]}]}
48,{type:"listItem",attrs:{color:""},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"}],text:"Custom merge tags"},{type:"text",text:" — Personalize emails with any contact attribute, including custom fields."}]}]}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"},{type:"textStyle",attrs:{color:"#f59e0b",fontFamily:null}}],text:"● IMPROVED"}]},{type:"spacer",attrs:{height:8,showIfKey:null}},{type:"bulletList",content:[{type:"listItem",attrs:{color:""},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"}],text:"Mobile editor performance"},{type:"text",text:" — 40% faster on phones with low memory."}]}]},{type:"listItem",attrs:{color:""},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"}],text:"Inbox preview"},{type:"text",text:" — Now renders Outlook 2019 and Gmail dark mode accurately."}]}]}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"},{type:"textStyle",attrs:{color:"#6b7280",fontFamily:null}}],text:"● FIXED"}]},{type:"spacer",attrs:{height:8,showIfKey:null}},{type:"bulletList",content:[{type:"listItem",attrs:{color:""},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"Bullet lists rendering inconsistently in older email clients."}]}]},{type:"listItem",attrs:{color:""},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"Drag-handle occasionally disappearing on long emails."}]}]}]},{type:"spacer",attrs:{height:48,showIfKey:null}},{type:"horizontalRule"},{type:"spacer",attrs:{height:24,showIfKey:null}},{type:"paragraph",attrs:{textAlign:"center",showIfKey:null},content:[{type:"text",marks:[{type:"underline"},{type:"textStyle",attrs:{color:"#0a0a0a",fontFamily:null}},{type:"link",attrs:{href:"",target:"_blank",rel:"noopener noreferrer nofollow",class:"mly-no-underline",isUrlVariable:!1}}],text:"Read the full changelog →"}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"footer",attrs:{textAlign:"center","maily-component":"footer"},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"Your Company · 1234 Example Street, Example, DE 19801"},{type:"hardBreak"},{type:"text",marks:[{type:"underline"},{type:"textStyle",attrs:{color:"#64748b",fontFamily:null}},{type:"link",attrs:{href:"",target:"_blank",rel:"noopener noreferrer nofollow",class:"mly-no-underline",isUrlVariable:!1}}],text:"Unsubscribe"}]}]},"Founder's Note":{type:"doc",content:[{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"columns",attrs:{showIfKey:null,gap:12},content:[{type:"column",attrs:{columnId:"fn-avatar",width:"auto",verticalAlign:"middle"},content:[{type:"image",attrs:{src:"https://placehold.co/128x128/e5e5e5/737373?text=%E2%80%89",alt:null,title:null,width:40,height:40,alignment:"left",externalLink:null,isExternalLinkVariable:!1,isSrcVariable:!1,showIfKey:null}}]},{type:"column",attrs:{columnId:"fn-meta",width:"auto",verticalAlign:"middle"},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"}],text:"Sara Chen"}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"Co-founder · 5 min read"}]}]}]},{type:"spacer",attrs:{height:24,showIfKey:null}},{type:"horizontalRule"},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"heading",attrs:{textAlign:"left",level:2,showIfKey:null},content:[{type:"text",text:"A note on focus"}]},{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"When we started this company two years ago, we made a list of everything we wanted to build. It was thirty things long."}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"We've shipped six of them. And every time we've been tempted to chase the other twenty-four, the things we've already built have suffered."}]},{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"blockquote",content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"The best companies aren't the ones that build the most things. They're the ones that build the right things, beautifully."}]}]}
48,{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"So this quarter we're saying no to a lot. No to features that fit a niche use case. No to integrations we'd build only because a big customer asked. No to entire markets that don't share our point of view."}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"And yes to depth. Yes to making the six things we already do feel like ten. Yes to writing more emails like this one."}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",text:"Thanks for reading,"},{type:"hardBreak"},{type:"text",marks:[{type:"bold"}],text:"— Sara"}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"horizontalRule"},{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"paragraph",attrs:{textAlign:"center",showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"Forwarded this? "},{type:"text",marks:[{type:"underline"},{type:"textStyle",attrs:{color:"#0a0a0a",fontFamily:null}},{type:"link",attrs:{href:"",target:"_blank",rel:"noopener noreferrer nofollow",class:"mly-no-underline",isUrlVariable:!1}}],text:"Subscribe →"}]},{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"footer",attrs:{textAlign:"center","maily-component":"footer"},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"Your Company · 1234 Example Street, Example, DE 19801"},{type:"hardBreak"},{type:"text",marks:[{type:"underline"},{type:"textStyle",attrs:{color:"#64748b",fontFamily:null}},{type:"link",attrs:{href:"",target:"_blank",rel:"noopener noreferrer nofollow",class:"mly-no-underline",isUrlVariable:!1}}],text:"Unsubscribe"}]}]},"Customer Story":{type:"doc",content:[{type:"image",attrs:{src:"https://placehold.co/64x64/0a0a0a/ffffff?text=Logo",alt:null,title:null,width:32,height:32,alignment:"left",externalLink:null,isExternalLinkVariable:!1,isSrcVariable:!1,showIfKey:null}},{type:"spacer",attrs:{height:40,showIfKey:null}},{type:"paragraph",attrs:{textAlign:"left",showIfKey:null},content:[{type:"text",marks:[{type:"bold"},{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"CUSTOMER STORY"}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"heading",attrs:{textAlign:"left",level:1,showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#10b981",fontFamily:null}}],text:"“"}]},{type:"spacer",attrs:{height:16,showIfKey:null}},{type:"heading",attrs:{textAlign:"left",level:2,showIfKey:null},content:[{type:"text",text:"We went from sending newsletters once a month to running ten lifecycle campaigns in parallel. Same team. Same headcount. 3× the revenue."}]},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"columns",attrs:{showIfKey:null,gap:16},content:[{type:"column",attrs:{columnId:"cs-avatar",width:"auto",verticalAlign:"middle"},content:[{type:"image",attrs:{src:"https://placehold.co/128x128/e5e5e5/737373?text=%E2%80%89",alt:null,title:null,width:56,height:56,alignment:"left",externalLink:null,isExternalLinkVariable:!1,isSrcVariable:!1,showIfKey:null}}]},{type:"column",attrs:{columnId:"cs-meta",width:"auto",verticalAlign:"middle"},content:[{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"bold"}],text:"Maya Patel"}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#525252",fontFamily:null}}],text:"Head of Lifecycle, Acme Co"}]}]}]},{type:"spacer",attrs:{height:40,showIfKey:null}},{type:"horizontalRule"},{type:"spacer",attrs:{height:24,showIfKey:null}},{type:"columns",attrs:{showIfKey:null,gap:24},content:[{type:"column",attrs:{columnId:"cs-metric-1",width:"auto",verticalAlign:"top"},content:[{type:"heading",attrs:{textAlign:null,level:2,showIfKey:null},content:[{type:"text",text:"3×"}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"revenue growth"}]}]}
48,{type:"column",attrs:{columnId:"cs-metric-2",width:"auto",verticalAlign:"top"},content:[{type:"heading",attrs:{textAlign:null,level:2,showIfKey:null},content:[{type:"text",text:"60%"}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"faster shipping"}]}]},{type:"column",attrs:{columnId:"cs-metric-3",width:"auto",verticalAlign:"top"},content:[{type:"heading",attrs:{textAlign:null,level:2,showIfKey:null},content:[{type:"text",text:"10"}]},{type:"paragraph",attrs:{textAlign:null,showIfKey:null},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"active campaigns"}]}]}]},{type:"spacer",attrs:{height:24,showIfKey:null}},{type:"horizontalRule"},{type:"spacer",attrs:{height:32,showIfKey:null}},{type:"button",attrs:{text:"Read the full story →",isTextVariable:!1,url:"",isUrlVariable:!1,alignment:"left",variant:"filled",borderRadius:"smooth",buttonColor:"#0a0a0a",textColor:"#ffffff",showIfKey:null,paddingTop:12,paddingRight:28,paddingBottom:12,paddingLeft:28}},{type:"spacer",attrs:{height:40,showIfKey:null}},{type:"footer",attrs:{textAlign:"center","maily-component":"footer"},content:[{type:"text",marks:[{type:"textStyle",attrs:{color:"#737373",fontFamily:null}}],text:"Your Company · 1234 Example Street, Example, DE 19801"},{type:"hardBreak"},{type:"text",marks:[{type:"underline"},{type:"textStyle",attrs:{color:"#64748b",fontFamily:null}},{type:"link",attrs:{href:"",target:"_blank",rel:"noopener noreferrer nofollow",class:"mly-no-underline",isUrlVariable:!1}}],text:"Unsubscribe"}]}]},"Blank Template":JSON.parse(ah)},Ca={"Product Changelog":`<!DOCTYPE html><html dir="ltr" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/><meta name="color-scheme" content="light"/><style>@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);*{font-family:'Inter',sans-serif;box-sizing:border-box}body{margin:0;padding:0;background:#ffffff}</style></head><body><table align="center" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="max-width:600px;margin:0 auto;padding:40px 32px"><tbody><tr><td><img src="https://placehold.co/64x64/0a0a0a/ffffff?text=Logo" width="32" height="32" alt="" style="display:block;margin:0 auto"/><div style="height:40px"></div><p style="text-align:center;margin:0;font-size:11px;font-weight:700;color:#737373;letter-spacing:1.5px">MARCH 12, 2026 · v2.4.0</p><div style="height:8px"></div><h1 style="text-align:center;margin:0;font-size:34px;font-weight:800;color:#0a0a0a;line-height:1.2">What's new this month</h1><div style="height:12px"></div><p style="text-align:center;margin:0;font-size:15px;line-height:1.6;color:#525252">Smoother search, mobile fixes, and your most-requested feature.</p><div style="height:48px"></div><p style="margin:0;font-size:11px;font-weight:700;color:#10b981;letter-spacing:1.5px">● ADDED</p><div style="height:8px"></div><ul style="margin:0;padding-left:20px;font-size:15px;line-height:1.7;color:#0a0a0a"><li style="margin-bottom:8px"><strong>Full-text search across templates</strong> — Find any template by name, category, or content. Type / from anywhere to jump in.</li><li><strong>Custom merge tags</strong> — Personalize emails with any contact attribute, including custom fields.</li></ul><div style="height:32px"></div><p style="margin:0;font-size:11px;font-weight:700;color:#f59e0b;letter-spacing:1.5px">● IMPROVED</p><div style="height:8px"></div><ul style="margin:0;padding-left:20px;font-size:15px;line-height:1.7;color:#0a0a0a"><li style="margin-bottom:8px"><strong>Mobile editor performance</strong> — 40% faster on phones with low memory.</li><li><strong>Inbox preview</strong> — Now renders Outlook 2019 and Gmail dark mode accurately.</li></ul><div style="height:32px"></div><p style="margin:0;font-size:11px;font-weight:700;color:#6b7280;letter-spacing:1.5px">● FIXED</p><div style="height:8px"></div><ul style="margin:0;padding-left:20px;font-size:15px;line-height:1.7;color:#0a0a0a"><li style="margin-bottom:8px">Bullet lists rendering inconsistently in older email clients.</li><li>Drag-handle occasionally disappearing on long emails.</li></ul><div style="height:48px"></div><hr style="border:0;border-top:1px solid #e5e5e5;margin:0"/><div style="height:24px"></div><p style="text-align:center;margin:0;font-size:15px"><a href="#" style="color:#0a0a0a;text-decoration:underline;font-weight:500">Read the full changelog →</a></p><div style="height:32px"></div><p style="text-align:center;margin:0;font-size:13px;color:#737373">Your Company · 1234 Example Street, Example, DE 19801<br/><a href="#" style="color:#64748b;text-decoration:underline">Unsubscribe</a></p></td></tr></tbody></table></body></html>`,"Founder's Note":`<!DOCTYPE html><html dir="ltr" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/><meta name="color-scheme" content="light"/><style>@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Serif+4:wght@400;600&display=swap);*{font-family:'Inter',sans-serif;box-sizing:border-box}body{margin:0;padding:0;background:#fafaf9}</style></head><body><table align="center" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="max-width:600px;margin:0 auto;padding:48px 40px"><tbody><tr><td><table><tbody><tr><td style="vertical-align:middle;padding-right:12px"><img src="https://placehold.co/128x128/e5e5e5/737373?text=%E2%80%89" width="40" height="40" alt="" style="display:block;border-radius:50%"/></td><td style="vertical-align:middle"><p style="margin:0;font-size:15px;font-weight:600;color:#0a0a0a">Sara Chen</p><p style="margin:0;font-size:13px;color:#737373">Co-founder · 5 min read</p></td></tr></tbody></table><div style="height:24px"></div><hr style="border:0;border-top:1px solid #e5e5e5;margin:0"/><div style="height:32px"></div><h2 style="margin:0;font-size:28px;font-weight:700;color:#0a0a0a;line-height:1.3">A note on focus</h2><div style="height:16px"></div><p style="margin:0 0 16px 0;font-size:16px;line-height:1.7;color:#1f2937">When we started this company two years ago, we made a list of everything we wanted to build. It was thirty things long.</p><p style="margin:0;font-size:16px;line-height:1.7;color:#1f2937">We've shipped six of them. And every time we've been tempted to chase the other twenty-four, the things we've already built have suffered.</p><div style="height:16px"></div><blockquote style="margin:0;padding:0 0 0 20px;border-left:3px solid #0a0a0a;font-family:'Source Serif 4',Georgia,serif;font-size:19px;line-height:1.6;color:#0a0a0a;font-style:italic">The best companies aren't the ones that build the most things. They're the ones that build the right things, beautifully.</blockquote><div style="height:16px"></div><p style="margin:0 0 16px 0;font-size:16px;line-height:1.7;color:#1f2937">So this quarter we're saying no to a lot. No to features that fit a niche use case. No to integrations we'd build only because a big customer asked. No to entire markets that don't share our point of view.</p><p style="margin:0;font-size:16px;line-height:1.7;color:#1f2937">And yes to depth. Yes to making the six things we already do feel like ten. Yes to writing more emails like this one.</p><div style="height:32px"></div><p style="margin:0;font-size:16px;line-height:1.7;color:#1f2937">Thanks for reading,<br/><strong>— Sara</strong></p><div style="height:32px"></div><hr style="border:0;border-top:1px solid #e5e5e5;margin:0"/><div style="height:16px"></div><p style="text-align:center;margin:0;font-size:14px;color:#737373">Forwarded this? <a href="#" style="color:#0a0a0a;text-decoration:underline;font-weight:500">Subscribe →</a></p><div style="height:16px"></div><p style="text-align:center;margin:0;font-size:13px;color:#737373">Your Company · 1234 Example Street, Example, DE 19801<br/><a href="#" style="color:#64748b;text-decoration:underline">Unsubscribe</a></p></td></tr></tbody></table></body></html>`,"Customer Story":`<!DOCTYPE html><html dir="ltr" lang="en"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><meta content="text/html; charset=UTF-8" http-equiv="Content-Type"/><meta name="color-scheme" content="light"/><style>@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);*{font-family:'Inter',sans-serif;box-sizing:border-box}body{margin:0;padding:0;background:#ffffff}</style></head><body><table align="center" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="max-width:600px;margin:0 auto;padding:48px 40px"><tbody><tr><td><img src="https://placehold.co/64x64/0a0a0a/ffffff?text=Logo" width="32" height="32" alt="" style="display:block"/><div style="height:40px"></div><p style="margin:0;font-size:11px;font-weight:700;color:#737373;letter-spacing:2px">CUSTOMER STORY</p><div style="height:32px"></div><span style="display:block;font-size:96px;font-weight:800;color:#10b981;line-height:0.8;font-family:Georgia,serif">"</span><div style="height:16px"></div><p style="margin:0;font-size:24px;font-weight:600;color:#0a0a0a;line-height:1.4">We went from sending newsletters once a month to running ten lifecycle campaigns in parallel. Same team. Same headcount. 3× the revenue.</p><div style="height:32px"></div><table><tbody><tr><td style="vertical-align:middle;padding-right:16px"><img src="https://placehold.co/128x128/e5e5e5/737373?text=%E2%80%89" width="56" height="56" alt="" style="display:block;border-radius:50%"/></td><td style="vertical-align:middle"><p style="margin:0;font-size:16px;font-weight:600;color:#0a0a0a">Maya Patel</p><p style="margin:0;font-size:14px;color:#525252">Head of Lifecycle, Acme Co</p></td></tr></tbody></table><div style="height:40px"></div><hr style="border:0;border-top:1px solid #e5e5e5;margin:0"/><div style="height:24px"></div><table style="width:100%"><tbody><tr><td style="width:33.3%;vertical-align:top"><p style="margin:0;font-size:32px;font-weight:800;color:#0a0a0a;line-height:1">3×</p><p style="margin:4px 0 0 0;font-size:13px;color:#737373">revenue growth</p></td><td style="width:33.3%;vertical-align:top"><p style="margin:0;font-size:32px;font-weight:800;color:#0a0a0a;line-height:1">60%</p><p style="margin:4px 0 0 0;font-size:13px;color:#737373">faster shipping</p></td><td style="width:33.3%;vertical-align:top"><p style="margin:0;font-size:32px;font-weight:800;color:#0a0a0a;line-height:1">10</p><p style="margin:4px 0 0 0;font-size:13px;color:#737373">active campaigns</p></td></tr></tbody></table><div style="height:24px"></div><hr style="border:0;border-top:1px solid #e5e5e5;margin:0"/><div style="height:32px"></div><a href="#" style="display:inline-block;background:#0a0a0a;color:#ffffff;padding:12px 28px;border-radius:6px;text-decoration:none;font-size:15px;font-weight:500">Read the full story →</a><div style="height:40px"></div><p style="text-align:center;margin:0;font-size:13px;color:#737373">Your Company · 1234 Example Street, Example, DE 19801<br/><a href="#" style="color:#64748b;text-decoration:underline">Unsubscribe</a></p></td></tr></tbody></table></body></html>`,"Blank Template":""},eN=[{folder:"Custom",usecase:0,is_global:!0,id:1,title:"Blank Template",thumbnail:"",templateCode:Ta["Blank Template"],htmlCode:Ca["Blank Template"]},{folder:"Custom",usecase:0,is_global:!0,id:2,title:"Product Changelog",thumbnail:"/template-thumbnails/product-changelog.png",templateCode:Ta["Product Changelog"],htmlCode:Ca["Product Changelog"]},{folder:"Custom",usecase:0,is_global:!0,id:3,title:"Founder's Note",thumbnail:"/template-thumbnails/founders-note.png",templateCode:Ta["Founder's Note"],htmlCode:Ca["Founder's Note"]},{folder:"Custom",usecase:0,is_global:!0,id:4,title:"Customer Story",thumbnail:"/template-thumbnails/customer-story.png",templateCode:Ta["Customer Story"],htmlCode:Ca["Customer Story"]}],tN={Data:{LogoUrl:"",Links:[{Label:"Home",Url:"#"},{Label:"Publish",Url:"#"},{Label:"About",Url:"#"}],Headline:"Our Blog",CompanyDescription:"Insights, updates, and stories from our team. Subscribe to stay in the loop.",AuthorName:"Editorial Team",CompanyName:"Your Company",Campaigns:[{Id:1,Title:"How We Redesigned Our Onboarding Flow",CardUrl:"#",ImageUrl:"",ImageAlt:"How We Redesigned Our Onboarding Flow",Datetime:"2025-03-10",TimeAgo:"2 days ago",Count:"84",AuthorUrl:"#",AuthorName:"Editorial Team",LogoUrl:""},{Title:"5 Lessons from Scaling to 10,000 Users",CardUrl:"#",ImageUrl:"",ImageAlt:"5 Lessons from Scaling to 10,000 Users",Datetime:"2025-03-09",TimeAgo:"3 days ago",Count:"62",AuthorUrl:"#",AuthorName:"Editorial Team",LogoUrl:""},{Title:"Building a Culture of Writing",CardUrl:"#",ImageUrl:"",ImageAlt:"Building a Culture of Writing",Datetime:"2025-03-05",TimeAgo:"1 week ago",Count:"47",AuthorUrl:"#",AuthorName:"Editorial Team",LogoUrl:""}
48],PrimaryBackgroundColor:"#ffffff",SecondaryBackgroundColor:"#f9fafb",HeaderTextColor:"#111827",BodyTextColor:"#374151",ButtonTextColor:"#ffffff",ButtonBackgroundColor:"#111827",LinksColor:"#2563eb",OverlineTextColor:"#6b7280",FooterTextColor:"#6b7280",ArchiveTitleColor:"#111827",ArchiveTitle:"Newsletter Publish",HeaderFont:"Inter",BodyFont:"Inter",FacebookUrl:"",TwitterUrl:"",InstagramUrl:"",LinkedinUrl:""},NavbarTemplate:"template1.html",FooterTemplate:"template1.html",AuthorTemplate:"template1.html",CampaignsTemplate:"template1.html",SocialLinksTemplate:"template3.html",SubscribeTemplate:"template1.html",HeroTemplate:"template1.html",Template:"template1.html"},ve=Object.freeze({Home:"/",NotFound:"/404",Error:"/error",Dashboard:"/dashboard",Profile:"/profile",Webhooks:"/webhooks",Team:"/team",Setting:{Billing:"/setting/billing",AccountBilling:"/setting/account-billing",Security:"/setting/security",AccountAccess:"/setting/account-access",Team:{Members:"/setting/team/members"},Branding:{Root:"/setting/branding"},HomePage:"/setting/home-page",Marketplace:{Integrations:"/setting/marketplace/integrations",AddOns:"/setting/marketplace/addon",Partners:"/setting/marketplace/partners"},Integrations:"/setting/integrations",AddOns:"/setting/addons",ContactProperties:{CustomFields:"/setting/custom-properties/custom-fields",CustomEvents:"/setting/custom-properties/custom-events"},Connectors:{Api:"/setting/connectors/api",Webhook:"/setting/connectors/webhook"},WebsiteSettings:{Design:"/setting/website-settings/design"},Setup:{DomainWhitelisting:"/setting/setup/domains",Template:"/setting/setup/template",Editor:"/setting/setup/editor",Sender:"/setting/setup/sender",CompanyInformation:"/setting/setup/company-information",Unsubscribe:"/setting/setup/unsubscribe",Timezone:"/setting/setup/timezone",Tracking:"/setting/setup/tracking"},PreferenceCenter:{Root:"/setting/preference-center",Topics:"/setting/preference-center/topics",Page:"/setting/preference-center/page"},SuppressionCenter:{Root:"/setting/suppression-center"}},SuppressionGroup:{Details:"/suppression-group/details"},Api:"/api",Integration:"/integration",Help:"/help",Login:"/login",Register:"/register",Register2:"/register2",Admin:"/admin",ResetPassword:"/resetpassword",TwoFactorChallenge:"/two-factor-challenge",Onboarding:"/onboarding",MemberOnboarding:"/member-onboarding",Form:{Root:"/form",Popup:"/form/table/popup",Embed:"/form/table/embed",LandingPage:"/form/table/landing-page",Poll:"/form/table/poll",New:{Type:"/form/new/type",Basic:"/form/new/basic",Design:"/form/new/design",Content:"/form/new/content",Position:"/form/new/position",SuccessPage:"/form/new/success-page",Targeting:"/form/new/targeting",Behaviour:"/form/new/behaviour",Success:"/form/new/success"},Edit:{Popup:"/form/popup/edit",Embed:"/form/embedded/edit",LandingPage:"/form/landing-page/edit"},Details:{Overview:"/form/details/overview",Performance:"/form/details/overview/performance",Submission:"/form/details/overview/submission"}},Survey:{Root:"/survey",Table:"/survey/table",New:{Basic:"/survey/new/basic",Design:"/survey/new/design",Builder:"/survey/new/builder",Content:"/survey/new/content",Settings:"/survey/new/settings"},Edit:{Index:"/survey/edit"},Details:{Overview:"/survey/details/overview",Responses:"/survey/details/overview/responses",Performance:"/survey/details/overview/performance"}},Integration:{Root:"/integration"},AddOn:{Root:"/addon"},Poll:{Root:"/polls",New:"/polls/new",Edit:"/polls/edit",Analytics:"/polls"},Template:{Root:"/template",New:"/template/new",Type:"/template/new/type"},Audience:{List:{Home:"/audience/list/table",New:{Import:{SelectFile:"/audience/list/new/import/select-file",MatchFields:"/audience/list/new/import/match-fields"}}},Contact:{Home:"/audience/contact/table",Unsubscribed:"/audience/contact/table/unsubscribed",Bounced:"/audience/contact/table/bounced",MarkedSpam:"/audience/contact/table/markedspam",Active:"/audience/contact/table/active",Analytics:"/audience/contact/table/analytics",New:"/audience/contact/new",Info:{Home:"/audience/contact/info",Timeline:"/audience/contact/info/timeline"},Edit:{Home:"/audience/contact/edit",Timeline:"/audience/contact/edit/timeline"}},Tag:{Home:"/audience/tag/table"},Segment:{Root:"/audience/segment",Home:"/audience/segment/table",New:"/audience/segment/new"}},Campaign:{Root:"/campaign",Newsletter:{Root:"/campaign/newsletter",Home:"/campaign/newsletter/table",Draft:"/campaign/newsletter/table/draft",Scheduled:"/campaign/newsletter/table/scheduled",Sending:"/campaign/newsletter/table/sending",Sent:"/campaign/newsletter/table/sent",Quarantined:"/campaign/newsletter/table/quarantined",Archived:"/campaign/newsletter/table/archived",New:{Sender:"/campaign/newsletter/new/sender",Type:"/campaign/newsletter/new/type",Design:"/campaign/newsletter/new/design",Content:"/campaign/newsletter/new/content",Recipient:"/campaign/newsletter/new/recipient",ReviewAndConfirm:"/campaign/newsletter/new/review",Schedule:"/campaign/newsletter/new/schedule"},Edit:"/campaign/newsletter/edit"},ABTest:{Root:"/campaign/abtest",Home:"/campaign/abtest/table",Draft:"/campaign/abtest/table/draft",Scheduled:"/campaign/abtest/table/scheduled",Testing:"/campaign/abtest/table/testing",Tested:"/campaign/abtest/table/tested",WinnerScheduled:"/campaign/abtest/table/winnerScheduled",WinnerSending:"/campaign/abtest/table/winnerSending",InProgress:"/campaign/abtest/table/inprogress",Finished:"/campaign/abtest/table/sent",Archived:"/campaign/abtest/table/archived",New:{Sender:"/campaign/abtest/new/sender",Type:"/campaign/abtest/new/type",Subject:"/campaign/abtest/new/sender",Design:"/campaign/abtest/new/design",Content:"/campaign/abtest/new/content",Recipient:"/campaign/abtest/new/recipient",ReviewAndConfirm:"/campaign/abtest/new/review",Schedule:"/campaign/abtest/new/schedule"},Edit:"/campaign/abtest/edit"},Drip:{Root:"/campaign/drip",Home:"/campaign/drip/table",Active:"/campaign/drip/table/active",Paused:"/campaign/drip/table/paused",Archived:"/campaign/drip/table/archived",New:{Sender:"/campaign/drip/new/sender",Type:"/campaign/drip/new/type",Content:"/campaign/drip/new/content",Review:"/campaign/drip/new/review",Schedule:"/campaign/drip/new/schedule",TriggerCondition:"/campaign/drip/new/trigger-condition"},Edit:"/campaign/drip/edit"},AutoTrigger:{Root:"/campaign/autotrigger",Home:"/campaign/autotrigger/table",Draft:"/campaign/autotrigger/table/draft",Active:"/campaign/autotrigger/table/active",Archived:"/campaign/autotrigger/table/archived",New:{Sender:"/campaign/autotrigger/new/sender",Type:"/campaign/autotrigger/new/type",Design:"/campaign/autotrigger/new/design",Content:"/campaign/autotrigger/new/content",ReviewAndConfirm:"/campaign/autotrigger/new/review",Trigger:"/campaign/autotrigger/new/trigger"},Edit:"/campaign/autotrigger/edit"},RSS:{Root:"/campaign/rss",Home:"/campaign/rss/table",Draft:"/campaign/rss/table/draft",Active:"/campaign/rss/table/active",Paused:"/campaign/rss/table/paused",Archived:"/campaign/rss/table/archived",New:{Basic:"/campaign/rss/new/basic",Content:"/campaign/rss/new/content",Recipient:"/campaign/rss/new/recipient",Schedule:"/campaign/rss/new/schedule",ReviewAndConfirm:"/campaign/rss/new/review"},Edit:"/campaign/rss/edit"},Report:{Home:"/campaign/report"},Details:{Overview:"/campaign/details/overview",Performance:"/campaign/details/overview/performance"}},Automate:{Root:"/automate",Workflow:{Root:"/automate/workflow",Home:"/automate/workflow/table",Draft:"/automate/workflow/table/draft",Active:"/automate/workflow/table/active",Paused:"/automate/workflow/table/paused",Archived:"/automate/workflow/table/archived",Template:"/automate/workflow/table/template",New:{Home:"/automate/workflow/new",Template:"/automate/workflow/new/template",Edit:"/automate/workflow/new/edit",Timeline:"/automate/workflow/new/timeline",Goal:"/automate/workflow/new/goal"}},Automation:{New:{Name:"/automate/automations/new/name",Configure:"/automate/automations/new/configure"},Info:"/automate/automations/info",Edit:"/automate/automations/edit",Home:"/automate/automations/table"},BulkAction:{Root:"/automate/bulk-action",Home:"/automate/bulk-action/table"}},Post:{Root:"/post",Home:"/post/table",Published:"/post/table/published",Draft:"/post/table/draft",Unpublished:"/post/table/unpublished",Basic:"/p
48ost/basic",Newsletter:"/post/table/newsletter-post",New:{Basic:"/post/new/basic",Design:"/post/new/design",Content:"/post/new/content",ReviewAndConfirm:"/post/new/review",Type:"/post/new/type",Details:"/post/new/details"},Edit:"/post/edit"}}),nN=Object.freeze({PaidSubscribed:"paid_subscribed",WithinFreeUsage:"within_free_usage",FreeEmailsLimitExceeded:"free_emails_limit_exceeded",FreeContactLimitExceeded:"free_contact_limit_exceeded",CardInvalid:"card_invalid",TrialEnded:"trial_ended",ShopifyPaidSubscribed:"shopify_paid_subscribed"}),sN=Object.freeze({LockedBasedOnRisk:0,LockedManually:1,LockedExceededContactLimit:2,LockedPaymentFailed:3,LockedHardBounceThreshold:4}),iN=Object.freeze({TeamLockedBasedOnRisk:0,TeamLockedManually:1,TeamLockedExceededContactLimit:2,TeamLockedPaymentFailed:3,TeamLockedHardBounceThreshold:4}),oN=Object.freeze({ScheduleNow:0,ScheduleDaily:1,ScheduleWeekly:2,ScheduleMonthly:3}),iv=Object.freeze({ScheduleLater:0,SendNow:1,TriggerViaAutomation:2,Recurring:3}),ov=Object.freeze({BroadcastCampaign:0,RSSCampaign:1,ABTestCampaign:2}),qe=Object.freeze({Draft:0,Scheduled:1,Sending:2,Sent:3,Quarantined:4,Evaluating:5,EvaluationFailed:6,WarmingUp:7,WarmingUpPaused:8,SpreadSendingPaused:9}),rN=Object.freeze({Spread:"spread",Blast:"blast",SendNow:"send_now",Autowarmup:"autowarmup",PlainWarmup:"plain_warmup",SmartSend:"smart_send",Timezone:"timezone"}),aN=Object.freeze({ABTestDraft:0,ABTestScheduled:1,ABTestTesting:2,ABTestTested:3,ABTestWinnerScheduled:4,ABTestWinnerSending:5,ABTestFinished:6,ABTestQuarantined:7}),lN=Object.freeze({ClientId:"840f4477-2071-4b5b-a7c9-79cd553fea12",ClientSecret:"S6n6Vl2JvshvZ0nUNnqgRYqJyNuLK8E1b4UHGkKG6FZlOvpCbgj"}),cN=Object.freeze({ClientId:"6d8e7b81-4c69-4707-a148-6c0deebeaab8",ClientSecret:"sZxUeOqpK02J9o66jCpLr8WSnqdT5n1XD4NCpvH5vYobBWwsWxtd"}),dN=[{label:"Yes",value:"1"},{label:"No",value:"0"}],uN=[{label:"True",value:"true"},{label:"False",value:"false"}],pN=[{value:"0",label:"unknown"},{value:"1",label:"via file import"},{value:"2",label:"JS API"},{value:"3",label:"REST API"},{value:"4",label:"Manual addition"},{value:"5",label:"Via Popups"},{value:"6",label:"Via Forms"},{value:"7",label:"Via Landing Pages"},{value:"8",label:"Via InstaPages"},{value:"9",label:"Via SamCart"},{value:"10",label:"Via Woo-Commerce"}],hN=[{value:"gmail",label:"Gmail"},{value:"yahoo",label:"Yahoo"},{value:"aol",label:"AOL"},{value:"microsoft",label:"Microsoft"},{value:"comcast",label:"Comcast"},{value:"yandex",label:"Yandex"},{value:"gmx",label:"GMX"},{value:"mailru",label:"Mail.ru"},{value:"icloud",label:"iCloud"},{value:"zoho",label:"Zoho"},{value:"qq",label:"QQ"},{value:"default",label:"Default"},{value:"att",label:"AT&T"},{value:"office365",label:"Office 365"},{value:"googleworkspace",label:"Google Workspace"},{value:"rackspace",label:"Rackspace"},{value:"zohobusiness",label:"Zoho Business"},{value:"amazonworkmail",label:"Amazon WorkMail"},{value:"proofpoint",label:"Proofpoint"},{value:"mimecast",label:"Mimecast"},{value:"barracuda",label:"Barracuda"},{value:"ciscoironport",label:"Cisco IronPort"},{value:"symantec",label:"Symantec"},{value:"fortinet",label:"Fortinet"},{value:"sophos",label:"Sophos"},{value:"trendmicro",label:"Trend Micro"},{value:"checkpoint",label:"Checkpoint"}],fN=Object.freeze({Hours:0,Days:1}),gN={0:"Modal",1:"Page Takeover",2:"Bar",3:"Slider",4:"Modal Newsletter",5:"Page Takeover Side",6:"Intro Bar",7:"Modal Background",8:"Modal Left Image",9:"Modal Right Image",10:"Modal Background Classic",11:"Modal Background Modern",12:"Modal Background Retro",13:"Modal Left Image Modern",14:"Modal Right Image Modern",15:"Modal Left Image Equal",16:"Modal Right Image Equal",17:"Modal Left Image Equal Retro",18:"Modal Right Image Equal Retro",19:"Modal Left Image Modern Retro",20:"Modal Right Image Modern Retro",21:"Modal Background Minimal",22:"Modal Background Muse",23:"Bar Modern",24:"Bar Minimal",25:"Page Takeover Modern Retro",26:"Page Takeover Left Image Equal",27:"Page Takeover Right Image Equal"},aO=Object.freeze({EntityCampaign:0,EntityABTest:1,EntityPopup:2,EntityLandingPage:3,EntityEmbeddedForm:4}),mN=Object.freeze({subscribes_to_list:"Subscribed to a list",unsubscribes_from_list:"Unsubscribed from a list",confirms_list:"Confirmed to a list",tag_added:"Tag added",tag_removed:"Tag removed",opens_campaign:"Opened newsletter campaign",clicks_link:"Clicked a link in newsletter or auto-trigger campaign",subscribes_to_drip:"Added to a drip campaign",unsubscribes_from_drip:"Removed from a drip campaign",send_push_campaign:"Send webpush campaign",send_contact_activity_email_notification:"Send activity notification email",call_webhook:"Call Webhook",pipedrive_send_contact:"Send contact to P
48ipeDrive",salesforce_send_contact:"Send contact to SalesForce",closeio_send_contact:"Send contact to Close.Io",demio_send_contact:"Send contact to Demio",demio_register_contact:"Register contact on Demio",facebook_add_to_custom_audience:"Add contact to Facebook Custom Audience",facebook_remove_from_custom_audience:"Remove contact from Facebook Custom Audience",opens_drip:"Opened drip campaign",clicks_drip_link:"Clicked a link in drip campaign",completes_drip:"Completed a drip campaign",campaign_replied_to:"Replied to a newsletter campaign",dripstep_replied_to:"Replied to a drip campaign",removed_from_list:"Removed from a list",contact_added_via_popup:"Contact added via popup form",contact_added_via_form:"Contact added via embedded form",contact_added_to_segment:"Added to a segment",contact_removed_from_segment:"Removed from a segment",contact_added_via_landing_page:"Contact added via landing page form",contact_clicks_push_campaign:"Clicked webpush campaign",contact_visited_page:"Contact visited page",global_subscribe:"Global Subscribe",global_unsubscribe:"Unsubscribe Contact",instapage_contact_added:"Contact added via InstaPage",samcart_order_placed:"Order placed via SamCart",woocommerce_order_placed:"Order placed via WooCommerce",woocommerce_customer_created:"Customer created via WooCommerce",samcart_customer_created:"Customer created via SamCart",stripe_customer_created:"Customer created via Stripe",stripe_customer_charge_succeeded:"Customer charged succeeded via Stripe",stripe_customer_charge_failed:"Customer charged failed via Stripe",stripe_customer_charge_refunded:"Customer charged refunded via Stripe",paypal_customer_charge_succeeded:"Customer charged succeeded via Paypal",paypal_customer_charge_failed:"Customer charged failed via Paypal",paypal_customer_charge_refunded:"Customer charged refunded via Paypal",paypal_customer_charge_declined:"Customer charged declined via Paypal",intercom_lead_created:"Lead created via Intercom",intercom_user_created:"User created via Intercom",shopify_checkout_started:"Shopify cart abandoned",shopify_customer_created:"Shopify customer created",shopify_customer_deleted:"Shopify customer deleted",shopify_order_cancelled:"Shopify order cancelled",shopify_order_created:"Shopify order created",shopify_order_fulfilled:"Shopify order fulfilled",submitted_via_form:"Submitted via form",send_campaign:"Send auto-trigger campaign"}),yN=Object.freeze({1:[{id:-1,text:"-- Choose a Trigger --"},{id:0,text:"Subscribed to a list",type:"list"},{id:2,text:"Confirmed to a list",type:"list"},{id:13,text:"Removed from list",type:"list"},{id:3,text:"Tag added",type:"tag"},{id:4,text:"Tag removed",type:"tag"},{id:5,text:"Opened newsletter campaign",type:"campaign"},{id:6,text:"Clicked a link in newsletter or auto-trigger campaign",type:"text"},{id:7,text:"Added to a drip campaign",type:"drip"},{id:8,text:"Opened a drip campaign",type:"drip"},{id:9,text:"Clicked a link in drip",type:"text"},{id:10,text:"Completed a drip campaign",type:"drip"},{id:12,text:"Replied to a drip campaign",type:"drip"},{id:14,text:"Contact added via popup form",type:"popup"},{id:15,text:"Contact added via embedded form",type:"embed"},{id:18,text:"Contact added via landing page form",type:"landing"},{id:16,text:"Added to a segment",type:"segment"},{id:17,text:"Removed from a segment",type:"segment"},{id:20,text:"Contact visited page",type:"text"},{id:21,text:"Unsubscribe Contact"}],2:[{id:-1,text:"-- Choose a Trigger --"},{id:25,text:"New customer created"},{id:24,text:"Placed order"}],3:[{id:-1,text:"-- Choose a Trigger --"},{id:23,text:"Placed order"}],4:[{id:-1,text:"-- Choose a Trigger --"},{id:27,text:"New customer created"},{id:28,text:"Customer charge succeeded"},{id:29,text:"Customer charge failed"},{id:30,text:"Customer charge refunded"}],5:[{id:-1,text:"-- Choose a Trigger --"},{id:31,text:"Customer charge succeeded"},{id:32,text:"Customer charge failed"},{id:33,text:"Customer charge declined"},{id:34,text:"Customer charge refunded"}],6:[{id:-1,text:"-- Choose a Trigger --"},{id:22,text:"Submitted via landing page"}],7:[{id:-1,text:"-- Choose a Trigger --"},{id:35,text:"Intercom lead created"},{id:36,text:"Intercom user created"}],9:[{id:-1,text:"-- Choose a Trigger --"},{id:44,text:"Submitted via form"}],12:[{id:-1,text:"-- Choose a Trigger --"},{id:37,text:"Cart abandoned"},{id:38,text:"New customer"},{id:41,text:"Placed order"},{id:40,text:"Cancelled order"},{id:42,text:"Fulfilled order"}]}),_N=Object.freeze({1:[{id:-1,text:"-- Choose an Action --"},{id:0,text:"Subscribes to a list",type:"list"},{id:2,text:"Confirmed to a list",type:"list"},{id:8,text:"Removed from a list",type:"list"},{id:3,text:"Tag added",type:"tag"},{id:4,text:"Tag removed",type:"tag"},{id:5,text:"Send auto-trigger campaign",type:"autotrigger"},{id:6,text:"Added to a drip campaign",type:"drip"},{id:7,text:"Removed from a drip",type:"drip"},{id:10,text:"Send activity notification email",type:"member"},{id:11,text:"Unsubscribe contact"},{id:12,text:"Global subscribe"},{id:13,text:"Call webhook",type:"text"},{id:21,text:"Delete Contact"}],7:[{id:-1,text:"-- Choose an Action --"},{id:14,text:"Send contact"}],10:[{id:-1,text:"-- Choose an Action --"},{id:18,text:"Register contact",type:"demio"}]}),Be=Object.freeze({Contact:0,Campaign:1,Billing:2,Form:3,Automation:4,Team:5,Member:6,Setting:7,Import:8,BulkAction:9,Templates:10,CustomField:11,RssFeed:12,Domain:13,ApiKey:14,Audience:15,TeamPreferences:16,CustomEvent:17,AddOns:18,WebSettings:19,Notification:20,ContactEdit:21,List:22,Tag:23,Workflows:24}),Xt=Object.freeze({Demio:10,PipeDrive:7,Shopify:12,Stripe:4,Twilio:15,Hubspot:16,Freshdesk:17,Intercom:18,Mailchimp:19,Klaviyo:20,Brevo:21,ActiveCampaign:22,MetaLeads:23,SendGrid:24}),bN=Object.freeze({[Xt.Stripe]:"Stripe",[Xt.PipeDrive]:"PipeDrive",[Xt.Demio]:"Demio",[Xt.Shopify]:"Shopify",[Xt.Twilio]:"Twilio",[Xt.Hubspot]:"Hubspot",[Xt.Freshdesk]:"Freshdesk",[Xt.Intercom]:"Intercom",[Xt.Mailchimp]:"Mailchimp",[Xt.Klaviyo]:"Klaviyo",[Xt.Brevo]:"Brevo",[Xt.MetaLeads]:"MetaLeads",[Xt.ActiveCampaign]:"ActiveCampaign",[Xt.SendGrid]:"SendGrid"}),Se=Object.freeze({FRANCHISE_SUPPORT:1,CUSTOM_REPLY:2,BOT_OPEN_CLICK:3,READ_SKIMMED_GLANCED:4,SHORTCUTS:5,DYNAMIC_SENDER:6,MX_BASED_ROUTING:7,TRANSACTIONAL_EMAIL:8,LIST_CLEANING:9,BLOGS:10,SPREAD_SENDING:11,CAMPAIGN_AUTO_WARMUP:12,CAMPAIGN_TTL:13,INBOX_TEST:14,WARMUP:15,AUTOFILL_POPUPS_FORMS:16,LIVE_SEEDS:17,MX_BASED_SEGMENTS:18,DEDICATED_IP:19,ELEVATED_SUPPORT:20,PROFESSIONAL_SERVICE:21,AI_DELIVERABILITY_REPORT:22,DELIVERABILITY_STATS:23,THREAT_CHECK:24,PLAIN_WARMUP:25,SUPPRESSION_CENTER:26,POLL:30,WHITELABEL:27,SEQUENCE_GENERATOR:28,SURVEYS:29}),vN=Object.freeze(new Set([Se.LIVE_SEEDS,Se.SPREAD_SENDING,Se.CAMPAIGN_AUTO_WARMUP,Se.PLAIN_WARMUP])),SN=Object.freeze(new Set([Se.FRANCHISE_SUPPORT,Se.SURVEYS,Se.POLL,Se.CUSTOM_REPLY,Se.READ_SKIMMED_GLANCED,Se.BLOGS,Se.DYNAMIC_SENDER,Se.CAMPAIGN_TTL,Se.BOT_OPEN_CLICK,Se.SHORTCUTS,Se.LIST_CLEANING,Se.MX_BASED_SEGMENTS,Se.AUTOFILL_POPUPS_FORMS,Se.INBOX_TEST,Se.WARMUP,Se.AI_DELIVERABILITY_REPORT,Se.DELIVERABILITY_STATS,Se.THREAT_CHECK])),EN=Object.freeze({[Se.FRANCHISE_SUPPORT]:{routeName:"franchise-support",title:"Franchise-Wide Resource Sharing",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Share templates, tags, and segments across all your teams so every location stays on-brand.",detail:`
49			<p class="text-sendx-text-secondary mb-4">
50				The <strong>Franchise Support</strong> add-on keeps every location on-brand. 
51				All teams pull from the same pool of email templates, tags, custom fields, and segments, 
52				with full edit rights. Update a template once—everyone sees it instantly.
53			</p>
54		`,keyFeatures:`
55			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
56				<li>One-click sharing of templates, tags, fields &amp; segments</li>
57				<li>Real-time sync across all accounts</li>
58				<li>Full edit permissions for approved users</li>
59				<li>Centralized brand control</li>
60				<li>Less duplication, smoother workflows</li>
61			</ul>
62		`,tags:["workflow","personalization","event data","SendX"],src:"https://video.sendx.io/share/1w1rkDjxyH41oZoyIArOFw",categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/franchise_support.png",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.CUSTOM_REPLY]:{routeName:"custom-reply",title:"Custom Reply-To Addresses",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Route replies to any inbox so the right team sees every customer response.",detail:`
63			<p class="text-sendx-text-secondary mb-4">
64				Specify custom reply emails for each campaign and never miss a customer response
65			</p>
66		`,keyFeatures:`
67			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
68				<li>Reply-to address per campaign</li>
69				<li>Clearer conversation threads</li>
70				<li>Team or department-specific routing</li>
71				<li>Better response tracking &amp; engagement</li>
72			</ul>
73		`,tags:["workflow","personalization","event data","SendX"],src:"https://video.sendx.io/share/VYRARXE1C61bCK7ijKkKGg",categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/custom_reply.png",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.BOT_OPEN_CLICK]:{routeName:"bot-tracker",title:"Remove Bot Opens & Clicks",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Filter out bot activity so your open and click rates reflect real human engagement.",detail:`
74			<p class="text-sendx-text-secondary mb-4">
75				Remove bot opens and clicks from your campaign analytics to show only real human engagement metrics
76			</p>
77		`,keyFeatures:`
78			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
79				<li>Detects bot opens &amp; clicks automatically</li>
80				<li>Removes noise from performance metrics</li>
81				<li>Advanced identification algorithms</li>
82				<li>Downloadable bot-free reports</li>
83				<li>Confidence scores for every event</li>
84			</ul>
85		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/bot_open_click.png",src:"https://video.sendx.io/share/hdhBHKLw7SawHRZb6R3tXw",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.READ_SKIMMED_GLANCED]:{routeName:"read-skim-glance",title:"Read Time Insights",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"See whether contacts read, skimmed, or glanced at your emails to fine-tune your content.",detail:`
86			<p class="text-sendx-text-secondary mb-4">
87				Understand how long readers engaged with your emails (Read, Skimmed & Glanced) in order to best optimize them
88			</p>
89		`,keyFeatures:`
90			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
91				<li>Precise time-on-email tracking</li>
92				<li>Automatic Read / Skimmed / Glanced labels</li>
93				<li>Customizable time thresholds</li>
94				<li>Trend dashboards &amp; exports</li>
95				<li>Actionable insights for design tweaks</li>
96			</ul>
97		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/read_skimmed_glanced.png",src:"https://video.sendx.io/share/1jfU5QHf62iRQUuFfbYkTw",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.SHORTCUTS]:{routeName:"shortcuts",title:"Shortcuts",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Navigate faster with customizable keyboard shortcuts.",detail:`
98			<p class="text-sendx-text-secondary mb-4">
99				Zip around with custom keystrokes and get more done in less t
99ime
100			</p>
101		`,keyFeatures:`
102			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
103				<li>Fully customizable key combos</li>
104				<li>Instant navigation &amp; task execution</li>
105				<li>Built-in cheat-sheet (<kbd>Shift</kbd> + <kbd>/</kbd>)</li>
106				<li>Usage analytics for power users</li>
107				<li>Works across all user roles</li>
108			</ul>
109		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/shortcut.png",src:"https://video.sendx.io/share/RwP8x9PXwpq2pfLV6Z8IXA",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.DYNAMIC_SENDER]:{routeName:"dynamic-sender",title:"Dynamic Sender Profiles",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Automatically match each recipient with the right sender name and email to boost open rates.",detail:`
110			<p class="text-sendx-text-secondary mb-4">
111				Match a unique sender name and/or sender email address to every recipient for deeper personalization and higher open rates
112			</p>
113		`,keyFeatures:`
114			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
115				<li>Rule-based sender selection</li>
116				<li>A/B test different sender profiles</li>
117				<li>Per-segment performance analytics</li>
118				<li>Automatic fallback logic</li>
119				<li>Simple profile management UI</li>
120			</ul>
121		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/dynamic_sender",src:"https://video.sendx.io/share/FxiO6nKs9N8NcJPoZmmUYw",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.MX_BASED_ROUTING]:{routeName:"mx-routing",title:"MX-Based Email Routing",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Route emails through the optimal server for each domain to maximize inbox placement.",detail:`
122			<p class="text-sendx-text-secondary mb-4">
123				<strong>MX-Based Routing</strong> checks a recipient’s MX records on the fly and chooses 
124				the optimal path for delivery. Better placement, faster arrival.
125			</p>
126		`,keyFeatures:`
127			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
128				<li>Real-time MX lookup</li>
129				<li>Smart server selection</li>
130				<li>Custom routing rules</li>
131				<li>Delivery success dashboards</li>
132				<li>Performance alerts &amp; logs</li>
133			</ul>
134		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/read_skimmed_glanced.png",src:"https://video.sendx.io/share/1jfU5QHf62iRQUuFfbYkTw",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.TRANSACTIONAL_EMAIL]:{routeName:"transactional-email",title:"Transactional Email",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",logTitle:"Logs for all transactional emails",description:"Send password resets, order confirmations, and other transactional emails directly from the platform.",detail:`
135			<p class="text-sendx-text-secondary mb-4">
136				Trigger and manage transactional emails, such as registration confirmation, password resets or receipts right from the platform
137			</p>
138		`,keyFeatures:`
139			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
140				<li>Dedicated transactional templates</li>
141				<li>Shared or separate IP pools</li>
142				<li>Delivery &amp; open analytics</li>
143				<li>Webhook and API support</li>
144				<li>SLA-grade uptime</li>
145			</ul>
146		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/transactional_email.png",src:"https://video.sendx.io/share/IALXixXhsG62Osm915OxKA",hasSetting:!0,hasReport:!0,hasBilling:!0,hasLog:!0,hasTutorialVideo:!0},[Se.LIST_CLEANING]:{routeName:"list-cleaning",title:"List Cleaning",settingTitle:"Configure your email verification settings",reportTitle:"Analytics and performance insights",description:"Verify email addresses before sending to reduce bounces and protect your sender reputation.",detail:`
147			<p class="text-sendx-text-secondary mb-4">
148				Verify if emails are valid in order to lower bounce rates and keep your sender reputation healthy
149			</p>
150		`,keyFeatures:`
151			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
152				<li>Auto-clean new contacts</li>
153				<li>Bulk verification jobs</li>
154				<li>Easy export of results</li>
155				<li>Bounce &amp; risk scoring</li>
156				<li>Pay-as-you-go credits</li>
157			</ul>
158		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/list_cleaning.png",src:"https://video.sendx.io/share/PIkPm6nnxkBuqDI7ZaK4sQ",hasSetting:!0,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.MX_BASED_SEGMENTS]:{routeName:"mx-based-segments",title:"MX Based Segments",settingTitle:"Configure your MX segments settings",reportTitle:"Analytics and performance insights",description:"Segment contacts by email provider (Gmail, Outlook, etc.) for targeted deliverability strategies.",detail:`
159			<p class="text-sendx-text-secondary mb-4">
160				Segment your contacts based on their email domain's MX records. This helps you identify and organize contacts 
161				by their mail server providers, enabling better deliverability strategies and routing decisions.
162			</p>
163		`,keyFeatures:`
164			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
165				<li> MX record scanning</li>
166				<li>Contact segmentation by mail provider</li>
167				<li>Real-time statistics and insights</li>
168				<li>Manual scan job triggers</li>
169				<li>Improved deliverability targeting</li>
170			</ul>
171		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/read_skimmed_glanced.png",src:"https://video.sendx.io/share/1jfU5QHf62iRQUuFfbYkTw",hasSetting:!0,hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.BLOGS]:{routeName:"blogs",title:"Blog Posts",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Turn your newsletters into blog posts on a custom-branded site to drive organic traffic.",detail:`
172			<p class="text-sendx-text-secondary mb-4">
173				Turn your newsletters into blogs or post individually on a custom-branded website
174			</p>
175		`,keyFeatures:`
176			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
177				<li>One-click newsletter-to-blog conversion</li>
178				<li>Custom domains &amp; themes</li>
179				<li>SEO-friendly editor</li>
180				<li>Drafts, scheduling &amp; revisions</li>
181				<li>Post-level analytics</li>
182			</ul>
183		`,tags:["content marketing","newsletter","blog","branding","SendX"],src:"https://video.sendx.io/share/0HNixWLaq7VegD3290bvlA",categories:"Content",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/blogs.png",hasSetting:!0,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.SPREAD_SENDING]:{routeName:"spread-sending",title:"Spread Sending for Campaigns",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Spread campaign sends over hours instead of minutes to avoid spam filters and improve delivery.",detail:"<p class='text-sendx-text-secondary mb-4'>Throttle your email campaign sending over time in order to improve deliverability</p>",keyFeatures:"<ul class='list-disc list-inside space-y-1 text-sendx-text-secondary'><li>Throttle email sending over time</li><li>Improve deliverability through gradual sending</li><li>Distribute your email campaigns</li><li>Reduce risk of being flagged as spam</li></ul>",tags:["deliverability","campaign","throttling","SendX"],src:"https://video.sendx.io/share/1jfU5QHf62iRQUuFfbYkTw",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/read_skimmed_glanced.png",src:"https://video.sendx.io/share/1jfU5QHf62iRQUuFfbYkTw",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.CAMPAIGN_AUTO_WARMUP]:{routeName:"campaign-auto-warmup",title:"Campaign Auto-Warmup",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Gradually increase sending volume within a single campaign to warm up your domain safely.",detail:"<p class='text-sendx-text-secondary mb-4'>Automatically warmup your email volumes by slowly increasing your sending all through a single campaign send</p>",keyFeatures:"<ul class='list-disc list-inside space-y-1 text-sendx-text-secondary'><li>Automatically warm up your email</li></ul>",tags:["warmup","deliverability","automation","SendX"],src:"https://video.sendx.io/share/p0sXnHHftQSNeSdTP9oMGA",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/campaign_autowarmup.png",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!0},[Se.CAMPAIGN_TTL]:{routeName:"campaign-ttl",title:"Campaign TTL (Time-To-Live)",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Auto-expire campaigns after a set time so stale emails never reach your contacts.",detail:`
184			<p class="text-sendx-text-secondary mb-4">
185			Set a time limit for your campaigns. Any emails that haven't been sent within this window (e.g., 6 hours) are automatically dropped instead of being delivered late. Perfect for flash sales, event reminders, and time-sensitive offers where outdated emails do more harm than good.
186			</p>
187		`,keyFeatures:`
188			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
189			<li>Set custom expiry time (in hours) per campaign</li>
190			<li>Unsent emails are automatically dropped after the time limit</li>
191			<li>Ideal for flash sales, event reminders & limited-time offers</li>
192			</ul>
193		`,tags:["workflow","automation","campaign management","SendX"],src:"",categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/read_skimmed_glanced.png",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.INBOX_TEST]:{routeName:"inbox-test",title:"Inbox Testing",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Test where your emails land — inbox or spam — before you hit send.",detail:`
194			<p class="text-sendx-text-secondary mb-4">
195			Test your email campaign for inbox placement to see if your emails are landing in the inbox, or spam
196			</p>
197			<p class="text-sendx-text-secondary mb-4">
198				<strong>Pricing:</strong> $25 per pack of 10 inbox placement tests
199			</p>
200		`,keyFeatures:`
201			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
202			<li>Test email deliverability across multiple inboxes</li>
203			<li>Identify potential spam triggers</li>
204			<li>Improve overall email deliverability</li>
205			<li>
205Ensure your emails reach the intended audience</li>
206			</ul>
207		`,tags:["workflow","automation","campaign management","SendX"],src:"https://video.sendx.io/share/nihvtZE4aAyTHQHr4MextQ",categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/inbox_testing.png",hasSetting:!1,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.WARMUP]:{routeName:"warmup",title:"Inbox Warmup",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Automatically build sender reputation by warming up your inbox with real engagement signals.",detail:`
208			<p class="text-sendx-text-secondary mb-4">
209			This feature automatically opens your emails and moves any spam emails to the inbox behind the scenes
210			</p>
211			<p class="text-sendx-text-secondary mb-4">
212				<strong>Pricing:</strong>
213			</p>
214			<ul class="text-sendx-text-secondary mb-4 space-y-2">
215				<li>2k Daily: $200</li>
216				<li>5k Daily: $300</li>
217				<li>10k Daily: $400</li>
218				<li>Over 10k - schedule call</li>
219			</ul>
220			<p class="text-sendx-text-secondary mb-4">
221				<em>Note: This is a Warmy integration and their retail pricing is around $300-$350</em>
222			</p>
223		`,keyFeatures:`
224			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
225				<li>Automatically opens your emails and moves spam to inbox</li>
226				<li>Multiple daily volume options (2k, 5k, 10k+)</li>
227				<li>Improves sender reputation and deliverability</li>
228			</ul>
229		`,tags:["warmup","SendX"],src:"https://video.sendx.io/share/lJSN0KsdqeN2gDQqLowknA",categories:"Warmup",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/inbox_warmup.png",hasSetting:!0,hasReport:!0,hasBilling:!1,hasTutorialVideo:!0},[Se.AUTOFILL_POPUPS_FORMS]:{routeName:"smart-website-personalisation",title:"Autofill Popups & Forms",description:"Pre-fill popups and forms with known contact data to boost conversions and reduce friction.",detail:`
230			<p class="text-sendx-text-secondary mb-4">
231				Pre-populate popups and embedded form data to create a more tailored experience for every visitor
232			</p>
233		`,keyFeatures:`
234			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
235				<li>Auto-fills popups and embedded forms with known contact details</li>
236				<li>Dynamically personalises form titles, fields, and messages</li>
237				<li>Enables contact- and tag-based targeting for precise audience control</li>
238				<li>Seamlessly tracks campaign visitors using <code>sxcid</code> and <code>sxtid</code></li>
239				<li>Boosts conversions by creating tailored, low-friction user experiences</li>
240			</ul>
241		`,categories:"Workflows",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/professional_service.png",src:"https://video.sendx.io/share/RwP8x9PXwpq2pfLV6Z8IXA",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.LIVE_SEEDS]:{routeName:"live-seeds",title:"Live Warmup (with Seeds)",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Send emails to internally owned inboxes that manually engage with your emails to help de-risk your sending, scale volumes faster & improve your sending reputation. ($200 per 1,000 daily warmup emails with clicks)",detail:`
242			<p class="text-sendx-text-secondary mb-4">
243			Send emails to internally owned inboxes that manually engage with your emails to help de-risk your sending, scale volumes faster & improve your sending reputation
244			</p>
245			<p class="text-sendx-text-secondary mb-4">
246				<strong>Pricing:</strong> $200 per 1,000 daily warmup emails with clicks
247			</p>
248		`,keyFeatures:`
249			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
250				<li>Configure total number of seeds or percentage of audience used for a newsletter campaign</li>
251				<li>Distribute seeds across Gmail, GSuite, Outlook</li>
252				<li>Interactive donut chart with sliders for easy configuration</li>
253				<li>Real-time validation ensuring 100% distribution</li>
254				<li>Improve deliverability testing accuracy</li>
255			</ul>
256		`,tags:["seeds","deliverability","testing","SendX"],src:"",categories:"Deliverability",imageSrc:"",hasSetting:!0,hasReport:!0,hasBilling:!1,hasTutorialVideo:!1},[Se.DEDICATED_IP]:{routeName:"dedicated-ip",title:"Dedicated IP",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Send from your own dedicated IP to fully control your email reputation.",detail:`
257			<p class="text-sendx-text-secondary mb-4">
258				Get a dedicated IP address for sending your emails to have full control over your sending reputation.
259			</p>
260		`,keyFeatures:`
261			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
262				<li>Exclusive use of an IP address</li>
263				<li>Build your own sending reputation</li>
264				<li>Isolate your email traffic</li>
265				<li>Ideal for high-volume senders</li>
266			</ul>
267		`,tags:["deliverability","ip","reputation","SendX"],src:"https://video.sendx.io/share/Pn3NvpCvgN6ST2zoVEk69w",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/dedicated_ip.png",hasSetting:!1,hasReport:!1,hasBilling:!0,hasTutorialVideo:!0},[Se.ELEVATED_SUPPORT]:{routeName:"elevated-support",title:"Elevated Support",settingTitle:"Configure your add-on settings",reportTitle:"Call Management",description:"Get monthly expert calls for hands-on help with platform setup and email deliverability.",detail:`
268			<p class="text-sendx-text-secondary mb-4">
269				Get expert help with the platform or email deliverability. Purchase a bundle of 3 elevated support calls at 30 minutes each to address any advanced needs.
270			</p>
271			<p class="text-sendx-text-secondary mb-4">
272				<strong>Pricing:</strong>
272 $225 for 3 calls per month (30 minutes each)
273			</p>
274		`,keyFeatures:`
275			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
276				<li>Product support: workflow setup, campaign optimization, team training, product onboarding</li>
277				<li>Deliverability support: warm-up strategy, bounce rate mitigation, delisting remediation, inboxing</li>
278				<li>Full support team with context on your account and extended coverage hours</li>
279				<li>Pro-active campaign monitoring to detect any issues early, by a human</li>
280				<li>All call recordings saved for future reference</li>
281			</ul>
282		`,tags:["support","priority","calls","SendX"],src:"https://video.sendx.io/share/ZvkxSDZZcyY1H63vs4S3Lg",categories:"Support",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/elevated_support.png",hasSetting:!1,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.PROFESSIONAL_SERVICE]:{routeName:"professional-service",title:"Professional Service",settingTitle:"Configure your add-on settings",reportTitle:"Analytics and performance insights",description:"Book a session with a deliverability consultant for blocklist removal, reputation recovery, and complex sending issues.",detail:`
283			<h1 class="text-2xl font-bold text-sendx-text-primary mb-4">Professional Services</h1>
284			<p class="text-sendx-text-secondary mb-4">
285				For complex deliverability challenges that need expert-level diagnosis. Blacklisted domains, difficult industries, reputation recovery, or sending situations where best practices aren't enough.
286			</p>
287			<p class="text-sendx-text-secondary mb-4">
288				<strong>$525 per call</strong> - 1 hour call and includes a 30 minute prep time for the professional email consultant prior to the call.
289			</p>
290		`,keyFeatures:`
291			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
292				<li>1-hour session with a world-class deliverability consultant</li>
293				<li>30-minute prep time included before each call</li>
294				<li>Deep analysis of your domain reputation, IP health, and sending patterns</li>
295				<li>Strategic remediation plan tailored to your specific situation</li>
296				<li>Guidance on blocklist removal, spam trap recovery, and provider-specific issues</li>
297			</ul>
298		`,tags:["deliverability","consulting","expert","SendX"],src:"https://video.sendx.io/share/0dSInM4xvQxk0V2rtvp9sw",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/professional_service.png",hasSetting:!1,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.AI_DELIVERABILITY_REPORT]:{routeName:"ai-deliverability",title:"AI Deliverability Advisor",settingTitle:"Configure your add-on settings",reportTitle:"Weekly Deliverability Reports",description:"Get weekly AI-powered reports that spot deliverability issues and tell you exactly how to fix them.",detail:`
299			<p class="text-sendx-text-secondary mb-4">
300				Get comprehensive weekly deliverability reports powered by AI that analyze your email performance, 
301				identify critical issues, and provide actionable recommendations to improve your deliverability.
302			</p>
303		`,keyFeatures:`
304			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
305				<li>Weekly automated deliverability reports</li>
306				<li>AI-powered analysis and insights</li>
307				<li>Critical issue detection and alerts</li>
308				<li>Provider-specific insights (Gmail, Yahoo, Microsoft, Others)</li>
309				<li>Actionable recommendations with priority levels</li>
310				<li>Health score tracking over time</li>
311			</ul>
312		`,tags:["deliverability","analytics","ai","reports","SendX"],src:"https://video.sendx.io/share/tJ62ijsycT6VYFm2OxJ3bQ",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/ai_deliverability_report.png",hasSetting:!1,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.DELIVERABILITY_STATS]:{routeName:"deliverability-stats",title:"Advanced Deliverability Analytics",settingTitle:"Configure your add-on settings",reportTitle:"Deliverability metrics and analytics",description:"Track deliverability metrics by provider, domain, and time period to pinpoint what's working.",detail:`
313			<p class="text-sendx-text-secondary mb-4">
314				Get detailed insights into your email deliverability performance with comprehensive metrics and analytics. Track aggregated statistics across your team, analyze provider-level performance (Gmail, Yahoo, Microsoft, etc.), and monitor domain-specific metrics to optimize your email delivery.
315			</p>
316		`,keyFeatures:`
317			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
318				<li>Aggregated deliverability statistics across your entire team</li>
319				<li>Provider-level performance metrics (Gmail, Yahoo, Microsoft, AOL, etc.)</li>
320				<li>Domain-specific analytics and insights</li>
321				<li>Group-level statistics for organized tracking</li>
322				<li>Time series data to track performance trends</li>
323				<li>
323SMTP provider analytics for infrastructure monitoring</li>
324				<li>Detailed metrics: processed, sent, delivered, opened, clicked, bounce rates</li>
325			</ul>
326		`,tags:["deliverability","analytics","metrics","stats","SendX"],src:"https://video.sendx.io/share/kQVMB08iYBkAw6tZhD9yiA",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/professional_service.png",hasSetting:!1,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.THREAT_CHECK]:{routeName:"threat-check",title:"Threat Checks",settingTitle:"Configure your threat check settings",reportTitle:"Threat Check Analytics",description:"Detect spam traps, honeypots, and risky addresses that basic verification misses.",detail:`
327			<p class="text-sendx-text-secondary mb-4">
328				Improve deliverability and protect your sending reputation by identifying threats that simple verification can't such as spam traps, complainers, honeypot, disposable domains and more. Our Threat Checks addon validates contacts
329				and assigns them flags based on their validation status to help you identify and manage risky contacts.
330			</p>
331			<p class="text-sendx-text-secondary mb-4">
332				Contacts are flagged with the following statuses:
333			</p>
334			<ul class="text-sendx-text-secondary mb-4 space-y-2">
335				<li class="flex items-start">
336					<span class="font-medium text-green-600 mr-2">Clean:</span>
337					<span>Contacts that have passed all validation checks and are safe to send to.</span>
338				</li>
339				<li class="flex items-start">
340					<span class="font-medium text-red-600 mr-2">Reputation:</span>
341					<span>Contacts that may harm your sender reputation if emailed.</span>
342				</li>
343				<li class="flex items-start">
344					<span class="font-medium text-red-600 mr-2">Fraud:</span>
345					<span>Contacts identified as fraudulent or associated with fraud-related activity.</span>
346				</li>
347				<li class="flex items-start">
348					<span class="font-medium text-red-600 mr-2">Delivery:</span>
349					<span>Contacts with delivery issues that may cause bounces or delivery problems.</span>
350				</li>
351				<li class="flex items-start">
352					<span class="font-medium text-yellow-600 mr-2">Conversion:</span>
353					<span>Contacts that may have conversion-related concerns or issues.</span>
354				</li>
355				<li class="flex items-start">
356					<span class="font-medium text-yellow-600 mr-2">Beta:</span>
357					<span>Contacts flagged during beta testing phases.</span>
358				</li>
359			</ul>
360		`,keyFeatures:`
361			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
362				<li>Real-time email validation</li>
363				<li>Detect spam traps, disposable emails, and risky addresses</li>
364				<li>Bulk validation for lists, tags, and segments</li>
365				<li>Validate all team contacts with filtering options</li>
366				<li>Detailed analytics with hygiene status breakdowns</li>
367				<li>Automatic job recovery on system restart</li>
368				<li>Scalable to millions of contacts</li>
369			</ul>
370		`,tags:["validation","spam","deliverability","email hygiene"],src:"https://video.sendx.io/share/RuLl2zy57fD1L3hGkjsG6w",categories:"Deliverability",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/add-on-images/list_cleaning.png",hasSetting:!0,hasReport:!0,hasBilling:!0,hasTutorialVideo:!0},[Se.POLL]:{routeName:"polls",title:"Polls",settingTitle:"Configure your add-on settings",reportTitle:"Poll analytics",description:"Add polls to your campaigns and see responses in one place.",detail:`
371			<p class="text-sendx-text-secondary mb-4">
372				The <strong>Polls</strong> add-on lets you add simple polls (emoji rating, yes/no, NPS, scale) to your campaigns
373				and view all responses and analytics in the Poll analytics page or on each campaign report.
374			</p>
375		`,keyFeatures:`
376			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
377				<li>Multiple template types: emoji rating, yes/no, yes/no/maybe, 1–5 scale, NPS</li>
378				<li>View total votes, vote rate, and top answer per poll</li>
379				<li>Vote timeline and individual vote list</li>
380				<li>NPS score and promoter/passive/detractor breakdown for NPS polls</li>
381			</ul>
382		`,tags:["engagement","survey","NPS","campaign"],categories:"Engagement",hasSetting:!1,hasReport:!1,hasPollsTab:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.SEQUENCE_GENERATOR]:{routeName:"sequence-generator",title:"Sequence Generator",description:"Generate AI-
382powered onboarding email sequences from your product knowledge — with legendary copywriter voices.",detail:`
383			<p class="text-sendx-text-secondary mb-4">
384				The Sequence Generator creates AI-powered email sequences tailored to your audience, goals, and brand voice.
385				Describe what you want, choose a copywriter style, and the AI writes a complete sequence with subject lines, body copy, and CTAs.
386			</p>
387			<p class="text-sendx-text-secondary mb-4">
388				<strong>How it works:</strong>
389			</p>
390			<ul class="text-sendx-text-secondary mb-4 space-y-2">
391				<li><strong>Configure your AI provider</strong> — choose OpenAI or Anthropic and set your API key in the Settings tab</li>
392				<li><strong>Define your sequence</strong> — set the goal, target audience, copywriter voice, and number of emails</li>
393				<li><strong>Optionally upload a knowledge document</strong> — give the AI detailed product context for better results</li>
394				<li><strong>Generate</strong> — emails stream in with subject lines, body copy, and contextual CTAs</li>
395				<li><strong>Preview and save</strong> — preview emails with your template design applied, then save as a drip campaign</li>
396			</ul>
397		`,keyFeatures:`
398			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
399				<li>OpenAI and Anthropic support</li>
400				<li>6 legendary copywriter voices</li>
401				<li>Up to 25 emails per sequence</li>
402				<li>Optional product knowledge document for context</li>
403				<li>Auto-summarize large documents with AI</li>
404				<li>AI-generated contextual CTAs per email</li>
405				<li>Preview emails with template design applied</li>
406				<li>Reference template matching for visual consistency</li>
407				<li>Save directly as drip campaign</li>
408			</ul>
409		`,tags:["sequence","onboarding","copy","ai"],categories:"Marketing",imageSrc:"",hasSetting:!0,settingLabel:"Generate",hasConfig:!0,configLabel:"Settings",hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.WHITELABEL]:{routeName:"whitelabel",title:"Whitelabel",description:"Rebrand SendX under your own domain, logo, and colors — and resell it to your own customers.",detail:`
410			<p class="text-sendx-text-secondary mb-4">
411				The Whitelabel addon lets you create a fully branded version of SendX with your own domain, logo, colors, and fonts.
412				Your sub-accounts get the full SendX experience under your brand.
413			</p>
414			<p class="text-sendx-text-secondary mb-4">
415				<strong>Includes:</strong>
416			</p>
417			<ul class="text-sendx-text-secondary mb-4 space-y-2">
418				<li>Custom domain &amp; branding (logo, colors, fonts, favicon)</li>
419				<li>Payment gateway integration (Stripe Connect or Razorpay Route)</li>
420				<li>Custom pricing plans for your sub-accounts</li>
421				<li>Sub-account management (tier, status, usage)</li>
422				<li>Feature gating &amp; addon restrictions</li>
423			</ul>
424		`,keyFeatures:`
425			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
426				<li>Full branding customization (domain, logo, colors, fonts)</li>
427				<li>Payment gateway integration with revenue share</li>
428				<li>Sub-account lifecycle management</li>
429				<li>Feature gating and tier ceilings</li>
430				<li>Whitelabeled system emails</li>
431			</ul>
432		`,tags:["whitelabel","reseller","branding"],categories:"Platform",imageSrc:"",hasSetting:!0,settingLabel:"Setup",hasReport:!1,hasBilling:!1,hasTutorialVideo:!1},[Se.SURVEYS]:{routeName:"surveys",title:"Surveys",description:"Collect feedback with beautiful, multi-step surveys that integrate with your contact data.",detail:`
433			<p class="text-sendx-text-secondary mb-4">
434				The <strong>Surveys</strong> add-on lets you create multi-step surveys with drag-and-drop field ordering,
435				8 field types (text, textarea, radio, checkbox, dropdown, rating, NPS, date),
436				and real-time analytics with per-field response distributions.
437			</p>
438			<p class="text-sendx-text-secondary mb-4">
439				Survey responses can map to contact custom fields and tags, appear as events on the contact timeline,
440				and automatically add respondents to lists.
441			</p>
442		`,keyFeatures:`
443			<ul class="list-disc list-inside space-y-1 text-sendx-text-secondary">
444				<li>Multi-step surveys with drag-and-drop builder</li>
445				<li>5 pre-built templates (NPS, CSAT, Product Feedback, Event Registration, Post-Purchase)</li>
446				<li>NPS scoring with promoter/passive/detractor breakdown</li>
447				<li>Response analytics with per-field distribution charts</li>
448				<li>Contact integration: custom fields, tags, lists, timeline events</li>
449				<li>Standalone pages and embeddable surveys</li>
450			</ul>
451		`,tags:["feedback","data collection","NPS","SendX"],categories:"Data Collection",imageSrc:"",hasSetting:!1,hasReport:!1,hasBilling:!1,hasTutorialVideo:!1}}),wN=Object.freeze({cloudflare:{title:"Cloudflare Setup",src:"https://video.sendx.io/share/D0iGws6QJUJEDFQPryiI1Q",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/dns-setup-images/cloudflare.png"},godaddy:{title:"Go Daddy Setup",src:"https://video.sendx.io/share/e1R8HexxI8nBWHGNFzcbJw",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/dns-setup-images/godad
451dy.png"},namecheap:{title:"NameCheap Setup",src:"https://video.sendx.io/share/2OpBW2s8UJqWRTmAYkUBUA",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/dns-setup-images/namecheap.png"},google:{title:"Google Domains Setup",src:"https://video.sendx.io/share/ytbVB592OqcQy2UI38YgKA",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/dns-setup-images/google.png"}}),TN=Object.freeze({ArchiveExplainer:"https://support.sendx.io/en/articles/14035418-why-was-my-entity-archived-instead-of-deleted"}),CN=Object.freeze({missing_footer:{title:"Fixing No Custom Footer Warning",src:"https://video.sendx.io/share/xnUlo9RF74MbY8eDr39laQ",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/dns-setup-images/namecheap.png"},invalid_unsubscribe:{title:"Fixing Invalid Unsubscribe Link Warning",src:"https://video.sendx.io/share/qDhIsZuUTz8UHVTg7LPHKw",imageSrc:"https://sendx-cdn.s3.us-east-1.amazonaws.com/dns-setup-images/namecheap.png"}}),Po=Object.freeze({RoleOwner:0,RoleAdmin:1,RoleContributor:2,RoleViewer:3,RoleNonBillingAdmin:4}),lO=Object.freeze({[Po.RoleOwner]:[],[Po.RoleAdmin]:[Be.Team],[Po.RoleContributor]:[Be.Contact,Be.Team,Be.Member,Be.Billing,Be.TeamPreferences,Be.WebSettings,Be.Notification],[Po.RoleViewer]:[Be.ContactEdit,Be.Team,Be.Member,Be.Setting,Be.Billing,Be.Automation,Be.Campaign,Be.Form,Be.BulkAction,Be.Templates,Be.CustomField,Be.CustomEvent,Be.RssFeed,Be.Domain,Be.ApiKey,Be.Audience,Be.TeamPreferences,Be.AddOns,Be.WebSettings,Be.List,Be.Tag,Be.Workflows,Be.Notification],[Po.RoleNonBillingAdmin]:[Be.Team,Be.Billing]}),ld={PLAIN_TEXT_EDITOR:0,DRAG_DROP_EDITOR:1,SENDX_EDITOR:2},AN={UNSUBSCRIBE_FOOTER:4,TRACKING:7,PREFERENCE_CENTER:8,PREFERENCE_CENTER_ENABLED:9,PREFERENCE_CENTER_PAGE_SETTINGS:10},RN="https://imagecdn.sendx.io/images/840f4477-2071-4b5b-a7c9-79cd553fea12/so0QodpocrCyWWB9froNvx/f5af3b35-166b-4485-9fb8-b56aa283e180.png.png",xN="SendX",cO=JSON.stringify({page:{body:{container:{style:{"background-color":"#f5f5f7"}}
451,content:{computedStyle:{linkColor:"#0000FF",messageBackgroundColor:"transparent",messageWidth:"600px"},style:{color:"#1a1a1a","font-family":"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"}},type:"mailup-bee-page-properties",webFonts:[]},description:"",rows:[{columns:[{"grid-columns":12,modules:[{descriptor:{computedStyle:{class:"center autowidth brand-logo-block",hideContentOnMobile:!1,width:"200px"},image:{alignment:"center",alt:"",href:"",maxHeight:"60px",maxWidth:"200px",prefix:"",src:"{{.LogoUrl}}",target:"_blank",width:"200px"},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"40px","text-align":"center",width:"200px"}},locked:!1,type:"mailup-bee-newsletter-modules-image",uuid:"31a94252-ce85-4b00-afd0-356babc245c6"},{descriptor:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1},heading:{style:{color:"#1a1a1a",direction:"ltr","font-family":"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif","font-size":"28px","font-weight":"700","letter-spacing":"-0.02em","line-height":"125%","link-color":"#0000FF","text-align":"left"},text:"Welcome to {{.CompanyName}}",title:"h1"},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"32px","text-align":"left",width:"100%"}},locked:!1,type:"mailup-bee-newsletter-modules-heading",uuid:"a1b2c3d4-e5f6-7890-abcd-ef1234567801"},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"48px","padding-left":"40px","padding-right":"40px","padding-top":"16px"},text:{computedStyle:{linkColor:"#0000FF"},html:`<div class="txtTinyMce-wrapper" style="font-size:16px;line-height:1.55;font-family:inherit;" data-mce-style="font-size:16px;line-height:1.55;font-family:inherit;"><p style="margin:0;word-break:break-word;color:#404040;" data-mce-style="margin:0;word-break:break-word;color:#404040;">Hi {{.FirstName}}, thanks for subscribing to {{.CompanyName}}. We're glad to have you on board.</p></div>`,style:{color:"#404040","font-family":"inherit","line-height":"155%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"ec36f7f1-1a1a-4a35-9cc1-7787183c2464"},{type:"mailup-bee-newsletter-modules-divider",descriptor:{divider:{style:{"border-top":"1px solid #ececec",width:"100%"}},style:{"padding-top":"0px","padding-right":"40px","padding-bottom":"0px","padding-left":"40px"},computedStyle:{hideContentOnMobile:!1}},uuid:"a1b2c3d4-e5f6-7890-abcd-ef1234567803",locked:!1},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"40px","padding-left":"40px","padding-right":"40px","padding-top":"16px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-size:13px;line-height:1.6;font-family:inherit;" data-mce-style="font-size:13px;line-height:1.6;font-family:inherit;"><p style="margin:0;word-break:break-word;color:#888;" data-mce-style="margin:0;word-break:break-word;color:#888;">Team {{.CompanyName}}</p></div>',style:{color:"#888888","font-family":"inherit","line-height":"160%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"a1b2c3d4-e5f6-7890-abcd-ef1234567804"}],style:{"background-color":"#ffffff","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"0px","padding-left":"0px","padding-right":"0px","padding-top":"0px"},uuid:"49979d87-12fc-470a-9387-11dd026e95a5"}],container:{style:{"background-color":"#f5f5f7","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},content:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1,rowColStackOnMobile:!0,rowReverseColStackOnMobile:!1,verticalAlign:"top"},style:{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-radius":"12px","border-right":"0px solid transparent","border-top":"0px solid transparent",color:"#1a1a1a",width:"600px"}},empty:!1,locked:!1,synced:!1,type:"",uuid:"a684de38-c3d3-4908-8213-9e321cf88d42"}],template:{name:"template-base",type:"basic",version:"2.0.0"},title:""},comments:{}}),dO=`<!DOCTYPE html>
451<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="en"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if mso]><xml><o:OfficeDocumentSettings><o:PixelsPerInch>96</o:PixelsPerInch><o:AllowPNG/></o:OfficeDocumentSettings></xml><![endif]--><style>
452*{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}.image_block img+div{display:none} @media (max-width:620px){.mobile_hide{display:none}.row-content{width:100%!important}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}}
453</style></head><body style="background-color:#f5f5f7;margin:0;padding:0;-webkit-text-size-adjust:none;text-size-adjust:none"><table class="nl-container" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#f5f5f7"><tbody><tr><td align="center" style="padding:32px 16px"><table class="row row-1" align="center" width="600" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#ffffff;border-radius:12px;max-width:600px"><tbody><tr><td><table
454class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;color:#1a1a1a;width:600px;margin:0 auto" width="600"><tbody><tr><td class="column column-1" width="100%" style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:left;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0"><table class="brand-logo-block image_block block-1"
455width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:40px 40px 0;text-align:center"><div style="max-width:200px;margin:0 auto"><img src="{{.LogoUrl}}" style="display:block;border:0;max-width:200px;max-height:60px;width:auto;height:auto;margin:0 auto" alt=""></div></td></tr></table><table
456class="heading_block block-2" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:32px 40px 0"><h1 style="margin:0;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:28px;font-weight:700;letter-spacing:-0.02em;line-height:125%;text-align:left">Welcome to {{.CompanyName}}</h1></td></tr></table><table
457class="text_block block-3" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:16px 40px 48px"><div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:16px;line-height:1.55;color:#404040"><p style="margin:0">Hi {{.FirstName}}, thanks for subscribing to {{.CompanyName}}. We're glad to have you on board.</p></div></td></tr></table><table
458class="divider_block block-5" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:0 40px"><div style="border-top:1px solid #ececec;font-size:1px;line-height:1px">&nbsp;</div></td></tr></table><table
459class="text_block block-6" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:16px 40px 40px"><div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:13px;line-height:1.6;color:#888"><p style="margin:0">Team {{.CompanyName}}</p></div></td></tr></table></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table><!-- End --></body></html>`,IN=JSON.stringify({page:{body:{container:{style:{"background-color":"#FFFFFF"}}
459,content:{computedStyle:{linkColor:"#0000FF",messageBackgroundColor:"transparent",messageWidth:"775px"},style:{color:"#000000","font-family":"Arial, 'Helvetica Neue', Helvetica, sans-serif"}},type:"mailup-bee-page-properties",webFonts:[]},description:"",rows:[{columns:[{"grid-columns":12,modules:[{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"10px","padding-left":"10px","padding-right":"10px","padding-top":"10px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-size: 14px; line-height: 16px; font-family: inherit;" data-mce-style="font-size: 14px; line-height: 16px; font-family: inherit;"><p style="font-size: 14px; line-height: 16px; word-break: break-word; text-align: center;" data-mce-style="font-size: 14px; line-height: 16px; word-break: break-word; text-align: center;"><span style="font-size: 16px; line-height: 19px;" data-mce-style="font-size: 16px; line-height: 19px;">Thank You!</span></p></div>',style:{color:"#555555","font-family":"inherit","line-height":"120%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"fd2e503a-0b60-4d9d-af63-f73e5036823f"},{descriptor:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1},heading:{style:{color:"#000000",direction:"ltr","font-family":"inherit","font-size":"30px","font-weight":"700","letter-spacing":"0px","line-height":"120%","link-color":"#E01253","text-align":"center"},text:"You'll hear from us soon.",title:"h1"},style:{"padding-bottom":"0px","padding-left":"0px","padding-right":"0px","padding-top":"0px","text-align":"center",width:"100%"}},locked:!1,type:"mailup-bee-newsletter-modules-heading",uuid:"337fc7d2-3912-418f-a14d-72890f574a89"}],style:{"background-color":"transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"60px","padding-left":"0px","padding-right":"0px","padding-top":"60px"},uuid:"ab1fc74c-e025-444a-b2d1-e2ab1fca5422"}],container:{style:{"background-color":"transparent","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},content:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1,rowColStackOnMobile:!0,rowReverseColStackOnMobile:!1,verticalAlign:"top"},style:{"background-color":"transparent","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-radius":"0px","border-right":"0px solid transparent","border-top":"0px solid transparent",color:"#000000",width:"775px"}},empty:!1,locked:!1,synced:!1,type:"",uuid:"d4fcefb3-a833-4638-a897-bdb9f54890f1"}],template:{name:"template-base",type:"basic",version:"2.0.0"},title:""},comments:{}}),ON=`<!DOCTYPE html>
460<html lang="">
461
462<head>
463	<title></title>
464	<meta charset="UTF-8">
465	<meta name="viewport" content="width=device-width">
466	<style>
467		.bee-row,
468		.bee-row-content {
469			position: relative
470		}
471
472		.bee-row-1,
473		.bee-row-1 .bee-row-content {
474			background-repeat: no-repeat
475		}
476
477		body {
478			background-color: #FFFFFF;
479			color: #000000;
480			font-family: Arial, "Helvetica Neue", Helvetica, sans-serif
481		}
482
483		* {
484			box-sizing: border-box
485		}
486
487		body,
488		h1,
489		p {
490			margin: 0
491		}
492
493		.bee-row-content {
494			max-width: 775px;
495			margin: 0 auto;
496			display: flex
497		}
498
499		.bee-row-content .bee-col-w12 {
500			flex-basis: 100%
501		}
502
503		.bee-text {
504			overflow-wrap: anywhere
505		}
506
507		@media (max-width:768px) {
508			.bee-row-content:not(.no_stack) {
509				display: block
510			}
511		}
512
513		.bee-row-1 .bee-row-content {
514			border-radius: 0;
515			color: #000000
516		}
517
518		.bee-row-1 .bee-col-1 {
519			padding-bottom: 60px;
520			padding-top: 60px
521		}
522
523		.bee-row-1 .bee-col-1 .bee-block-1 {
524			padding: 10px
525		}
526
527		.bee-row-1 .bee-col-1 .bee-block-2 {
528			text-align: center;
529			width: 100%
530		}
531	</style>
532</head>
533
534<body>
535	<div class="bee-page-container">
536		<div class="bee-row bee-row-1">
537			<div class="bee-row-content">
538				<div class="bee-col bee-col-1 bee-col-w12">
539					<div class="bee-block bee-block-1 bee-text">
540						<div style="font-size: 14px; line-height: 120%; font-family: inherit; color: #555555;" class="bee-text-content">
541							<p style="font-size: 14px; line-height: 16px; text-align: center;"><span style="font-size: 16px; line-height: 19px;">Thank You!</span></p>
542						</div>
543					</div>
544					<div class="bee-block bee-block-2 bee-heading">
545						<h1 style="color:#000000;direction:ltr;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;font-size:30px;font-weight:700;letter-spacing:normal;line-height:120%;text-align:center;margin-top:0;margin-bottom:0;">You'll hear from us soon. </h1>
546					</div>
547				</div>
548			</div>
549		</div>
550	</div>
551</body>
552
553</html>`,uO=JSON.stringify({page:{body:{container:{style:{"background-color":"#f5f5f7"}},content:{computedStyle:{linkColor:"#0000FF",messageBackgroundColor:"transparent",messageWidth:"600px"},style:{color:"#1a1a1a","font-family":"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"}},type:"mailup-bee-page-properties",webFonts:[]},description:"",rows:[{columns:[{"grid-columns":12,modules:[{descriptor:{computedStyle:{class:"center autowidth brand-logo-block",hideContentOnMobile:!1,width:"200px"},image:{alignment:"center",alt:"",href:"",maxHeight:"60px",maxWidth:"200px",prefix:"",src:"{{.LogoUrl}}",target:"_blank",width:"200px"},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"40px","text-align":"center",width:"200px"}},locked:!1,type:"mailup-bee-newsletter-modules-image",uuid:"31a94252-ce85-4b00-afd0-356babc245c6"},{descriptor:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1},heading:{style:{color:"#1a1a1a",direction:"ltr","font-family":"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif","font-size":"28px","font-weight":"700","letter-spacing":"-0.02em","line-height":"125%","link-color":"#0000FF","text-align":"center"},text:"Confirm your subscription",title:"h1"},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"32px","text-align":"center",width:"100%"}},locked:!1,type:"mailup-bee-newsletter-modules-heading",uuid:"b2c3d4e5-f6a7-8901-bcde-f12345678901"},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"16px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-size:16px;line-height:1.55;font-family:inherit;text-align:center;" data-mce-style="font-size:16px;line-height:1.55;font-family:inherit;text-align:center;"><p style="margin:0;word-break:break-word;color:#404040;text-align:center;" data-mce-style="margin:0;word-break:break-word;color:#404040;text-align:center;">Hi {{.FirstName}}, please confirm your subscription to {{.CompanyName}} by clicking the button below.</p></div>',style:{color:"#404040","font-family":"inherit","line-height":"155%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"ec36f7f1-1a1a-4a35-9cc1-7787183c2464"},{type:"mailup-bee-newsletter-modules-button",descriptor:{button:{label:'<div class="txtTinyMce-wrapper" style="font-family: inherit;" data-mce-style="font-family: inherit;"><p dir="ltr" style="word-break: break-word;" data-mce-style="word-break: break-word;">Confirm subscription</p></div>',href:"{{.ConfirmationUrl}}",target:"_blank",style:{"font-family":"inherit","font-size":"15px","font-weight":"600","background-color":"{{.ButtonColor}}","border-radius":"8px","border-top":"0px solid transparent","border-right":"0px solid transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent",color:"{{.ButtonTextColor}}","line-height":"100%","padding-top":"13px","padding-right":"24px","padding-bottom":"13px","padding-left":"24px",width:"auto","max-width":"100%",direction:"ltr"}},style:{"text-align":"center","padding-top":"28px","padding-right":"40px","padding-bottom":"0px","padding-left":"40px"},mobileStyle:{},computedStyle:{width:200,height:44,hideContentOnMobile:!1}},uuid:"32306062-5246-45ae-a0d6-a8d894e4623a",locked:!1},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"48px","padding-left":"40px","padding-right":"40px","padding-top":"24px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-size:12px;line-height:1.5;font-family:inherit;text-align:center;" data-mce-style="font-size:12px;line-height:1.5;font-family:inherit;text-align:center;"><p style="margin:0;word-break:break-word;color:#999;text-align:center;" data-mce-style="margin:0;word-break:break-word;color:#999;text-align:center;">If you did not request this, you can safely ignore this email.</p></div>',style:{color:"#999999","font-family":"inherit","line-height":"150%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"b2c3d4e5-f6a7-8901-bcde-f12345678902"},{type:"mailup-bee-newsletter-modules-divider",descriptor:{divider:{style:{"border-top":"1px solid #ececec",width:"100%"}},style:{"padding-top":"0px","padding-right":"40px","padding-bottom":"0px","padding-left":"40px"},computedStyle:{hideContentOnMobile:!1}},uuid:"b2c3d4e5-f6a7-8901-bcde-f12345678903",locked:!1},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"40px","padding-left":"40px","padding-right":"40px","padding-top":"16px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-size:13px;line-height:1.6;font-family:inherit;" data-mce-style="font-size:13px;line-height:1.6;font-family:inherit;"><p style="margin:0;word-break:break-word;color:#888;" data-mce-style="margin:0;word-break:break-word;color:#888;">Team {{.CompanyName}}</p></div>',style:{color:"#888888","font-family":"inherit","line-height":"160%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"b2c3d4e5-f6a7-8901-bcde-f12345678904"}],style:{"background-color":"#ffffff","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"0px","padding-left":"0px","padding-right":"0px","padding-top":"0px"},uuid:"49979d87-12fc-470a-9387-11dd026e95a5"}],container:{style:{"background-color":"#f5f5f7","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},content:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1,rowColStackOnMobile:!0,rowReverseColStackOnMobile:!1,verticalAlign:"top"},style:{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-radius":"12px","border-right":"0px solid transparent","border-top":"0px solid transparent",color:"#1a1a1a",width:"600px"}},empty:!1,locked:!1,synced:!1,type:"",uuid:"a684de38-c3d3-4908-8213-9e321cf88d42"}],template:{name:"template-base",type:"basic",version:"2.0.0"},title:""},comments:{}}),pO=`<!DOCTYPE html>
553<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="en"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if mso]><xml><o:OfficeDocumentSettings><o:PixelsPerInch>96</o:PixelsPerInch><o:AllowPNG/></o:OfficeDocumentSettings></xml><![endif]--><style>
554*{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}.image_block img+div{display:none} @media (max-width:620px){.mobile_hide{display:none}.row-content{width:100%!important}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}}
555</style></head><body style="background-color:#f5f5f7;margin:0;padding:0;-webkit-text-size-adjust:none;text-size-adjust:none"><table class="nl-container" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#f5f5f7"><tbody><tr><td align="center" style="padding:32px 16px"><table class="row row-1" align="center" width="600" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#ffffff;border-radius:12px;max-width:600px"><tbody><tr><td><table
556class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;color:#1a1a1a;width:600px;margin:0 auto" width="600"><tbody><tr><td class="column column-1" width="100%" style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:center;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0"><table class="brand-logo-block image_block block-1"
557width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:40px 40px 0;text-align:center"><div style="max-width:200px;margin:0 auto"><img src="{{.LogoUrl}}" style="display:block;border:0;max-width:200px;max-height:60px;width:auto;height:auto;margin:0 auto" alt=""></div></td></tr></table><table
558class="heading_block block-2" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:32px 40px 0;text-align:center"><h1 style="margin:0;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:28px;font-weight:700;letter-spacing:-0.02em;line-height:125%;text-align:center">Confirm your subscription</h1></td></tr></table><table
559class="text_block block-3" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:16px 40px 0;text-align:center"><div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:16px;line-height:1.55;color:#404040;text-align:center"><p style="margin:0">Hi {{.FirstName}}, please confirm your subscription to {{.CompanyName}} by clicking the button below.</p></div></td></tr></table><table
560class="button_block block-4" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:28px 40px 0;text-align:center"><a href="{{.ConfirmationUrl}}" target="_blank" style="display:inline-block;background-color:{{.ButtonColor}};color:{{.ButtonTextColor}};text-decoration:none;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:15px;font-weight:600;padding:13px 24px;border-radius:8px;line-height:1;mso-padding-alt:0px">Confirm subscription</a></td></tr></table><table
561class="text_block block-5" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:24px 40px 48px;text-align:center"><div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:12px;line-height:1.5;color:#999;text-align:center"><p style="margin:0">If you did not request this, you can safely ignore this email.</p></div></td></tr></table><table
562class="divider_block block-6" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:0 40px"><div style="border-top:1px solid #ececec;font-size:1px;line-height:1px">&nbsp;</div></td></tr></table><table
563class="text_block block-7" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:16px 40px 40px"><div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:13px;line-height:1.6;color:#888"><p style="margin:0">Team {{.CompanyName}}</p></div></td></tr></table></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table><!-- End --></body></html>`,hO=JSON.stringify({page:{body:{container:{style:{"background-color":"#f5f5f7"}}
563,content:{computedStyle:{linkColor:"#0000FF",messageBackgroundColor:"transparent",messageWidth:"600px"},style:{color:"#1a1a1a","font-family":"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif"}},type:"mailup-bee-page-properties",webFonts:[]},description:"",rows:[{columns:[{"grid-columns":12,modules:[{descriptor:{computedStyle:{class:"center autowidth brand-logo-block",hideContentOnMobile:!1,width:"200px"},image:{alignment:"center",alt:"",href:"",maxHeight:"60px",maxWidth:"200px",prefix:"",src:"{{.LogoUrl}}",target:"_blank",width:"200px"},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"56px","text-align":"center",width:"200px"}},locked:!1,type:"mailup-bee-newsletter-modules-image",uuid:"31a94252-ce85-4b00-afd0-356babc245c6"},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"40px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-family:inherit;" data-mce-style="font-family:inherit;"><table role="presentation" border="0" cellpadding="0" cellspacing="0" align="center" style="margin:0 auto 24px;border-collapse:collapse;"><tr><td style="width:56px;height:56px;border-radius:28px;background:#e8eaff;color:{{.PrimaryColor}};text-align:center;vertical-align:middle;font-size:28px;font-family:inherit;" data-mce-style="width:56px;height:56px;border-radius:28px;background:#e8eaff;color:{{.PrimaryColor}};text-align:center;vertical-align:middle;font-size:28px;font-family:inherit;">&#10003;</td></tr></table></div>',style:{color:"#1a1a1a","font-family":"inherit","line-height":"100%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"c3d4e5f6-a7b8-9012-cdef-123456789001"},{descriptor:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1},heading:{style:{color:"#1a1a1a",direction:"ltr","font-family":"-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif","font-size":"28px","font-weight":"700","letter-spacing":"-0.02em","line-height":"125%","link-color":"#0000FF","text-align":"center"},text:"Subscription confirmed",title:"h1"},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"0px","text-align":"center",width:"100%"}},locked:!1,type:"mailup-bee-newsletter-modules-heading",uuid:"c3d4e5f6-a7b8-9012-cdef-123456789002"},{descriptor:{computedStyle:{hideContentOnMobile:!1},style:{"padding-bottom":"0px","padding-left":"40px","padding-right":"40px","padding-top":"16px"},text:{computedStyle:{linkColor:"#0000FF"},html:'<div class="txtTinyMce-wrapper" style="font-size:16px;line-height:1.55;font-family:inherit;text-align:center;" data-mce-style="font-size:16px;line-height:1.55;font-family:inherit;text-align:center;"><p style="margin:0;word-break:break-word;color:#404040;text-align:center;" data-mce-style="margin:0;word-break:break-word;color:#404040;text-align:center;">Thank you for confirming your subscription to {{.CompanyName}}.</p></div>',style:{color:"#404040","font-family":"inherit","line-height":"155%"}}},locked:!1,type:"mailup-bee-newsletter-modules-text",uuid:"ec36f7f1-1a1a-4a35-9cc1-7787183c2464"},{type:"mailup-bee-newsletter-modules-button",descriptor:{button:{label:'<div class="txtTinyMce-wrapper" style="font-family: inherit;" data-mce-style="font-family: inherit;"><p dir="ltr" style="word-break: break-word;" data-mce-style="word-break: break-word;">Visit {{.CompanyName}} →</p></div>',href:"{{.CompanyWebsite}}",target:"_blank",style:{"font-family":"inherit","font-size":"14px","font-weight":"600","background-color":"transparent","border-radius":"8px","border-top":"1px solid #e0e0ff","border-right":"1px solid #e0e0ff","border-bottom":"1px solid #e0e0ff","border-left":"1px solid #e0e0ff",color:"{{.PrimaryColor}}","line-height":"100%","padding-top":"12px","padding-right":"22px","padding-bottom":"12px","padding-left":"22px",width:"auto","max-width":"100%",direction:"ltr"}},style:{"text-align":"center","padding-top":"32px","padding-right":"40px","padding-bottom":"64px","padding-left":"40px"},mobileStyle:{},computedStyle:{width:180,height:44,hideContentOnMobile:!1}},uuid:"c3d4e5f6-a7b8-9012-cdef-123456789003",locked:!1}],style:{"background-color":"#ffffff","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"0px","padding-left":"0px","padding-right":"0px","padding-top":"0px"},uuid:"49979d87-12fc-470a-9387-11dd026e95a5"}],container:{style:{"background-color":"#f5f5f7","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},content:{computedStyle:{hideContentOnDesktop:!1,hideContentOnMobile:!1,rowColStackOnMobile:!0,rowReverseColStackOnMobile:!1,verticalAlign:"top"},style:{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-radius":"12px","border-right":"0px solid transparent","border-top":"0px solid transparent",color:"#1a1a1a",width:"600px"}},empty:!1,locked:!1,synced:!1,type:"",uuid:"a684de38-c3d3-4908-8213-9e321cf88d42"}],template:{name:"template-base",type:"basic",version:"2.0.0"},title:""},comments:{}}),fO=`<!DOCTYPE html>
563<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="en"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if mso]><xml><o:OfficeDocumentSettings><o:PixelsPerInch>96</o:PixelsPerInch><o:AllowPNG/></o:OfficeDocumentSettings></xml><![endif]--><style>
564*{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}.image_block img+div{display:none} @media (max-width:620px){.mobile_hide{display:none}.row-content{width:100%!important}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}}
565</style></head><body style="background-color:#f5f5f7;margin:0;padding:0;-webkit-text-size-adjust:none;text-size-adjust:none"><table class="nl-container" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#f5f5f7;min-height:100vh"><tbody><tr><td align="center" style="padding:64px 16px"><table class="row row-1" align="center" width="600" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#ffffff;border-radius:12px;max-width:600px"><tbody><tr><td><table
566class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;color:#1a1a1a;width:600px;margin:0 auto" width="600"><tbody><tr><td class="column column-1" width="100%" style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:center;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0"><table class="brand-logo-block image_block block-1"
567width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:56px 40px 0;text-align:center"><div style="max-width:200px;margin:0 auto"><img src="{{.LogoUrl}}" style="display:block;border:0;max-width:200px;max-height:60px;width:auto;height:auto;margin:0 auto" alt=""></div></td></tr></table><table
568class="text_block block-2" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:40px 40px 0;text-align:center"><table role="presentation" border="0" cellpadding="0" cellspacing="0" align="center" style="margin:0 auto 24px;border-collapse:collapse"><tr><td style="width:56px;height:56px;border-radius:28px;background:#e8eaff;color:{{.PrimaryColor}};text-align:center;vertical-align:middle;font-size:28px;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif">&#10003;</td></tr></table></td></tr></table><table
569class="heading_block block-3" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:0 40px;text-align:center"><h1 style="margin:0;color:#1a1a1a;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:28px;font-weight:700;letter-spacing:-0.02em;line-height:125%;text-align:center">Subscription confirmed</h1></td></tr></table><table
570class="text_block block-4" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word"><tr><td class="pad" style="padding:16px 40px 0;text-align:center"><div style="font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:16px;line-height:1.55;color:#404040;text-align:center"><p style="margin:0">Thank you for confirming your subscription to {{.CompanyName}}.</p></div></td></tr></table><table
571class="button_block block-5" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad" style="padding:32px 40px 64px;text-align:center"><a href="{{.CompanyWebsite}}" style="display:inline-block;background-color:transparent;color:{{.PrimaryColor}};text-decoration:none;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif;font-size:14px;font-weight:600;padding:12px 22px;border-radius:8px;border:1px solid #e0e0ff;line-height:1;mso-padding-alt:0px">Visit {{.CompanyName}} &#x2192;</a></td></tr></table></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table><!-- End --></body></html>`,kN=(e,t)=>cO,MN=(e,t)=>dO,PN=(e,t)=>uO,NN=(e,t)=>pO,LN=(e,t)=>hO,DN=(e,t)=>fO,dr=Object.freeze({DragDropTemplateCode:`{"page":{"body":{"container":{"
571style":{"background-color":"#FFFFFF"}},"content":{"computedStyle":{"linkColor":"#0068A5","messageBackgroundColor":"transparent","messageWidth":"500px"},"style":{"color":"#000000","font-family":"Arial, 'Helvetica Neue', Helvetica, sans-serif"}},"type":"mailup-bee-page-properties","webFonts":[{"fontFamily":"Arial, 'Helvetica Neue', Helvetica, sans-serif","name":"Arial","url":""},{"fontFamily":"'Helvetica Neue', Helvetica, Arial, sans-serif","name":"Helvetica","url":""}]},"description":"Test template for BEE","rows":[{"columns":[{"grid-columns":12,"modules":[{"descriptor":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false},"style":{"padding-bottom":"10px","padding-left":"10px","padding-right":"10px","padding-top":"10px"},"text":{"computedStyle":{"linkColor":"#0068A5"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size:12px;line-height:14px;font-family:inherit;\\" data-mce-style=\\"font-size:12px;line-height:14px;font-family:inherit;\\"><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\"><span style=\\"font-size:14px;line-height:16px;\\" data-mce-style=\\"font-size:14px;line-height:16px;\\">Hi {{.FirstName}},</span></p><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\">&nbsp;</p><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\"><span style=\\"font-size:14px;line-height:16px;\\" data-mce-style=\\"font-size:14px;line-height:16px;\\">The Awesome Inc. is introducing a newsletter series which is bound to pull your socks off. These newsletter will contain a series of very engaging content including the recipes we&#39;ve used so far to woo clients for ourselves.</span></p><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\"><span style=\\"font-size:14px;line-height:16px;\\" data-mce-style=\\"font-size:14px;line-height:16px;\\">Be sure to subscribe to this email content by simply replying &#34;Yes&#34; to this email. We&#39;ll add you to our subscribers list and stay tuned every Friday to read interesting news as well as our marketing mantra.</span></p><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\"><span style=\\"font-size:14px;line-height:16px;\\" data-mce-style=\\"font-size:14px;line-height:16px;\\">Regards</span></p><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\"><span style=\\"font-size:14px;line-height:16px;\\" data-mce-style=\\"font-size:14px;line-height:16px;\\">Your faithful marketers</span></p><p style=\\"font-size:12px;line-height:14px;word-break:break-word;\\" data-mce-style=\\"font-size:12px;line-height:14px;word-break:break-word;\\"><span style=\\"font-size:14px;line-height:16px;\\" data-mce-style=\\"font-size:14px;line-height:16px;\\">Awesome Inc.</span></p></div>","style":{"color":"#555555","font-family":"inherit","line-height":"120%"}}},"locked":false,"type":"mailup-bee-newsletter-modules-text","uuid":"1969b432-b8ed-43a6-82e3-16877e0aee3c"}],"style":{"background-color":"transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"5px","padding-left":"0px","padding-right":"0px","padding-top":"5px"},"uuid":"7ef91825-0e96-43ce-8084-6d7c4e20affb"}],"container":{"style":{"background-color":"transparent","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},"content":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false,"rowColStackOnMobile":true,"rowReverseColStackOnMobile":false,"verticalAlign":"top"},"style":{"background-color":"transparent","background-image":"none","background-position":"top left","background-repeat":"no-repeat","color":"#000000","width":"500px"}},"empty":false,"locked":false,"synced":false,"type":"one-column-empty","uuid":"638f028b-c7d3-4cd6-ab75-6ad8e2b301e7"},{"columns":[{"grid-columns":12,"modules":[{"descriptor":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false},"style":{"padding-bottom":"10px","padding-left":"10px","padding-right":"10px","padding-top":"10px"},"text":{"computedStyle":{"linkColor":"#0068A5"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size:12px;line-height:14px;font-family:inherit;\\" data-mce-style=\\"font-size:12px;line-height:14px;font-family:inherit;\\"><p style=\\"font-size:14px;line-height:16px;word-break:break-word;\\" data-mce-style=\\"font-size:14px;line-height:16px;word-break:break-word;\\">P.S: If you aren’t the right person to contact about this, please let me know. If you would rather, I not follow up, you can let me know that too!</p></div>","style":{"color":"#555555","font-family":"inherit","line-height":"120%"}}},"locked":false,"type":"mailup-bee-newsletter-modules-text","uuid":"77bfe3f2-1947-408a-be5b-db5f3dc54c74"}],"style":{"background-color":"transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"5px","padding-left":"0px","padding-right":"0px","padding-top":"5px"},"uuid":"c9854fff-f520-4e53-b098-9379ab45ca69"}
571],"container":{"style":{"background-color":"transparent","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},"content":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false,"rowColStackOnMobile":true,"rowReverseColStackOnMobile":false,"verticalAlign":"top"},"style":{"background-color":"transparent","background-image":"none","background-position":"top left","background-repeat":"no-repeat","color":"#000000","width":"500px"}},"empty":false,"locked":false,"synced":false,"type":"one-column-empty","uuid":"3cde9a1f-a22c-4b9a-9f36-6ff3ce9ef525"}],"template":{"name":"template-base","type":"basic","version":"2.0.0"},"title":"Template Base"},"comments":{}}`,DragDropHtmlCode:`<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional //EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
572	<html xmlns="http://www.w3.org/1999/xhtml" xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office">
573	
574	<head>
575			   <!--[if gte mso 9]><xml><o:OfficeDocumentSettings><o:AllowPNG/><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml><![endif]-->
576			   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
577			   <meta name="viewport" content="width=device-width">
578			   <!--[if !mso]><!-->
579			   <meta http-equiv="X-UA-Compatible" content="IE=edge">
580			   <!--<![endif]-->
581			   <title></title>
582			   <!--[if !mso]><!-->
583			   <!--<![endif]-->
584			   <style type="text/css">
585				   body {
586					   margin: 0;
587					   padding: 0;
588				   }
589	
590				   table,
591				   td,
592				   tr {
593					   vertical-align: top;
594					   border-collapse: collapse;
595				   }
596	
597				   * {
598					   line-height: inherit;
599				   }
600	
601				   a[x-apple-data-detectors=true] {
602					   color: inherit !important;
603					   text-decoration: none !important;
604				   }
605			   </style>
606			   <style type="text/css" id="media-query">
607				   @media (max-width: 520px) {
608	
609					   .block-grid,
610					   .col {
611						   min-width: 320px !important;
612						   max-width: 100% !important;
613						   display: block !important;
614					   }
615	
616					   .block-grid {
617						   width: 100% !important;
618					   }
619	
620					   .col {
621						   width: 100% !important;
622					   }
623	
624					   .col>div {
625						   margin: 0 auto;
626					   }
627	
628					   img.fullwidth,
629					   img.fullwidthOnMobile {
630						   max-width: 100% !important;
631					   }
632	
633					   .no-stack .col {
634						   min-width: 0 !important;
635						   display: table-cell !important;
636					   }
637	
638					   .no-stack.two-up .col {
639						   width: 50% !important;
640					   }
641	
642					   .no-stack .col.num4 {
643						   width: 33% !important;
644					   }
645	
646					   .no-stack .col.num8 {
647						   width: 66% !important;
648					   }
649	
650					   .no-stack .col.num4 {
651						   width: 33% !important;
652					   }
653	
654					   .no-stack .col.num3 {
655						   width: 25% !important;
656					   }
657	
658					   .no-stack .col.num6 {
659						   width: 50% !important;
660					   }
661	
662					   .no-stack .col.num9 {
663						   width: 75% !important;
664					   }
665	
666					   .video-block {
667						   max-width: none !important;
668					   }
669	
670					   .mobile_hide {
671						   min-height: 0px;
672						   max-height: 0px;
673						   max-width: 0px;
674						   display: none;
675						   overflow: hidden;
676						   font-size: 0px;
677					   }
678	
679					   .desktop_hide {
680						   display: block !important;
681						   max-height: none !important;
682					   }
683				   }
684			   </style>
685	</head>
686	
687	<body class="clean-body" style="margin: 0; padding: 0; -webkit-text-size-adjust: 100%; background-color: #FFFFFF;">
688			   <!--[if IE]><div class="ie-browser"><![endif]-->
689			   <table class="nl-container" style="table-layout: fixed; vertical-align: top; min-width: 320px; Margin: 0 auto; border-spacing: 0; border-collapse: collapse; mso-table-lspace: 0pt; mso-table-rspace: 0pt; background-color: #FFFFFF; width: 100%;" cellpadding="0" cellspacing="0" role="presentation" width="100%" bgcolor="#FFFFFF" valign="top">
690				   <tbody>
691					   <tr style="vertical-align: top;" valign="top">
692						   <td style="word-break: break-word; vertical-align: top;" valign="top">
693							   <!--[if (mso)|(IE)]><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td align="center" style="background-color:#FFFFFF"><![endif]-->
694							   <div style="background-color:transparent;">
695								   <div class="block-grid " style="Margin: 0 auto; min-width: 320px; max-width: 500px; overflow-wrap: break-word; word-wrap: break-word; word-break: break-word; background-color: transparent;">
696									   <div style="border-collapse: collapse;display: table;width: 100%;background-color:transparent;">
697										   <!--[if (mso)|(IE)]><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color:transparent;"><tr><td align="center"><table cellpadding="0" cellspacing="0" border="0" style="width:500px"><tr class="layout-full-width" style="background-color:transparent"><![endif]-->
698										   <!--[if (mso)|(IE)]><td align="center" width="500" style="background-color:transparent;width:500px; border-top: 0px solid transparent; border-left: 0px solid transparent; border-bottom: 0px solid transparent; border-right: 0px solid transparent;" valign="top"><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td style="padding-right: 0px; padding-left: 0px; padding-top:5px; padding-bottom:5px;"><![endif]-->
699										   <div class="col num12" style="min-width: 320px; max-width: 500px; display: table-cell; vertical-align: top; width: 500px;">
700											   <div style="width:100% !important;">
701												   <!--[if (!mso)&(!IE)]><!-->
702												   <div style="border-top:0px solid transparent; border-left:0px solid transparent; border-bottom:0px solid transparent; border-right:0px solid transparent; padding-top:5px; padding-bottom:5px; padding-right: 0px; padding-left: 0px;">
703													   <!--<![endif]-->
704													   <!--[if mso]><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td style="padding-right: 10px; padding-left: 10px; padding-top: 10px; padding-bottom: 10px; font-family: Arial, sans-serif"><![endif]-->
705													   <div style="color:#555555;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;line-height:1.2;padding-top:10px;padding-right:10px;padding-bottom:10px;padding-left:10px;">
706														   <div style="font-size: 12px; line-height: 1.2; font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; color: #555555; mso-line-height-alt: 14px;">
707															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;"><span style="font-size: 14px;">Hi {{.FirstName}},</span></p>
708															   <p style="font-size: 12px; line-height: 1.2; mso-line-height-alt: 14px; margin: 0;">&nbsp;</p>
709															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;"><span style="font-size: 14px;">The Awesome Inc. is introducing a newsletter series which is bound to pull your socks off. These newsletter will c
709ontain a series of very engaging content including the recipes we've used so far to woo clients for ourselves.</span></p>
710															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;"><span style="font-size: 14px;">Be sure to subscribe to this email content by simply replying "Yes" to this email. We'll add you to our subscribers list and stay tuned every Friday to read interesting news as well as our marketing mantra.</span></p>
711															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;"><span style="font-size: 14px;">Regards</span></p>
712															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;"><span style="font-size: 14px;">Your faithful marketers</span></p>
713															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;"><span style="font-size: 14px;">Awesome Inc.</span></p>
714														   </div>
715													   </div>
716													   <!--[if mso]></td></tr></table><![endif]-->
717													   <!--[if (!mso)&(!IE)]><!-->
718												   </div>
719												   <!--<![endif]-->
720											   </div>
721										   </div>
722										   <!--[if (mso)|(IE)]></td></tr></table><![endif]-->
723										   <!--[if (mso)|(IE)]></td></tr></table></td></tr></table><![endif]-->
724									   </div>
725								   </div>
726							   </div>
727							   <div style="background-color:transparent;">
728								   <div class="block-grid " style="Margin: 0 auto; min-width: 320px; max-width: 500px; overflow-wrap: break-word; word-wrap: break-word; word-break: break-word; background-color: transparent;">
729									   <div style="border-collapse: collapse;display: table;width: 100%;background-color:transparent;">
730										   <!--[if (mso)|(IE)]><table width="100%" cellpadding="0" cellspacing="0" border="0" style="background-color:transparent;"><tr><td align="center"><table cellpadding="0" cellspacing="0" border="0" style="width:500px"><tr class="layout-full-width" style="background-color:transparent"><![endif]-->
731										   <!--[if (mso)|(IE)]><td align="center" width="500" style="background-color:transparent;width:500px; border-top: 0px solid transparent; border-left: 0px solid transparent; border-bottom: 0px solid transparent; border-right: 0px solid transparent;" valign="top"><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td style="padding-right: 0px; padding-left: 0px; padding-top:5px; padding-bottom:5px;"><![endif]-->
732										   <div class="col num12" style="min-width: 320px; max-width: 500px; display: table-cell; vertical-align: top; width: 500px;">
733											   <div style="width:100% !important;">
734												   <!--[if (!mso)&(!IE)]><!-->
735												   <div style="border-top:0px solid transparent; border-left:0px solid transparent; border-bottom:0px solid transparent; border-right:0px solid transparent; padding-top:5px; padding-bottom:5px; padding-right: 0px; padding-left: 0px;">
736													   <!--<![endif]-->
737													   <!--[if mso]><table width="100%" cellpadding="0" cellspacing="0" border="0"><tr><td style="padding-right: 10px; padding-left: 10px; padding-top: 10px; padding-bottom: 10px; font-family: Arial, sans-serif"><![endif]-->
738													   <div style="color:#555555;font-family:Arial, 'Helvetica Neue', Helvetica, sans-serif;line-height:1.2;padding-top:10px;padding-right:10px;padding-bottom:10px;padding-left:10px;">
739														   <div style="font-size: 12px; line-height: 1.2; font-family: Arial, 'Helvetica Neue', Helvetica, sans-serif; color: #555555; mso-line-height-alt: 14px;">
740															   <p style="font-size: 14px; line-height: 1.2; mso-line-height-alt: 17px; margin: 0;">P.S: If you aren’t the right person to contact about this, please let me know. If you would rather, I not follow up, you can let me know that too!</p>
741														   </div>
742													   </div>
743													   <!--[if mso]></td></tr></table><![endif]-->
744													   <!--[if (!mso)&(!IE)]><!-->
745												   </div>
746												   <!--<![endif]-->
747											   </div>
748										   </div>
749										   <!--[if (mso)|(IE)]></td></tr></table><![endif]-->
750										   <!--[if (mso)|(IE)]></td></tr></table></td></tr></table><![endif]-->
751									   </div>
752								   </div>
753							   </div>
754							   <!--[if (mso)|(IE)]></td></tr></table><![endif]-->
755						   </td>
756					   </tr>
757				   </tbody>
758			   </table>
759			   <!--[if (IE)]></div><![endif]-->
760	</body>
761	
762	</html>`,PlainTextHtmlCode:`<!DOCTYPE html>
763  <html>
764    <head>
765      <title></title>
766    </head>
767    <body>
768      <div style="background-color:#fff;font-family:&quot;HelveticaNeue&quot;,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif;margin:0;padding:0">
769        <table align="center" border="0" cellpadding="0" cellspacing="0" width="533px">
770    <tbody>
771      <tr>
772        <td style="text-align:center;padding:30px 0 20px 0"><img alt="SendX" class="CToWUd" height="87px" src="https://cdn.sendx.io/prod/upload/img/20/11/11/27/11336/full.png" style="margin:0;padding:0" width="193px" /></td>
773      </tr>
774      <tr>
775        <td>
776          <table border="0" cellpadding="0" cellspacing="0" style="background:#ffffff;border-radius:4px;margin:0;padding:0" width="100%">
777      <tbody>
778        <tr>
779          <td style="padding:30px 30px 12px 30px;font-family:&quot;Open Sans&quot;,&quot;HelveticaNeue&quot;,&quot;Helvetica Neue&quot;,Helvetica,Arial,sans-serif">
780            <p style="margin:0 0 16px;line-height:20px;color:#555555;font-size:14px">Hi {{.FirstName}},</p>
781            <p style="margin:0 0 16px;line-height:20px;color:#555555;font-size:14px">I am Matt, one of the co-founders of Awesome Inc. Really appreciate you joining Awesome Inc. and we hope you'll fall in love with it once you start exploring it further.</p>
782            <p style="margin:0 0 16px;line-height:20px;color:#555555;font-size:14px">If you wouldn't mind can I ask you a quick question: Why did you sign-up?</p>
783            <p style="margin:0 0 16px;line-height:20px;color:#555555;font-size:14px">The reason I ask this is because knowing what made you sign-up is really helpful for us in delivering the product and experience our customers want. Just hit 'reply' and let me know.</p>
784            <p style="margin:0 0 16px;line-height:20px;color:#555555;font-size:14px">Over the next few weeks, I will be sending you interesting growth tips which you can apply to grow your web business with Awesome Inc.</p>
785            <p style="margin:0 0 16px;line-height:20px;color:#555555;font-size:14px">Best,<br>Matt.<br>
785Founder @ Awesome Inc.</p>
786          </td>
787        </tr>
788      </tbody>
789          </table>
790        </td>
791      </tr>
792      <tr>
793        <td style="color:#aaaaaa;font-size:12px;text-align:center;padding:12px 0">Powered by <a href="https://sendx.io" style="color:#aaaaaa" target="_blank">SendX</a></td>
794      </tr>
795    </tbody>
796        </table>
797      </div>
798    </body>
799  </html>`,LandingPageTemplateCode:`{"page":{"body":{"content":{"style":{"color":"#000000","font-family":"Arial, 'Helvetica Neue', Helvetica, sans-serif"},"computedStyle":{"messageBackgroundColor":"transparent","linkColor":"#0000FF","messageWidth":"775px"}},"container":{"style":{"background-color":"#FFFFFF"}},"webFonts":[{"name":"Lato","fontFamily":"'Lato', Tahoma, Verdana, Segoe, sans-serif","url":"https://fonts.googleapis.com/css?family=Lato"}],"type":"mailup-bee-page-properties"},"rows":[{"content":{"style":{"background-image":"none","background-repeat":"no-repeat","color":"#000000","width":"775px","background-position":"top left","background-color":"#EEF0EC"},"computedStyle":{"rowColStackOnMobile":true}},"locked":false,"container":{"style":{"background-image":"none","background-position":"top left","background-repeat":"no-repeat","background-color":"#EEF0EC"}},"columns":[{"grid-columns":12,"modules":[{"locked":false,"type":"mailup-bee-newsletter-modules-image","descriptor":{"image":{"src":"https://d1oco4z2z1fhwp.cloudfront.net/templates/default/72/yourlogo_dark(2).png","alt":"Image","href":""},"style":{"width":"100%","padding-top":"25px","padding-right":"25px","padding-bottom":"25px","padding-left":"25px"},"computedStyle":{"width":100,"class":"center  autowidth "}}},{"locked":false,"type":"mailup-bee-newsletter-modules-text","descriptor":{"text":{"style":{"color":"#642B2B","font-family":"'Anton', sans-serif","line-height":"120%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 14px; font-family: Anton, sans-serif;\\" data-mce-style=\\"font-size: 12px; line-height: 14px; font-family: Anton, sans-serif;\\">\\n<p style=\\"text-align: center; font-size: 12px; line-height: 14px;\\" data-mce-style=\\"text-align: center; font-size: 12px; line-height: 14px;\\"><span style=\\"font-size: 38px; line-height: 45px;\\" data-mce-style=\\"font-size: 38px; line-height: 45px;\\"><strong><span style=\\"line-height: 45px; font-size: 38px;\\" data-mce-style=\\"line-height: 45px; font-size: 38px;\\"><span style=\\"line-height: 45px; font-size: 38px;\\" data-mce-style=\\"line-height: 45px; font-size: 38px;\\">FORGET THE FUNNEL</span></span></strong></span></p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"20px","padding-right":"20px","padding-bottom":"20px","padding-left":"20px"},"computedStyle":{"hideContentOnMobile":false}}},{"descriptor":{"style":{"width":"100%","padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"video":{"src":"https://www.youtube.com/watch?v=hcMZxpDJcvk","iconSize":"65","thumbSrc":"https://img.youtube.com/vi/hcMZxpDJcvk/maxresdefault.jpg","thumbRatio":"16-9","iconColor2":"#000000","iconColor1":"#FFFFFF","iconSrc":"https://app-rsrc.getbee.io/public/resources/components/widgetBar/video-content-icon-sets/light/type-01.png","iconType":"1"},"computedStyle":{"width":"100%","hideContentOnMobile":false,"class":"center"}},"type":"mailup-bee-newsletter-modules-video","locked":false},{"locked":false,"type":"mailup-bee-newsletter-modules-text","descriptor":{"text":{"style":{"color":"#24213d","font-family":"'Lato', Tahoma, Verdana, Segoe, sans-serif","line-height":"150%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 18px; font-family: Lato, Tahoma, Verdana, Segoe, sans-serif;\\" data-mce-style=\\"font-size: 12px; line-height: 18px; font-family: Lato, Tahoma, Verdana, Segoe, sans-serif;\\">\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">&nbsp;</p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">&nbsp;</p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\"><span style=\\"font-size: 16px; line-height: 24px;\\" data-mce-style=\\"font-size: 16px; line-height: 24px;\\">In this video, you'll learn tips and strategies for better user onboarding, activation and retention from none other than Claire Suellentrop, the Co-Founder of Userlist.io and Forget the Funnel.</span></p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">&nbsp;</p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\"><span style=\\"font-size: 16px; line-height: 24px;\\" data-mce-style=\\"font-size: 16px; line-height: 24px;\\">In fact, not only will you learn about Claire's experiences from when she was at Calendly plus what she's doing now, but she also breaks down her exact process for improving customer retention for her clients.</span></p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\"><span style=\\"font-size: 16px; line-height: 24px;\\" data-mce-style=\\"font-size: 16px; line-height: 24px;\\">On top of that, Claire gives us a high-level view of exactly how to identify which segments are important for your business, and even takes it one step further by helping you figure out which questions to ask those users.</span></p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">&nbsp;</p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\"><span style=\\"font-size: 16px; line-height: 24px;\\" data-mce-style=\\"font-size: 16px; line-height: 24px;\\">In short, this video will provide you with actionable ways to improve your marketing funnel with expert advice!</span></p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\"><span style=\\"font-size: 16px; line-height: 24px;\\" data-mce-style=\\"font-size: 16px; line-height: 24px;\\">Please note there is use of strong language and a lot of alcohol consumption in this video. Drunk Entrepreneurs does not condone dangerous drinking in any way! So please drink safe.</span></p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">&nbsp;</p>\\n<p style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\"><span style=\\"font-size: 16px; line-height: 24px;\\" data-mce-style=\\"font-size: 16px; line-height: 24px;\\">Be sure to SUBSCRIBE to get access to some of the most \\"intoxicating\\" marketing and business tips from the best entrepreneurs out there: </span></p>\\n</div>","computedStyle":{"linkColor":"#24213d"}},"style":{"padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"hideContentOnMobile":false}}},{"descriptor":{"style":{"padding-top":"0px","padding-right":"0px","padding-left":"0px","padding-bottom":"0px"},"html":{"html":"<div class=\\"sendx-submit-form-dragDropEditor\\" id=\\"sendx-submit-form-25pQ1\\" data-id=\\"25pQ1\\"><input data-placeholder=\\"Your Name\\" id=\\"SubscriberForm-First Name-25pQ1\\" class=\\"sendx-field-25pQ1\\" data-attr-type=\\"0\\" style=\\"font-size: 18px; margin-top: 10px !important;margin-left: 2.5% !important;margin-right: 2.5% !important;padding: 15px !important;height: 45px !important;width: 95% !important;color: #333 !important;background-color: #fff !important;border: 1px solid #c4c4c4 !important;-webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-moz-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-webkit-border-radius: 4px !important;-moz-border-radius: 4px !important;border-radius: 4px !important;-webkit-box-sizing: border-box !important;-moz-box-sizing: border-box !important;-ms-box-sizing: border-box !important;box-sizing: border-box !important;background-image: none !important;min-width: 0 !important;min-height: 0 !important;\\" /><input data-placeholder=\\"Your Email\\" id=\\"SubscriberForm-Email-25pQ1\\" class=\\"sendx-field-25pQ1\\" data-attr-type=\\"0\\" style=\\"font-size: 18px; margin-top: 10px !important;margin-left: 2.5% !important;margin-right: 2.5% !important;padding: 15px !important;height: 45px !important;width: 95% !important;color: #333 !important;background-color: #fff !important;border: 1px solid #c4c4c4 !important;-webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-moz-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-webkit-border-radius: 4px !important;-moz-border-radius: 4px !important;border-radius: 4px !important;-webkit-box-sizing: border-box !important;-moz-box-sizing: border-box !important;-ms-box-sizing: border-box !important;box-sizing: border-box !important;background-image: none !important;min-width: 0 !important;min-height: 0 !important;\\" /></div><div class=\\"sendx-submit-button-dragDropEditor\\" id=\\"sendx-submit-button-25pQ1\\" style=\\"background-color: rgb(13, 109, 184); color: #fff; margin-top: 25px; font-size: 22px; background: #642b2b; text-align: center; line-height:50px; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; border: none; text-shadow: none; width: 70%; margin-left: 15%; margin-right: 15%; height: 50px;\\" data-submitting-text=\\"Your details are being submitted\\" data-post-submit-text=\\"You are in ...\\">JOIN UPCOMING WORKSHOPS</div>\\n"},"computedStyle":{"hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-html","locked":false}],"style":{"padding-bottom":"60px","border-left":"0px solid transparent","border-bottom":"0px solid transparent","border-top":"0px solid transparent","padding-right":"0px","border-right":"0px solid transparent","padding-top":"0px","background-color":"transparent","padding-left":"0px"}}],"type":"one-column-empty"},{"content":{"style":{"background-image":"none","background-repeat":"no-repeat","color":"#333","width":"775px","background-position":"top left","background-color":"transparent"},"computedStyle":{"rowColStackOnMobile":true}}
799,"locked":false,"container":{"style":{"background-image":"none","background-position":"top left","background-repeat":"no-repeat","background-color":"#EEF0EC"}},"columns":[{"grid-columns":6,"modules":[{"locked":false,"type":"mailup-bee-newsletter-modules-image","descriptor":{"image":{"src":"https://d1oco4z2z1fhwp.cloudfront.net/templates/default/72/TM_01.jpg","alt":"Image","href":""},"style":{"width":"100%","padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"width":272,"class":"center  autowidth "}}},{"locked":false,"type":"mailup-bee-newsletter-modules-text","descriptor":{"text":{"style":{"color":"#642B2B","font-family":"'Lato', Tahoma, Verdana, Segoe, sans-serif","line-height":"120%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 14px; font-family: Lato, Tahoma, Verdana, Segoe, sans-serif;\\" data-mce-style=\\"font-size: 12px; line-height: 14px; font-family: Lato, Tahoma, Verdana, Segoe, sans-serif;\\">\\n<p style=\\"font-size: 14px; line-height: 16px; text-align: center;\\" data-mce-style=\\"font-size: 14px; line-height: 16px; text-align: center;\\"><span style=\\"font-size: 16px; line-height: 19px;\\" data-mce-style=\\"font-size: 16px; line-height: 19px;\\"><strong><span style=\\"line-height: 19px; font-size: 16px;\\" data-mce-style=\\"line-height: 19px; font-size: 16px;\\">Georgiana Laudi</span></strong></span></p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"20px","padding-right":"0px","padding-bottom":"20px","padding-left":"0px"},"computedStyle":{"hideContentOnMobile":false}}},{"locked":false,"type":"mailup-bee-newsletter-modules-text","descriptor":{"text":{"style":{"color":"#24213d","font-family":"inherit","line-height":"150%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">\\n<p style=\\"font-size: 14px; line-height: 21px;\\" data-mce-style=\\"font-size: 14px; line-height: 21px;\\">Gia has been bringing brands, products and campaigns to life for nearly 20 years. As an early employee &amp; VP of Marketing at Unbounce, she helped grow revenue by 900% in her first 3 years and go from under $1M to $15.6M in ARR.</p>\\n<p style=\\"font-size: 14px; line-height: 21px;\\" data-mce-style=\\"font-size: 14px; line-height: 21px;\\">&nbsp;</p>\\n<p style=\\"font-size: 14px; line-height: 21px;\\" data-mce-style=\\"font-size: 14px; line-height: 21px;\\">As a strategic advisor at her company A Better CX, she helps high-growth SaaS companies scale their marketing and drive serious business results.</p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"hideContentOnMobile":false}}}],"style":{"padding-bottom":"0px","border-left":"10px solid transparent","border-bottom":"10px solid transparent","border-top":"10px solid transparent","padding-right":"0px","border-right":"10px solid transparent","padding-top":"0px","background-color":"transparent","padding-left":"0px"}},{"grid-columns":6,"modules":[{"locked":false,"type":"mailup-bee-newsletter-modules-image","descriptor":{"image":{"src":"https://d1oco4z2z1fhwp.cloudfront.net/templates/default/72/TM_02.jpg","alt":"Image","href":""},"style":{"width":"100%","padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"width":272,"class":"center  autowidth "}}},{"locked":false,"type":"mailup-bee-newsletter-modules-text","descriptor":{"text":{"style":{"color":"#642B2B","font-family":"'Lato', Tahoma, Verdana, Segoe, sans-serif","line-height":"120%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 14px; font-family: Lato, Tahoma, Verdana, Segoe, sans-serif;\\" data-mce-style=\\"font-size: 12px; line-height: 14px; font-family: Lato, Tahoma, Verdana, Segoe, sans-serif;\\">\\n<p style=\\"font-size: 14px; line-height: 16px; text-align: center;\\" data-mce-style=\\"font-size: 14px; line-height: 16px; text-align: center;\\"><span style=\\"font-size: 16px; line-height: 19px;\\" data-mce-style=\\"font-size: 16px; line-height: 19px;\\"><strong>Claire Suellentrop</strong></span></p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"20px","padding-right":"0px","padding-bottom":"20px","padding-left":"0px"},"computedStyle":{"hideContentOnMobile":false}}},{"locked":false,"type":"mailup-bee-newsletter-modules-text","descriptor":{"text":{"style":{"color":"#24213d","font-family":"inherit","line-height":"150%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 18px;\\" data-mce-style=\\"font-size: 12px; line-height: 18px;\\">\\n<p style=\\"font-size: 14px; line-height: 21px;\\" data-mce-style=\\"font-size: 14px; line-height: 21px;\\">While serving as Director of Marketing and employee #2 at Calendly, Claire helped the product grow from a few thousand users to over 400k monthly users, with revenue climbing to millions in ARR.</p>\\n<p style=\\"font-size: 14px; line-height: 21px;\\" data-mce-style=\\"font-size: 14px; line-height: 21px;\\">&nbsp;</p>\\n<p style=\\"font-size: 14px; line-height: 21px;\\" data-mce-style=\\"font-size: 14px; line-height: 21px;\\">She now runs Love Your Customers, where she helps high-growth SaaS companies get inside their customers' heads and increase conversions along their sales, marketing, and onboarding funnels.</p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"hideContentOnMobile":false}}}],"style":{"padding-bottom":"0px","border-left":"10px solid transparent","border-bottom":"10px solid transparent","border-top":"10px solid transparent","padding-right":"0px","border-right":"10px solid transparent","padding-top":"0px","background-color":"transparent","padding-left":"0px"}}],"type":"two-columns-empty"},{"content":{"style":{"background-image":"none","background-repeat":"no-repeat","color":"#000000","width":"775px","background-position":"top left","background-color":"transparent"},"computedStyle":{"rowColStackOnMobile":true}}
799,"locked":false,"container":{"style":{"background-image":"none","background-position":"top left","background-repeat":"no-repeat","background-color":"#EEF0EC"}},"columns":[{"grid-columns":12,"modules":[{"descriptor":{"text":{"style":{"color":"#555555","font-family":"inherit","line-height":"120%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 14px;\\" data-mce-style=\\"font-size: 12px; line-height: 14px;\\">\\n<p style=\\"font-size: 14px; line-height: 16px; text-align: center;\\" data-mce-style=\\"font-size: 14px; line-height: 16px; text-align: center;\\"><span style=\\"color: rgb(0, 0, 0); font-size: 26px; line-height: 31px;\\" data-mce-style=\\"color: rgb(0, 0, 0); font-size: 26px; line-height: 31px;\\"><strong>Gia and Claire have helped build marketing strategies for awesome SaaS brands including:</strong></span></p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"60px","padding-right":"10px","padding-left":"10px","padding-bottom":"45px"},"computedStyle":{"hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-text","locked":false},{"descriptor":{"image":{"src":"https://d15k2d11r6t6rl.cloudfront.net/public/users/Integrators/840f4477-2071-4b5b-a7c9-79cd553fea12/dragdrop-dev/Screen%20Shot%202019-05-17%20at%203.05.31%20am.png","alt":"Image","href":""},"style":{"width":"100%","padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"width":723,"class":"center  autowidth ","hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-image","locked":false}],"style":{"padding-bottom":"55px","border-left":"0px solid transparent","border-bottom":"0px solid transparent","border-top":"0px solid transparent","padding-right":"0px","border-right":"0px solid transparent","padding-top":"5px","background-color":"transparent","padding-left":"0px"}}],"type":"one-column-empty"},{"content":{"style":{"background-image":"none","background-repeat":"no-repeat","color":"#000000","width":"775px","background-position":"top left","background-color":"transparent"},"computedStyle":{"rowColStackOnMobile":true}},"locked":false,"container":{"style":{"background-image":"none","background-position":"top left","background-repeat":"no-repeat","background-color":"#EEF0EC"}},"columns":[{"grid-columns":12,"modules":[{"descriptor":{"text":{"style":{"color":"#555555","font-family":"inherit","line-height":"180%"},"html":"<div class=\\"txtTinyMce-wrapper\\" style=\\"font-size: 12px; line-height: 21px;\\" data-mce-style=\\"font-size: 12px; line-height: 21px;\\">\\n<p style=\\"font-size: 14px; line-height: 25px;\\" data-mce-style=\\"font-size: 14px; line-height: 25px;\\"><span style=\\"color: rgb(255, 255, 255); font-size: 18px; line-height: 32px;\\" data-mce-style=\\"color: rgb(255, 255, 255); font-size: 18px; line-height: 32px;\\">I just watched the replay from yesterday's workshop, and I'll urge my CEO to watch it, too. It will help him understand exactly what I've been struggling to communicate for so long. I can't overstate how much I appreciate you sharing all of this.</span></p>\\n</div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"45px","padding-right":"45px","padding-bottom":"45px","padding-left":"45px"},"computedStyle":{"hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-text","locked":false}],"style":{"padding-bottom":"5px","border-left":"0px solid #642B2B","border-bottom":"0px solid #642B2B","border-top":"0px solid #642B2B","padding-right":"0px","border-right":"0px solid #642B2B","padding-top":"5px","background-color":"#656A60","padding-left":"0px"}}],"type":"one-column-empty"},{"content":{"style":{"background-image":"none","background-repeat":"no-repeat","color":"#333","width":"775px","background-position":"top left","background-color":"transparent"},"computedStyle":{"rowColStackOnMobile":true}},"locked":false,"container":{"style":{"background-image":"none","background-position":"top left","background-repeat":"no-repeat","background-color":"#EEF0EC"}},"columns":[{"grid-columns":6,"modules":[{"descriptor":{"image":{"src":"https://d15k2d11r6t6rl.cloudfront.net/public/users/Integrators/840f4477-2071-4b5b-a7c9-79cd553fea12/dragdrop-dev/rally-workshop-testimonial.png","alt":"Image","href":""},"style":{"width":"100%","padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"computedStyle":{"width":97,"class":"right fixedwidth","hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-image","locked":false}],"style":{"padding-bottom":"5px","border-left":"0px solid transparent","border-bottom":"0px solid transparent","border-top":"0px solid transparent","padding-right":"0px","border-right":"0px solid transparent","padding-top":"5px","background-color":"transparent","padding-left":"0px"}},{"grid-columns":6,"modules":[{"descriptor":{"text":{"style":{"color":"#555555","font-family":"inherit","line-height":"120%"},"html":"<div class=\\"txtTinyMce-wrapper\\" data-mce-style=\\"font-size: 12px; line-height: 14px;\\" style=\\"font-size: 12px; line-height: 14px;\\"><p style=\\"font-size: 12px; line-height: 14px;\\" data-mce-style=\\"font-size: 12px; line-height: 14px;\\">&nbsp;</p>\\n<p style=\\"font-size: 12px; line-height: 14px;\\" data-mce-style=\\"font-size: 12px; line-height: 14px;\\"><span style=\\"font-size: 16px; line-height: 19px;\\" data-mce-style=\\"font-size: 16px; line-height: 19px;\\"><strong>Rally Stanoeva</strong></span></p>\\n<p style=\\"font-size: 12px; line-height: 14px;\\" data-mce-style=\\"font-size: 12px; line-height: 14px;\\"><span style=\\"font-size: 16px; line-height: 19px;\\" data-mce-style=\\"font-size: 16px; line-height: 19px;\\"><span style=\\"font-size: 13px; line-height: 15px;\\" data-mce-style=\\"font-size: 13px; line-height: 15px;\\">Marketing Manager</span><br></span></p>\\n<p style=\\"font-size: 12px; line-height: 14px;\\" data-mce-style=\\"font-size: 12px; line-height: 14px;\\"><span class=\\"elementor-testimonial__name\\" style=\\"font-weight: 800; color: rgb(46, 41, 37); font-family: Roboto, sans-serif; font-size: 14px; line-height: 16px;\\" data-mce-style=\\"font-weight: 800; color: rgb(46, 41, 37); font-family: Roboto, sans-serif; font-size: 14px; line-height: 16px;\\">&nbsp;</span></p></div>","computedStyle":{"linkColor":"#0000FF"}},"style":{"padding-top":"10px","padding-right":"10px","padding-bottom":"10px","padding-left":"10px"},"computedStyle":{"hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-text","locked":false}],"style":{"padding-bottom":"5px","border-left":"0px solid transparent","border-bottom":"0px solid transparent","border-top":"0px solid transparent","padding-right":"0px","border-right":"0px solid transparent","padding-top":"5px","background-color":"transparent","padding-left":"0px"}}],"type":"two-columns-empty"},{"content":{"style":{"background-image":"none","background-repeat":"no-repeat","color":"#000000","width":"775px","background-position":"top left","background-color":"transparent"},"computedStyle":{"rowColStackOnMobile":true}}
799,"locked":false,"container":{"style":{"background-image":"none","background-position":"top left","background-repeat":"no-repeat","background-color":"#EEF0EC"}},"columns":[{"grid-columns":12,"modules":[{"descriptor":{"style":{"padding-top":"0px","padding-right":"0px","padding-bottom":"0px","padding-left":"0px"},"html":{"html":"<div class=\\"sendx-submit-form-dragDropEditor\\" id=\\"sendx-submit-form-AE76F\\" data-id=\\"AE76F\\"><input data-placeholder=\\"Your Name\\" id=\\"SubscriberForm-First Name-AE76F\\" class=\\"sendx-field-AE76F\\" data-attr-type=\\"0\\" style=\\"font-size: 18px; margin-top: 10px !important;margin-left: 2.5% !important;margin-right: 2.5% !important;padding: 15px !important;height: 45px !important;width: 95% !important;color: #333 !important;background-color: #fff !important;border: 1px solid #c4c4c4 !important;-webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-moz-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-webkit-border-radius: 4px !important;-moz-border-radius: 4px !important;border-radius: 4px !important;-webkit-box-sizing: border-box !important;-moz-box-sizing: border-box !important;-ms-box-sizing: border-box !important;box-sizing: border-box !important;background-image: none !important;min-width: 0 !important;min-height: 0 !important;\\" /><input data-placeholder=\\"Your Email\\" id=\\"SubscriberForm-Email-AE76F\\" class=\\"sendx-field-AE76F\\" data-attr-type=\\"0\\" style=\\"font-size: 18px; margin-top: 10px !important;margin-left: 2.5% !important;margin-right: 2.5% !important;padding: 15px !important;height: 45px !important;width: 95% !important;color: #333 !important;background-color: #fff !important;border: 1px solid #c4c4c4 !important;-webkit-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-moz-box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;box-shadow: inset 0 0 3px rgba(0,0,0,0.18) !important;-webkit-border-radius: 4px !important;-moz-border-radius: 4px !important;border-radius: 4px !important;-webkit-box-sizing: border-box !important;-moz-box-sizing: border-box !important;-ms-box-sizing: border-box !important;box-sizing: border-box !important;background-image: none !important;min-width: 0 !important;min-height: 0 !important;\\" /></div><div class=\\"sendx-submit-button-dragDropEditor\\" id=\\"sendx-submit-button-AE76F\\" style=\\"background-color: rgb(13, 109, 184); color: #fff; margin-top: 25px; font-size: 22px; background: #642b2b; text-align: center; line-height:50px; -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px; border: none; text-shadow: none; width: 70%; margin-left: 15%; margin-right: 15%; height: 50px;\\" data-submitting-text=\\"Your details are being submitted\\" data-post-submit-text=\\"You are in ...\\">JOIN UPCOMING WORKSHOPS</div>\\n"},"computedStyle":{"hideContentOnMobile":false}},"type":"mailup-bee-newsletter-modules-html","locked":false},{"descriptor":{"style":{"padding-left":"60px","padding-top":"60px","padding-right":"60px","padding-bottom":"60px","text-align":"center"},"computedStyle":{"hideContentOnMobile":false,"iconsDefaultHeight":32,"height":157,"padding":"0 5px 5px 0","width":288,"iconsDefaultWidth":32},"iconsList":{"icons":[{"text":"","image":{"src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/t-circle-dark-gray/[email protected]","prefix":"https://www.facebook.com/","href":"https://www.facebook.com/","alt":"Facebook","title":"Facebook"},"type":"follow","name":"facebook"},{"text":"","image":{"src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/t-circle-dark-gray/[email protected]","prefix":"https://twitter.com/","href":"https://twitter.com/","alt":"Twitter","title":"Twitter"},"type":"follow","name":"twitter"},{"text":"","image":{"src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/t-circle-dark-gray/[email protected]","prefix":"https://instagram.com/","href":"https://instagram.com/","alt":"Instagram","title":"Instagram"},"type":"follow","name":"instagram"},{"text":"","image":{"src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/t-circle-dark-gray/[email protected]","prefix":"https://www.linkedin.com/","href":"https://www.linkedin.com/","alt":"LinkedIn","title":"LinkedIn"},"type":"follow","name":"linkedin"}]}},"type":"mailup-bee-newsletter-modules-social","locked":false}],"style":{"padding-bottom":"5px","border-left":"0px solid transparent","border-bottom":"0px solid transparent","border-top":"0px solid transparent","padding-right":"0px","border-right":"0px solid transparent","padding-top":"60px","background-color":"transparent","padding-left":"0px"}}],"type":"one-column-empty"}],"description":"","template":{"version":"2.0.0","type":"basic","name":"template-base"},"title":""}}`,EmptyBeeEditorHtml:'<!DOCTYPE html>
799<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="en"><head><title></title><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><!--[if mso]><xml><o:OfficeDocumentSettings><o:PixelsPerInch>96</o:PixelsPerInch><o:AllowPNG/></o:OfficeDocumentSettings></xml><![endif]--><style> *{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}.image_block img+div{display:none} @media (max-width:520px){.mobile_hide{display:none}.row-content{width:100%!important}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}} </style></head><body class="body" style="background-color:#fff;margin:0;padding:0;-webkit-text-size-adjust:none;text-size-adjust:none"><table class="nl-container" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff"><tbody><tr><td><table class="row row-1" align="center" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tbody><tr><td> <table class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;border-radius:0;color:#000;width:500px;margin:0 auto" width="500"><tbody><tr><td class="column column-1" width="100%" style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:left;padding-bottom:5px;padding-top:5px;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0"><table class="empty_block block-1" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0"><tr><td class="pad"><div></div></td></tr></table></td></tr></tbody></table></td></tr></tbody></table></td></tr></tbody></table><!-- End --></body></html>',DragDropRssTemplateCode:`{"page":{"body":{"container":{"style":{"background-color":"#FFFFFF"}},"content":{"computedStyle":{"align":"center","linkColor":"#0068A5","messageBackgroun
799dColor":"transparent","messageWidth":"720px"},"style":{"color":"#000000","font-family":"'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif"}},"type":"mailup-bee-page-properties","webFonts":[{"fontFamily":"Arial, 'Helvetica Neue', Helvetica, sans-serif","name":"Arial","url":""},{"fontFamily":"'Helvetica Neue', Helvetica, Arial, sans-serif","name":"Helvetica","url":""},{"fontFamily":"'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif","name":"Open Sans","url":"https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&display=swap"}]},"description":"Test template for BEE","rows":[{"columns":[{"grid-columns":12,"modules":[{"descriptor":{"computedStyle":{"class":"center autowidth","hideContentOnMobile":false,"width":"100px"},"image":{"alt":"","href":"","prefix":"","src":"https://d1oco4z2z1fhwp.cloudfront.net/templates/default/72/yourlogo_dark(2).png","target":"_blank"},"style":{"border-radius":"0px","padding-bottom":"0px","padding-left":"0px","padding-right":"0px","padding-top":"0px","width":"100%"}},"locked":false,"type":"mailup-bee-newsletter-modules-image","uuid":"3b0d3fcc-294e-4cc8-834e-6c891de85d33"},{"descriptor":{"computedStyle":{"hideContentOnMobile":false},"spacer":{"style":{"height":"35px"}}},"locked":false,"type":"mailup-bee-newsletter-modules-spacer","uuid":"d04d4467-6859-4ec9-864f-e24317b77f9c"}],"style":{"background-color":"transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"5px","padding-left":"0px","padding-right":"0px","padding-top":"5px"},"uuid":"87ca9c41-19e1-4ce5-b7c1-fce3eeb9a9e1"}],"container":{"style":{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},"content":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false,"rowColStackOnMobile":true,"rowReverseColStackOnMobile":false,"verticalAlign":"top"},"style":{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-radius":"0px","border-right":"0px solid transparent","border-top":"0px solid transparent","color":"#000000","width":"720px"}},"empty":false,"locked":false,"synced":false,"type":"","uuid":"67e58adc-b7d8-43fb-b79a-48974926085d"},{"columns":[{"grid-columns":12,"modules":[{"descriptor":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false},"heading":{"style":{"color":"#555555","direction":"ltr","font-family":"'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif","font-size":"24px","font-weight":"700","letter-spacing":"0px","line-height":"150%","link-color":"#0068a5","text-align":"left"},"text":"<span class=\\"tinyMce-placeholder\\"><a href=\\"{{ .PostLink }}\\" target=\\"_blank\\" style=\\"text-decoration: underline;\\" rel=\\"noopener\\"><span class=\\"mce-content-body mce-edit-focus\\" style=\\"position: relative;\\" id=\\"1a28b471-83bc-41f3-aa46-ef90f9772844\\" data-position=\\"20-0-0\\" data-qa=\\"tinyeditor-root-element\\"><span class=\\"tinyMce-placeholder\\">&nbsp;{{ .PostTitle }}</span></span></a></span>","title":"h2"},"style":{"padding-bottom":"0px","padding-left":"5px","padding-right":"0px","padding-top":"0px","text-align":"center","width":"100%"}},"locked":false,"type":"mailup-bee-newsletter-modules-heading","uuid":"c6c2ee62-eb4f-416e-bc83-ad14836992d9"},{"descriptor":{"computedStyle":{"hideContentOnAmp":false,"hideContentOnDesktop":false,"hideContentOnHtml":false,"hideContentOnMobile":false},"paragraph":{"computedStyle":{"linkColor":"#0068A5","paragraphSpacing":"16px"},"html":"<p>Published on {{ .PostDate }}</p>","style":{"color":"#000000","direction":"ltr","font-family":"'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif","font-size":"16px","font-weight":"400","letter-spacing":"0px","line-height":"120%","text-align":"left"}},"style":{"padding-bottom":"10px","padding-left":"10px","padding-right":"10px","padding-top":"10px"}},"locked":false,"type":"mailup-bee-newsletter-modules-paragraph","uuid":"a6e46785-80cc-4984-ba46-0f43a0de4a99"},{"descriptor":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false,"rowColStackOnMobile":true,"rowReverseColStackOnMobile":false,"verticalAlign":"top"},"heading":{"style":{"color":"#555555","direction":"ltr","font-family":"inherit","font-size":"16px","font-weight":"700","letter-spacing":"0px","line-height":"120%","link-color":"#E01253","text-align":"center"},"text":"<span class=\\"tinyMce-placeholder\\"></span>","title":"h1"},"style":{"padding-bottom":"0px","padding-left":"0px","padding-right":"0px","padding-top":"0px","text-align":"center","width":"100%"}},"locked":false,"type":"mailup-bee-newsletter-modules-heading","uuid":"62829076-7333-413b-8a58-471dbdc778b9"},{"descriptor":{"computedStyle":{"hideContentOnAmp":false,"hideContentOnDesktop":false,"hideContentOnHtml":false,"hideContentOnMobile":false},"paragraph":{"computedStyle":{"linkColor":"#0068a5","paragraphSpacing":"16px"},"html":"<p>{{ .PostDescriptionOrContent }}</p>","style":{"color":"#000000","direction":"ltr","font-family":"'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif","font-size":"16px","font-weight":"400","letter-spacing":"0px","line-height":"150%","text-align":"left"}},"style":{"padding-bottom":"0px","padding-left":"10px","padding-right":"10px","padding-top":"10px"}},"locked":false,"type":"mailup-bee-newsletter-modules-paragraph","uuid":"a428ba2d-3adc-4816-be91-26dde0d2fd1b"},{"descriptor":{"computedStyle":{"hideContentOnAmp":false,"hideContentOnDesktop":false,"hideContentOnHtml":false,"hideContentOnMobile":false},"paragraph":{"computedStyle":{"linkColor":"#0068A5","paragraphSpacing":"12px"},"html":"<p><a href=\\"{{ .PostLink }}\\" target=\\"_blank\\" style=\\"text-decoration: underline;\\" rel=\\"noopener\\">Read more...</a></p>","style":{"color":"#0068a5","direction":"ltr","font-family":"'Open Sans', 'Helvetica Neue', Helvetica, Arial, sans-serif","font-size":"14px","font-weight":"400","letter-spacing":"0px","line-height":"120%","text-align":"left"}},"style":{"padding-bottom":"5px","padding-left":"10px","padding-right":"5px","padding-top":"0px"}},"locked":false,"type":"mailup-bee-newsletter-modules-paragraph","uuid":"21056998-9547-4d54-abea-47b266cddf81"},{"descriptor":{"computedStyle":{"hideContentOnMobile":false}
799,"spacer":{"style":{"height":"35px"}}},"locked":false,"type":"mailup-bee-newsletter-modules-spacer","uuid":"ce7c6fc9-d68e-4b26-8967-b84ed428004d"}],"style":{"background-color":"transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"5px","padding-left":"0px","padding-right":"0px","padding-top":"5px"},"uuid":"a9f39b93-9b7e-426c-b3d9-48ff87eee65a"}],"container":{"displayCondition":{"after":"{{end}}","before":"{{range .Posts}}","description":"Iterate Posts","label":"Iterate Posts","type":"BEE_CUSTOM_DISPLAY_CONDITION"},"style":{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},"content":{"computedStyle":{"columnsSpacing":"0px","hideContentOnDesktop":false,"hideContentOnMobile":false,"rowColStackOnMobile":true,"rowReverseColStackOnMobile":false,"verticalAlign":"top"},"style":{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid #573737","border-left":"0px solid #573737","border-radius":"0px","border-right":"0px solid #573737","border-top":"0px solid #573737","color":"#000000","width":"720px"}},"empty":false,"locked":false,"synced":false,"type":"one-column-12-empty","uuid":"0237df5b-aa59-4c13-8550-9a6749977155"},{"columns":[{"grid-columns":12,"modules":[{"descriptor":{"computedStyle":{"height":57,"hideContentOnMobile":false,"iconsDefaultWidth":32,"padding":"0 2.5px 0 2.5px","width":151},"iconsList":{"icons":[{"id":"facebook","image":{"alt":"Facebook","href":"https://www.facebook.com/","prefix":"https://www.facebook.com/","src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]","target":"_blank","title":"Facebook"},"name":"Facebook","text":"","type":"follow"},{"id":"x","image":{"alt":"X","href":"https://twitter.com/","prefix":"https://twitter.com/","src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]","target":"_blank","title":"X"},"name":"X","text":"","type":"follow"},{"id":"instagram","image":{"alt":"Instagram","href":"https://instagram.com/","prefix":"https://instagram.com/","src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]","target":"_blank","title":"Instagram"},"name":"Instagram","text":"","type":"follow"},{"id":"linkedin","image":{"alt":"LinkedIn","href":"https://www.linkedin.com/","prefix":"https://www.linkedin.com/","src":"https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]","target":"_blank","title":"LinkedIn"},"name":"LinkedIn","text":"","type":"follow"}]},"style":{"padding-bottom":"10px","padding-left":"10px","padding-right":"10px","padding-top":"10px","text-align":"center"}},"locked":false,"type":"mailup-bee-newsletter-modules-social","uuid":"7c11a6c7-d8be-4411-aa82-28d527122c93"}],"style":{"background-color":"transparent","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-right":"0px solid transparent","border-top":"0px solid transparent","padding-bottom":"5px","padding-left":"0px","padding-right":"0px","padding-top":"5px"},"uuid":"22afc435-0231-44de-9d08-91011d181c8c"}],"container":{"style":{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat"}},"content":{"computedStyle":{"hideContentOnDesktop":false,"hideContentOnMobile":false,"rowColStackOnMobile":true,"rowReverseColStackOnMobile":false,"verticalAlign":"top"},"style":{"background-color":"#ffffff","background-image":"none","background-position":"top left","background-repeat":"no-repeat","border-bottom":"0px solid transparent","border-left":"0px solid transparent","border-radius":"0px","border-right":"0px solid transparent","border-top":"0px solid transparent","color":"#000000","width":"720px"}},"empty":false,"locked":false,"synced":false,"type":"one-column-12-empty","uuid":"1f24de04-6e37-4d6a-9794-347b526b596a"}],"template":{"name":"template-base","type":"basic","version":"2.0.0"},"title":"Template Base"},"comments":{}}`,DragDropRssHtmlCode:`<!DOCTYPE html>
800<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" lang="en">
801   <head>
802      <title></title>
803      <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
804      <meta name="viewport" content="width=device-width,initial-scale=1">
805      <!--[if mso]>
806      <xml>
807         <o:OfficeDocumentSettings>
808            <o:PixelsPerInch>96</o:PixelsPerInch>
809            <o:AllowPNG/>
810         </o:OfficeDocumentSettings>
811      </xml>
812      <![endif]--><!--[if !mso]><!-->
813      <link 
814         href="https://fonts.googleapis.com/css2?family=Open+Sans:wght@400;700&amp;display=swap" rel="stylesheet" type="text/css">
815      <!--<![endif]-->
816      <style>
817         *{box-sizing:border-box}body{margin:0;padding:0}a[x-apple-data-detectors]{color:inherit!important;text-decoration:inherit!important}#MessageViewBody a{color:inherit;text-decoration:none}p{line-height:inherit}.desktop_hide,.desktop_hide table{mso-hide:all;display:none;max-height:0;overflow:hidden}.image_block img+div{display:none}sub,sup{line-height:0;font-size:75%} @media (max-width:740px){.social_block.desktop_hide .social-table{display:inline-block!important}.mobile_hide{display:none}.row-content{width:100%!important}.stack .column{width:100%;display:block}.mobile_hide{min-height:0;max-height:0;max-width:0;overflow:hidden;font-size:0}.desktop_hide,.desktop_hide table{display:table!important;max-height:none!important}}
818      </style>
819      <!--[if mso ]>
820      <style>sup, sub { font-size: 100% !important; } sup { mso-text-raise:10% } sub { mso-text-raise:-10% }</style>
821      <![endif]-->
822   </head>
823   <body class="body" style="background-color:#fff;margin:0;padding:0;-webkit-text-size-adjust:none;text-size-adjust:none">
824      <table class="nl-container" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff">
825         <tbody>
826            <tr>
827               <td>
828                  <table class="row row-1" align="center" 
829                     width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff">
830                     <tbody>
831                        <tr>
832                           <td>
833                              <table class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff;border-radius:0;color:#000;width:720px;margin:0 auto" width="720">
834                                 <tbody>
835                                    <tr>
836                                       <td class="column column-1" width="100%" 
837                                          style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:left;padding-bottom:5px;padding-top:5px;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0">
838                                          <table class="image_block block-1" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0">
839                                             <tr>
840                                                <td class="pad" style="width:100%">
841                                                   <div class="alignment" align="center" style="line-height:10px">
842                                                      <div style="max-width:100px"><img 
843                                                         src="https://d1oco4z2z1fhwp.cloudfront.net/templates/default/72/yourlogo_dark(2).png" style="display:block;height:auto;border:0;width:100%" width="100" height="auto"></div>
844                                                   </div>
845                                                </td>
846                                             </tr>
847                                          </table>
848                                          <div class="spacer_block block-2" style="height:35px;line-height:35px;font-size:1px">&#8202;</div>
849                                       </td>
850                                    </tr>
851                                 </tbody>
852                              </table>
853                           </td>
854                        </tr>
855                     </tbody>
856                  </table>
857                  {{range .Posts}}
858                  <table class="row row-2" align="center" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" 
859                     style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff">
860                     <tbody>
861                        <tr>
862                           <td>
863                              <table class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff;border-radius:0;color:#000;width:720px;margin:0 auto" width="720">
864                                 <tbody>
865                                    <tr>
866                                       <td class="column column-1" width="100%" 
867                                          style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:left;padding-bottom:5px;padding-top:5px;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0">
868                                          <table class="heading_block block-1" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0">
869                                             <tr>
870                                                <td class="pad" style="padding-left:5px;text-align:center;width:100%">
871                                                   <h2 
872                                                      style="margin:0;color:#555;direction:ltr;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:24px;font-weight:700;letter-spacing:normal;line-height:150%;text-align:left;margin-top:0;margin-bottom:0;
872mso-line-height-alt:36px">
873                                                      <span class="tinyMce-placeholder" style="word-break: break-word;"><a href="{{ .PostLink }}" target="_blank" style="text-decoration: underline; color: #0068a5;" rel="noopener"><span class="mce-content-body mce-edit-focus" style="word-break: break-word; position: relative;" id="1a28b471-83bc-41f3-aa46-ef90f9772844" data-position="20-0-0" data-qa="tinyeditor-root-element"><span class="tinyMce-placeholder" style="word-break: break-word;">&nbsp;{{ .PostTitle }}</span></span></a></span>
874                                                   </h2>
875                                                </td>
876                                             </tr>
877                                          </table>
878                                          <table class="paragraph_block block-2" width="100%" border="0" cellpadding="10" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word">
879                                             <tr>
880                                                <td class="pad">
881                                                   <div style="color:#000;direction:ltr;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:16px;font-weight:400;letter-spacing:0;line-height:120%;text-align:left;mso-line-height-alt:19.2px">
882                                                      <p style="margin:0">Published on {{ .PostDate }}</p>
883                                                   </div>
884                                                </td>
885                                             </tr>
886                                          </table>
887                                          <table class="heading_block block-3" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0">
888                                             <tr>
889                                                <td class="pad" style="text-align:center;width:100%">
890                                                   <h1 style="margin:0;color:#555;direction:ltr;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:16px;font-weight:700;letter-spacing:normal;line-height:120%;text-align:center;margin-top:0;margin-bottom:0;mso-line-height-alt:19.2px">
891                                                      <span class="tinyMce-placeholder" style="word-break: break-word;"></span>
892                                                   </h1>
893                                                </td>
894                                             </tr>
895                                          </table>
896                                          <table class="paragraph_block block-4" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word">
897                                             <tr>
898                                                <td class="pad" style="padding-left:10px;padding-right:10px;padding-top:10px">
899                                                   <div 
900                                                      style="color:#000;direction:ltr;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:16px;font-weight:400;letter-spacing:0;line-height:150%;text-align:left;mso-line-height-alt:24px">
901                                                      <p style="margin:0">{{ .PostDescriptionOrContent }}</p>
902                                                   </div>
903                                                </td>
904                                             </tr>
905                                          </table>
906                                          <table class="paragraph_block block-5" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;word-break:break-word">
907                                             <tr>
908                                                <td class="pad" 
909                                                   style="padding-bottom:5px;padding-left:10px;padding-right:5px">
910                                                   <div style="color:#0068a5;direction:ltr;font-family:'Open Sans','Helvetica Neue',Helvetica,Arial,sans-serif;font-size:14px;font-weight:400;letter-spacing:0;line-height:120%;text-align:left;mso-line-height-alt:16.8px">
911                                                      <p style="margin:0"><a href="{{ .PostLink }}" target="_blank" style="text-decoration: underline;
911 color: #0068A5;" rel="noopener">Read more...</a></p>
912                                                   </div>
913                                                </td>
914                                             </tr>
915                                          </table>
916                                          <div 
917                                             class="spacer_block block-6" style="height:35px;line-height:35px;font-size:1px">&#8202;</div>
918                                       </td>
919                                    </tr>
920                                 </tbody>
921                              </table>
922                           </td>
923                        </tr>
924                     </tbody>
925                  </table>
926                  {{end}}
927                  <table class="row row-3" align="center" width="100%" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff">
928                     <tbody>
929                        <tr>
930                           <td>
931                              <table class="row-content stack" align="center" border="0" cellpadding="0" cellspacing="0" role="presentation" 
932                                 style="mso-table-lspace:0;mso-table-rspace:0;background-color:#fff;border-radius:0;color:#000;width:720px;margin:0 auto" width="720">
933                                 <tbody>
934                                    <tr>
935                                       <td class="column column-1" width="100%" style="mso-table-lspace:0;mso-table-rspace:0;font-weight:400;text-align:left;padding-bottom:5px;padding-top:5px;vertical-align:top;border-top:0;border-right:0;border-bottom:0;border-left:0">
936                                          <table class="social_block block-1" width="100%" border="0" cellpadding="10" cellspacing="0" role="presentation" 
937                                             style="mso-table-lspace:0;mso-table-rspace:0">
938                                             <tr>
939                                                <td class="pad">
940                                                   <div class="alignment" align="center">
941                                                      <table class="social-table" width="144px" border="0" cellpadding="0" cellspacing="0" role="presentation" style="mso-table-lspace:0;mso-table-rspace:0;display:inline-block">
942                                                         <tr>
943                                                            <td style="padding:0 2px 0 2px"><a href="https://www.facebook.com/" target="_blank"><img 
944                                                               src="https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]" width="32" height="auto" alt="Facebook" title="Facebook" style="display:block;height:auto;border:0"></a></td>
945                                                            <td style="padding:0 2px 0 2px"><a href="https://twitter.com/" target="_blank"><img src="https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]" width="32" height="auto" alt="X" title="X" 
946                                                               style="display:block;height:auto;border:0"></a></td>
947                                                            <td style="padding:0 2px 0 2px"><a href="https://instagram.com/" target="_blank"><img src="https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]" width="32" height="auto" alt="Instagram" title="Instagram" style="display:block;height:auto;border:0"></a></td>
948                                                            <td style="padding:0 2px 0 2px"><a href="https://www.linkedin.com/" target="_blank"><img
949                                                               src="https://app-rsrc.getbee.io/public/resources/social-networks-icon-sets/circle-color/[email protected]" width="32" height="auto" alt="LinkedIn" title="LinkedIn" style="display:block;height:auto;border:0"></a></td>
950                                                         </tr>
951                                                      </table>
952                                                   </div>
953                                                </td>
954                                             </tr>
955                                          </table>
956                                       </td>
957                                    </tr>
958                                 </tbody>
959                              </table>
960                           </td>
961                        </tr>
962                     </tbody>
963                  </table>
964               </td>
965            </tr>
966         </tbody>
967      </table>
968      <!-- End -->
969   </body>
970</html>`}),GN=Object.freeze({campaign:{newsletter:{all:{topic:"Create your first newsletter",description:"Send newsletters now or schedule later — with powerful editors, AI writing, and deliverability-first sending.",detailsInList:["Create emails with 1000+ mobile-ready templates using drag-drop, AI editor, or custom HTML.","Generate subject lines and content with AI","Send smarter with smart send and geo sending to reach subscribers at the right time.","Boost engagement with 1-click resend to unopeners and advanced personalization.","Stay clean automatically with smart filtering for unsubscribes, bounces, and duplicates.","Protect deliverability with spread sending and campaign auto-warmup add-ons, ideal for migrations.","Measure results with detailed reporting on opens, clicks, revenue, devices, and more."],buttonName:"Create Newsletter",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Newsletter-campaign-1.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Newsletter-campaign-light.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Newsletter-campaign-dark.png",redirectPage:ve.Campaign.Newsletter.New.Sender},draft:{topic:"No draft newsletters",description:"Once a draft newsletter is created, it will appear here."},scheduled:{topic:"No scheduled newsletters",description:"Once a newsletter is scheduled, it will be appear here."},sending:{topic:"No newsletters currently being sent.",description:"Once a newsletter is sending, it will be appear here."}
970,sent:{topic:"No newsletters sent.",description:"Once a newsletter is sent, it will appear here."},quarantined:{topic:"No newsletters quarantined.",description:"Once a newsletter is quarantined, it will appear here."},archived:{topic:"No archived newsletters.",description:"Archived newsletters will appear here. You can restore them at any time."}},rss:{all:{topic:"Create your first RSS campaign",description:"Automatically send emails with your latest blog posts or content updates from any RSS feed.",detailsInList:["Connect your RSS feed URL and we'll automatically pull in new posts for your emails.","Choose your sending frequency — daily, weekly, or monthly — and pick specific days to send.","Customize the look and feel of your emails while dynamic RSS content is pulled in automatically.","Select your recipient list and let the platform handle the rest with detailed analytics and tracking."],buttonName:"Create RSS Campaign",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/RSS-campaign.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/RSS-campaign-light.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/RSS-campaign-dark.png",redirectPage:ve.Campaign.RSS.New.Basic},active:{topic:"No active RSS campaigns",description:"Once an RSS campaign is enabled, it will appear here."},paused:{topic:"No paused RSS campaigns",description:"Once an RSS campaign is paused, it will appear here."},draft:{topic:"No draft RSS campaigns",description:"Once an RSS campaign is saved as draft, it will appear here."},archived:{topic:"No archived RSS campaigns",description:"Archived RSS campaigns will appear here."}},drip:{all:{topic:"Create your first drip campaign",description:"Send a series of emails on autopilot — perfect for onboarding, nurturing, and retention flows.",detailsInList:["Build short or long sequences with 2 to 200 emails.","Set delays in minutes, hours, or days between drip steps.","Skip weekends or specific days to send at the right time.","Exclude contacts from specific steps (e.g., paid users from discount emails).","Preview every step before you enable the drip.","Trigger drips via workflows or automation rules, with optional A/B testing.","Track performance with step-level reporting across the entire sequence."],buttonName:"Create Drip Campaign",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Drip-campaign.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Drip-campaign-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Drip-campaign-light.png",redirectPage:ve.Campaign.Drip.New.Sender},active:{topic:"No active drip campaigns",description:"Once a drip campaign is enabled, it will appear here."},paused:{topic:"No paused drip campaigns",description:"Once a drip campaign is paused, it will appear here."},archived:{topic:"No archived drip campaigns.",description:"Archived drip campaigns will appear here. You can restore them at any time."}},abSplit:{all:{topic:"Create your A/B split test",description:"Optimise your email strategy with A/B testing for newsletter campaigns.",detailsInList:["Test different email subject lines, CTAs, and send times to find the most effective campaign.","Find our what drives engagement faster by testing multiple elements simultaneously.","View detailed reports with open rate, click rate, and heatmaps showing subscriber interactions."],buttonName:"Create A/B split test",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/AB-split-test-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/AB-split-test-light.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/AB-split-test-dark.png",redirectPage:ve.Campaign.ABTest.New.Sender},draft:{topic:"No draft split tests",description:"Once a draft split test is created, it will appear here."},scheduled:{topic:"No scheduled split tests",description:"Once a split test is scheduled, it will be appear here."},testing:{topic:"No split tests are currently underway.",description:"Once a split test is underway, it will be appear here."},tested:{topic:"No split tests are tested.",description:"Once a split test is tested, it will be appear here."},winnerScheduled:{topic:"No winners scheduled",description:"Once a winner has been identified and scheduled, it will appear here."},winnerSending:{topic:"No winners currently being sent.",description:"Once a winner is sending, it will appear here."},inProgress:{topic:"No A/B test campaign is currently in progress.",description:"Once a campaign starts testing, it will be shown here until completion."},finished:{topic:"No winners sent.",description:"Once a winner is sent, it will appear here."}},autoTrigger:{all:{topic:"Create your first auto-trigger email",description:"Build reusable one-
970off emails that can be triggered from workflows, automation rules, or via API.",detailsInList:["Design emails once and trigger them automatically from any workflow or automation rule.","Send transactional or behavioral emails triggered by user actions or events.","Use API to trigger personalized emails programmatically from your application."],buttonName:"Create Auto-Trigger Email",imageName:"autotrigger.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Auto-trigger-campaign-light.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Auto-trigger-campaign-dark.png",redirectPage:ve.Campaign.AutoTrigger.New.Sender},active:{topic:"No active auto-trigger emails",description:"Once an auto-trigger email is enabled, it will appear here."},draft:{topic:"No draft auto-trigger emails",description:"Once a draft auto-trigger email is created, it will appear here."},archived:{topic:"No archived auto-trigger emails",description:"Archived auto-trigger emails will appear here. You can restore them at any time."}}},audience:{contact:{all:{topic:"Create your first contact",description:"Group your contacts using lists, tags and segments",detailsInList:["Add contacts manually, import them to lists or tags or use our API","Use custom fields to your contacts","Auto-merging of contacts based on email","Auto-suppression of unsubscribed, bounced and marked spam contacts"],buttonName:"Create Contact",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Audience-management-contacts.jpg",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Contacts-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Contacts-light.png"},unsubscribed:{topic:"No unsubscribed contacts",description:"Once a contact has unsubscribed, they will appear here."},bounced:{topic:"No bounced contacts",description:"Once a contact has bounced, they will be appear here."},markedSpam:{topic:"No contacts marked as spam",description:"Once a contact is marked as spam, they will appear here."},active:{topic:"No active contacts",description:"Active contacts are those who are subscribed and can receive emails."},suppression:{topic:"No suppressed contacts",description:"Import contacts to your Suppression Center to maintain sender reputation and ensure compliance with email best practices.",detailsInList:["Suppressed contacts are excluded from billing and will never receive emails","Import contacts in bulk via CSV or add them manually","Maintain a clean email list by suppressing contacts who should not receive communications","Protect your sender reputation by preventing emails to suppressed contacts"],buttonName:"Import Contacts",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Audience-management-contacts.jpg",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Contacts-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Contacts-light.png",redirectPage:"/setting/suppression-center/new/import/select-file",backgroundClass:"bg-sendx-primary"}},list:{all:{topic:"Create your first list",description:"Better manage your contacts using lists",detailsInList:["Import contacts easily via CSV file to your lists","Setup automated thankyou emails to go on list subscription","Use double-optin lists to reduce bot subscription and spammers","Trigger automations when contacts subscribe to a list"],buttonName:"Create List",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Audience-management-list.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/List-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/List-light.png"},favorites:{topic:"No favorite lists",description:"Mark lists as favorite to see them here."},contact:{topic:"No contacts found",description:"Once contacts are added, they will appear here."},archived:{topic:"No archived lists.",description:"Archived lists will appear here. You can restore them at any time."}},tag:{all:{topic:"Create your first tag",description:"Group your contacts based on activity or behaviour using tags",detailsInList:["Import contacts easily via CSV file to your tags","Use our API to add or remove tags to a contact","Trigger automations when tags are being added or removed from a contact"],buttonName:"Create Tag",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Audience-management-tags.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Tags-light.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Tags-dark.png"},favorites:{topic:"No favorite tags",description:"Mark tags as favorite to see them here."},contact:{topic:"No contacts found",description:"Once contacts are added, they will appear here."},archived:{topic:"No archived tags.",description:"Archived tags will appear here. You can restore them at any time."}},group:{all:{topic:"Create your first suppression group",description:"Organize suppressed contacts into groups for better management",detailsInList:["Import contacts easily via CSV file to your suppression groups","Manage suppressed contacts in organized groups","Export suppression groups for backup or migration"],buttonName:"Create Group",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Audience-management-list.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/List-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/List-light.png"},contact:{topic:"No contacts found",description:"Once contacts are added, they will appear here."}},segment:{all:{topic:"Create your first segment",description:"Set of conditions to group contacts based on attributes or behaviour",detailsInList:["Group your contacts based on email activity, custom field, tags or list membership & more ","Better targeted groups for your campaigns","Easily segregate active & inactive subscribers for better email performance"],buttonName:"Create Segment",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Audience-management-segment.jpg",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Segmentation-light.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Segmentation-dark.png",redirectPage:ve.Audience.Segment.New},archived:{topic:"No archived segments.",description:"Archived segments will appear here. You can restore them at any time."}}},forms:{formData:{popup:{topic:"Create your first popup",description:"Grow your email list and drive traffic with popups — featuring flexible triggers, advanced targeting, and GDPR compliance.",detailsInList:["Choose from modal, hello bar, slider, or page takeover designs.","Collect emails, phone numbers, or custom data mapped to any field.","Trigger on exit intent, time delay, scroll depth, or click events.","Target specific pages or URL patterns for the right audience.","Personalize content, add captcha, and include GDPR consent forms.","Track views, conversions, and subscription rates with detailed analytics."],buttonName:"Create Popup",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Pop-ups-1.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Pop-ups-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Pop-ups-light.png",redirectPage:ve.Form.New.Type}
970,popup_active:{topic:"No active popups",description:"Once a popup is enabled, it will appear here."},popup_draft:{topic:"No draft popups",description:"Once a draft popup is created, it will appear here."},embedded:{topic:"Create your first embedded form",description:"Embed forms on any page to capture leads — with custom fields, targeting, GDPR compliance, and detailed analytics.",detailsInList:["Add a form anywhere with a single line of JavaScript (WordPress, Shopify, Wix, or custom sites).","Collect emails, phone numbers, and custom data mapped to any field type.","Customize fonts, colors, padding, and radius to match your brand.","Personalize form content using contact data for higher conversions.","Use captcha and GDPR consent forms to stay secure and compliant.","Track views, conversions, and subscription rates with detailed analytics."],buttonName:"Create Embedded Form",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Embeds-1.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Embeds-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Embeds-light.png",redirectPage:ve.Form.New.Type},embedded_active:{topic:"No active embedded forms",description:"Once an embedded form is enabled, it will appear here."},embedded_draft:{topic:"No draft embedded forms",description:"Once a draft embedded form is created, it will appear here."},landing:{topic:"Create your first landing page",description:"Build fast, high-converting landing pages with templates, drag-drop editing, native forms, and detailed analytics.",detailsInList:["Choose from 1000+ mobile-optimized templates for any use case or industry.","Customize with drag-drop editing and save reusable blocks as saved rows.","Capture leads with native forms and custom fields (email, phone, date, text, and more).","Preview on desktop, tablet, and mobile before publishing.","Configure SEO and social share settings for better distribution.","Add custom CSS/JavaScript for pixels, analytics, chat widgets, and more.","Serve pages via a global CDN for fast load times and higher conversions.","Track views, conversions, and subscription rates with detailed stats."],buttonName:"Create Landing Page",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Landing-pages-1.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Landing-pages-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Landing-pages-light.png",redirectPage:ve.Form.New.Type}}},automation:{automationData:{all:{topic:"No automations found",description:"Once an automation is created, it will appear here.",buttonName:"Create Automation",redirectPage:"/automate/automations/new/name"},archived:{topic:"No archived automations.",description:"Archived automations will appear here. You can restore them at any time."}}},workflow:{workflowData:{all:{topic:"Create your first workflow",description:"Create visual journey builders to automate anything. Once a workflow is created, it will appear here.",detailsInList:["Build visual automation journeys with an intuitive drag-and-drop interface.","Automate customer interactions, follow-ups, and engagement sequences.","Trigger actions based on user behavior, time delays, and custom conditions.","Connect multiple touchpoints to create seamless customer experiences.","Monitor and optimize your automation performance with detailed analytics."],buttonName:"Create Workflow",imageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Visual-workflows-1.png",darkImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Visual-workflows-dark.png",lightImageName:"https://sendx-cdn.s3.us-east-1.amazonaws.com/frontend-static-source/img/placeholders/Visual-workflows-light.png",redirectPage:ve.Automate.Workflow.New.Template},archived:{topic:"No archived workflows.",description:"Archived workflows will appear here. You can restore them at any time."}}},setting:{bulkAction:{all:{topic:"No bulk actions yet",description:"Bulk actions let you update multiple contacts at once. Create one to get started."}}
970,customField:{all:{topic:"No custom fields found",description:"Once a custom field is created, it will appear here."}},customEvent:{all:{topic:"No custom events found",description:"Once a custom event is created, it will appear here."}},customEventProperty:{all:{topic:"No property found",description:"Once a property is created, it will appear here."}},senders:{all:{topic:"No senders found",description:"Once a sender is created, it will appear here."}},members:{all:{topic:"No members found",description:"Once a member is added, it will appear here."}},domains:{all:{topic:"No domains found",description:"Once a domain is added, it will appear here."}},domainWhitelisting:{all:{topic:"No whitelisted domains found",description:"Once a domain is whitelisted, it will appear here."}},emailTemplate:{all:{topic:"No email template found",description:"Once a email template is created, it will appear here."}},landingPageTemplate:{all:{topic:"No landing page template found",description:"Once a landing page template is created, it will appear here."}},feed:{all:{topic:"No feeds found",description:"Once a feed is created, it will appear here."}}},addon:{inbox_test:{all:{topic:"No inbox tests found",description:"Once a inbox test is created, it will appear here."}}},posts:{postsData:{all:{topic:"No blogs found",description:"Once a blog is created, it will appear here."}}}}),UN={WHOM_TO_SHOW:{IDENTIFIED_VISITORS:3,CONTACT_WITH_TAGS:4}},gO=[41,37,34],mO=[34,31,30],FN=[37,34,33],BN=[30];function HN(e){return e==null||!gO.includes(Number(e))}function $N(e){return e==null||!mO.includes(Number(e))}const yO=[2,6,23,24,33,34,37,38],_O=[2,6,23,24,30,31,38];function WN(e){return e==null||!yO.includes(Number(e))}const zN=JSON.stringify({Key:JSON.stringify([-1]),Value:JSON.stringify(["Your Email"]),Type:JSON.stringify([0]),Status:JSON.stringify(["true"]),Option:JSON.stringify([""]),KeyValue:JSON.stringify([{name:"Email"}])});function VN(e){return e==null||!_O.includes(Number(e))}const qN={Title:[{label:"Text",type:"text",resource:"title"},{label:"Font Size",type:"range",unit:"px",resource:"TitleFontSize"},{label:"Font",type:"font-picker",resource:"TitleFont"},{label:"Font Color",type:"color-picker",resource:"HeaderTextColor"},{label:"Alignment",type:"alignment",resource:"TitleAlignment"},{label:"Line Height",type:"range",resource:"TitleLineHeight",min:1,max:3,step:.1}],Description:[{label:"Text",type:"text",resource:"description"},{label:"Font Size",type:"range",unit:"px",resource:"DescriptionFontSize"},{label:"Font",type:"font-picker",resource:"DescriptionFont"},{label:"Font Color",type:"color-picker",resource:"TextColor"},{label:"Alignment",type:"alignment",resource:"DescriptionAlignment"},{label:"Line Height",type:"range",resource:"DescriptionLineHeight",min:1,max:3,step:.1}],Button:[{label:"Text",type:"text",resource:"buttonText"},{label:"Font Size",type:"range",unit:"px",resource:"ButtonFontSize"},{label:"Font Color",type:"color-picker",resource:"ButtonTextColor"},{label:"Font",type:"font-picker",resource:"ButtonFont"},{label:"Button Color",type:"color-picker",resource:"ButtonColor"},{label:"Button Radius",type:"range",unit:"px",resource:"ButtonRadius"},{label:"Border Color",type:"color-picker",resource:"ButtonBorderColor"},{label:"Border Width",type:"range",unit:"px",resource:"ButtonBorderSize"},{label:"Top Bottom Padding",type:"range",unit:"px",resource:"ButtonPaddingTopBottom"},{label:"Left Right Padding",type:"range",unit:"px",resource:"ButtonPaddingLeftRight"},{label:"Alignment",type:"alignment",resource:"ButtonTextAlignment"}],"Close Text":[{label:"Text",type:"text",resource:"closeText"},{label:"Font Size",type:"range",unit:"px",resource:"CloseTextFontSize"},{label:"Font Color",type:"color-picker",resource:"CloseTextFontColor"},{label:"Font",type:"font-picker",resource:"CloseTextFont"}],"Post Action Title":[{label:"Text",type:"text",resource:"postActionTitle"},{label:"Title Color",type:"color-picker",resource:"PostActionTitleColor"},{label:"Font Size",type:"range",unit:"px",resource:"PostActionTitleFontSize"},{label:"Font",type:"font-picker",resource:"PostActionTitleFont"},{label:"Alignment",type:"alignment",resource:"PostActionTitleAlignment"},{label:"Line Height",type:"range",resource:"PostActionTitleLineHeight",min:1,max:3,step:.1}],"Post Action Description":[{label:"Text",type:"text",resource:"postActionDescription"},{label:"Description Color",type:"color-picker",resource:"PostActionDescriptionColor"},{label:"Font Size",type:"range",unit:"px",resource:"PostActionDescriptionFontSize"},{label:"Font",type:"font-picker",resource:"PostActionDescriptionFont"},{label:"Alignment",type:"alignment",resource:"PostActionDescriptionAlignment"},{label:"Line Height",type:"range",resource:"PostActionDescriptionLineHeight",min:1,max:3,step:.1}
970],Background:[{label:"Background Color",type:"color-picker",resource:"BackgroundColor"}],OverlayAndOpacity:[{label:"Overlay Color",type:"color-picker",resource:"OverlayColor"},{label:"Opacity",type:"range",unit:"none",resource:"BackgroundOpacity",min:0,max:1,step:.01}],"GDPR Checkbox":[{type:"gdpr-checkbox",label:"Enable GDPR Checkbox"},{label:"Font Size",type:"range",unit:"px",resource:"GdprFontSize"},{label:"Font Color",type:"color-picker",resource:"GdprTextColor"},{label:"Font",type:"font-picker",resource:"GdprFont"},{label:"Alignment",type:"alignment",resource:"GdprContentAlignment"}],Recaptcha:[{type:"recaptcha-checkbox",label:"Enable Recaptcha"}],"Add Image":[{type:"add-image",label:"Add Image"}],Fields:[{label:"Font Size",type:"range",unit:"px",resource:"FieldFontSize"},{label:"Font",type:"font-picker",resource:"FieldFont"},{label:"Font Color",type:"color-picker",resource:"FieldTextColor"},{label:"Field Color",type:"color-picker",resource:"FieldColor"},{label:"Field Radius",type:"range",unit:"px",resource:"FieldRadius"},{label:"Border Color",type:"color-picker",resource:"FieldBorderColor"},{label:"Border Width",type:"range",unit:"px",resource:"FieldBorderSize"},{label:"Top Bottom Padding",type:"range",unit:"px",resource:"FieldPaddingTopBottom"},{label:"Left Right Padding",type:"range",unit:"px",resource:"FieldPaddingLeftRight"},{label:"Alignment",type:"alignment",resource:"FieldTextAlignment"}],"Add Fields":[{type:"add-fields"}],"Add Custom CSS":[{label:"Add Custom CSS",type:"text",resource:"customCss"}]},jN=["ABeeZee","Abel","Abril Fatface","Aclonica","Acme","Actor","Adamina","Advent Pro","Aguafina Script","Akronim","Aladin","Aldrich","Alegreya","Alegreya SC","Alex Brush","Alfa Slab One","Alice","Alike","Alike Angular","Allan","Allerta","Allerta Stencil","Allura","Almendra","Almendra Display","Almendra SC","Amarante","Amaranth","Amatic SC","Amethysta","Anaheim","Andada","Andika","Angkor","Annie Use Your Telescope","Anonymous Pro","Antic","Antic Didone","Antic Slab","Anton","Arapey","Arbutus","Arbutus Slab","Architects Daughter","Archivo Black","Archivo Narrow","Arimo","Arizonia","Armata","Artifika","Arvo","Asap","Asset","Astloch","Asul","Atomic Age","Aubrey","Audiowide","Autour One","Average","Average Sans","Averia Gruesa Libre","Averia Libre","Averia Sans Libre","Averia Serif Libre","Bad Script","Balthazar","Bangers","Basic","Battambang","Baumans","Bayon","Belgrano","Belleza","BenchNine","Bentham","Berkshire Swash","Bevan","Bigelow Rules","Bigshot One","Bilbo","Bilbo Swash Caps","Bitter","Black Ops One","Bokor","Bonbon","Boogaloo","Bowlby One","Bowlby One SC","Brawler","Bree Serif","Bubblegum Sans","Bubbler One","Buda","Buenard","Butcherman","Butterfly Kids","Cabin","Cabin Condensed","Cabin Sketch","Caesar Dressing","Cagliostro","Calligraffitti","Cambo","Candal","Cantarell","Cantata One","Cantora One","Capriola","Cardo","Carme","Carrois Gothic","Carrois Gothic SC","Carter One","Caudex","Cedarville Cursive","Ceviche One","Changa One","Chango","Chau Philomene One","Chela One","Chelsea Market","Chenla","Cherry Cream Soda","Cherry Swash","Chewy","Chicle","Chivo","Cinzel","Cinzel Decorative","Clicker Script","Coda","Coda Caption","Codystar","Combo","Comfortaa","Coming Soon","Concert One","Condiment","Content","Contrail One","Convergence","Cookie","Copse","Corben","Courgette","Cousine","Coustard","Covered By Your Grace","Crafty Girls","Creepster","Crete Round","Crimson Text","Croissant One","Crushed","Cuprum","Cutive","Cutive Mono","Damion","Dancing Script","Dangrek","Dawning of a New Day","Days One","Delius","Delius Swash Caps","Delius Unicase","Della Respira","Devonshire","Didact Gothic","Diplomata","Diplomata SC","Doppio One","Dorsa","Dosis","Dr Sugiyama","Droid Sans","Droid Sans Mono","Droid Serif","Duru Sans","Dynalight","EB Garamond","Eagle Lake","Eater","Economica","Electrolize","Emblema One","Emilys Candy","Engagement","Englebert","Enriqueta","Erica One","Esteban","Euphoria Script","Ewert","Exo","Expletus Sans","Fanwood Text","Fascinate","Fascinate Inline","Faster One","Fasthand","Federant","Federo","Felipa","Fenix","Finger Paint","Fjord One","Flamenco","Flavors","Fondamento","Fontdiner Swanky","Forum","Francois One","Freckle Face","Fredericka the Great","Fredoka One","Freehand","Fresca","Frijole","Fugaz One","GFS Didot","GFS Neohellenic","Gafata","Galdeano","Galindo","Gentium Basic","Gentium Book Basic","Geo","Geostar","Geostar Fill","Germania One","Gilda Display","Give You Glory","Glass Antiqua","Glegoo","Gloria Hallelujah","Goblin One","Gochi Hand","Gorditas","Goudy Bookletter 1911","Graduate","Gravitas One","Great Vibes","Griffy","Gruppo","Gudea","Habibi","Hammersmith One","Hanalei","Hanalei Fill","Handlee","Hanuman","Happy Monkey","Headland One","Henny Penny","Herr Von Muellerhoff","Holtwood One SC","Homemade Apple","Homenaje","IM Fell DW Pica","IM Fell DW Pica SC","IM Fell Double Pica","IM Fell Double Pica SC","IM Fell English","IM Fell English SC","IM Fell French Canon","IM Fell French Canon SC","IM Fell Great Primer","IM Fell Great Primer SC","Iceberg","Iceland","Imprima","Inconsolata","Inder","Indie Flower","Inika","Inter","Irish Grover","Istok Web","Italiana","Italianno","Jacques Francois","Jacques Francois Shadow","Jim Nightshade","Jockey One","Jolly Lodger","Josefin Sans","Josefin Slab","Joti One","Judson","Julee","Julius Sans One","Junge","Jura","Just Another Hand","Just Me Again Down Here","Kameron","Karla","Kaushan Script","Keania One","Kelly Slab","Kenia","Khmer","Kite One","Knewave","Kotta One","Koulen","Kranky","Kreon","Kristi","Krona One","La Belle Aurore","Lancelot","Lato","League Script","Leckerli One","Ledger","Lekton","Lemon","Life Savers","Lilita One","Limelight","Linden Hill","Lobster","Lobster Two","Londrina Outline","Londrina Shadow","
970Londrina Sketch","Londrina Solid","Lora","Love Ya Like A Sister","Loved by the King","Lovers Quarrel","Luckiest Guy","Lusitana","Lustria","Macondo","Macondo Swash Caps","Magra","Maiden Orange","Mako","Marcellus","Marcellus SC","Marck Script","Margarine","Marko One","Marmelad","Marvel","Mate","Mate SC","Maven Pro","McLaren","Meddon","MedievalSharp","Medula One","Megrim","Meie Script","Merienda","Merienda One","Merriweather","Metal","Metal Mania","Metamorphous","Metrophobic","Michroma","Miltonian","Miltonian Tattoo","Miniver","Miss Fajardose","Modern Antiqua","Molengo","Molle","Monofett","Monoton","Monsieur La Doulaise","Montaga","Montez","Montserrat","Montserrat Alternates","Montserrat Subrayada","Moul","Moulpali","Mountains of Christmas","Mouse Memoirs","Mr Bedfort","Mr Dafoe","Mr De Haviland","Mrs Saint Delafield","Mrs Sheppards","Muli","Mystery Quest","Neucha","Neuton","News Cycle","Niconne","Nixie One","Nobile","Nokora","Norican","Nosifer","Nothing You Could Do","Noticia Text","Nova Cut","Nova Flat","Nova Mono","Nova Oval","Nova Round","Nova Script","Nova Slim","Nova Square","Numans","Nunito","Odor Mean Chey","Offside","Old Standard TT","Oldenburg","Oleo Script","Oleo Script Swash Caps","Open Sans","Open Sans Condensed","Oranienbaum","Orbitron","Oregano","Orienta","Original Surfer","Oswald","Over the Rainbow","Overlock","Overlock SC","Ovo","Oxygen","Oxygen Mono","PT Mono","PT Sans","PT Sans Caption","PT Sans Narrow","PT Serif","PT Serif Caption","Pacifico","Paprika","Parisienne","Passero One","Passion One","Patrick Hand","Patua One","Paytone One","Peralta","Permanent Marker","Petit Formal Script","Petrona","Philosopher","Piedra","Pinyon Script","Pirata One","Plaster","Play","Playball","Playfair Display","Playfair Display SC","Podkova","Poiret One","Poller One","Poly","Pompiere","Pontano Sans","Port Lligat Sans","Port Lligat Slab","Prata","Preahvihear","Press Start 2P","Princess Sofia","Prociono","Prosto One","Puritan","Purple Purse","Quando","Quantico","Quattrocento","Quattrocento Sans","Questrial","Quicksand","Quintessential","Qwigley","Racing Sans One","Radley","Raleway","Raleway Dots","Rambla","Rammetto One","Ranchers","Rancho","Rationale","Redressed","Reenie Beanie","Revalia","Ribeye","Ribeye Marrow","Righteous","Risque","Rochester","Rock Salt","Rokkitt","Romanesco","Ropa Sans","Rosario","Rosarivo","Rouge Script","Ruda","Rufina","Ruge Boogie","Ruluko","Rum Raisin","Ruslan Display","Russo One","Ruthie","Rye","Sacramento","Sail","Salsa","Sanchez","Sancreek","Sansita One","Sarina","Satisfy","Scada","Schoolbell","Seaweed Script","Sevillana","Seymour One","Shadows Into Light","Shadows Into Light Two","Shanti","Share","Share Tech","Share Tech Mono","Shojumaru","Short Stack","Siemreap","Sigmar One","Signika","Signika Negative","Simonetta","Sirin Stencil","Six Caps","Skranji","Slackey","Smokum","Smythe","Sniglet","Snippet","Snowburst One","Sofadi One","Sofia","Sonsie One","Sorts Mill Goudy","Source Code Pro","Source Sans Pro","Special Elite","Spicy Rice","Spinnaker","Spirax","Squada One","Stalemate","Stalinist One","Stardos Stencil","Stint Ultra Condensed","Stint Ultra Expanded","Stoke","Strait","Sue Ellen Francisco","Sunshiney","Supermercado One","Suwannaphum","Swanky and Moo Moo","Syncopate","Tangerine","Taprom","Telex","Tenor Sans","Text Me One","The Girl Next Door","Tienne","Tinos","Titan One","Titillium Web","Trade Winds","Trocchi","Trochut","Trykker","Tulpen One","Ubuntu","Ubuntu Condensed","Ubuntu Mono","Ultra","Uncial Antiqua","Underdog","Unica One","UnifrakturCook","UnifrakturMaguntia","Unkempt","Unlock","Unna","VT323","Vampiro One","Varela","Varela Round","Vast Shadow","Vibur","Vidaloka","Viga","Voces","Volkhov","Vollkorn","Voltaire","Waiting for the Sunrise","Wallpoet","Walter Turncoat","Warnes","Wellfleet","Wire One","Yanone Kaffeesatz","Yellowtail","Yeseva One","Yesteryear","Zeyada"],O=Object.freeze({Option:{LISTS:-1,TAGS:-2,CAMPAIGNS:-3,DRIPSTEP:-4,DRIP:-5,SHOPIFY_PRODUCT:-6,SHOPIFY_COUPON:-7,SHOPIFY_SMART_COLLECTION:-8,SHOPIFY_CUSTOM_COLLECTION:-9,EMAIL:-10,WORKFLOWS:-11,UNSUBSCRIBE_REASONS:-12,POLLS:-13,SURVEYS:-14,POLL_OPTIONS:-15,POLL_ENTITIES:-16},Input:{TEXT:-1,CHECKBOX:-2,SELECT:-3,RADIO:-4},Type:{INTEGER:-1,STRING:-2,BOOLEAN:-3,DATE:-4,DOUBLE:-5}}),bO=Object.freeze(["is_empty","is_not_empty"]),vO=new Set(bO),SO=e=>vO.has(e),KN=e=>!SO(e?.operator==="property"?e.propertyOperator:e?.operator),YN=Object.freeze([{id:"0",name:"I no longer want to re
970ceive these emails"},{id:"1",name:"I never signed up for this mailing list"},{id:"2",name:"The emails are inappropriate"},{id:"3",name:"The emails are spam and should be reported"},{id:"4",name:"Other (fill in reason below)"}]),XN={EMAIL:-1,FIRST_NAME:-2},JN=-6,QN=-7,ZN=[{key:"{{ .PostTitle }}",value:"title"},{key:"{{ .PostAuthor }}",value:"author"},{key:"{{ .PostDate }}",value:"published, pubDate"},{key:"{{ .PostLink }}",value:"link"},{key:"{{ .PostDescription }}",value:"description"},{key:"{{ .PostContent }}",value:"content"},{key:"{{ .PostDescriptionOrContent }}",value:".PostDescription or .PostContent, whichever is present, description first"},{key:"{{ .PostContentOrDescription }}",value:".PostContent or .PostDescription, whichever is present, content first"}],eL=[{label:"Name",key:"name",sortKey:"name",default:!0,required:!0,sticky:!0},{label:"Sent",key:"sent",sortKey:"sent",default:!0},{label:"Unique opens",key:"unique_opened",sortKey:"opened",default:!0},{label:"% Opened",key:"percent_opened",sortable:!1,default:!0},{label:"Total opens",key:"total_opened",sortKey:"opened",default:!1},{label:"Unique clicks",key:"unique_clicked",sortKey:"clicked",default:!0},{label:"% Clicked",key:"percent_clicked",sortable:!1,default:!0},{label:"Total clicks",key:"total_clicked",sortKey:"clicked",default:!1},{label:"Created",key:"created_by",sortKey:"created",default:!0},{label:"Updated",key:"updated_by",sortKey:"updated",default:!1}],tL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Active",key:"active",sortKey:"status"},{label:"Drip Steps",key:"steps",sortKey:"steps"},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],nL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Active",key:"active",sortable:!1},{label:"Execution Count",key:"executionCount",sortable:!1}
970,{label:"Last Executed",key:"lastExecuted",sortable:!1},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],sL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Sent",key:"sent"},{label:"Opened",key:"opened"},{label:"% Opened",key:"percent_opened"},{label:"Clicked",key:"clicked"},{label:"% Clicked",key:"percent_clicked"},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],iL=[{label:"Name",key:"name",sortable:!1,required:!0,sticky:!0},{label:"Sent",key:"sent",sortable:!1},{label:"Opened",key:"opened",sortable:!1},{label:"% Opened",key:"percent_opened",sortable:!1},{label:"Clicked",key:"clicked",sortable:!1},{label:"% Clicked",key:"percent_clicked",sortable:!1},{label:"Revenue Attributed",key:"revenue_attributed",sortable:!1},{label:"Revenue Per Recipient",key:"revenue_per_recipient",sortable:!1},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],oL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0}
970,{label:"Opt In Type",key:"type",sortKey:"type"},{label:"Size",key:"size",sortKey:"size"},{label:"Date Created",key:"created",sortKey:"created"},{label:"Date Updated",key:"updated",sortKey:"updated"}],rL=[{label:"Name",key:"name",required:!0,sticky:!0},{label:"Email",key:"email"},{label:"Date Created",key:"created",sortKey:"created"},{label:"Date Updated",key:"updated"}],aL=[{label:"Name",key:"name",required:!0,sticky:!0},{label:"Type",key:"template_type"},{label:"Status",key:"status"},{label:"Votes",key:"total_votes"}],lL=[{label:"Name",key:"name",required:!0,sticky:!0},{label:"Email",key:"email"},{label:"Created",key:"created"},{label:"Updated",key:"updated"}],cL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Views",key:"impressions",sortKey:"impressions"},{label:"Action Completed",key:"action_completed",sortKey:"actionCompleted"},{label:"Conversion Rate",key:"conversion_rate",sortable:!1},{label:"Status",key:"status",sortKey:"active"},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],dL=[{label:"Name",key:"name",sortKey:"name"}
970,{label:"Responses",key:"completions",sortKey:"completions"},{label:"Completion Rate",key:"completion_rate",sortable:!1},{label:"Status",key:"status",sortKey:"active"},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],uL=[{label:"Name",key:"name"},{label:"Created",key:"created"},{label:"Updated",key:"updated"},{label:"Status",key:"status"}],pL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Views",key:"impressions",sortKey:"impressions"},{label:"Action Completed",key:"action_completed",sortKey:"actionCompleted"},{label:"Conversion Rate",key:"conversion_rate",sortable:!1},{label:"Status",key:"status",sortKey:"active"},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],hL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Views",key:"impressions",sortKey:"impressions"},{label:"Submissions",key:"action_completed",sortKey:"actionCompleted"},{label:"Submission Rate",key:"submission_rate",sortable:!1},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],fL=[{label:"Name",key:"name",sortKey:"name",required:!0,sticky:!0},{label:"Status",key:"status",sortKey:"status"},{label:"Enrolled",key:"enrolled",sortKey:"enrolled"},{label:"Active",key:"active",sortKey:"active"},{label:"Exited",key:"exited",sortKey:"exited"}
970,{label:"Completed",key:"completed",sortKey:"completed"},{label:"Created",key:"created_by",sortKey:"created"},{label:"Updated",key:"updated_by",sortKey:"updated"}],gL={1:[{id:0,name:"Subscribed to list",type:"list",message:"When a contact is subscribed to a list"},{id:2,name:"Confirmed to list",type:"list",message:"When a contact is confirmed to a list"},{id:13,name:"Removed from list",type:"list",message:"When a contact is removed from a list"},{id:3,name:"Tag added",type:"tag",message:"When a contact is added to a tag"},{id:4,name:"Tag removed",type:"tag",message:"When a contact is removed from a tag"},{id:47,name:"Custom event triggered",type:"customEvent",message:"When a custom event is triggered"},{id:5,name:"Opened newsletter",type:"campaign",message:"When a contact opens a newsletter campaign"},{id:6,name:"Clicked link in newsletter or auto-trigger",type:"text",message:"When a contact clicks a link in a newsletter or auto-trigger campaign"},{id:7,name:"Added to drip",type:"drip",message:"When a contact is added to a drip campaign"},{id:8,name:"Opened drip email",type:"drip",message:"When a contact opens a drip campaign"},{id:9,name:"Clicked link in drip",type:"text",message:"When a contact clicks a link in a drip campaign"},{id:10,name:"Completed drip",type:"drip",message:"When a contact completes a drip campaign"},{id:12,name:"Replied to drip",type:"drip",message:"When a contact replies to a drip campaign"},{id:14,name:"Submitted popup form",type:"popup",message:"When a contact is added via popup form"},{id:15,name:"Submitted embedded form",type:"embed",message:"When a contact is added via embedded form"},{id:18,name:"Submitted landing page form",type:"landing",message:"When a contact is added via landing page form"},{id:16,name:"Added to segment",type:"segment",message:"When a contact is added to a segment"},{id:17,name:"Removed from segment",type:"segment",message:"When a contact is removed from a segment"},{id:20,name:"Visited page",type:"text",message:"When a contact visits a page"},{id:21,name:"Unsubscribed",message:"When a contact unsubscribes"},{id:49,name:"Voted in poll",type:"poll",message:"When a contact votes in a poll"},{id:50,name:"Submitted survey response",type:"survey",message:"When a contact submits a survey response"},{id:51,name:"Submitted NPS score",type:"survey",message:"When a contact submits an NPS score in a survey"}],2:[{id:25,name:"New customer created",type:"customer",message:"When a new customer is created via WooCommerce"},{id:24,name:"Placed order",type:"order",message:"When an order is placed via WooCommerce"}],3:[{id:23,name:"Placed order",type:"order",message:"When an order is placed via SamCart"}],4:[{id:27,name:"New customer created",type:"customer",message:"When a new Stripe customer is created"},{id:28,name:"Customer charge succeeded",type:"charge",message:"When a Stripe charge succeeds for a customer"},{id:29,name:"Customer charge failed",type:"charge",message:"When a Stripe charge fails for a customer"},{id:30,name:"Customer charge refunded",type:"charge",message:"When a Stripe charge is refunded for a customer"}],5:[{id:31,name:"Customer charge succeeded",type:"charge",message:"When a PayPal charge succeeds"},{id:32,name:"Customer charge failed",type:"charge",message:"When a PayPal charge fails"},{id:33,name:"Customer charge declined",type:"charge",message:"When a PayPal charge is declined"},{id:34,name:"Customer charge refunded",type:"charge",message:"When a PayPal charge is refunded for a customer"}],6:[{id:22,name:"Submitted via landing page",type:"form",message:"When a form is submitted via Instapage landing page"}],7:[{id:35,name:"Intercom lead created",type:"lead",message:"When a lead is created via Intercom"},{id:36,name:"Intercom user created",type:"user",message:"When a user is created via Intercom"}],9:[{id:44,name:"Submitted via form",type:"form",message:"When a form is submitted via Convert Box form"}],12:[{id:37,name:"Cart abandoned",type:"cart",message:"When a Shopify cart is abandoned"},{id:38,name:"New customer",type:"customer",message:"When a Shopify customer is created"},{id:41,name:"Placed order",type:"order",message:"When a Shopify order is placed"},{id:40,name:"Cancelled order",type:"order",message:"When a Shopify order is cancelled"},{id:42,name:"Fulfilled order",type:"order",message:"When a Shopify order is fulfilled"}],23:[{id:48,name:"Contact Created via Leads",type:"metaLeads",message:"When a contact is created via Meta Leads"}]},mL={1:[{id:0,name:"Subscribed to list",type:"list",message:"When a contact is subscribed to a list"},{id:2,name:"Confirmed to list",type:"list",message:"When a contact is confirmed to a list"},{id:13,name:"Removed from list",type:"list",message:"When a contact is removed from a list"},{id:3,name:"Tag added",type:"tag",message:"When a contact is added to a tag"},{id:4,name:"Tag removed",type:"tag",message:"When a contact is removed from a tag"},{id:5,name:"Opened newsletter",type:"campaign",message:"When a contact opens a newsletter campaign"},{id:6,name:"Clicked link in newsletter or auto-trigger",type:"text",message:"When a contact clicks a link in a newsletter or auto-trigger campaign"},{id:7,name:"Added to drip",type:"drip",message:"When a contact is added to a drip campaign"},{id:8,name:"Opened drip email",type:"drip",message:"When a contact opens a drip campaign"},{id:9,name:"Clicked link in drip",type:"text",message:"When a contact clicks a link in a drip campaign"},{id:10,name:"Completed drip",type:"drip",message:"When a contact completes a drip campaign"},{id:12,name:"Replied to drip",type:"drip",message:"When a contact replies to a drip campaign"},{id:14,name:"Submitted popup form",type:"popup",message:"When a contact is added via popup form"},{id:15,name:"Submitted embedded form",type:"embed",message:"When a contact is added via embedded form"},{id:18,name:"Submitted landing page form",type:"landing",message:"When a contact is added via landing page form"},{id:20,name:"Visited page",type:"text",message:"When a contact visits a page"},{id:21,name:"Unsubscribed",message:"When a contact unsubscribes"},{id:49,name:"Voted in poll",type:"poll",message:"When a contact votes in a poll"},{id:50,name:"Submitted survey response",type:"survey",message:"When a contact submits a survey response"},{id:51,name:"Submitted NPS score",type:"survey",message:"When a contact submits an NPS score in a survey"}],2:[{id:25,name:"New customer created",type:"customer",message:"When a new customer is created via WooCommerce"},{id:24,name:"Placed order",type:"order",message:"When an order is placed via WooCommerce"}],3:[{id:23,name:"Placed order",type:"order",message:"When an order is placed via SamCart"}],4:[{id:27,name:"New customer created",type:"customer",message:"When a new Stripe customer is created"},{id:28,name:"Customer charge succeeded",type:"charge",message:"When a Stripe charge succeeds for a customer"},{id:29,name:"Customer charge failed",type:"charge",message:"When a Stripe charge fails for a customer"},{id:30,name:"Customer charge refunded",type:"charge",message:"When a Stripe charge is refunded for a customer"}],5:[{id:31,name:"Customer charge succeeded",type:"charge",message:"When a PayPal charge succeeds"},{id:32,name:"Customer charge failed",type:"charge",message:"When a PayPal charge fails"},{id:33,name:"Customer charge declined",type:"charge",message:"When a PayPal charge is declined"},{id:34,name:"Customer charge refunded",type:"charge",message:"When a PayPal charge is refunded for a customer"}],6:[{id:22,name:"Submitted via landing page",type:"form",message:"When a form is submitted via Instapage landing page"}],7:[{id:35,name:"Intercom lead created",type:"lead",message:"When a lead is created via Intercom"},{id:36,name:"Intercom user created",type:"user",message:"When a user is created via Intercom"}],12:[{id:37,name:"Cart abandoned",type:"cart",message:"When a Shopify cart is abandoned"},{id:38,name:"New customer",type:"customer",message:"When a Shopify customer is created"},{id:41,name:"Placed order",type:"order",message:"When a Shopify order is placed"},{id:40,name:"Cancelled order",type:"order",message:"When a Shopify order is cancelled"},{id:42,name:"Fulfilled order",type:"order",message:"When a Shopify order is fulfilled"}],9:[{id:44,name:"Submitted via form",type:"form",message:"When a form is submitted via Convert Box form"}]},yL={1:[{id:0,name:"Subscribed to list",type:"list",message:"When a contact is subscribed to a list"},{id:2,name:"Confirmed to list",type:"list",message:"When a contact is confirmed to a list"},{id:13,name:"Removed from list",type:"list",message:"When a contact is removed from a list"},{id:3,name:"Tag added",type:"tag",message:"When a contact is added to a tag"},{id:4,name:"Tag removed",type:"tag",message:"When a contact is removed from a tag"},{id:5,name:"Opened newsletter",type:"campaign",message:"When a contact opens a newsletter campaign"},{id:6,name:"Clicked link in newsletter or auto-trigger",type:"text",message:"When a contact clicks a link in a newsletter or auto-trigger campaign"},{id:7,name:"Added to drip",type:"drip",message:"When a contact is added to a drip campaign"},{id:8,name:"Opened drip email",type:"drip",message:"When a contact opens a drip campaign"},{id:9,name:"Clicked link in drip",type:"text",message:"When a contact clicks a link in a drip campaign"},{id:10,name:"Completed drip",type:"drip",message:"When a contact completes a drip campaign"},{id:12,name:"Replied to drip",type:"drip",message:"When a contact replies to a drip campaign"},{id:14,name:"Submitted popup form",type:"popup",message:"When a contact is added via popup form"},{id:15,name:"Submitted embedded form",type:"form",message:"When a contact is added via embedded form"},{id:18,name:"Submitted landing page form",type:"landing_page",message:"When a contact is added via landing page form"},{id:20,name:"Visited page",type:"text",message:"When a contact visits a page"},{id:21,name:"Unsubscribed",message:"When a contact unsubscribes"},{id:49,name:"Voted in poll",type:"poll",message:"When a contact votes in a poll"},{id:50,name:"Submitted survey response",type:"survey",message:"When a contact submits a survey response"},{id:51,name:"Submitted NPS score",type:"survey",message:"When a contact submits an NPS score in a survey"}],2:[{id:25,name:"New customer created",type:"customer",message:"When a new customer is created via WooCommerce"},{id:24,name:"Placed order",type:"order",message:"When an order is placed via WooCommerce"}],3:[{id:23,name:"Placed order",type:"order",message:"When an order is placed via SamCart"}],4:[{id:27,name:"New customer created",type:"customer",message:"When a new Stripe customer is created"},{id:28,name:"Customer charge succeeded",type:"charge",message:"When a Stripe charge succeeds for a customer"},{id:29,name:"Customer charge failed",type:"charge",message:"When a Stripe charge fails for a customer"},{id:30,name:"Customer charge refunded",type:"charge",message:"When a Stripe charge is refunded for a customer"}],5:[{id:31,name:"Customer charge succeeded",type:"charge",message:"When a PayPal charge succeeds"},{id:32,name:"Customer charge failed",type:"charge",message:"When a PayPal charge fails"},{id:33,name:"Customer charge declined",type:"charge",message:"When a PayPal charge is declined"},{id:34,name:"Customer charge refunded",type:"charge",message:"When a PayPal charge is refunded for a customer"}],6:[{id:22,name:"Submitted via landing page",type:"form",message:"When a form is submitted via Instapage landing page"}],7:[{id:35,name:"Intercom lead created",type:"lead",message:"When a lead is created via Intercom"},{id:36,name:"Intercom user created",type:"user",message:"When a user is created via Intercom"}],12:[{id:37,name:"Cart abandoned",type:"cart",message:"When a Shopify cart is abandoned"},{id:38,name:"New customer",type:"customer",message:"When a Shopify customer is created"},{id:41,name:"Placed order",type:"order",message:"When a Shopify order is placed"},{id:40,name:"Cancelled order",type:"order",message:"When a Shopify order is cancelled"},{id:42,name:"Fulfilled order",type:"order",message:"When a Shopify order is fulfilled"}],9:[{id:44,name:"Submitted via form",type:"form",message:"When a form is submitted via Convert Box form"}]},_L=Object.freeze({1:[{id:0,name:"Subscribe to list",type:"list",message:"Subscribe to list"},{id:2,name:"Confirm to list",type:"list",message:"Confirm to list"},{id:8,name:"Remove from list",type:"list",message:"Remove from list"},{id:3,name:"Add tag",type:"tag",message:"Add tag"},{id:4,name:"Remove tag",type:"tag",message:"Remove tag"},{id:6,name:"Add to drip",type:"drip",message:"Add to drip"},{id:7,name:"Remove from drip",type:"drip",message:"Remove from drip"},{id:11,name:"Unsubscribe",message:"Unsubscribe"},{id:12,name:"Resubscribe globally",message:"Resubscribe globally"},{id:13,name:"Call webhook",type:"text",message:"Call webhook"},{id:21,name:"Delete contact",message:"Delete contact"},{id:22,name:"Update custom field",type:"customfield",message:"Update custom field"}],7:[{id:14,name:"Send to Pipedrive",message:"Send to Pipedrive"}],23:[{id:24,name:"Push to custom audience",type:"metaCustomAudience",message:"Push to custom audience"}],10:[{id:18,name:"Register contact",type:"demio",message:"Register contact on Demio"}],15:[{id:23,name:"Send SMS",type:"twilio",message:"Send SMS"}]}),bL=[{label:"Contacts",items:[{entity:"Contacts",id:"unsubscribed",label:"Unsubscribed from all email communication",conditions:[{label:"equal",value:"equal"}
970],input:O.Input.RADIO,type:O.Type.INTEGER},{entity:"Contacts",id:"bounced",label:"Email address bounced",conditions:[{label:"equal",value:"equal"}],input:O.Input.RADIO,type:O.Type.INTEGER},{entity:"Contacts",id:"marked-spam",label:"Marked spam",conditions:[{label:"equal",value:"equal"}],input:O.Input.RADIO,type:O.Type.INTEGER}]},{label:"Lists",items:[{entity:"Lists",id:"lists-confirmed",label:"Subscribed and confirmed to lists",conditions:[{label:"Any of",value:"in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS},{entity:"Lists",id:"lists-notconfirmed",label:"Subscribed and not confirmed to lists",type:"DP with list option",conditions:[{label:"None of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS}]},{label:"Tags",items:[{entity:"Tags",id:"tags",label:"Has Tags",conditions:[{label:"Any of",value:"in"},{label:"None of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.TAGS}]},{label:"Custom Fields",items:[]}],vL=[{label:"Lists",items:[{entity:"Lists",id:"lists-confirmed",label:"Subscribed and confirmed to lists",conditions:[{label:"Any of",value:"in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS},{entity:"Lists",id:"lists-notconfirmed",label:"Subscribed and not confirmed to lists",type:"DP with list option",conditions:[{label:"None of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS}]},{label:"Tags",items:[{entity:"Tags",id:"tags-added",label:"Has Tags",conditions:[{label:"Any of",value:"in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.TAGS},{entity:"Tags",id:"tags-notadded",label:"Doesn't have tags",conditions:[{label:"None of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.TAGS}]},{label:"Custom Fields",items:[]},{label:"Workflow Email",items:[]}],SL={provider:1,type:-1,pageSourceType:0,pageSourceValue:"",metadata:"",metadataElementWrapper:{id:"-1",name:"Select"},integrationMetadata:"",integrationMetadataElementWrapper:{id:"-1",name:"Select"},filterData:JSON.stringify({})},EL={id:-1,name:"Choose a trigger"},wL={id:-1,name:"Choose an action"},TL={id:"-1",name:"Choose an entity",type:"0"},CL={provider:1,type:-1,metadata:"",metadataElementWrapper:{id:"-1",name:"Select"},integrationMetadata:"",integrationMetadataElementWrapper:{id:"-1",name:"Select"},pageSourceValue:"",durationType:0,durationValue:0,operator:0,customFieldValue:""},AL={TRIGGER_PLEASE_SELECT_TYPE:"Please select a trigger to proceed!",TRIGGER_PLEASE_SELECT_ENTITY:"Please select an entity to proceed!",TRIGGER_PLEASE_ENTER_URL:"Please enter a URL.",TRIGGER_PLEASE_ENTER_VALID_URL:"Please enter a valid URL!",TRIGGER_PLEASE_ADD_PAGE_VALUE:"Please enter a value!",TRIGGER_PLEASE_CHECK_CUSTOM_EVENT_PROPERTY:"Please set up custom event property.",TRIGGER_SELECT_FILTER_TRIGGER:"Please select a filter trigger.",TRIGGER_SELECT_FILTER_ENTITY:"Please select a filter entity.",TRIGGER_SELECT_FILTER_URL:"Please enter a filter URL.",TRIGGER_SELECT_FILTER_VALID_URL:"Please enter a valid filter URL.",TRIGGER_AUDIENCE_FILTER_OPTION:"Please select an audience filter.",TRIGGER_AUDIENCE_FILTER_SUB_OPTION:"Please select an audience filter condition.",TRIGGER_AUDIENCE_FILTER_VALUE:"Please enter an audience filter value.",EXIT_TRIGGER_PLEASE_SELECT_TYPE:"Please select an exit trigger to proceed!",EXIT_TRIGGER_PLEASE_SELECT_ENTITY:"Please select an exit trigger entity to proceed!",EXIT_TRIGGER_PLEASE_ENTER_URL:"Please enter an exit trigger URL.",EXIT_TRIGGER_PLEASE_ENTER_VALID_URL:"Please enter a valid exit trigger URL!",EXIT_TRIGGER_PLEASE_ADD_PAGE_VALUE:"Please enter an exit trigger value.",ACTION_PLEASE_SELECT_TYPE:"Please select an action to proceed!",ACTION_PLEASE_ENTER_WEBHOOK:"Please enter a webhook!",ACTION_PLEASE_ENTER_VALID_WEBHOOK:"Please enter a valid webhook URL.",ACTION_PLEASE_ENTER_TWILIO_SENDER:"Please select a Twilio sender number.",EMAIL:{name:"Please enter an email name.",subject:"Please enter an email subject.",previewText:"Please enter email preview text",sender:"Please select an email sender.",templateCode:"Please design the email.",senderObject:"Please select an email sender.",htmlCode:"Please design the email."},GOAL_PLEASE_SELECT_TYPE:"Please select a goal type.",GOAL_PLEASE_SELECT_ENTITY:"Please select a goal entity",GOAL_ENTER_URL:"Please enter a URL",GOAL_ENTER_VALID_URL:"Please enter a valid URL",GOAL_PLEASE_ADD_PAGE_VALUE:"Please enter a value!",CONDITION_OPTION:"Please select a condition.",CONDITION_SUB_OPTION:"Please select a condition action.",CONDITION_VALUE:"Please enter a condition value to proceed"},RL={enrollment_trigger:0,action_node:1,decision_node:2,A:3,B:4,dot:5,drip_node:6,exit_node:7,ab_split_node:8,email_node:9,delay_node:10,garbage_node:11,conditional_split_node:12},xL={0:"enrollment_trigger",1:"action_node",2:"decision_node",3:"A",4:"B",5:"dot",6:"drip_node",7:"exit_node",8:"ab_split_node",9:"email_node",10:"delay_node",11:"garbage_node",12:"conditional_split_node"},IL=(e,t)=>{const n=(t?.templateCode??"").trim(),s=(t?.htmlCode??"").trim();switch(e){case ld.DRAG_DROP_EDITOR:if(n===""||n===dr.DragDropTemplateCode)return!1;try{return!EO(n)}catch{return!0}case ld.SENDX_EDITOR:if(n===""||n===ah)return!1;try{return!wO(n)}catch{return!0}case ld.PLAIN_TEXT_EDITOR:return s!==""&&s!==dr.PlainTextHtmlCode;default:return!1}},EO=e=>{const t=JSON.parse(e);if(!t||!t.page||!t.page.rows)return!0;const n=t.page.rows;for(let s=0;s<n.length;s++){const i=n[s].columns;for(let o=0;o<i.length;o++)if(i[o].modules.length!==0)return!1}return!0},wO=e=>{const t=typeof e=="string"?JSON.parse(e):e;return t?.type==="doc"&&Array.isArray(t?.content)&&t.content.length===1&&t.content[0]?.type==="paragraph"&&t.content[0]?.attrs?.textAlign===null&&t.content[0]?.content,t?.type==="doc"&&Array.isArray(t?.content)&&t.content.length===1&&t.content[0]?.type==="paragraph"&&t.content[0]?.attrs?.textAlign===null&&!t.content[0]?.content},OL=Object.freeze({DiscountPercentageOff:0,DiscountFixedAmount:1,DiscountFreeShipping:2}),kL=Object.freeze({EntireOrder:0,SpecificCollections:1}),ML=Object.freeze({None:0,PurchaseAmount:1,PurchaseQuantity:2}),PL=Object.freeze({NTimes:0,OncePerUser:1}),NL=Object.freeze([{label:"Contacts",items:[{id:"unsubscribed",label:"Unsubscribed from all emails",conditions:[{label:"is",value:"equal"}
970],input:O.Input.RADIO,type:O.Type.INTEGER},{id:"unsubscribed-in-x-days",label:"Days since unsubscribe",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"unsubscribe-reason",label:"Unsubscribe Reason",conditions:[{label:"is any of",value:"in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.UNSUBSCRIBE_REASONS},{id:"bounced",label:"Email has bounced",conditions:[{label:"is",value:"equal"}],input:O.Input.RADIO,type:O.Type.INTEGER},{id:"marked-spam",label:"Marked as spam",conditions:[{label:"is",value:"equal"}],input:O.Input.RADIO,type:O.Type.INTEGER},{id:"lists",label:"In list",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS},{id:"tags",label:"Has tag",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.TAGS},{id:"email",label:"Email address",conditions:[{label:"contains",value:"contains"},{label:"does not contain",value:"not_contains"},{label:"is",value:"equal"},{label:"is not",value:"not_equal"},{label:"starts with",value:"begins_with"},{label:"ends with",value:"ends_with"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"first-name",label:"First name",conditions:[{label:"is empty",value:"is_empty"},{label:"has a value",value:"is_not_empty"},{label:"contains",value:"contains"},{label:"does not contain",value:"not_contains"},{label:"is",value:"equal"},{label:"is not",value:"not_equal"},{label:"starts with",value:"begins_with"},{label:"ends with",value:"ends_with"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"last-name",label:"Last name",conditions:[{label:"is empty",value:"is_empty"},{label:"has a value",value:"is_not_empty"},{label:"contains",value:"contains"},{label:"does not contain",value:"not_contains"},{label:"is",value:"equal"},{label:"is not",value:"not_equal"},{label:"starts with",value:"begins_with"},{label:"ends with",value:"ends_with"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"company",label:"Company",conditions:[{label:"is empty",value:"is_empty"},{label:"has a value",value:"is_not_empty"},{label:"contains",value:"contains"},{label:"does not contain",value:"not_contains"},{label:"is",value:"equal"},{label:"is not",value:"not_equal"},{label:"starts with",value:"begins_with"},{label:"ends with",value:"ends_with"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"active",label:"Days since last activity (open or form submit)",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"email-opened",label:"Days since last open",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"email-clicked",label:"Days since last click",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"email-opened-in-range",label:"Opened email",conditions:[{label:"between",value:"between"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"email-clicked-in-range",label:"Clicked email",conditions:[{label:"between",value:"between"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"not-email-opened-in-range",label:"Not opened email",conditions:[{label:"between",value:"between"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"not-email-clicked-in-range",label:"Not clicked email",conditions:[{label:"between",value:"between"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"email-sent",label:"Days since last email sent",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"total_opens",label:"Total email opens",conditions:[{label:"is",value:"equal"},{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"total_clicks",label:"Total link clicks",conditions:[{label:"is",value:"equal"},{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"num_campaigns_opened",label:"Unique campaigns opened",conditions:[{label:"is",value:"equal"},{label:"less than",value:"less"},{label:"more than",value:"greater"}
970],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"num_links_clicked",label:"Unique links clicked",conditions:[{label:"is",value:"equal"},{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"not-email-opened",label:"Days without an open",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"not-email-clicked",label:"Days without a click",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"location",label:"Location",conditions:[{label:"is",value:"equal"},{label:"is not",value:"not_equal"}],input:O.Input.SELECT,type:O.Type.STRING},{id:"ltv",label:"Lifetime value",conditions:[{label:"is between",value:"between"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"contact-source",label:"Source",conditions:[{label:"is",value:"equal"}],input:O.Input.SELECT,type:O.Type.INTEGER},{id:"contact-created",label:"Date created",conditions:[{label:"is",value:"equal"},{label:"before",value:"less"},{label:"after",value:"greater"}],input:O.Input.TEXT,type:O.Type.DATE},{id:"contact-created-within-days",label:"Days since created",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"contact-updated",label:"Date updated",conditions:[{label:"is",value:"equal"},{label:"before",value:"less"},{label:"after",value:"greater"}],input:O.Input.TEXT,type:O.Type.DATE},{id:"contact-updated-within-days",label:"Days since updated",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"sent-x-emails-in-y-days",label:"Emails sent in last X days",conditions:[{label:"at least",value:"less"}],input:O.Input.TEXT,type:O.Type.INTEGER}]},{label:"Lists",items:[{id:"lists-confirmed",label:"Confirmed subscriber of list",conditions:[{label:"is any of",value:"in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS},{id:"lists-notconfirmed",label:"Unconfirmed subscriber of list",type:"DP with list option",conditions:[{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.LISTS}]},{label:"Campaigns",items:[{id:"campaigns",label:"Was sent campaign",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],options:O.Option.CAMPAIGNS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"campaigns-opened",label:"Opened campaign",conditions:[{label:"is any of",value:"in"}],options:O.Option.CAMPAIGNS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"campaigns-unopened",label:"Did not open campaign",conditions:[{label:"is any of",value:"not_in"}],options:O.Option.CAMPAIGNS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"campaigns-clicked",label:"Clicked link in campaign",conditions:[{label:"is any of",value:"in"}],options:O.Option.CAMPAIGNS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"campaigns-link-clicked",label:"Clicked specific link in campaign",conditions:[{label:"contains",value:"contains"},{label:"is",value:"equal"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"campaigns-unclicked",label:"Did not click link in campaign",conditions:[{label:"is any of",value:"not_in"}],options:O.Option.CAMPAIGNS,input:O.Input.CHECKBOX,type:O.Type.INTEGER}]},{label:"Drip Campaigns",items:[{id:"drip-steps-sent",label:"Drip step was sent",conditions:[{label:"is any of",value:"in"}],options:O.Option.DRIPSTEP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip-steps-notsent",label:"Drip step was not sent",conditions:[{label:"is none of",value:"not_in"}],options:O.Option.DRIPSTEP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip-steps-opened",label:"Opened drip step",conditions:[{label:"is any of",value:"in"}],options:O.Option.DRIPSTEP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip-steps-unopened",label:"Did not open drip step",conditions:[{label:"is none of",value:"not_in"}],options:O.Option.DRIPSTEP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip-steps-clicked",label:"Clicked link in drip step",conditions:[{label:"is any of",value:"in"}],options:O.Option.DRIPSTEP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip-steps-link-clicked",label:"Clicked specific link in drip step",conditions:[{label:"contains",value:"contains"},{label:"is",value:"equal"}
970],input:O.Input.TEXT,type:O.Type.STRING},{id:"drip-steps-unclicked",label:"Did not click link in drip step",conditions:[{label:"is none of",value:"not_in"}],options:O.Option.DRIPSTEP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip_sequences_started",label:"Drip in progress (not completed)",conditions:[{label:"is none of",value:"not_in"}],options:O.Option.DRIP,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"drip_sequences_completed",label:"Completed drip",conditions:[{label:"is any of",value:"in"}],options:O.Option.DRIP,input:O.Input.CHECKBOX,type:O.Type.INTEGER}]},{label:"Custom Fields",items:[]},{label:"Custom Events",items:[]},{label:"Workflows",items:[{id:"workflows",label:"In workflow",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],options:O.Option.WORKFLOWS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"workflows-email",label:"Workflow email was sent",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],options:O.Option.WORKFLOWS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"workflows-email-opened",label:"Opened workflow email",conditions:[{label:"is any of",value:"in"}],options:O.Option.WORKFLOWS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"workflows-email-unopened",label:"Did not open workflow email",conditions:[{label:"is any of",value:"not_in"}],options:O.Option.WORKFLOWS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"workflows-email-clicked",label:"Clicked link in workflow email",conditions:[{label:"is any of",value:"in"}],options:O.Option.WORKFLOWS,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"workflows-email-link-clicked",label:"Clicked specific link in workflow email",conditions:[{label:"contains",value:"contains"},{label:"is",value:"equal"}],input:O.Input.TEXT,type:O.Type.STRING},{id:"workflows-email-unclicked",label:"Did not click link in workflow email",conditions:[{label:"is any of",value:"not_in"}],options:O.Option.WORKFLOWS,input:O.Input.CHECKBOX,type:O.Type.INTEGER}]},{label:"Polls",items:[{id:"poll-voted",label:"Voted in poll",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.POLLS},{id:"poll-option-selected",label:"Selected poll option",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.POLL_OPTIONS},{id:"poll-voted-via-campaign",label:"Voted in poll via",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.POLL_ENTITIES},{id:"poll-voted-in-x-days",label:"Voted in poll in last X days",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER}]},{label:"Surveys",items:[{id:"survey-submitted",label:"Submitted survey",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.SURVEYS},{id:"survey-nps-submitted",label:"Submitted NPS in survey",conditions:[{label:"is any of",value:"in"},{label:"is none of",value:"not_in"}],input:O.Input.CHECKBOX,type:O.Type.INTEGER,options:O.Option.SURVEYS},{id:"survey-nps-score",label:"NPS score",conditions:[{label:"less than",value:"less"},{label:"greater than",value:"greater"},{label:"equal to",value:"equal"},{label:"between",value:"between"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"survey-submitted-in-x-days",label:"Submitted survey in last X days",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER}]}]),LL=Object.freeze([{label:"Shopify",items:[{id:"shopify-order-placed",label:"Days since last order",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"shopify-product-purchased",label:"Purchased product",conditions:[{label:"is any of",value:"in"}],options:O.Option.SHOPIFY_PRODUCT,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"shopify-started-checkout",label:"Days since last checkout",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}
970],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"shopify-order-not-placed",label:"Days without an order",conditions:[{label:"less than",value:"less"},{label:"more than",value:"greater"}],input:O.Input.TEXT,type:O.Type.INTEGER},{id:"shopify-product-purchased-smart-collection",label:"Purchased from smart collection",conditions:[{label:"is any of",value:"in"}],options:O.Option.SHOPIFY_SMART_COLLECTION,input:O.Input.CHECKBOX,type:O.Type.INTEGER},{id:"shopify-product-purchased-custom-collection",label:"Purchased from custom collection",conditions:[{label:"is any of",value:"in"}],options:O.Option.SHOPIFY_CUSTOM_COLLECTION,input:O.Input.CHECKBOX,type:O.Type.INTEGER}]}]),DL=Object.freeze([{label:"Email Provider",items:[{id:"email-provider-type",label:"Email provider",conditions:[{label:"is",value:"equal"},{label:"is not",value:"not_equal"}],input:O.Input.SELECT,type:O.Type.STRING}]}]),GL=Object.freeze([{type:"string",conditions:[{label:"contains",value:"contains"},{label:"has a value",value:"is_not_empty"},{label:"is",value:"equal"},{label:"is not",value:"not_equal"}]},{type:"number",conditions:[{label:"is",value:"equal"},{label:"is not",value:"not_equal"},{label:"less than",value:"less"},{label:"more than",value:"greater"}]},{type:"date",conditions:[{label:"is",value:"equal"},{label:"is not",value:"not_equal"},{label:"before",value:"less"},{label:"after",value:"greater"}]},{type:"boolean",conditions:[{label:"is",value:"equal"}]}]),UL="⌘",FL="⌃",rv=Object.freeze([{keys:["Meta","/"],title:"Open Shortcut Menu",action:()=>handleShortcutOpen()},{keys:["b","b"],title:"Go Back",action:()=>handleBack()},{keys:["Meta","s"],title:"Open Search",action:()=>showSearch()},{keys:["Meta","k"],title:"Open Video Search",action:()=>showVideoSearch()},{keys:["n","n"],title:"New Newsletter Campaign",action:()=>Le(ve.Campaign.Newsletter.New.Sender)},{keys:["n","a","b"],title:"New A/B Test Campaign",action:()=>Le(ve.Campaign.ABTest.New.Sender)},{keys:["n","a","t"],title:"New Auto Trigger Campaign",action:()=>Le(ve.Campaign.AutoTrigger.New.Sender)},{keys:["n","d"],title:"New Drip Campaign",action:()=>Le(ve.Campaign.Drip.New.Sender)},{keys:["n","r"],title:"New RSS Campaign",action:()=>Le(ve.Campaign.RSS.New.Basic)},{keys:["n","w"],title:"New Workflow",action:()=>Le(ve.Automate.Workflow.New.Edit)},{keys:["n","f"],title:"New Form",action:()=>handleFormRoute("embed")},{keys:["n","p"],title:"New Popup",action:()=>handleFormRoute("popup")},{keys:["n","l"],title:"New Landing Page",action:()=>handleFormRoute("landingpage")},{keys:["n","a","r"],title:"New Automation",action:()=>Le(ve.Automate.Automation.New.Name)},{keys:["g","n"],title:"Go to Newsletter Campaigns",action:()=>Le(ve.Campaign.Newsletter.Home)},{keys:["g","w"],title:"Go to Workflows",action:()=>Le(ve.Automate.Workflow.Home)},{keys:["g","a","r"],title:"Go to Automations",action:()=>Le(ve.Automate.Automation.Home)},{keys:["g","a","b"],title:"Go to A/B Test Campaigns",action:()=>Le(ve.Campaign.ABTest.Home)},{keys:["g","a","t"],title:"Go to Auto Trigger Campaigns",action:()=>Le(ve.Campaign.AutoTrigger.Home)},{keys:["g","a","d"],title:"Go to Drip Campaigns",action:()=>Le(ve.Campaign.Drip.Home)},{keys:["g","r"],title:"Go to RSS Campaigns",action:()=>Le(ve.Campaign.RSS.Home)},{keys:["g","l"],title:"Go to Audience Lists",action:()=>Le(ve.Audience.List.Home)},{keys:["g","t"],title:"Go to Audience Tags",action:()=>Le(ve.Audience.Tag.Home)},{keys:["g","f"],title:"Go to Form",action:()=>Le(ve.Form.Embed)},{keys:["g","p"],title:"Go to Popup",action:()=>Le(ve.Form.Popup)},{keys:["Meta","g","l"],title:"Go to Landing Page",action:()=>Le(ve.Form.LandingPage)},{keys:["g","s"],title:"Go to Settings",action:()=>Le(ve.Setting.Setup.DomainWhitelisting)},{keys:["g","a","s"],title:"Go to Audience Segments",action:()=>Le(ve.Audience.Segment.Home)},{keys:["g","c"],title:"Go to Contacts",action:()=>Le(ve.Audience.Contact.Home)},{keys:["g","d"],title:"Go to Dashboard",action:()=>Le(ve.Dashboard)},{keys:["s","t"],title:"Switch Team",action:()=>switchTeamShortcut()}]);var dn=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};
970function av(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function BL(e){if(e.__esModule)return e;var t=e.default;if(typeof t=="function"){var n=function s(){return this instanceof s?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,"__esModule",{value:!0}),Object.keys(e).forEach(function(s){var i=Object.getOwnPropertyDescriptor(e,s);Object.defineProperty(n,s,i.get?i:{enumerable:!0,get:function(){return e[s]}})}),n}var ur={},lc={};Object.defineProperty(lc,"__esModule",{value:!0});lc.regionAPIs=void 0;lc.regionAPIs=new Map([["us","https://api-iam.intercom.io"],["eu","https://api-iam.eu.intercom.io"],["ap","https://api-iam.au.intercom.io"]]);var lo={},TO=dn&&dn.__awaiter||function(e,t,n,s){function i(o){return o instanceof n?o:new n(function(a){a(o)})}return new(n||(n=Promise))(function(o,a){function c(m){try{h(s.next(m))}catch(_){a(_)}}function u(m){try{h(s.throw(m))}catch(_){a(_)}}function h(m){m.done?o(m.value):i(m.value).then(c,u)}h((s=s.apply(e,t||[])).next())})};Object.defineProperty(lo,"__esModule",{value:!0});lo.ref=lo.init=void 0;const Vg="_intercom_npm_loader",kr=function(){kr.loaderQueue(arguments)};kr.q=[];kr.loaderQueue=function(e){kr.q.push(e)};const Aa=function(){var e,t,n=document;if(!n.getElementById(Vg)){var s=n.createElement("script");s.type="text/javascript",s.async=!0,s.id=Vg,s.src="https://widget.intercom.io/widget/"+((e=window.intercomSettings)===null||e===void 0?void 0:e.app_id);var i=n.getElementsByTagName("script")[0];(t=i.parentNode)===null||t===void 0||t.insertBefore(s,i)}},qg=()=>document.readyState==="complete"||document.readyState==="interactive",CO=()=>TO(void 0,void 0,void 0,function*(){var e=window,t=e.Intercom;e.intercomSettings&&(e.intercomSettings.installation_type="npm-package"),typeof t=="function"?(t("reattach_activator"),t("update",e.intercomSettings)):(e.Intercom=kr,qg()?Aa():(document.addEventListener("readystatechange",function(){qg()&&Aa()}),e.attachEvent?e.attachEvent("onload",Aa):e.addEventListener("load",Aa,!1)))});lo.init=CO;lo.ref=void 0;(function(e){var t=dn&&dn.__rest||function(g,W){var Z={};for(var P in g)Object.prototype.hasOwnProperty.call(g,P)&&W.indexOf(P)<0&&(Z[P]=g[P]);if(g!=null&&typeof Object.getOwnPropertySymbols=="function")for(var pe=0,P=Object.getOwnPropertySymbols(g);pe<P.length;pe++)W.indexOf(P[pe])<0&&Object.prototype.propertyIsEnumerable.call(g,P[pe])&&(Z[P[pe]]=g[P[pe]]);return Z};Object.defineProperty(e,"__esModule",{value:!0}),e.onUserEmailSupplied=e.showConversation=e.showTicket=e.startChecklist=e.startSurvey=e.showNews=e.showArticle=e.startTour=e.getVisitorId=e.trackEvent=e.onUnreadCountChange=e.onShow=e.onHide=e.showNewMessage=e.showMessages=e.showSpace=e.show=e.hide=e.update=e.shutdown=e.boot=e.Intercom=void 0;const n=lc,s=lo,i=(g,...W)=>{typeof window!==void 0&&window.Intercom?window.Intercom(g,...W):console.warn("Please ensure Intercom is setup and running on client-side!")},o=g=>{if(typeof g!="object"){console.warn("Intercom initialiser called with invalid parameters.");return}const{region:W="us"}=g,Z=t(g,["region"]);typeof window<"u"&&!s.ref&&(window.intercomSettings=Object.assign(Object.assign({},Z),{api_base:n.regionAPIs.get(W)}),(0,s.init)())};e.Intercom=o,e.default=e.Intercom;const a=g=>i("boot",g);e.boot=a;const c=()=>i("shutdown");e.shutdown=c;const u=g=>i("update",g);e.update=u;const h=()=>i("hide");e.hide=h;const m=()=>i("show");e.show=m;const _=g=>i("showSpace",g);e.showSpace=_;const b=()=>i("showMessages");e.showMessages=b;const v=g=>i("showNewMessage",g);e.showNewMessage=v;const w=g=>i("onHide",g);e.onHide=w;const A=g=>i("onShow",g);e.onShow=A;const B=g=>i("onUnreadCountChange",g);e.onUnreadCountChange=B;const H=(...g)=>i("trackEvent",...g);e.trackEvent=H;const I=()=>i("getVisitorId");e.getVisitorId=I;const T=g=>i("startTour",g);e.startTour=T;const S=g=>i("showArticle",g);e.showArticle=S;const C=g=>i("showNews",g);e.showNews=C;const M=g=>i("startSurvey",g);e.startSurvey=M;const U=g=>i("startChecklist",g);e.startChecklist=U;const D=g=>i("showTicket",g);e.showTicket=D;const k=g=>i("showConversation",g);e.showConversation=k;const F=g=>i("onUserEmailSupplied",g);e.onUserEmailSupplied=F})(ur);const AO=av(ur);function dt(){return Ie().$state.sampleDataOn===!0}
970function ct(e=""){if(!dt())return!1;const t=Ie();return t.sampleModeModalMessage=e,t.showSampleModeModal=!0,!0}function HL(){const e=Ie();return{isSampleDataOn:pt(()=>e.$state.sampleDataOn===!0),enableSampleData:()=>{e.setResource({resource:"sampleDataOn",value:!0})},disableSampleData:()=>{e.setResource({resource:"sampleDataOn",value:!1})},toggleSampleData:()=>{e.setResource({resource:"sampleDataOn",value:!e.$state.sampleDataOn})}}}const RO={branding:null,isWhitelabel:!1,detectedDomain:"",loading:!1,generatedFaviconURL:""},cd=ic("whitelabelStore",{state:()=>({...RO}),persist:{storage:sessionStorage},getters:{companyName:e=>e.branding?.companyName||"SendX",logoURL:e=>e.branding?.logoURL||"",logoURLDark:e=>e.branding?.logoURLDark||"",logoFullSVG:e=>e.branding?.logoFullSVG||"",logoIconSVG:e=>e.branding?.logoIconSVG||"",faviconURL:e=>e.branding?.faviconURL||"",primaryColor:e=>e.branding?.primaryColor||"",secondaryColor:e=>e.branding?.secondaryColor||"",accentColor:e=>e.branding?.accentColor||"",fontFamily:e=>e.branding?.fontFamily||"",loginPageTitle:e=>e.branding?.loginPageTitle||"",loginPageSubtitle:e=>e.branding?.loginPageSubtitle||"",supportEmail:e=>e.branding?.supportEmail||"",industry:e=>e.branding?.industry||"",supportURL:e=>e.branding?.supportURL||"",termsURL:e=>e.branding?.termsURL||"",privacyURL:e=>e.branding?.privacyURL||"",hideIntercom:e=>e.branding?.hideIntercom||!1,cdnDomain:e=>e.branding?.cdnDomain||"",customChatbotJS:e=>e.branding?.customChatbotJS||"",allowedAddons:e=>{const t=e.branding?.allowedAddons;if(!t||t==="[]")return null;try{return JSON.parse(t)}catch{return null}}},actions:{setResource({resource:e,value:t}){this[e]=t},detectWhitelabelDomain(){if(typeof window>"u")return;const e=window.location.hostname;if(e==="localhost"||e.endsWith(".sendx.io")||e.endsWith(".sendx.com")||e==="sendx.io"||e==="sendx.com"||e.includes("127.0.0.1")){this.isWhitelabel=!1,this.detectedDomain="";return}this.detectedDomain=e,this.isWhitelabel=!0},async fetchBranding(e){if(e||(e=this.detectedDomain),!e)return null;this.loading=!0;try{const{data:t,error:n}=await Y(`${K()}whitelabel/branding`,{method:"GET",query:{domain:e}},"$3rl62CM3Td");return n.value?(console.warn("[Whitelabel] Failed to fetch branding:",n.value),this.isWhitelabel=!1,this.branding=null,null):(this.branding=t.value,this.isWhitelabel=!0,t.value)}catch(t){return console.warn("[Whitelabel] Error fetching branding:",t),this.isWhitelabel=!1,this.branding=null,null}finally{this.loading=!1}},updateBrandingFromAuthInfo(e){e&&(!e.faviconSVGContent&&this.branding?.faviconSVGContent&&(e.faviconSVGContent=this.branding.faviconSVGContent),this.branding=e,this.isWhitelabel=!0)},loadThemeCSS(e){if(!e||typeof document>"u")return;const t=document.getElementById("wl-theme-css");if(t?.getAttribute("data-hash")===e)return;t&&t.remove();const n=document.createElement("link");n.id="wl-theme-css",n.rel="stylesheet",n.href=`https://cdn.sendx.io/wl/${e}.css`,n.setAttribute("data-hash",e),document.head.appendChild(n)},applyBranding(){if(typeof document>"u"||!this.branding)return;const e=document.documentElement;if(this.branding.themeCSSHash)this.loadThemeCSS(this.branding.themeCSSHash);else if(this.branding.primaryColor){const n=xO(this.branding.primaryColor);n&&(e.style.setProperty("--sendx-button-primary",n),e.style.setProperty("--sendx-border-active",n),e.style.setProperty("--sendx-accent-secondary",n))}this.branding.fontFamily&&(e.style.setProperty("--sendx-font-family",this.branding.fontFamily),e.style.fontFamily=this.branding.fontFamily+", sans-serif");const t=this.branding.primaryColor||OO(this.branding.themePreset);t?this.generatedFaviconURL=kO(this.branding.faviconSVGContent,t,this.branding.companyName):this.branding.faviconURL&&(this.generatedFaviconURL=this.branding.faviconURL)},isAddonAllowed(e){if(!this.isWhitelabel)return!0;const t=this.allowedAddons;return t?t.includes(e):!0},async fetchMyPlans(){return new Promise((e,t)=>{Y(`${K()}whitelabel/sub-account/plans`,{method:"GET",key:`wl-plans-${Date.now()}`},"$tJRUWb2wEV").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):e(s)}).catch(t)})},async initiateCheckout(e){const t=window.location.origin;return new Promise((n,s)=>{Y(`${K()}whitelabel/sub-account/checkout`,{method:"POST",body:{planId:e,successURL:`${t}/setting/billing?checkout=success`,cancelURL:`${t}/setting/billing?checkout=cancel`}},"$G2vEgcuYoB").then(i=>{const o=i.data.value,a=i.error.value;a?s(a):n(o)}).catch(s)})}
970,async fetchMyUsage(){return new Promise((e,t)=>{Y(`${K()}whitelabel/sub-account/usage`,{method:"GET",key:`wl-usage-${Date.now()}`},"$6Wda87BlSr").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):e(s)}).catch(t)})},async fetchMyAddonPlans(){return new Promise((e,t)=>{Y(`${K()}whitelabel/sub-account/addon-plans`,{method:"GET",key:`wl-addon-plans-${Date.now()}`},"$PWQeAhKt0s").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):e(s)}).catch(t)})},async verifyCheckout(){return new Promise((e,t)=>{Y(`${K()}whitelabel/sub-account/checkout/verify`,{method:"POST"},"$oPs5QnrpIj").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):e(s)}).catch(t)})},async initiateAddonCheckout(e,t=1){return new Promise((n,s)=>{Y(`${K()}whitelabel/sub-account/addon-checkout`,{method:"POST",body:{addonPlanId:e,quantity:t}},"$sdG8TyudCG").then(i=>{const o=i.data.value,a=i.error.value;a?s(a):n(o)}).catch(s)})},async openBillingPortal(e){return new Promise((t,n)=>{Y(`${K()}whitelabel/sub-account/billing-portal`,{method:"POST",body:{returnURL:e}},"$b2IZ9sc6m2").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(n)})},async cancelSubscription(){return new Promise((e,t)=>{Y(`${K()}whitelabel/sub-account/subscription/cancel`,{method:"POST"},"$Fxznlpjjo9").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):e(s)}).catch(t)})},async cancelAddonSubscription(e){return new Promise((t,n)=>{Y(`${K()}whitelabel/sub-account/addon-subscription/cancel`,{method:"POST",body:{addonPlanId:e}},"$LTDgscQTu8").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(n)})},reset(){this.branding=null,this.isWhitelabel=!1,this.detectedDomain="",this.loading=!1,this.generatedFaviconURL=""}}});function xO(e){if(!e||(e=e.replace(/^#/,""),e.length===3&&(e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]),e.length!==6))return null;const t=parseInt(e.substring(0,2),16),n=parseInt(e.substring(2,4),16),s=parseInt(e.substring(4,6),16);return isNaN(t)||isNaN(n)||isNaN(s)?null:`${t}, ${n}, ${s}`}const IO={"classic-gold":"#d4a843","ocean-blue":"#2563eb","forest-green":"#16a34a","sunset-coral":"#f97316","royal-indigo":"#6366f1","rose-pink":"#e11d48","slate-minimal":"#475569","teal-fresh":"#0d9488","light-default":"#ffd700",vibrant:"#8b5cf6",minimal:"#111827"};function OO(e){return IO[e]||""}function kO(e,t,n){if(e){const a=e.match(/viewBox=["']([^"']+)["']/i),c=a?a[1]:"0 0 64 64",u=MO(e);if(u){const h=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="${c}">
971                <defs>
972                    <filter id="recolor">
973                        <feFlood flood-color="${t}" result="color"/>
974                        <feComposite in="color" in2="SourceAlpha" operator="in"/>
975                    </filter>
976                </defs>
977                <g filter="url(#recolor)">
978                    ${u}
979                </g>
980            </svg>`,m=new Blob([h],{type:"image/svg+xml"});return URL.createObjectURL(m)}}const s=(n||"S").charAt(0).toUpperCase(),i=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 64 64">
981        <rect width="64" height="64" rx="12" fill="${t}"/>
982        <text x="32" y="46" text-anchor="middle" font-size="40" font-family="Arial,sans-serif" font-weight="bold" fill="white">${s}</text>
983    </svg>`,o=new Blob([i],{type:"image/svg+xml"});return URL.createObjectURL(o)}function MO(e){const t=e.match(/<svg[^>]*>([\s\S]*)<\/svg>/i);return t?t[1]:""}let Ra=!0;const jg={authInfo:null,currentTeam:null,authLoading:!1,notification:{show:!1,type:"info",title:"",message:""},mainPageLoadingValue:"Loading Data...",sampleDataOn:!1,showSampleModeModal:!1,sampleModeModalMessage:"",showGlobalSpinner:!1,nav:!1,showAlert:null,memberTeams:[],teamCategories:[],promoCode:"",showSearch:!1,showVideoPlayer:!1,selectedVideoDetails:{},searchTabSelected:1,shortCutkeys:JSON.stringify(rv),tablePreferences:"{}",tablePreferencesLoaded:!1,companyInformation:null,showRecaptcha:!1,shopifyRedirectInfo:null,notificationCenterOpen:!1,notificationEvents:[],notificationLoading:!1,notificationHasMore:!0,notificationOffset:0,isDarkMode:!1,notificationAlert:!1,adminContext:null,teamSwitchedInOtherTab:!1,pendingTwoFactorToken:null,pendingTwoFactorEmail:null,authRejectionMessage:""},Ie=ic("globalStore",{state:()=>jg,persist:{storage:localStorage,pick:["authInfo","isDarkMode","shortCutkeys","sampleDataOn","tablePreferences"],afterHydrate:e=>{const t=sessionStorage.getItem("_teamId"),n=e.store.$state.authInfo?.team?.i
983d;n&&t&&Number(t)!==Number(n)&&(sessionStorage.clear(),e.store.teamSwitchedInOtherTab=!0);const s=e.store.$state.authInfo;s?.team&&e.store.setCurrentTeam(s.team)}},getters:{getNavStatus:e=>e.nav,getShowAlert:e=>e.showAlert,getMemberTeams:e=>e.memberTeams,getNotificationAlert:e=>e.notificationAlert,isOwner:e=>!!e.authInfo?.account?.AccountOwnerId&&e.authInfo.account.AccountOwnerId===e.authInfo?.member?.id},actions:{setResource({resource:e,value:t}){if(e=="currentTeam"){this.setCurrentTeam(t);return}this[e]=t,e=="authInfo"&&t?.team&&this.setCurrentTeam(t.team)},setItem({item:e,id:t,resource:n}){this[n]||(this[n]={}),this[n][t]=e,n=="authInfo"&&t=="team"&&this.setCurrentTeam(e)},setCurrentTeam(e){e?(sessionStorage.setItem("_teamId",e.id),this.currentTeam=e):(sessionStorage.removeItem("_teamId"),this.currentTeam=null)},setNotificationAlert(e){this.setResource({resource:"notificationAlert",value:e})},toggleNotificationCenter(){this.setResource({resource:"notificationCenterOpen",value:!this.notificationCenterOpen})},async updateAddOnById(e,t){let n=this.authInfo?.team;n&&(n={...n,addOns:n.addOns?.map(s=>s.id!=e?s:t)},this.setItem({resource:"authInfo",item:n,id:"team"}))},loadIntercomWebApp(){const t=Ie().$state.authInfo,n=Ir(),s=cd();if(s.isWhitelabel){if(s.customChatbotJS&&!window.__wlChatbotLoaded)try{const i=document.createElement("div");i.innerHTML=s.customChatbotJS,i.querySelectorAll("script").forEach(o=>{const a=document.createElement("script");Array.from(o.attributes).forEach(c=>a.setAttribute(c.name,c.value)),a.textContent=o.textContent,document.body.appendChild(a)}),Array.from(i.children).forEach(o=>{o.tagName!=="SCRIPT"&&document.body.appendChild(o)}),window.__wlChatbotLoaded=!0}catch(i){console.error("[Chatbot] Failed to inject custom chatbot JS:",i)}return}typeof window>"u"||window.__intercomBooted||n.public.env!="prod"||document.cookie.includes("x-internal-login=true")||t&&(t?.teamMember,AO({app_id:"sqw0jm7f",user_hash:t.intercomToken,user_id:t?.teamMember?.encrypted_id}),window.__intercomBooted=!0)},updateIntercomUser(){const t=Ie().$state.authInfo;typeof window>"u"||Ir().public.env!="prod"||document.cookie.includes("x-internal-login=true")||t&&(ur.shutdown(),ur.boot({app_id:"sqw0jm7f",user_hash:t?.intercomToken,user_id:t?.teamMember?.encrypted_id}),t?.teamMember)},showNotification(e){this.notification={...e,show:!0}},hideNav(){this.nav=!0},showNav(){this.nav=!1},globalSpinnerStart(){this.setResource({resource:"mainPageLoadingValue",value:"Loading Data..."}),this.setResource({resource:"showGlobalSpinner",value:!0})},globalSpinnerStop(){this.setResource({resource:"mainPageLoadingValue",value:"No Data"}),this.setResource({resource:"showGlobalSpinner",value:!1})},refreshState(){const e=Ie();e.setResource({resource:"authInfo",value:null}),e.setResource({resource:"authLoading",value:!1}),e.setResource({resource:"notification",value:{show:!1,type:"info",title:"",message:""}}),e.setResource({resource:"sampleDataOn",value:!1}),e.setResource({resource:"showGlobalSpinner",value:!1}),e.setResource({resource:"nav",value:!1}),e.setResource({resource:"showAlert",value:null}),e.setResource({resource:"memberTeams",value:[]}),e.setResource({resource:"adminContext",value:null})},fetchAuthInfo({token:e,timezone:t,forceTeamId:n,bypassCache:s}={}){const i=Ie(),o=gu();return new Promise((a,c)=>{if(i.$state?.authInfo,!s&&!Ra&&i.$state?.authInfo&&i.$state?.authInfo?.teamMember&&i.$state?.authInfo?.teamAuthToken){i.$state?.authInfo,this.loadIntercomWebApp(),a(i.$state?.authInfo);return}const u=t||Intl.DateTimeFormat().resolvedOptions().timeZone,h=o.query.promoCode||i.$state.promoCode,m=o.query.invitation||"",_=sessionStorage.getItem("_teamId"),b=n!==void 0?n:o.query.teamId||_||i.$state?.authInfo?.team?.id||"",v=o.query.refer_source||"",w=o.query.shop||"",A=o.query.access_token||"";this.setResource({resource:"shopifyRedirectInfo",value:{shop:w,fullName:o.query.shop_owner||"",email:o.query.email||"",company:o.query.shop_name||"",companyWebsite:o.query.domain||"",currency:o.query.currency||"",country_code:o.query.country||"",phone:o.query.phone||"",accessToken:A}});const B=cd(),H=B.isWhitelabel?B.detectedDomain:"";Y(K()+"auth/info",{method:"GET",credentials:"include",headers:{[ni]:e},query:{timezone:u,promoCode:h,invitationId:m,referSource:v,shop:w,accessToken:A,teamId:b,whitelabelDomain:H}},"$vwnoaM9yhV").then(I=>{const T=I.data.value,S=I.error.value;if(S){const C=S?.statusCode??S?.status;oO(C);const M=C===400||C===403;i.setResource({resource:"authRejectionMessage",value:M&&S?.data?.message||""}),a("auth/member-not-found")}else if(T?.twoFactorRequired)i.setResource({resource:"pendingTwoFactorToken",value:e}),i.setResource({resource:"pendingTwoFactorEmail",value:T.member?.email||""}),a({twoFactorRequired:!0});else{if(i.setResource({resource:"authInfo",value:T}),T?.whitelabelBranding){const C=cd();C.updateBrandingFromAuthInfo(T.whitelabelBranding),C.applyBranding()}h&&i.setResource({resource:"promoCode",value:""}),Ra=!1,nO(T),this.loadIntercomWebApp(),a(T)}}).catch(I=>{c(I)})})},async signInWithPopup(){const e=await Hg();Bg(e).then(t=>{}).catch(t=>{})},verifyTwoFactor({code:e,recoveryCode:t}){const n=Ie(),s=n.$state.pendingTwoFactorToken,i=t?{recoveryCode:t}:{code:e};return new Promise((o,a)=>{Y(K()+"auth/2fa/verify",{method:"POST",credentials:"include",headers:{[ni]:s},body:i},"$P0TxJT9Tow").then(c=>{const u=c.data.value,h=c.error.value;h?a(h):(n.setResource({resource:"pendingTwoFactorToken",value:null}),n.setResource({resource:"pendingTwoFactorEmail",value:null}),n.setResource({resource:"authInfo",value:u}),Ra=!1,o(u))}).catch(c=>a(c))})},async sendPasswordResetEmail({email:e}){return cI(e)},sendPasswordResetCustomEmail({email:e}){return new Promise(t=>{this.setResource({resource:"authLoading",value:!0}),Y(`${K()}passwordreset`,{method:"POST",body:{email:e}},"$kvF1VqEEQG").then(n=>{t(n.data?.value)}
983).catch(n=>{console.error("password reset request failed:",n),t()}).finally(()=>{this.setResource({resource:"authLoading",value:!1})})})},async signInWithGoogle(){const e=Ie();return new Promise(async(t,n)=>{e.setResource({resource:"authLoading",value:!0});const s=await Hg();Bg(s).then(async i=>{try{const a=(await pI(i))?.isNewUser,c=i?.user?.email;if(a&&!tO(c)){try{await hI(i.user)}catch(u){console.error("cleanup of blocked Google signup failed",u)}n(new Error("business-email-required"));return}}catch(o){console.error("business-email gate check failed",o)}t(i)}).catch(i=>{console.error(i),n(i)}).finally(()=>{e.setResource({resource:"authLoading",value:!1}),e.$state})})},signInWithEP(e,t){const n=Ie();return new Promise((s,i)=>{n.setResource({resource:"authLoading",value:!0}),rI(e,t).then(o=>{s(o)}).catch(o=>{o.code,o?Y(`${K()}oldauth/verify`,{method:"POST",body:{email:e,password:t}},"$6rh9hnx6dX").then(a=>{const c=a.data.value,u=a.error.value;u?i(o.code):c.status?rd(e,t).then(h=>{h.user.uid;const m=h.user.uid;Y(`${K()}oldauth/migrate`,{method:"PUT",body:{email:e,password:t,newUid:m}},"$PH1SxZPtdt").then(_=>{s(_)}).catch(_=>{i(o.code)})}).catch(h=>{console.error("sign up failed",h),i(h)}):i(o.code)}).catch(a=>{i(a)}):o.code==="auth/wrong-password"?i(o.code):(o.code,i(o))}).finally(()=>{n.setResource({resource:"authLoading",value:!1}),n.$state})})},signInWithFirebaseCustomToken(e){const t=Ie();return new Promise(async(n,s)=>{const i=await fn();aI(e).then(async o=>{const a=i.currentUser;if(!a)return;const c=await a.getIdTokenResult(!0),u=await a.getIdToken();if(c.claims.isAdminSession){const h={assumedEmail:c.claims.assumedEmail,idToken:u,isAdminSession:!0,impersonatorEmail:c.claims.impersonatorEmail,impersonatorName:c.claims.impersonatorName};t.setResource({resource:"adminContext",value:h})}t.$state.adminContext,n(o)}).catch(o=>{})})},shouldShowRecaptcha(){const e=Ie();return new Promise((t,n)=>{Y(K()+"auth/show-recaptcha",{method:"GET"},"$z8ImLUk2sj").then(s=>{e.setResource({resource:"showRecaptcha",value:s.data.value}),e.$state.showRecaptcha,s.data.value,t(s.data.value)}).catch(s=>{n(s)})})},verifyRecaptcha(e){return new Promise((t,n)=>{Y(K()+"auth/verify-recaptcha",{method:"POST",body:{token:e}},"$GhxX7pgFZh").then(s=>{s.data.value,t(s.data.value)}).catch(s=>{n(s)})})},refreshAuthInfo(){const e=Ie();return new Promise((t,n)=>{Y(K()+"team/member/latest-auth-info",{method:"GET"},"$jyFP0oty2I").then(s=>{const i=s.data.value,o=s.error.value;if(o)t("auth/member-not-found");else{let a={...e.$state.authInfo,account:i?.account,team:i?.team,teamMember:i?.teamMember,member:i?.member,memberRole:i?.memberRole,intercomToken:i?.intercomToken,teamAuthToken:i?.teamAuthToken,teamAuthTokenExpiresAt:i?.teamAuthTokenExpiresAt,canViewAccountBilling:i?.canViewAccountBilling};e.setResource({resource:"authInfo",value:a})}}).catch(s=>{n(s)})})},validatePromoCode(e){return new Promise((t,n)=>{const s=(e||"").trim();if(!s){t({valid:!1,reason:"empty"});return}Y(K()+"auth/promo/validate",{method:"POST",body:{promoCode:s}},"$yPLW4eNO3q").then(i=>{const o=i.data.value,a=i.error.value;t(a?{valid:!1,reason:"error"}:o)}).catch(i=>{t({valid:!1,reason:"error"})})})},signUpWithEP(e,t){const n=Ie();return new Promise((s,i)=>{n.setResource({resource:"authLoading",value:!0}),rd(e,t).then(o=>{s(o)}).catch(o=>{console.error("sign up failed",o),i(o)}).finally(()=>{n.setResource({resource:"authLoading",value:!1}),n.$state})})},async initUser(){const e=gu(),t=Ie();let n=!1,s=!1;fI(async i=>{if(t.authLoading){t.authLoading;return}if(i)i.getIdToken(!0).then(async o=>{t.fetchAuthInfo({token:o}).then(async a=>{if(gl(e))return await Le(ve.Home)}).catch(a=>{console.error(a),fl("auth_info_failed",{route:e?.fullPath}),t.signOut()})});else{if(n||!t.$state.authInfo||s)return;s=!0;const o=await fn();if(await new Promise(a=>setTimeout(a,1500)),s=!1,o.currentUser){iO({route:e?.fullPath});return}fl("firebase_null",{route:e?.fullPath}),n=!0;try{await t.signOut()}catch(a){console.error("[initUser] signOut failed:",a)}gl(e)||await Le(ve.Login),n=!1}})},verifyMagicToken({req:e}){return new Promise((t,n)=>{const s={method:"POST",body:e};Y(K()+"oldauth/verify-magic-token",s,"$D5WgWSti2n").then(i=>{i.error.value?n(error):t(i.data.value)}
983).catch(i=>{n(i)})})},CreateFirebaseUserAndMigrate(e,t){return new Promise((n,s)=>{rd(e,t).then(i=>{i.user.uid;const o=i.user.uid;Y(`${K()}oldauth/migrate`,{method:"PUT",body:{email:e,password:t,newUid:o}},"$fauU52x0ML").then(a=>{n(a)}).catch(a=>{s(a)})}).catch(i=>{console.error("sign up failed",i),s(i)})})},adminAssumeAccountGetToken({email:e,firebaseUID:t}){return new Promise((n,s)=>{const i={method:"GET",params:{email:e,uid:t}};Y(K()+"account/assume",i,"$XJ6lzkYg6E").then(o=>{o.error.value?s(o.error.value):n(o.data.value)}).catch(o=>{s(o)})})},submitOnboardingData({token:e,eaccount:t}){const n=Ie();return new Promise((s,i)=>{const o={method:"PUT",headers:{[ni]:e,"Content-Type":"application/json"},body:JSON.stringify(t)};Y(K()+"auth/onboarding/submit",o,"$IffPVXlCAA").then(a=>{const c=a.data.value;n.setResource({resource:"authInfo",value:c}),s(c)}).catch(a=>{i(a)})})},submitMemberOnboardingData({memberId:e,avatarUrl:t,fullName:n}){return new Promise((s,i)=>{const o={method:"PUT",body:JSON.stringify({avatarUrl:t,fullName:n})};Y(K()+"team/member/"+e+"/profile",o,"$Aetfld1bnf").then(a=>{const c=a.data.value;s(c)}).catch(a=>{i(a)})})},async _saveLastLoginCookie(){try{const{maskEmail:e,writeLastLogin:t}=await st(async()=>{const{maskEmail:c,writeLastLogin:u}=await import("./Bb9cSP03.js");return{maskEmail:c,writeLastLogin:u}},[],import.meta.url),s=(await fn())?.currentUser,i=this.authInfo?.member;if(!i?.email)return;const o=s?.providerData?.[0]?.providerId||"password",a=(i.fullName||"").split(" ")[0];t({firstName:a,email:e(i.email),avatarUrl:i.avatarUrl||"",provider:o,timestamp:Date.now()})}catch(e){console.error("Failed to save last-login cookie:",e)}},async signOut(){return new Promise(async(e,t)=>{try{await this._saveLastLoginCookie();const n=await lI();this.refreshState(),localStorage.clear(),sessionStorage.clear(),sO(),typeof window<"u"&&ur.shutdown(),e(n)}catch(n){t(n)}})},reauthenticate({currentPassword:e}){return new Promise((t,n)=>{uI(e).then(s=>{t(s)}).catch(s=>{n(s)})})},changePassword({newPassword:e}){return new Promise((t,n)=>{dI(e).then(()=>{t({message:"Password updated successfully."})}).catch(s=>{n(s)})})},checkIfContactExist({email:e}){return new Promise((t,n)=>{const s={method:"GET",params:{email:e}};Y(K()+"team/contact/exists",s,"$mUPBD3adi1").then(i=>{const o=i.data;t(o)}).catch(i=>{n(i)})})},fetchDragDropEmailTemplate(e,t){return new Promise((n,s)=>{const i={method:"GET"};Y(K()+`team/template/email/dragdrop?search=${e}&page=${t}`,i,"$5wj4kpNkDK").then(o=>{const a=o.data.value,c=o.error.value;c?s(c):n(a)}).catch(o=>{s(o)})})},fetchPlainTextEmailTemplate(){return new Promise((e,t)=>{const n={method:"GET"};Y(K()+"team/template/email/plaintext",n,"$1jE9EFyKWG").then(s=>{const i=s.data.value,o=s.error.value;o?t(o):e(i)}).catch(s=>{t(s)})})},fetchSendxEditorEmailTemplate(){return new Promise((e,t)=>{const n={method:"GET"};Y(K()+"team/template/email/sendxeditor",n,"$SrtyNU762f").then(s=>{const i=s.data.value,o=s.error.value;o?t(o):e(i)}).catch(s=>{t(s)})})},fetchAllMemberTeams(){const e=Ie();return new Promise((t,n)=>{const s={method:"GET"};Y(K()+"team/member/teams",s,"$2eqrGgf0LX").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):(e.setResource({resource:"memberTeams",value:o}),t(o))}).catch(i=>{n(i)})})},createTeam({name:e,timezone:t,subdomain:n}){return new Promise((s,i)=>{const o={method:"POST",body:{name:e,timezone:t,subdomain:n}};Y(K()+"account/team/",o,"$UnCARSMKDw").then(a=>{const c=a.data.value,u=a.error.value;u?(u.data,i(u.data)):s(c)}).catch(a=>{i(a)})})},checkIfSubdomainAvailable({subdomain:e}){return new Promise((t,n)=>{const s={method:"GET"};Y(K()+"account/team/check-subdomain/"+e,s,"$cB0AiFM8rx").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},checkIfSubdomainPresent(){const e=Ie();return new Promise((t,n)=>{const s={method:"GET"};Y(K()+"account/team/"+e.$state.currentTeam.id+"/has-subdomain",s,"$5pSA5tyni8").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},sendSlackNotification({email:e,title:t,url:n,from:s}){return new Promise((i,o)=>{const a={method:"POST",body:JSON.stringify({email:e,video_title:t,video_url:n,from:s})};Y(K()+"account/team/slack-notification",a,"$P5FiD873f7").then(c=>{const u=c.data.value,h=c.error.value;h?o(h):i(u)}).catch(c=>{o(c)})})},sendSlackNotificationShortcutKety({email:e,shortcutTitle:t,shortcutUsed:n}){return new Promise((s,i)=>{const o={method:"POST",body:JSON.stringify({email:e,shortcut_title:t,shortcut_used:n})};Y(K()+"account/team/slack-notification/shortcut-keys",o,"$dX7t1Irbqk").then(a=>{const c=a.data.value,u=a.error.value;u?i(u):s(c)}).catch(a=>{i(a)})})}
983,updateDefaultTimezone({tid:e,timezone:t}){if(ct())return Promise.reject("sample-mode");const n=Ie();return new Promise((s,i)=>{const o={method:"PUT",body:{timezone:t}};Y(K()+"account/team/"+e,o,"$vUvXiywcRS").then(a=>{const c=a.data.value,u=a.error.value;if(u)i(u);else{const h={...n.$state.currentTeam,defaultTimeZone:t};n.setItem({resource:"authInfo",item:h,id:"team"}),s(c)}}).catch(a=>{i(a)})})},switchTeam({sid:e,token:t}){const n=Ie();return new Promise((s,i)=>{const o={method:"GET"};Y(K()+"account/team/"+e+"/switch",o,"$4XQiXA17Ep").then(async a=>{const c=a.data.value,u=a.error.value;if(u){i(u);return}if(sessionStorage.clear(),t)try{const m=(await Y(K()+"auth/info",{method:"GET",headers:{[ni]:t},query:{teamId:e}},"$6cuEzmI3zD")).data?.value;n.setResource({resource:"authInfo",value:{...c,twoFactorSetupRequired:m?.twoFactorSetupRequired}})}catch{n.setResource({resource:"authInfo",value:c})}else n.setResource({resource:"authInfo",value:c});n.$persist(),this.updateIntercomUser(),s(c)}).catch(a=>{i(a)})})},fetchTeamById({tid:e}){return new Promise((t,n)=>{const s={method:"GET"};Y(K()+"account/team/"+e,s,"$ip5tDCZj9s").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},deleteTeam({sid:e}){return new Promise((t,n)=>{const s={method:"DELETE"};Y(K()+"account/team/"+e,s,"$3DtDRWnO5T").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},fetchCursorDropdownOptions({search:e,pageInfo:t,entity:n}){return new Promise((s,i)=>{let o=e??"";Y(K()+"team/"+n+"/dropdown",{method:"GET",params:{pageInfo:t,search:o}},"$Fv8X9B37mV").then(a=>{const c=a.data.value,u=a.error.value;u?i(u):s(c)}).catch(a=>{i(a)})})},async fetchDropdownOptions({search:e,page:t,entity:n,extraParams:s}){if(dt()){const{getSampleListTagSegmentDropdown:i,getSampleListsDropdown:o,getSampleTagsDropdown:a,getSampleSegmentsDropdown:c}=await st(async()=>{const{getSampleListTagSegmentDropdown:u,getSampleListsDropdown:h,getSampleTagsDropdown:m,getSampleSegmentsDropdown:_}=await import("./B_JB_S9d.js");return{getSampleListTagSegmentDropdown:u,getSampleListsDropdown:h,getSampleTagsDropdown:m,getSampleSegmentsDropdown:_}},[],import.meta.url);if(n==="listtagsegment")return i({search:e??"",page:t??1})??[];if(n==="lists")return o({search:e??"",page:t??1})??[];if(n==="tags")return a({search:e??"",page:t??1})??[];if(n==="segments")return c({search:e??"",page:t??1})??[]}return new Promise((i,o)=>{let a=e??"";Y(K()+"team/"+n+"/dropdown",{method:"GET",params:{page:t,search:a,...s||{}}},"$rhF3QOUj2S").then(c=>{const u=c.data.value,h=c.error.value;h?o(h):i(u)}).catch(c=>{o(c)})})},createDropDownEntity({entity:e,body:t}){return ct()?Promise.reject():new Promise((n,s)=>{Y(K()+"team/"+e+"/",{method:"POST",body:t},"$OxqPS9RYTf").then(i=>{const o=i.data.value,a=i.error.value;a?s(a):n(o)}).catch(i=>{s(i)})})},checkVisibility({entity:e}){const n=Ie().$state?.authInfo?.memberRole??-1;return!lO[n]?.includes(e)},resendVerificationEmail(){return new Promise((e,t)=>{const n={method:"POST"};Y(K()+"team/member/verify/sendmail",n,"$QnPsx1wDKf").then(s=>{const i=s.error.value;i?t(i):e("Success")}).catch(s=>{t(s)})})},downloadFile({filename:e}){return new Promise((t,n)=>{Y(K()+"team/file/"+e,{method:"GET"},"$u3hTOXFRVu").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>{n(s)})})},ablyAuthInfoUpdate({data:e}){Ie().setResource({resource:"authInfo",value:e})},ablyAccountUpdate({data:e}){Ie().setItem({resource:"authInfo",item:e,id:"account"})},ablyTeamUpdate({data:e}){const t=Ie();e.Created=t.$state?.currentTeam?.Created,e.Created,t.setItem({resource:"authInfo",item:e,id:"team"})},ablyMemberUpdate({data:e}){Ie().setItem({resource:"authInfo",item:e,id:"member"})},ablyMemberRoleUpdate({memberRole:e,member:t}){const n=Ie(),s=["Owner","Admin","Contributor","Viewer","Non Billing Admin"];n.$state.authInfo?.member?.id===t?.id?(n.setItem({resource:"authInfo",item:e,id:"memberRole"}),ee(`Your role has been updated to ${s[e]||"Unknown"}`,{theme:"auto",type:"info",hideProgressBar:!1,autoClose:3e3,transition:"slide"})):t?.id},ablyTransferOwnerShip({data:e}){const t=Ie();try{const n=e,s=t.$state.authInfo?.member?.id;if(t.$state.authInfo?.account?.AccountOwnerId,n.newOwner?.id,t.$state.authInfo?.account){const i={...t.$state.authInfo.account,AccountOwnerId:n.newOwner?.id};t.setItem({resource:"authInfo",item:i,id:"account"}),n.newOwner?.id}if(s===n.newOwner?.id){t.setItem({resource:"authInfo",item:n.newOwner.role,id:"memberRole"}),n.newOwner.role,ee("You are now the owner of this team!",{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});const i=new CustomEvent("ownership-transferred",{detail:{isNewOwner:!0}});window.dispatchEvent(i)}else if(s===n.previousOwner?.id){t.setItem({resource:"authInfo",item:n.previousOwner.role,id:"memberRole"}),n.previousOwner.role,ee("Ownership has been transferred. You are now an Admin.",{theme:"auto",type:"info",hideProgressBar:!1,autoClose:5e3,transition:"slide"});const i=new CustomEvent("ownership-transferred",{detail:{isPreviousOwner:!0}});window.dispatchEvent(i)}else{ee("Ownership has been updated.",{theme:"auto",type:"info",hideProgressBar:!1,autoClose:5e3,transition:"slide"});const i=new CustomEvent("ownership-transferred",{detail:{isPreviousOwner:!0}});window.dispatchEvent(i)}}catch(n){console.error("Error parsing ownership transfer data:",n)}},saveRowTemplate(e,t){return new Promise((n,s)=>{Y(`${K()}team/rowtemplate/create`,{method:"POST",body:{content:JSON.stringify(e),name:t}},"$ONtuqggTmS").then(i=>{const{status:o,data:a,error:c}=i;o.value==="error"?s(c.value):n(i.data.value)}
983).catch(i=>{s(i)})})},deleteRowTemplate(e){return new Promise((t,n)=>{Y(`${K()}team/rowtemplate`,{method:"DELETE",body:{name:e}},"$Q8H5amkIt1").then(s=>{const i=s.error.value;i?n(i):t(s.data.value)}).catch(s=>{n(s)})})},fetchRowTemplate({category:e}){return new Promise((t,n)=>{Y(K()+"team/rowtemplate",{method:"GET",query:{category:e}},"$BCRz4CsP7E").then(s=>{let i=s.data.value?.row_templates;const o=s.error.value;o?n(o):(i=(i||[]).map(a=>{try{if(!a?.content)return null;const c=JSON.parse(a.content);return c.content&&c.content.columns&&!c.columns&&(c.columns=c.content.columns,c.content.container&&(c.container=c.content.container),delete c.content),{metadata:{name:a.name||c.name||"Untitled",category:"Headers"},...c}}catch(c){return console.warn("Failed to parse row template:",a?.name,c),null}}).filter(Boolean),t(i))}).catch(s=>{n(s)})})},fetchAllTeamCategories(){return new Promise((e,t)=>{Y(K()+"team/category",{method:"GET"},"$LcW58zUvKj").then(n=>{let s=n.data.value;const i=n.error.value;i?t(i):(this.setResource({resource:"teamCategories",value:s}),jg.teamCategories,e(s))}).catch(n=>{t(n)})})},fetchBeeCatalogTemplates(e,t,n,s){return new Promise((i,o)=>{const a={method:"GET",query:{search:e,page:t,template_type:n,category:s}};Y(K()+"team/bee/catalog/templates",a,"$qeUx9uNCcz").then(c=>{const u=c.data.value,h=c.error.value;h?o(h):i(u)}).catch(c=>{o(c)})})},fetchCompleteBeeCatalogTemplateById(e){return new Promise((t,n)=>{const s={method:"GET"};Y(K()+"team/bee/catalog/templates/"+e,s,"$0kma2ELe42").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):(o.json_data=JSON.stringify(o.json_data),t(o))}).catch(i=>{n(i)})})},fetchBeeCatalogCategories(e,t){return new Promise((n,s)=>{const i={method:"GET",query:{search:e,page:t}};Y(K()+"team/bee/catalog/categories",i,"$ZX8criduXc").then(o=>{const a=o.data.value,c=o.error.value;c?s(c):n(a)}).catch(o=>{s(o)})})},fetchBeeCatalogCategoryCounts(e,t="email"){return new Promise((n,s)=>{const i={method:"GET",query:{parent:e,template_type:t}};Y(K()+"team/bee/catalog/categories/counts",i,"$gWb9OfaBru").then(o=>{const a=o.data.value,c=o.error.value;c?s(c):n(a)}).catch(o=>{s(o)})})},generateSubjectLines({keywords:e}){return new Promise((t,n)=>{const s={method:"POST",body:{subjectLineKeywords:e}};Y(K()+"suggestion/subject",s,"$oAGjvnxjBz").then(i=>{const o=i.error.value;if(o)n(o);else{const a=i.data.value?.subjectLines;t(a)}}).catch(i=>{n(i)})})},fetchTeamRevenueStats({integrationType:e,from:t,to:n}){const s=Ie();return new Promise((i,o)=>{const a=s.$state?.currentTeam?.id??"",c={method:"GET",query:{integrationType:e,from:t,to:n}};Y(`${K()}account/team/${a}/revenue`,c,"$U4e8KqpNVN").then(u=>{const h=u.data.value,m=u.error.value;m?o(m):i(h)}).catch(u=>{o(u)})})},fetchTeamNewsletterRevenueStats({integrationType:e,offset:t,limit:n,search:s}){const i=Ie();return new Promise((o,a)=>{const c=i.$state?.currentTeam?.id??"",u={method:"GET",query:{integrationType:e,offset:t,limit:n}};Y(`${K()}account/team/${c}/newsletter/revenue`,u,"$mH7F2ivsFF").then(h=>{const m=h.data.value,_=h.error.value;_?a(_):o(m)}).catch(h=>{a(h)})})},updateShortcutKeys({shortcuts:e}){const t=Ie();return new Promise((n,s)=>{const i={method:"PUT",body:{shortcuts:JSON.stringify(e)}};Y(K()+"team/member/shortcuts/"+t.authInfo.member.id,i,"$VIlSTkD30b").then(o=>{const a=o.data.value,c=o.error.value;c?s(c):(this.shortCutkeys=JSON.stringify(e),n(a))}).catch(o=>{s(o)})})},getShortcutKeys(){const e=Ie();return new Promise((t,n)=>{const s={method:"GET"};Y(K()+"team/member/shortcuts/"+e.authInfo.member.id,s,"$pK1P4cDLyo").then(i=>{const o=i.data.value,a=i.error.value;if(a)n(a);else{const c=o.shortcuts;this.shortCutkeys=c===""?JSON.stringify(rv):c,t(o)}}).catch(i=>{n(i)})})},getTablePreferences({force:e=!1}={}){if(dt())return this.tablePreferencesLoaded=!0,Promise.resolve(this.tablePreferences||"{}");if(this.tablePreferencesLoaded&&!e)return Promise.resolve(this.tablePreferences);const t=Ie();return new Promise((n,s)=>{Y(K()+"team/member/table-preferences/"+t.authInfo.member.id,{method:"GET"},"$OSPQPhww3n").then(i=>{const o=i.data.value,a=i.error.value;if(a)s(a);else{const c=o.tablePreferences;this.tablePreferences=c&&c!==""?c:"{}",this.tablePreferencesLoaded=!0,n(this.tablePreferences)}}).catch(i=>{s(i)})})},ablyTablePreferencesUpdate(e){typeof e!="string"||e===""||(this.tablePreferences=e,this.tablePreferencesLoaded=!0)},updateTablePreferences({table:e,columnKeys:t}){const n=Ie();let s={};
983try{s=JSON.parse(this.tablePreferences||"{}"),(s===null||typeof s!="object"||Array.isArray(s))&&(s={})}catch{s={}}s[e]=t;const i=JSON.stringify(s);return this.tablePreferences=i,dt()?Promise.resolve({tablePreferences:i}):new Promise((o,a)=>{Y(K()+"team/member/table-preferences/"+n.authInfo.member.id,{method:"PUT",body:{tablePreferences:i}},"$Ql7XiIhixT").then(c=>{const u=c.error.value;u?a(u):o(c.data.value)}).catch(c=>{a(c)})})},async getNotificationEvents({offset:e=0,limit:t=20,append:n=!1}={}){const s=Ie();if(dt()){const{getSampleNotifications:i}=await st(async()=>{const{getSampleNotifications:o}=await import("./DTN612Cl.js");return{getSampleNotifications:o}},[],import.meta.url);return s.setResource({resource:"notificationLoading",value:!0}),new Promise(o=>{setTimeout(()=>{const a=i({offset:e,limit:t});if(n&&s.$state.notificationEvents){const c=s.$state.notificationEvents||[];s.setResource({resource:"notificationEvents",value:[...c,...a]})}else s.setResource({resource:"notificationEvents",value:a}),s.setResource({resource:"notificationOffset",value:0});s.setResource({resource:"notificationOffset",value:e+a.length}),s.setResource({resource:"notificationHasMore",value:a.length===t}),s.setResource({resource:"notificationLoading",value:!1}),o(a)},100)})}return new Promise((i,o)=>{s.setResource({resource:"notificationLoading",value:!0});const a={method:"GET",query:{offset:e,limit:t}};Y(K()+"team/notification",a,"$0jmFxnfh0O").then(c=>{const u=c.data.value,h=c.error.value;if(s.setResource({resource:"notificationLoading",value:!1}),h)o(h);else{if(n&&s.$state.notificationEvents){const m=s.$state.notificationEvents||[];s.setResource({resource:"notificationEvents",value:[...m,...u]})}else s.setResource({resource:"notificationEvents",value:u}),s.setResource({resource:"notificationOffset",value:0});s.setResource({resource:"notificationOffset",value:e+u.length}),s.setResource({resource:"notificationHasMore",value:u.length===t}),i(u)}}).catch(c=>{s.setResource({resource:"notificationLoading",value:!1}),o(c)})})},loadMoreNotifications(){const e=Ie();return e.$state.notificationLoading||!e.$state.notificationHasMore?Promise.resolve([]):e.getNotificationEvents({offset:e.$state.notificationOffset,limit:20,append:!0})},fetchApiKeyInfo(){return new Promise((e,t)=>{const n={method:"GET"};Y(K()+"team/api-key/info",n,"$jF9TkpY3vJ").then(s=>{const i=s.data.value,o=s.error.value;o?t(o):e(i)}).catch(s=>{t(s)})})},regenerateApiKey(){return new Promise((e,t)=>{const n={method:"POST"};Y(K()+"team/api-key/regenerate",n,"$x6tCIm7TDH").then(s=>{const i=s.data.value,o=s.error.value;o?t(o):e(i)}).catch(s=>{t(s)})})},async fetchBeeAuthToken(e="email"){const t=Ie();return new Promise((n,s)=>{const i=t.$state?.currentTeam?.id;if(!i){s(new Error("Team ID not found"));return}const o={method:"POST",headers:{"Content-Type":"application/json"}};Y(K()+`team/${i}/proxy/bee-auth?type=${e}`,o,"$Xmz45WPpnT").then(a=>{const c=a.data.value,u=a.error.value;if(u)console.error("BeeAuth error:",u),s(u);else{const h=JSON.parse(JSON.stringify(c));n(h)}}).catch(a=>{console.error("BeeAuth fetch error:",a),s(a)})})}}}),$L="User does not exist or password is incorrect.",WL="Invalid credentials.",zL="Unable to sign in. Please try again.",VL="This email is already registered.",qL="Please complete the captcha to continue.",jL="Captcha verification failed. Please reload the page and try again.",KL="Registration failed. Please try again.",YL="Please sign up with your work email. Free or personal email providers (Gmail, Yahoo, Outlook, etc.) aren't supported.",XL="If an account exists for this email, a reset link has been sent.",PO="Invitation link has expired. Please request a new one.",NO="Account access denied. Please contact support.",JL="Password updated. Please sign in with your new password.",QL="Please enter a valid email address.",ZL="New password and confirmation do not match.",eD="Please fill in all required fields.",tD="First name is required.",nD="Please select an industry.",sD="Please select a list size.",iD="Subdomain is required.",oD="Subdomain must be 63 characters or less.",rD="Subdomain cannot contain spaces.",aD="Subdomain can only contain lowercase letters, numbers, and hyphens.",lD="Subdomain cannot contain consecutive hyphens.",cD="Subdomain cannot start or end with a hyphen.",dD="Please select at least one goal.",uD="Please select where you're coming from.",pD="Column already mapped. Please select a different c
983olumn.",hD="Duplicate column mapping detected.",fD="Email column mapping is required to import contacts.",gD="Please select a CSV file.",mD="Please select an image file.",yD="File size must be less than 300MB.",_D="Image size must be less than 10MB.",bD="Avatar updated successfully.",vD="Unable to update avatar. Please try again.",SD="Unable to update password. Please try again.",ED="Current password is incorrect.",wD="Verification email sent successfully.",TD="Unable to send verification email.",CD="Team name is required.",AD="Team created successfully.",RD="Unable to create team. Please try again.",xD="Team deleted successfully.",ID="Cannot delete team from a different account.",OD="This team has an active subscription. Please cancel your subscription before deleting the team. Contact support for assistance.",kD="Unable to delete team. Please try again.",MD="Unable to switch teams. Please try again.",PD="No teams available.",ND="No team selected.",LD="Your workspace was switched in another tab. You've been taken to the dashboard to keep everything in sync.",DD="Template name is required.",GD="Template content is required.",UD="Unable to create template.",FD="Unable to update template.",BD="A template with this name already exists.",HD="Unable to load template.",$D="Row saved successfully.",WD="Test email sent successfully.",zD="Unable to send test email. Please try again.",VD="Drip sequence preview sent to your inbox.",qD="Unable to send drip preview.",jD="Campaign template saved successfully.",KD="Unable to save campaign.",YD="Saving template.",XD="Unable to delete drip campaign.",JD="Drip campaign archived successfully.",QD="An error occurred while archiving drip campaign.",ZD="Drip campaign unarchived successfully.",eG="An error occurred while unarchiving drip campaign.",tG="Auto-trigger campaign archived successfully.",nG="An error occurred while archiving auto-trigger campaign.",sG="Auto-trigger campaign unarchived successfully.",iG="An error occurred while unarchiving auto-trigger campaign.",oG="Workflow updated successfully.",rG="Workflow archived successfully.",aG="An error occurred while archiving workflow.",lG="Workflow unarchived successfully.",cG="An error occurred while unarchiving workflow.",dG="Automation updated successfully.",uG="Unable to update automation.",pG="Unable to delete automation.",hG="Automation archived successfully.",fG="An error occurred while archiving automation.",gG="Automation unarchived successfully.",mG="An error occurred while unarchiving automation.",yG="Bulk action is re-created successfully and is being executed",_G="Unable to re-execute bulk action.",bG="Bulk action archived successfully.",vG="Unable to archive bulk action.",SG="Bulk action is still running and cannot be archived.",EG="Bulk action unarchived successfully.",wG="Unable to unarchive bulk action.",TG="Each dropdown and checkbox option must have a tag assigned. Please assign a tag to all options before continuing.",CG="Bar templates only support the email field. Other fields have been removed.",AG="Survey created successfully.",RG="Unable to create survey.",xG="Survey updated successfully.",IG="Unable to update survey.",OG="Survey archived successfully.",kG="Unable to archive survey.",MG="Survey unarchived successfully.",PG="Unable to unarchive survey.",NG="Survey status updated.",LG="Unable to update survey status.",DG="Survey duplicated successfully.",GG="Unable to duplicate survey.",UG="Please enter a survey name.",FG="Survey URL copied to clipboard.",BG="Embed code copied to clipboard.",HG="Please add at least one field to the survey.",$G="Contact deleted successfully.",WG="Unable to delete contact.",zG="Unable to search for contact.",VG="Search in progress. Please wait.",qG="Unable to import contacts.",jG="Unable to create custom field.",KG="Custom field created successfully.",YG="Custom event created successfully.",XG="Custom event updated successfully.",JG="Custom event property created successfully.",QG="Custom event property updated successfully.",ZG="File uploaded successfully.",eU="Unable to upload file. Please try again.",tU="No file selected.",nU="File downloaded successfully.",sU="Unable to download file.",iU="Invalid download link.",oU="Image uploaded successfully.",rU="Unable to upload image. Please try again.",aU="Entity created successfully.",lU="Post saved as draft.",cU="Unable to save draft.",dU="Post name is required.",uU="Post title is required.",pU="Post description is required.",hU="Author name is required.",fU="Post category is required.",gU="At least one tag is required.",mU="Post path is required.",yU="Unable to submit post.",_U="Shortcuts reset to default.",bU="Unable to reset shortcuts.",vU="Shortcuts updated successfully.",SU="Unable to update shortcuts.",EU="Duplicate shortcut detected.",wU="Unable to load account data. Please refresh the page.",TU="Upgrade successful.",CU="Payment failed.",AU="A/B test campaign unarchived successfully.",RU="Unable to unarchive A/B test campaign.",xU="Please fill in all required fields.",IU="Please check all fields.",OU="Please add a tag.",kU="Please add URL text.",MU="Please select one or more products.",PU="Please select a design to proceed.",NU="Please select a type.",LU="Cannot map the same column multiple times.",DU="You have mapped the same column multiple times.",GU="Custom fields not mapped properly.",UU="Please enter an email address.",FU="Please enter a valid email address.",BU="Email already entered.",HU="Please enter a valid contact email address.",$U="Email does not contain the entered domain.",WU="Please enter a valid domain.",zU="Please provide a different set of keywords or try again later.",VU="An error occurred while validating your campaign. Please select campaign sender.",qU="An error occurred while validating your campaign. Empty content not acceptable.",jU="Custom field name cannot be empty.",KU="This field name is reserved for system use. Please choose a different name.",YU=["email","firstname","lastname","company","name"],XU="Custom field name can only contain letters, numbers, and underscores.",JU="Landing page name cannot be empty.",QU="Newsletter subject cannot be empty.",ZU="Newsletter name cannot be empty.",e2="An error occurred while deleting team.",t2="An error occurred while updating template.",n2="An error occurred while deleting template.",s2="An error occurred while exporting contacts. Please try again.",i2="Error saving workflow.",o2="Error updating workflow.",r2="Unable to delete workflow.",a2="Error: Unable to copy workflow.",l2="Error copying campaign heatmap share url.",c2="An error occurred while updating list.",d2="An error occurred while updating tag.",u2="An error occurred while exporting tag contacts.",p2="Error occur while updating segment.",h2="Error exporting segment contacts.",f2="An error occurred while creating segment.",g2="An error occurred while deleting the contact.",m2="Contact unsuppressed successfully.",y2="An error occurred while unsuppressing the contact.",_2="Contacts have been unsuppressed successfully.",b2="An error occurred while unsuppressing contacts.",v2="Error while uploading file. Please try again.",S2="Error copying campaign heatmap share url.",E2="An error occurred while updating your default timezone. Please try again.",w2="An error occurred while subscribing the contact. Please try again.",T2="An error occurred while deleting drip campaigns.",C2="An error occurred while deleting RSS campaigns.",A2="Error creating a new sender.",R2="Failed to create entity.",x2="Couldn't load templates. Please try again.",I2="Error submitting landing page.",O2="Error setting as Warmup Template.",k2="Warmup template is created and is being validated.",M2="Error: Unable to resend to unopeners.",P2="An error occurred while checking status.",N2="Error copying record text.",L2="Error updating automation.",D2="Invitation request failed!",G2="Error loading RSS preview.",U2="An error occurred while validating your campaign. Missing campaign subject.",F2="An error occurred while deleting campaigns.",B2="An error occurred while deleting campaign.",H2="An error occurred while deleting auto trigger campaigns.",$2="An error occurred while deleting A/B test campaign.",W2="Error: Unable to export campaigns.",z2="Newsletters exported for selected date range. You'll receive an email with exported stats.",V2="Error: Unable to fetch campaign details.",q2="Error: Unable to pause the campaign.",j2="Campaign paused successfully.",K2="Error while saving auto triggered campaign.",Y2="Error saving A/B test campaign.",X2="Error saving rss campaign.",J2="Error submitting drip campaign.",Q2="Error updating drip campaign.",Z2="Error copying a/b test campaign heatmap share url.",eF="An error occurred while creating your popup. Please ensure that all the mandatory fields have been filled before submitting again.",tF="An error occurred while creating your embedded form. Please ensure that all the mandatory fields have been filled before submitting again.",nF="An error occurred while creating a team.",sF="You have reached the limit of maximum teams in a account",iF="Some An error occurred while sending SendX Site Code snippet instructions to teammate.",oF="An error occurred while deleting contacts.",rF="An error occurred while unsubscribing the contact. Please try again.",aF="Error exporting tag contacts.",lF="An error occurred while deleting the contact.",cF="An error occurred while exporting list contacts.",dF="Error importing contacts.",uF="An error occurred while deleting lists.",pF="An error occurred while deleting list.",hF="An error occurred while creating list.",fF="An error occurred while deleting tags.",gF="An error occurred while deleting tag.",mF="Error: A tag with this name already exists. Please enter a different name.",yF="An error occurred while creating tag.",_F="Error deleting segments.",bF="An error occurred while deleting segment.",vF="Error updating sender.",SF="An error occurred while adding custom domain.",EF="An error occurred while sending the test email. Please try again.",wF="Error creating new custom field.",TF="An error occurred while deleting custom field.",CF="Error updating Custom Fields.",AF="Team created successfully.",RF="Team deleted successfully.",xF="Invitation revoked successfully.",IF="Invitation resent successfully.",OF="Member deleted successfully.",kF="Member role updated successfully.",MF="Failed to update member role.",PF="Cannot change owner role.",NF="You don't have permission to update member roles.",LF="Only the owner can change an admin's role.",DF="Template updated successfully.",GF="Template deleted successfully.",UF="Home page successfully updated!",FF="Test email sent successfully.",BF="Campaign saved successfully.",HF="Campaign updated successfully.",$F="Campaign saved as draft successfully.",WF="A/B Test Campaign saved as draft successfully.",zF="A/B test template saved successfully.",VF="Drip Step template saved succesfully!",qF="Drip step heatmap share url copied.",jF="Auto trigger campaign saved as draft successfully.",KF="AutoTrigger Campaign heatmap share url copied.",YF="RSS campaign saved successfully.",XF="RSS campaign saved as draft successfully.",JF="Heatmap share url copied.",QF="Please choose a send time for this schedule.",ZF="Campaign heatmap share url copied.",eB="Export Success! Contact data will be sent to your email.",tB="Workflow saved as draft successfully.",nB="Workflow saved successfully.",sB="Workflows have been deleted successfully.",iB="Node successfully copied.",oB="Automation submitted successfully.",rB="Automation deleted successfully.",aB="Automations have been deleted successfully.",lB="Popup created successfully!",cB="Popup updated successfully!",dB="Embedded form created successfully!",uB="Embedded form updated successfully!",pB="Landing page successfully submitted.",hB="Landing page successfully updated.",fB="Popup status changed successfully!",gB="Embedded status changed successfully!",mB="Popup deleted successfully!",yB="Popups have been deleted Successfully!",_B="Embedded Form deleted successfully!",bB="Embedded Forms deleted Successfully!",vB="Landing Page deleted successfully!",SB="Landing Pages have been deleted Successfully!",EB="Div copied successfully!",wB="Script copied successfully!",TB="HTML copied successfully!",CB="CSS copied successfully!",AB="List created successfully.",RB="List splitted successfully.",xB="Segment updated successfully.",IB="Segment created successfully.",OB="Contact created successfully.",kB="Contact updated successfully.",MB="Contact deleted successfully.",PB="Custom field deleted successfully.",NB="File uploaded successfully.",LB="Script copied successfully!",DB="Sender details have been successfully updated!",GB="Default sender successfully updated!",UB="Domain verification successful.",FB="Successfully exported domain records.",BB="Domain removed successfully.",HB="Successfully fetched sending domain authentication records.",$B="Post status changed successfully!",WB="Post deleted successfully!",zB="Blogs have been deleted Successfully!",VB="Post published successfully.",qB="Successfully deleted integration.",jB="Added integration successfully.",KB="Update integration details successfully.",YB="Webhook deleted successfully.",XB="Default timezone updated successfully.",JB="Newsletter publish status successfully updated.",QB="Default unsubscribe footer successfully updated!",ZB="Default email editor type successfully updated.",e4="Company information have been successfully updated!",t4="Segment updated successfully.",n4="Image Uploaded Successfully!",s4="Node successfully deleted.",i4="Drip Campaign deleted successfully.",o4="Drip Campaigns have been deleted successfully.",r4="RSS Campaign deleted successfully.",a4="RSS Campaigns have been deleted successfully.",l4="Sender created successfully.",c4="Blog design updated successfully!",d4="Bulk action created successfully and is being executed.",u4="Automation updated successfully.",p4="Invitation sent successfully!",h4="Campaigns have been deleted successfully.",f4="Campaign deleted successfully.",g4="A/B test campaign saved successfully.",m4="Rss Campaign saved successfully.",y4="Auto Trigger Campaign saved successfully.",_4="Contacts have been deleted successfully.",b4="Lists have been deleted successfully.",v4="List deleted successfully.",S4="List updated successfully.",E4="Tags have been deleted successfully.",w4="Tag deleted successfully.",T4="Tag created successfully.",C4="Tag updated successfully.",A4="Segments have been deleted successfully.",R4="Segment deleted successfully.",x4="Sender updated successfully.",I4="Custom domain added successfully.",O4="Custom Field created successfully.",k4="Custom Field updated successfully.",M4="C
983ampaign name cannot be empty.",P4="Campaign subject cannot be empty.",N4="Campaign subject cannot be empty.",L4="Recipient contacts cannot be empty.",D4="An error occurred while updating campaign.",G4="Error saving campaign.",U4="You have exceeded the email limit. Saving A/B test campaign as draft since your account is not verified.",F4="Error while saving template.",B4="Unable to copy A/B test campaign.",H4="Unable to fetch A/B test campaign details.",$4="Drip campaign name cannot be empty.",W4="Drip campaign sender not selected.",z4="You have exceeded the email limit. Pausing drip campaign since your account is not verified.",V4="Error updating drip status.",q4="Error: Unable to copy Drip campaign.",j4="Error: Unable to fetch drip campaign details.",K4="Error while saving drip step template.",Y4="Error copying drip step heatmap share url.",X4="Error saving auto trigger campaign.",J4="Error: Unable to copy auto trigger campaign.",Q4="Error: Unable to fetch auto trigger campaign details.",Z4="Error copying autotrigger campaign heatmap share url.",e3="Error while saving campaign.",t3="Error saving RSS campaign.",n3="Error updating RSS campaign status.",s3="Error: Unable to copy RSS campaign.",i3="Error: Unable to fetch RSS campaign details.",o3="Error copying heatmap share url.",r3="Generating your file. Redirecting shortly!",a3="Error while generating report. Please try again!",LO=e=>`Shareable report is ready${e?` for ${e}`:""}. Available from the notification bell.`,l3="You have exhaused the email limit. Saving campaign as draft since your account is not verified.",c3="Please select campaign sender.",d3="An error occurred while deleting RSS campaign.",u3="Auto Trigger Campaigns have been deleted successfully.",p3="Auto Trigger Campaign deleted successfully.",h3="A/B Test Campaign deleted successfully.",f3="Campaign template saved succesfully!",g3="Auto Triggered Campaign template saved succesfully!",m3="ABTest Campaign heatmap share url copied.",y3="Popup name cannot be empty.",_3="Embedded form name cannot be empty.",b3="Landing page name cannot be empty.",v3="Failed to update embedded form.",S3="Error updating landing page.",E3="Failed to change popup status!",w3="Failed to change embedded status!",T3="Failed to delete popup.",C3="An error occurred while deleting embedded form.",A3="An error occurred while deleting landing page.",R3="Error: Unable to copy embeded form.",x3="Error: Unable to copy landing page.",I3="Error: Unable to fetch landing page details.",O3="Please provide correct domain. e.g., myaccount.freshdesk.com.",k3="Form type not selected.",M3="Failed to change embedded form status!",P3="Failed to update popup!",N3="Failed to change post status!",L3="Failed to delete post.",D3="Error while publishing post.",G3="Error: Unable to copy campaign.",U3="Post author cannot be empty.",F3="This team has an active subscription. Please cancel your subscription before deleting.",B3="Deleting team from different account not allowed.",H3="Team name cannot be empty.",$3="Contact email cannot be empty.",W3="Enter valid email address.",z3="Contact already exists.",V3="Preview contact not selected.",q3="We are exporting your tag contacts. Once completed you will get an email with a link to download them.",j3="We are exporting your Segment contacts. Once completed you will get an email with a link to download them.",K3="We are exporting your List contacts. Once completed you will get an email with a link to download them.",Y3="Looks like you have exceeded send invitation limit of 50 invitations per day. Contact support at [email protected] for any help.",X3="You need to map email column to import contacts!",J3="List name cannot be empty.",Q3="List already exist.",Z3="Please select or create a list.",eH="Error exporting list contacts.",tH="This domain is not verified yet. Verify DKIM, Return Path and DMARC under Settings > Domains, then add the sender.",nH="The demo sending domain cannot be used for your own senders. Add and verify your own domain first.",sH="An error occurred while fetching sending domain authentication records.",iH="Sending domain authentication for public domain not allowed.",oH="This domain is already in your sending domains list.",rH="An error occurred while generating sending domain authentication records.",aH="Please select a list.",lH="Sending domain authentication instruction email sent successfully.",cH="Your sending domain authentication records have been generated successfully.",dH="We are exporting your Tag contacts. Once completed you will get an email with a link to download them.",uH="Tag name cannot be empty.",pH="Error occurred while copying segment.",hH="Segment with given name already exists. Please give a different name.",fH="Segment name cannot be empty.",gH="Segment condition cannot be empty.",mH="Unable to update segment.",yH="Unable to export segment contacts.",_H="An error occurred while updating Sender details.",bH="An error occurred while updating default sender.",vH="Sender for thankyou email not selected!",SH="Sender for confirmation email not selected!",EH="Name cannot be empty.",wH="Please enter a valid email.",TH="Please make sure to use lowercase letters for sender email.",CH="Please select newsletter sender.",AH="Please select spread sending duration. Spread sending duration should be between 1 and 168 hours.",RH="Sender archived successfully.",xH="An error occurred while archiving sender.",IH="Sender unarchived successfully.",OH="An error occurred while unarchiving sender.",kH="Campaign archived successfully.",MH="An error occurred while archiving campaign.",PH="Campaign unarchived successfully.",NH="An error occurred while unarchiving campaign.",LH="
983Campaigns archived successfully.",DH="An error occurred while archiving campaigns.",GH="Domain verification failed.",UH="An error occurred while export domain records, try again later.",FH="Unable to delete domain. Please try again or contact support.",BH="Generating TXT record for your domain, this takes a few minutes.",HH="An error occurred while generating google postmaster records, try again later.",$H="An error occurred while sending domain verification email.",WH="An error occurred while fetching domains. Try reloading the page again.",zH="Subdomain cannot be empty.",VH="Subdomain cannot exceed 63 characters.",qH="Subdomain cannot contain spaces.",jH="Subdomain can only contain lowercase letters, numbers, and hyphens.",KH="Subdomain cannot contain consecutive hyphens.",YH="Subdomain cannot start or end with a hyphen.",XH="Your domain verification email is sent out. Please check your email.",JH="This domain is blocked by the SendX team due to risks. Reach out to support to understand more.",QH="File not uploaded yet.",ZH="Please select a CSV file.",e5="Please select a image.",t5="Image size exceeds 10MB limit.",n5="File size exceeds 10MB limit.",s5="File size exceeds 300MB limit.",i5="An error occurred while getting contact by email.",o5="Saving template.",r5="Thankyou email subject cannot be empty!",a5="Confirmation email subject cannot be empty!",l5="We are still fetching results of your last search.",c5="Please enter an email.",d5="Please enter a valid email address.",u5="Please enter a valid reply to email.",p5="Ensure that every line contains: email, FirstName, LastName. The current content seems to have some issues.",h5="Custom field name cannot be empty.",f5="Failed to create custom field.",g5="Error creating new Custom Field.",m5="Please enter a valid feed URL.",y5="Record text copied.",_5="Please check all fields.",b5="Please enter a name.",v5="Please enter number greater than zero.",S5="Invitation already exists.",E5="An error occurred while updating home page.",w5="Error loading home page preview.",T5="Please give a name to the workflow.",C5="Workflow update failed.",A5="Please complete all the steps to save the workflow.",R5="Please select a drip.",x5="Please select a sender before designing the email.",I5="Unable to load workflow statistics.",O5="Automation name cannot be empty.",k5="Error submitting automation.",M5="Failed to change automation status!",P5="Triggers not selected properly.",N5="Trigger link text cannot be empty.",L5="Trigger option not selected properly.",D5="Trigger page URL cannot be empty.",G5="Actions not selected properly.",U5="Action link text cannot be empty.",F5="Action option not selected properly.",B5="Action send duration selected should be greater than zero.",DO=e=>`Import started for list${e?" "+e:""}. Click on the bell icon for more details.`,GO=e=>`Import completed for list${e?" "+e:""}. Click on the bell icon for more details.`,UO=e=>`Import started for tag${e?" "+e:""}. Click on the bell icon for more details.`,FO=e=>`Import completed for tag${e?" "+e:""}. Click on the bell icon for more details.`,BO=e=>`Export started for segment${e?" "+e:""}. Click on the bell icon for more details.`,HO=e=>`Export completed for segment${e?" "+e:""}. Click on the bell icon for more details.`,$O=e=>`Export started for list${e?" "+e:""}. Click on the bell icon for more details.`,WO=e=>`Export completed for list${e?" "+e:""}. Click on the bell icon for more details.`,zO=e=>`Export started for tag${e?" "+e:""}. Click on the bell icon for more details.`,VO=e=>`Export completed for tag${e?" "+e:""}. Click on the bell icon for more details.`,qO=e=>`Export started for campaign${e?" "+e:""}. Click on the bell icon for more details.`,jO=e=>`Export completed for campaign${e?" "+e:""}. Click on the bell icon for more details.`,KO=e=>`Bulk action ${e} started. Click on the bell icon for more details.`,YO=e=>`Bulk action ${e} completed. Click on the bell icon for more details.`,XO=e=>`Bulk action ${e} failed. Click on the bell icon for more details.`,JO=()=>"MX segment scan started. Click on the bell icon for more details.",QO=()=>"MX segment scan completed. Click on the bell icon for more details.",ZO=()=>"MX segment scan failed. Click on the bell icon for more details.",Kg=e=>`Threat check started${e?" for "+e:""}. Click on the bell icon for more details.`,Yg=e=>`Threat check completed${e?" for "+e:""}. Click on the bell icon for more details.`,Xg=e=>`Threat check failed${e?" for "+e:""}. Click on the bell icon for more details.`,Jg=e=>`Suppression import started${e?" for "+e:""}. Click on the bell icon for more details.`,Qg=e=>`Suppression import completed${e?" for "+e:""}. Click on the bell icon for more details.`,Zg=e=>`Suppression import failed${e?" for "+e:""}. Click on the bell icon for more details.`,em=e=>`Addon ${e} enabled.`,tm=e=>`Addon ${e} disabled.`,ek=e=>`Push to Meta Custom Audience started for tag${e?" "+e:""}. Click on the bell icon for more details.`,tk=e=>`Push to Meta Custom Audience completed for tag${e?" "+e:""}. Click on the bell icon for more details.`,nk=e=>`Push to Meta Custom Audience failed for tag${e?" "+e:""}. Click on the bell icon for more details.`,sk=e=>`Push to Meta Custom Audience started for list${e?" "+e:""}. Click on the bell icon for more details.`,ik=e=>`Push to Meta Custom Audience completed for list${e?" "+e:""}. Click on the bell icon for more details.`,ok=e=>`Push to Meta Custom Audience failed for list${e?" "+e:""}. Click on the bell icon for more details.`,rk=e=>`Push to Meta Custom Audience started for segment${e?" "+e:""}. Click on the bell icon for more details.`,ak=e=>`Push to Meta Custom Audience completed for segment${e?" "+e:""}. Click on the bell icon for more details.`,lk=e=>`Push to Meta Custom Audience failed for segment${e?" "+e:""}. Click on the bell icon for more details.`,nm=(e,t)=>{const n=e?`"${e}"`:"A domain",s=t?` (${t})`:"";return`${n} verification failed${s}. Email sending paused for this domain. Re-verify to resume.`},H5=e=>`${e} unsubscribed successfully.`,$5=e=>`${e} subscribed successfully.`,W5=e=>`${e} created successfully.`,z5=e=>`${e} updated successfully.`,V5=e=>`Please add a Subject at ${e} Drip Step.`,q5=e=>`Empty content at ${e} Drip Step not acceptable.`,j5=e=>`Drip campaign can only be sent to ${e} contacts since your account is not yet upgraded..`,K5=e=>`${e} drip status updated.`,Y5=e=>`${e} RSS campaign status updated.`,X5=e=>`Campaign can only be sent to ${e} contacts since your account is not yet upgraded..`,J5=e=>`ABTest campaign can only be sent to ${e} contacts since your account is not yet upgraded..`,Q5=(e,t)=>`Error creating ${e} : ${t}`,Z5="Campaign cannot be scheduled in the past. Please select a future date and time.",e$="Email does not exist in y
983our contacts.",t$="Please enter valid values for contact's info.",n$="Row name cannot be empty.",s$="Custom domain linked successfully.",i$="Custom domain not linked.",o$="This contact could not be loaded. It may have been deleted.",r$="We could not reach your domain's nameservers. Check that the domain is registered and its DNS has propagated.",a$="Custom event names cannot have spaces in between.",l$="Property cannot have spaces in between.",c$="Please provide at least one email address.",d$="An error occurred while revoking the invitation.",u$="An error occurred while resending the invitation.",p$="An error occurred while deleting the member.",h$="An error occurred while creating a bulk action.",f$="Custom event property name cannot be empty.",g$="Error creating new custom event property.",m$="Failed to delete integration.",y$="Error registering integration. Please check your credentials.",_$="Error updating integration. Please check your credentials.",b$="Error deleting webhook.",v$="Please enter a valid URL.",S$="Coupon name cannot be empty.",E$="Coupon start date cannot be empty.",w$="Coupon end date cannot be empty.",T$="An error occurred while updating newsletter publish status.",C$="Setting up Global unsubscribe link as {{.GlobalUnsubscribeLink}} is mandatory.",A$="Setting up company address as {{.Address}} is mandatory.",R$="An error occurred while updating default unsubscribe footer.",x$="An error occurred while updating default email editor type.",I$="An error occurred while updating company information.",O$="Please select a Image file.",k$="Rule fields cannot be empty.",M$="Drip start date not selected.",P$="Failed to update blog design.",ck=e=>`Campaign${e?" "+e:""} is under review. Click on the bell icon for more details.`,dk=e=>`Campaign${e?" "+e:""} has been approved and is now scheduled.`,uk=e=>`Campaign${e?" "+e:""} was not approved based on content risk.`,pk=e=>`List${e?" "+e:""} is under review. Click on the bell icon for more details.`,hk=e=>`List${e?" "+e:""} has been approved.`,fk=e=>`List${e?" "+e:""} was not approved based on content risk.`,gk=e=>`Drip step${e?" for "+e:""} is under review. Click on the bell icon for more details.`,mk=e=>`Drip step${e?" for "+e:""} has been approved.`,yk=e=>`Drip step${e?" for "+e:""} was not approved based on content risk.`,_k=e=>`Workflow email${e?" for "+e:""} is under review. Click on the bell icon for more details.`,bk=e=>`Workflow email${e?" for "+e:""} has been approved.`,vk=e=>`Workflow email${e?" for "+e:""} was not approved based on content risk.`,Sk=e=>`RSS feed${e?" "+e:""} is under review. Click on the bell icon for more details.`,Ek=e=>`RSS feed${e?" "+e:""} has been approved by admin. Please confirm to send.`,wk=e=>`RSS feed${e?" "+e:""} was not approved based on content risk.`,N$="Unable to download image. Please try another.",L$="Transactional Email add-on can't be purchased directly. Please contact support.",D$="Please contact your admin to purchase this addon.",G$="List archived successfully.",U$="An error occurred while archiving list.",F$="List unarchived successfully.",B$="An error occurred while unarchiving list.",H$="Tag archived successfully.",$$="An error occurred while archiving tag.",W$="Tag unarchived successfully.",z$="An error occurred while unarchiving tag.",V$="Segment archived successfully.",q$="An error occurred while archiving segment.",j$="Segment unarchived successfully.",K$="An error occurred while unarchiving segment.",Y$="Drip archived instead. It has sent emails to contacts. Drip is now paused and pending emails are canceled.",X$="Workflow archived instead. It has processed contacts. Workflow is now deactivated and pending events are canceled.",J$="Automation archived instead. It has been triggered. Automation is now deactivated and pending actions are canceled.",Q$="Campaign archived instead. It has sent emails via automation and cannot be deleted.",Z$="RSS campaign archived instead. It has sent emails and cannot be deleted.",e6="RSS campaign archived successfully.",t6="An error occurred while archiving RSS campaign.",n6="RSS campaign unarchived successfully.",s6="An error occurred while unarchiving RSS campaign.",i6="Unable to archive RSS campaign. Please try again.",o6="Campaign archived instead. It has already been sent and cannot be deleted.",r6="List archived instead. It was used in campaigns that sent emails and cannot be deleted.",a6="Tag archived instead. It was used in campaigns that sent emails and cannot be deleted.",l6="Segment archived instead. It was used in campaigns that sent emails and cannot be deleted.",c6="Unable to archive. Please try again.",d6="A/B test archived instead. It has already sent emails and cannot be deleted.",u6="A/B test campaign archived successfully.",p6="Unable to archive A/B test campaign.",h6="Test email sent successfully.",f6="Unable to send test email. Please try again.",g6="Test email sending limit reached. Please try again later.",m6="Template error: ",y6="Account billing access updated.",_6="Unable to update account billing access. Please try again.",b6="Click tracking is on for new sends.",v6="Click tracking is off for new sends.",S6="Open tracking is on for new sends.",E6="Open tracking is off for new sends.",w6="Unable to update tracking settings. Please try again.",T6="Unable to load tracking settings. Please refresh the page.",C6=e=>`Your ${e} email has one or more empty or "#" links. Fix them before saving so contacts don't receive a broken button.`,A6=e=>`Open the ${e} email editor and save it before saving the list — the current content is empty.`,gl=e=>{const t=e?.fullPath;return e&&(t.includes(ve.Login)||t.includes(ve.Register)||t.includes(ve.Register2)||t.includes(ve.ResetPassword)||t.startsWith("/integrations/login")||t.startsWith("/integrations/register"))},dd=e=>e?.path===ve.TwoFactorChallenge,Tk=e=>e?.path==="/verify-email"||e?.path==="/account-access-signin",R6=async(e,t)=>{let n,s;const i=Ie(),o=gu(),{$auth:a}=yn();if(a){const c=a.currentUser,u=o.query.isAdmin==="true",h=o.query.invitation||"";if(dd(e)&&i.$state.pendingTwoFactorToken||Tk(e))return;if(c){i.globalSpinnerStart();const m=([n,s]=Yt(()=>c.getIdToken()),n=await n,s(),n),_=([n,s]=Yt(()=>i.fetchAuthInfo({token:m})),n=await n,s(),n);if(i.globalSpinnerStop(),_?.twoFactorRequired)return dd(e)?void 0:([n,s]=Yt(()=>Le(ve.TwoFactorChallenge)),n=await n,s(),n);if(h!==""&&e.path==="/"&&t.path.includes(ve.Register))return[n,s]=Yt(()=>Le(ve.MemberOnboarding)),n=await n,s(),n;if(_==="auth/member-not-found"){fl("member_not_found",{from:t?.fullPath,to:e?.fullPath});const v=i.$state.authRejectionMessage||"";[n,s]=Yt(()=>i.signOut()),await n,s(),i.setResource({resource:"authRejectionMessage",value:""});let w=o.query.invitation||"";return w!==""?(ee(PO,{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"}),[n,s]=Yt(()=>Le(ve.Login+"?invitation="+w)),n=await n,s(),n):(v!==""&&(e.path===ve.Login?ee(v,{theme:"auto",type:"error",hideProgressBar:!1,autoClose:8e3,transition:"slide"}):i.setResource({resource:"authRejectionMessage",value:v})),e.path===ve.Login?void 0:([n,s]=Yt(()=>Le(ve.Login)),n=await n,s(),n))}i.$state.authInfo?.account?.IsForbid===!0&&(fl("forbidden",{to:e?.fullPath}),[n,s]=Yt(()=>i.signOut()),await n,s(),ee(NO,{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"}));const b=i.$state.authInfo?.account?.OnboardingInfoAdded;if(!b&&!e.path.includes(ve.Onboarding))return[n,s]=Yt(()=>Le(ve.Onboarding)),n=await n,s(),n;if(i.$state.authInfo?.twoFactorSetupRequired&&!e.path.includes("/setting/security"))return[n,s]=Yt(()=>Le(ve.Setting.Security+"?enforcement=true")),n=await n,s(),n;if(i.$state.authInfo?.account?.IsLegacyBilling,i.$state.authInfo?.account?.IsLegacyBilling===!0&&e.path==="/setting/billing")return Le("/setting/billing/legacy");if(gl(e)&&!u){const v=e.query?.redirect;return typeof v=="string"&&v.startsWith("/")?([n,s]=Yt(()=>Le(v)),n=await n,s(),n):([n,s]=Yt(()=>Le(ve.Home)),n=await n,s(),n)}}else if(!gl(e)&&!dd(e)){if(e.path==="/oauth/authorize"&&e.query.client_id){const b=String(e.query.client_id),v=`/integrations/login?partner=${encodeURIComponent(b)}&redirect=${encodeURIComponent(e.fullPath)}`;return[n,s]=Yt(()=>Le(v)),n=await n,s(),n}const _=`${ve.Login}?redirect=${encodeURIComponent(e.fullPath)}`;return[n,s]=Yt(()=>Le(_)),n=await n,s(),n}}};var $=typeof window<"u"?window:void 0,_t=typeof globalThis<"u"?globalThis:$;typeof self>"u"&&(_t.self=_t),typeof File>"u"&&(_t.File=function(){});var pn=_t?.navigator,ce=_t?.document,kt=_t?.location,Iu=_t?.fetch,Ou=_t!=null&&_t.XMLHttpRequest&&"withCredentials"in new _t.XMLHttpRequest?_t.XMLHttpRequest:void 0,sm=_t?.AbortController,Ck=_t?.CompressionStream,Qt=pn?.userAgent,_e=$??{},im="1.372.5",Vt={DEBUG:!1,LIB_VERSION:im,LIB_NAME:"web",JS_SDK_VERSION:im};function om(e,t,n,s,i,o,a){try{var c=e[o](a),u=c.value}catch(h){return void n(h)}c.done?t(u):Promise.resolve(u).then(s,i)}function En(e){return function(){var t=this,n=arguments;return new Promise(function(s,i){var o=e.apply(t,n);function a(u){om(o,s,i,a,c,"next",u)}function c(u){om(o,s,i,a,c,"throw",u)}a(void 0)})}}function oe(){return oe=Object.assign?Object.assign.bind():function(e){for(var t=1;arguments.length>t;t++){var n=arguments[t];for(var s in n)({}).hasOwnProperty.call(n,s)&&(e[s]=n[s])}return e},oe.apply(null,arguments)}function lv(e,t){if(e==null)return{};var n={};for(var s in e)if({}.hasOwnProperty.call(e,s)){if(t.indexOf(s)!==-1)continue;n[s]=e[s]}return n}
983function ku(){return ku=En(function*(e,t,n){t===void 0&&(t=!0);try{var s=new CompressionStream("gzip"),i=s.writable.getWriter(),o=i.write(new TextEncoder().encode(e)).then(()=>i.close()).catch(function(){var u=En(function*(h){try{yield i.abort(h)}catch{}throw h});return function(h){return u.apply(this,arguments)}}()),a=new Response(s.readable).blob(),[c]=yield Promise.all([a,o]);return c}catch(u){if(n!=null&&n.rethrow)throw u;return t&&console.error("Failed to gzip compress data",u),null}}),ku.apply(this,arguments)}var Ak=["amazonbot","amazonproductbot","app.hypefactors.com","applebot","archive.org_bot","awariobot","backlinksextendedbot","baiduspider","bingbot","bingpreview","chrome-lighthouse","dataforseobot","deepscan","duckduckbot","facebookexternal","facebookcatalog","http://yandex.com/bots","hubspot","ia_archiver","leikibot","linkedinbot","meta-externalagent","mj12bot","msnbot","nessus","petalbot","pinterest","prerender","rogerbot","screaming frog","sebot-wa","sitebulb","slackbot","slurp","trendictionbot","turnitin","twitterbot","vercel-screenshot","vercelbot","yahoo! slurp","yandexbot","zoombot","bot.htm","bot.php","(bot;","bot/","crawler","ahrefsbot","ahrefssiteaudit","semrushbot","siteauditbot","splitsignalbot","gptbot","oai-searchbot","chatgpt-user","perplexitybot","better uptime bot","sentryuptimebot","uptimerobot","headlesschrome","cypress","google-hoteladsverifier","adsbot-google","apis-google","duplexweb-google","feedfetcher-google","google favicon","google web preview","google-read-aloud","googlebot","googleother","google-cloudvertexbot","googleweblight","mediapartners-google","storebot-google","google-inspectiontool","bytespider"],rm=function(e,t){if(t===void 0&&(t=[]),!e)return!1;var n=e.toLowerCase();return Ak.concat(t).some(s=>{var i=s.toLowerCase();return n.indexOf(i)!==-1})},Rk=["$snapshot","$pageview","$pageleave","$set","survey dismissed","survey sent","survey shown","$identify","$groupidentify","$create_alias","$$client_ingestion_warning","$web_experiment_applied","$feature_enrollment_update","$feature_flag_called"];function Ge(e,t){return e.indexOf(t)!==-1}var cc=function(e){return e.trim()},Mu=function(e){return e.replace(/^\$/,"")},cv=Object.prototype,dv=cv.hasOwnProperty,dc=cv.toString,He=Array.isArray||function(e){return dc.call(e)==="[object Array]"},ss=e=>typeof e=="function",ut=e=>e===Object(e)&&!He(e),Hi=e=>{if(ut(e)){for(var t in e)if(dv.call(e,t))return!1;return!0}return!1},fe=e=>e===void 0,ot=e=>dc.call(e)=="[object String]",Wa=e=>ot(e)&&e.trim().length===0,us=e=>e===null,Ue=e=>fe(e)||us(e),xn=e=>dc.call(e)=="[object Number]"&&e==e,Pi=e=>xn(e)&&e>0,Wn=e=>dc.call(e)==="[object Boolean]",xk=e=>e instanceof FormData,Ik=e=>Ge(Rk,e);function uv(e){return e===null||typeof e!="object"}function ml(e,t){return{}.toString.call(e)==="[object "+t+"]"}function lh(e){return typeof Event<"u"&&function(t,n){try{return t instanceof n}catch{return!1}}(e,Event)}var Ok=[!0,"true",1,"1","yes"],ud=e=>Ge(Ok,e),kk=[!1,"false",0,"0","no"];function zn(e,t,n,s,i){return t>n&&(s.warn("min cannot be greater than max."),t=n),xn(e)?e>n?(s.warn(" cannot be  greater than max: "+n+". Using max value instead."),n):t>e?(s.warn(" cannot be less than min: "+t+". Using min value instead."),t):e:(s.warn(" must be a number. using max or fallback. max: "+n+", fallback: "+i),zn(i||n,t,n,s))}class Mk{constructor(t){this.$t={},this.zt=t.zt,this.Ut=zn(t.bucketSize,0,100,t.Gt),this.Wt=zn(t.refillRate,0,this.Ut,t.Gt),this.Xt=zn(t.refillInterval,0,864e5,t.Gt)}Jt(t,n){var s=Math.floor((n-t.lastAccess)/this.Xt);s>0&&(t.tokens=Math.min(t.tokens+s*this.Wt,this.Ut),t.lastAccess=t.lastAccess+s*this.Xt)}consumeRateLimit(t){var n,s=Date.now(),i=String(t),o=this.$t[i];return o?this.Jt(o,s):this.$t[i]=o={tokens:this.Ut,lastAccess:s},o.tokens===0||(o.tokens--,o.tokens===0&&((n=this.zt)==null||n.call(this,t)),o.tokens===0)}stop(){this.$t={}}}var xa,am,pd,gn="Mobile",yl="iOS",rs="Android",co="Tablet",pv=rs+" "+co,hv="iPad",fv="Apple",gv=fv+" Watch",pr="Safari",uo="BlackBerry",mv="Samsung",yv=mv+"Browser",_v=mv+" Internet",ai="Chrome",Pk=ai+" OS",bv=ai+" "+yl,ch="Internet Explorer",vv=ch+" "+gn,dh="Opera",Nk=dh+" Mini",uh="Edge",Sv="Microsoft "+uh,Qi="Firefox",Ev=Qi+" "+yl,Mr="Nintendo",Pr="PlayStation",Zi="Xbox",wv=rs+" "+gn,Tv=gn+" "+pr,zo="Windows",Pu=zo+" Phone",lm="Nokia",Nu="Ouya",Cv="Generic",Lk=Cv+" "+gn.toLowerCase(),Av=Cv+" "+co.toLowerCase(),Lu="Konqueror",zt="(\\d+(\\.\\d+)?)",hd=new RegExp("Version/"+zt),Dk=new RegExp(Zi,"i"),Gk=new RegExp(Pr+" \\w+","i"),Uk=new RegExp(Mr+" \\w+","i"),ph=new RegExp(uo+"|PlayBook|BB10","i"),Fk={"NT3.51":"NT 3.11","NT4.0":"NT 4.0","5.0":"2000",5.1:"XP",5.2:"XP","6.0":"Vista",6.1:"7",6.2:"8",6.3:"8.1",6.4:"10","10.0":"10"},Rv=function(e,t){return t=t||"",Ge(e," OPR/")&&Ge(e,"Mini")?Nk:Ge(e," OPR/")?dh:ph.test(e)?uo:Ge(e,"IE"+gn)||Ge(e,"WPDesktop")?vv:Ge(e,yv)?_v:Ge(e,uh)||Ge(e,"Edg/")?Sv:Ge(e,"FBIOS")?"Facebook "+gn:Ge(e,"UCWEB")||Ge(e,"UCBrowser")?"UC Browser":Ge(e,"CriOS")?bv:Ge(e,"CrMo")||Ge(e,ai)?ai:Ge(e,rs)&&Ge(e,pr)?wv:Ge(e,"FxiOS")?Ev:Ge(e.toLowerCase(),Lu.toLowerCase())?Lu:((n,s)=>s&&Ge(s,fv)||function(i){return Ge(i,pr)&&!Ge(i,ai)&&!Ge(i,rs)}(n))(e,t)?Ge(e,gn)?Tv:pr:Ge(e,Qi)?Qi:Ge(e,"MSIE")||Ge(e,"Trident/")?ch:Ge(e,"Gecko")?Qi:""},Bk={[vv]:[new RegExp("rv:"+zt)],[Sv]:[new RegExp(uh+"?\\/"+zt)],[ai]:[new RegExp("("+ai+"|CrMo)\\/"+zt)],[bv]:[new RegExp("CriOS\\/"+zt)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+zt)],[pr]:[hd],[Tv]:[hd],[dh]:[new RegExp("(Opera|OPR)\\/"+zt)],[Qi]:[new RegExp(Qi+"\\/"+zt)],[Ev]:[new RegExp("FxiOS\\/"+zt)],[Lu]:[new RegExp("Konqueror[:/]?"+zt,"i")],[uo]:[new RegExp(uo+" "+zt),hd],[wv]:[new RegExp("android\\s"+zt,"i")],[_v]:[new RegExp(yv+"\\/"+zt)],[ch]:[new RegExp("(rv:|MSIE )"+zt)],Mozilla:[new RegExp("rv:"+zt)]},Hk=function(e,t){var n=Rv(e,t),s=Bk[n];if(fe(s))return null;for(var i=0;s.length>i;i++){var o=e.match(s[i]);if(o)return parseFloat(o[o.length-2])}return null},cm=[[new RegExp(Zi+"; "+Zi+" (.*?)[);]","i"),e=>[Zi,e&&e[1]||""]],[new RegExp(Mr,"i"),[Mr,""]],[new RegExp(Pr,"i"),[Pr,""]],[ph,[uo,""]],[new RegExp(zo,"i"),(e,t)=>{if(/Phone/.test(t)||/WPDesktop/.test(t))return[Pu,""];if(new RegExp(gn).test(t)&&!/IEMobile\b/.test(t))return[zo+" "+gn,""];var n=/Windows NT ([0-9.]+)/i.exec(t);if(n&&n[1]){var s=Fk[n[1]]||"";return/arm/i.test(t)&&(s="RT"),[zo,s]}return[zo,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,e=>e&&e[3]?[yl,[e[3],e[4],e[5]||"0"].join(".")]:[yl,""]],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,e=>{var t="";return e&&e.length>=3&&(t=fe(e[2])?e[3]:e[2]),["watchOS",t]}],[new RegExp("("+rs+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+rs+")","i"),e=>e&&e[2]?[rs,[e[2],e[3],e[4]||"0"].join(".")]:[rs,""]],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,e=>{var t=["Mac OS X",""];return e&&e[1]&&(t[1]=[e[1],e[2],e[3]||"0"].join(".")),t}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[Pk,""]],[/Linux|debian/i,["Linux",""]]],dm=function(e){return Uk.test(e)?Mr:Gk.test(e)?Pr:Dk.test(e)?Zi:new RegExp(Nu,"i").test(e)?Nu:new RegExp("("+Pu+"|WPDesktop)","i").test(e)?Pu:/iPad/.test(e)?hv:/iPod/.test(e)?"iPod Touch":/iPhone/.test(e)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(e)?gv:ph.test(e)?uo:/(kobo)\s(ereader|touch)/i.test(e)?"Kobo":new RegExp(lm,"i").test(e)?lm:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(e)||/(kf[a-z]+)( bui|\)).+silk\//i.test(e)?"Kindle Fire":/(Android|ZTE)/i.test(e)?new RegExp(gn).test(e)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(e)||/pixel[\daxl ]{1,6}/i.test(e)&&!/pixel c/i.test(e)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(e)||/lmy47v/i.test(e)&&!/QTAQZ3/i.test(e)?rs:pv:new RegExp("(pda|"+gn+")","i").test(e)?Lk:new RegExp(co,"i").test(e)&&!new RegExp(co+" pc","i").test(e)?Av:""},$k=e=>e instanceof Error,xv={trace:{text:"TRACE",number:1},debug:{text:"DEBUG",number:5},info:{text:"INFO",number:9},warn:{text:"WARN",number:13},error:{text:"ERROR",number:17},fatal:{text:"FATAL",number:21}},Wk=xv.info;function Iv(e){if(Wn(e))return{boolValue:e};if(typeof e=="number")return Number.isFinite(e)?Number.isInteger(e)?{intValue:e}:{doubleValue:e}:{stringValue:String(e)};if(typeof e=="string")return{stringValue:e};if(He(e))return{arrayValue:{values:e.map(t=>Iv(t))}};try{return{stringValue:JSON.stringify(e)}}catch{return{stringValue:String(e)}}}function um(e){var t=[];for(var n in e){var s=e[n];
983us(s)||fe(s)||t.push({key:n,value:Iv(s)})}return t}function zk(e){var t=globalThis._posthogChunkIds;if(t){var n=Object.keys(t);return pd&&n.length===am||(am=n.length,pd=n.reduce((s,i)=>{xa||(xa={});var o=xa[i];if(o)s[o[0]]=o[1];else for(var a=e(i),c=a.length-1;c>=0;c--){var u=a[c],h=u?.filename,m=t[i];if(h&&m){s[h]=m,xa[i]=[h,m];break}}return s},{})),pd}}class Vk{constructor(t,n,s){s===void 0&&(s=[]),this.coercers=t,this.stackParser=n,this.modifiers=s}buildFromUnknown(t,n){n===void 0&&(n={});var s=n&&n.mechanism||{handled:!0,type:"generic"},i=this.buildCoercingContext(s,n,0).apply(t),o=this.buildParsingContext(n),a=this.parseStacktrace(i,o);return{$exception_list:this.convertToExceptionList(a,s),$exception_level:"error"}}modifyFrames(t){var n=this;return En(function*(){for(var s of t)s.stacktrace&&s.stacktrace.frames&&He(s.stacktrace.frames)&&(s.stacktrace.frames=yield n.applyModifiers(s.stacktrace.frames));return t})()}coerceFallback(t){var n;return{type:"Error",value:"Unknown error",stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}parseStacktrace(t,n){var s,i;return t.cause!=null&&(s=this.parseStacktrace(t.cause,n)),t.stack!=""&&t.stack!=null&&(i=this.applyChunkIds(this.stackParser(t.stack,t.synthetic?n.skipFirstLines:0),n.chunkIdMap)),oe({},t,{cause:s,stack:i})}applyChunkIds(t,n){return t.map(s=>(s.filename&&n&&(s.chunk_id=n[s.filename]),s))}applyCoercers(t,n){for(var s of this.coercers)if(s.match(t))return s.coerce(t,n);return this.coerceFallback(n)}applyModifiers(t){var n=this;return En(function*(){var s=t;for(var i of n.modifiers)s=yield i(s);return s})()}convertToExceptionList(t,n){var s,i,o,a={type:t.type,value:t.value,mechanism:{type:(s=n.type)!==null&&s!==void 0?s:"generic",handled:(i=n.handled)===null||i===void 0||i,synthetic:(o=t.synthetic)!==null&&o!==void 0&&o}};t.stack&&(a.stacktrace={type:"raw",frames:t.stack});var c=[a];return t.cause!=null&&c.push(...this.convertToExceptionList(t.cause,oe({},n,{handled:!0}))),c}buildParsingContext(t){var n;return{chunkIdMap:zk(this.stackParser),skipFirstLines:(n=t.skipFirstLines)!==null&&n!==void 0?n:1}}buildCoercingContext(t,n,s){s===void 0&&(s=0);var i=(o,a)=>{if(4>=a){var c=this.buildCoercingContext(t,n,a);return this.applyCoercers(o,c)}};return oe({},n,{syntheticException:s==0?n.syntheticException:void 0,mechanism:t,apply:o=>i(o,s),next:o=>i(o,s+1)})}}var po="?";function Du(e,t,n,s,i){var o={platform:e,filename:t,function:n==="<anonymous>"?po:n,in_app:!0};return fe(s)||(o.lineno=s),fe(i)||(o.colno=i),o}var Ov=(e,t)=>{var n=e.indexOf("safari-extension")!==-1,s=e.indexOf("safari-web-extension")!==-1;return n||s?[e.indexOf("@")!==-1?e.split("@")[0]:po,n?"safari-extension:"+t:"safari-web-extension:"+t]:[e,t]},qk=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,jk=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,Kk=/\((\S*)(?::(\d+))(?::(\d+))\)/,Yk=(e,t)=>{var n=qk.exec(e);if(n){var[,s,i,o]=n;return Du(t,s,po,+i,+o)}var a=jk.exec(e);if(a){if(a[2]&&a[2].indexOf("eval")===0){var c=Kk.exec(a[2]);c&&(a[2]=c[1],a[3]=c[2],a[4]=c[3])}var[u,h]=Ov(a[1]||po,a[2]);return Du(t,h,u,a[3]?+a[3]:void 0,a[4]?+a[4]:void 0)}},Xk=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,Jk=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Qk=(e,t)=>{var n=Xk.exec(e);if(n){if(n[3]&&n[3].indexOf(" > eval")>-1){var s=Jk.exec(n[3]);s&&(n[1]=n[1]||"eval",n[3]=s[1],n[4]=s[2],n[5]="")}var i=n[3],o=n[1]||po;return[o,i]=Ov(o,i),Du(t,i,o,n[4]?+n[4]:void 0,n[5]?+n[5]:void 0)}},pm=/\(error: (.*)\)/;class Zk{match(t){return this.isDOMException(t)||this.isDOMError(t)}coerce(t,n){var s=ot(t.stack);return{type:this.getType(t),value:this.getValue(t),stack:s?t.stack:void 0,cause:t.cause?n.next(t.cause):void 0,synthetic:!1}}getType(t){return this.isDOMError(t)?"DOMError":"DOMException"}getValue(t){var n=t.name||(this.isDOMError(t)?"DOMError":"DOMException");return t.message?n+": "+t.message:n}isDOMException(t){return ml(t,"DOMException")}isDOMError(t){return ml(t,"DOMError")}}class eM{match(t){return(n=>n instanceof Error)(t)}coerce(t,n){return{type:this.getType(t),value:this.getMessage(t,n),stack:this.getStack(t),cause:t.cause?n.next(t.cause):void 0,synthetic:!1}}getType(t){return t.name||t.constructor.name}getMessage(t,n){var s=t.message;return String(s.error&&typeof s.error.message=="string"?s.error.message:s)}getStack(t){return t.stacktrace||t.stack||void 0}}class tM{constructor(){}match(t){return ml(t,"ErrorEvent")&&t.error!=null}coerce(t,n){var s;return n.apply(t.error)||{type:"ErrorEvent",value:t.message,stack:(s=n.syntheticException)==null?void 0:s.stack,synthetic:!0}}}var nM=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i;class sM{match(t){return typeof t=="string"}coerce(t,n){var s,[i,o]=this.getInfos(t);return{type:i??"Error",value:o??t,stack:(s=n.syntheticException)==null?void 0:s.stack,synthetic:!0}}getInfos(t){var n="Error",s=t,i=t.match(nM);return i&&(n=i[1],s=i[2]),[n,s]}}var iM=["fatal","error","warning","log","info","debug"];function kv(e,t){t===void 0&&(t=40);var n=Object.keys(e);if(n.sort(),!n.length)return"[object has no keys]";for(var s=n.length;s>0;s--){var i=n.slice(0,s).join(", ");
983if(t>=i.length)return s===n.length?i:i.length>t?i.slice(0,t)+"...":i}return""}class oM{match(t){return typeof t=="object"&&t!==null}coerce(t,n){var s,i=this.getErrorPropertyFromObject(t);return i?n.apply(i):{type:this.getType(t),value:this.getValue(t),stack:(s=n.syntheticException)==null?void 0:s.stack,level:this.isSeverityLevel(t.level)?t.level:"error",synthetic:!0}}getType(t){return lh(t)?t.constructor.name:"Error"}getValue(t){if("name"in t&&typeof t.name=="string"){var n="'"+t.name+"' captured as exception";return"message"in t&&typeof t.message=="string"&&(n+=" with message: '"+t.message+"'"),n}if("message"in t&&typeof t.message=="string")return t.message;var s=this.getObjectClassName(t);return(s&&s!=="Object"?"'"+s+"'":"Object")+" captured as exception with keys: "+kv(t)}isSeverityLevel(t){return ot(t)&&!Wa(t)&&iM.indexOf(t)>=0}getErrorPropertyFromObject(t){for(var n in t)if({}.hasOwnProperty.call(t,n)){var s=t[n];if($k(s))return s}}getObjectClassName(t){try{var n=Object.getPrototypeOf(t);return n?n.constructor.name:void 0}catch{return}}}class rM{match(t){return lh(t)}coerce(t,n){var s,i=t.constructor.name;return{type:i,value:i+" captured as exception with keys: "+kv(t),stack:(s=n.syntheticException)==null?void 0:s.stack,synthetic:!0}}}class aM{match(t){return uv(t)}coerce(t,n){var s;return{type:"Error",value:"Primitive value captured as exception: "+String(t),stack:(s=n.syntheticException)==null?void 0:s.stack,synthetic:!0}}}class lM{match(t){return ml(t,"PromiseRejectionEvent")||this.isCustomEventWrappingRejection(t)}isCustomEventWrappingRejection(t){if(!lh(t))return!1;try{var n=t.detail;return n!=null&&typeof n=="object"&&"reason"in n}catch{return!1}}coerce(t,n){var s,i=this.getUnhandledRejectionReason(t);return uv(i)?{type:"UnhandledRejection",value:"Non-Error promise rejection captured with value: "+String(i),stack:(s=n.syntheticException)==null?void 0:s.stack,synthetic:!0}:n.apply(i)}getUnhandledRejectionReason(t){try{if("reason"in t)return t.reason;if("detail"in t&&t.detail!=null&&typeof t.detail=="object"&&"reason"in t.detail)return t.detail.reason}catch{}return t}}var _l="$message",bl="$timestamp",cM=new Set([_l,bl]),fd={enabled:!0,max_bytes:32768};function vl(e){var t;return e?{enabled:(t=e.enabled)!==null&&t!==void 0?t:fd.enabled,max_bytes:uM(e.max_bytes,fd.max_bytes)}:oe({},fd)}class dM{constructor(t){this.Kt=[],this.Qt=0,this.Bt=vl(t)}setConfig(t){this.Bt=vl(t),this.er()}add(t){var n=function(i){var o=function(m){var _=new WeakSet;try{return JSON.stringify(m,(b,v)=>{if(typeof v=="bigint")return v.toString();if(typeof v!="function"&&typeof v!="symbol"){if(v instanceof Date)return v.toISOString();if(v instanceof Error)return{name:v.name,message:v.message,stack:v.stack};if(v&&typeof v=="object"){if(_.has(v))return"[Circular]";_.add(v)}return v}})}catch{return}}(i);if(o)try{var a=JSON.parse(o);if(!ut(a))return;var c=a,u=c[_l],h=c[bl];return!ot(u)||u.trim().length===0||!ot(h)&&!xn(h)?void 0:{step:c,json:o}}catch{return}}(t);if(n){var s=function(i){if(typeof TextEncoder<"u")return new TextEncoder().encode(i).length;for(var o=encodeURIComponent(i),a=0,c=0;o.length>c;c++)o[c]==="%"?(a+=1,c+=2):a+=1;return a}(n.json);s>this.Bt.max_bytes||(this.Kt.push({step:n.step,bytes:s}),this.Qt+=s,this.er())}}getAttachable(){return this.Kt.map(t=>t.step)}clear(){this.Kt=[],this.Qt=0}size(){return this.Kt.length}er(){for(;this.Qt>this.Bt.max_bytes&&this.Kt.length>0;){var t=this.Kt.shift();t&&(this.Qt-=t.bytes)}}}function uM(e,t){if(!xn(e)||e===1/0||e===-1/0)return t;var n=Math.floor(e);return 0>n?t:n}var Mv=function(e,t){var{debugEnabled:n}=t===void 0?{}:t,s={C(i){if($&&(Vt.DEBUG||_e.POSTHOG_DEBUG||n)&&!fe($.console)&&$.console){for(var o=("__rrweb_original__"in $.console[i])?$.console[i].__rrweb_original__:$.console[i],a=arguments.length,c=new Array(a>1?a-1:0),u=1;a>u;u++)c[u-1]=arguments[u];o(e,...c)}},info(){for(var i=arguments.length,o=new Array(i),a=0;i>a;a++)o[a]=arguments[a];s.C("log",...o)},warn(){for(var i=arguments.length,o=new Array(i),a=0;i>a;a++)o[a]=arguments[a];s.C("warn",...o)},error(){for(var i=arguments.length,o=new Array(i),a=0;i>a;a++)o[a]=arguments[a];s.C("error",...o)},critical(){for(var i=arguments.length,o=new Array(i),a=0;i>a;a++)o[a]=arguments[a];console.error(e,...o)},uninitializedWarning(i){s.error("You must initialize PostHog before calling "+i)},createLogger:(i,o)=>Mv(e+" "+i,o)};return s},ue=Mv("[PostHog.js]"),tt=ue.createLogger,pM=tt("[ExternalScriptsLoader]"),gd=(e,t,n)=>{if(e.config.disable_external_dependency_loading)return pM.warn(t+" was requested but loading of external scripts is disabled."),n("Loading of external scripts is disabled");var s=ce?.querySelectorAll("script");
983if(s){for(var i,o=function(){if(s[a].src===t){var u=s[a];return u.__posthog_loading_callback_fired?{v:n()}:(u.addEventListener("load",h=>{u.__posthog_loading_callback_fired=!0,n(void 0,h)}),u.onerror=h=>n(h),{v:void 0})}},a=0;s.length>a;a++)if(i=o())return i.v}var c=()=>{if(!ce)return n("document not found");var u=ce.createElement("script");if(u.type="text/javascript",u.crossOrigin="anonymous",u.src=t,u.onload=_=>{u.__posthog_loading_callback_fired=!0,n(void 0,_)},u.onerror=_=>n(_),e.config.prepare_external_dependency_script&&(u=e.config.prepare_external_dependency_script(u)),!u)return n("prepare_external_dependency_script returned null");if(e.config.external_scripts_inject_target==="head")ce.head.appendChild(u);else{var h,m=ce.querySelectorAll("body > script");m.length>0?(h=m[0].parentNode)==null||h.insertBefore(u,m[0]):ce.body.appendChild(u)}};ce!=null&&ce.body?c():ce?.addEventListener("DOMContentLoaded",c)};_e.__PosthogExtensions__=_e.__PosthogExtensions__||{},_e.__PosthogExtensions__.loadExternalDependency=(e,t,n)=>{if(t!=="remote-config"){var s;if(e.config.__preview_external_dependency_versioned_paths)s=e.requestRouter.endpointFor("assets","/static/"+e.version+"/"+t+".js");else{var i="/static/"+t+".js?v="+e.version;if(t==="toolbar"){var o=3e5;i=i+"&t="+Math.floor(Date.now()/o)*o}s=e.requestRouter.endpointFor("assets",i)}gd(e,s,n)}else{var a=e.requestRouter.endpointFor("assets","/array/"+e.config.token+"/config.js");gd(e,a,n)}},_e.__PosthogExtensions__.loadSiteApp=(e,t,n)=>{var s=e.requestRouter.endpointFor("api",t);gd(e,s,n)};var Pv="$people_distinct_id",Sl="$device_id",Vo="__alias",qo="__timers",Gu="$autocapture_disabled_server_side",Uu="$heatmaps_enabled_server_side",Fu="$exception_capture_enabled_server_side",Bu="$error_tracking_suppression_rules",Hu="$error_tracking_capture_extension_exceptions",$u="$web_vitals_enabled_server_side",hh="$dead_clicks_enabled_server_side",Wu="$product_tours_enabled_server_side",zu="$web_vitals_allowed_metrics",jo="$session_recording_remote_config",Nv="$replay_override_sampling",Lv="$replay_override_linked_flag",Dv="$replay_override_url_trigger",Gv="$replay_override_event_trigger",El="$sesid",fh="$session_is_sampled",$i="$enabled_feature_flags",za="$active_feature_flags",Ko="$early_access_features",Vu="$feature_flag_details",qu="$feature_flag_payloads",ju="$feature_flag_request_id",ts="$override_feature_flags",Ni="$override_feature_flag_payloads",Yo="$stored_person_properties",Zs="$stored_group_properties",Ku="$surveys",Yu="$surveys_activated",Va="ph_product_tours",hr="$flag_call_reported",Xu="$flag_call_reported_session_id",Ju="$feature_flag_errors",wl="$feature_flag_evaluated_at",kn="$user_state",Qu="$client_session_props",Zu="$capture_rate_limit",ep="$initial_campaign_params",tp="$initial_referrer_info",Tl="$initial_person_info",Cl="$epp",Uv="__POSTHOG_TOOLBAR__",Ia="$posthog_cookieless",Fv="$sdk_debug_extensions_init_method",Bv="$sdk_debug_extensions_init_time_ms",Hv="$sdk_debug_recording_script_not_loaded",gh="PostHog loadExternalDependency extension not found.",ei="on_reject",os="always",Ri="anonymous",xi="identified",np="identified_only",Al="visibilitychange",Rl="beforeunload",Li="$pageview",md="$pageleave",yd="$identify",hm="$groupidentify";function Oa(e,t){He(e)&&e.forEach(t)}function Qe(e,t){if(!Ue(e))if(He(e))e.forEach(t);else if(xk(e))e.forEach((s,i)=>t(s,i));else for(var n in e)dv.call(e,n)&&t(e[n],n)}var rt=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),s=1;t>s;s++)n[s-1]=arguments[s];for(var i of n)for(var o in i)i[o]!==void 0&&(e[o]=i[o]);return e};function qa(e){for(var t=Object.keys(e),n=t.length,s=new Array(n);n--;)s[n]=[t[n],e[t[n]]];return s}var fm=function(e){try{return e()}catch{return}},hM=function(e){return function(){try{for(var t=arguments.length,n=new Array(t),s=0;t>s;s++)n[s]=arguments[s];return e.apply(this,n)}catch(i){ue.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),ue.critical(i)}}},mh=function(e){var t={};return Qe(e,function(n,s){(ot(n)&&n.length>0||xn(n))&&(t[s]=n)}),t},fM=["herokuapp.com","vercel.app","netlify.app"];function gM(e){var t=e?.hostname;if(!ot(t))return!1;var n=t.split(".").slice(-2).join(".");for(var s of fM)if(n===s)return!1;return!0}function ft(e,t,n,s){var{capture:i=!1,passive:o=!0}=s??{};e?.addEventListener(t,n,{capture:i,passive:o})}
983function $v(e){return e.name==="ph_toolbar_internal"}Math.trunc||(Math.trunc=function(e){return 0>e?Math.ceil(e):Math.floor(e)}),Number.isInteger||(Number.isInteger=function(e){return xn(e)&&isFinite(e)&&Math.floor(e)===e});class xl{constructor(t){if(this.bytes=t,t.length!==16)throw new TypeError("not 128-bit length")}static fromFieldsV7(t,n,s,i){if(!Number.isInteger(t)||!Number.isInteger(n)||!Number.isInteger(s)||!Number.isInteger(i)||0>t||0>n||0>s||0>i||t>0xffffffffffff||n>4095||s>1073741823||i>4294967295)throw new RangeError("invalid field value");var o=new Uint8Array(16);return o[0]=t/Math.pow(2,40),o[1]=t/Math.pow(2,32),o[2]=t/Math.pow(2,24),o[3]=t/Math.pow(2,16),o[4]=t/Math.pow(2,8),o[5]=t,o[6]=112|n>>>8,o[7]=n,o[8]=128|s>>>24,o[9]=s>>>16,o[10]=s>>>8,o[11]=s,o[12]=i>>>24,o[13]=i>>>16,o[14]=i>>>8,o[15]=i,new xl(o)}toString(){for(var t="",n=0;this.bytes.length>n;n++)t=t+(this.bytes[n]>>>4).toString(16)+(15&this.bytes[n]).toString(16),n!==3&&n!==5&&n!==7&&n!==9||(t+="-");if(t.length!==36)throw new Error("Invalid UUIDv7 was generated");return t}clone(){return new xl(this.bytes.slice(0))}equals(t){return this.compareTo(t)===0}compareTo(t){for(var n=0;16>n;n++){var s=this.bytes[n]-t.bytes[n];if(s!==0)return Math.sign(s)}return 0}}class mM{constructor(){this.I=0,this.S=0,this.k=new yM}generate(){var t=this.generateOrAbort();if(fe(t)){this.I=0;var n=this.generateOrAbort();if(fe(n))throw new Error("Could not generate UUID after timestamp reset");return n}return t}generateOrAbort(){var t=Date.now();if(t>this.I)this.I=t,this.A();else{if(this.I>=t+1e4)return;this.S++,this.S>4398046511103&&(this.I++,this.A())}return xl.fromFieldsV7(this.I,Math.trunc(this.S/Math.pow(2,30)),this.S&Math.pow(2,30)-1,this.k.nextUint32())}A(){this.S=1024*this.k.nextUint32()+(1023&this.k.nextUint32())}}var gm,Wv=e=>{if(typeof UUIDV7_DENY_WEAK_RNG<"u"&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(var t=0;e.length>t;t++)e[t]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return e};$&&!fe($.crypto)&&crypto.getRandomValues&&(Wv=e=>crypto.getRandomValues(e));class yM{constructor(){this.T=new Uint32Array(8),this.N=1/0}nextUint32(){return this.T.length>this.N||(Wv(this.T),this.N=0),this.T[this.N++]}}var Ms=()=>_M().toString(),_M=()=>(gm||(gm=new mM)).generate(),No="",bM=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i,$n={R:()=>!!ce,B(e){ue.error("cookieStore error: "+e)},O(e){if(ce){try{for(var t=e+"=",n=ce.cookie.split(";").filter(o=>o.length),s=0;n.length>s;s++){for(var i=n[s];i.charAt(0)==" ";)i=i.substring(1,i.length);if(i.indexOf(t)===0)return decodeURIComponent(i.substring(t.length,i.length))}}catch{}return null}},Z(e){var t;try{t=JSON.parse($n.O(e))||{}}catch{}return t},M(e,t,n,s,i){if(ce)try{var o="",a="",c=function(m,_){if(_){var b=function(w,A){if(A===void 0&&(A=ce),No)return No;if(!A||["localhost","127.0.0.1"].includes(w))return"";for(var B=w.split("."),H=Math.min(B.length,8),I="dmn_chk_"+Ms();!No&&H--;){var T=B.slice(H).join("."),S=I+"=1;domain=."+T+";path=/";A.cookie=S+";max-age=3",A.cookie.includes(I)&&(A.cookie=S+";max-age=0",No=T)}return No}(m);if(!b){var v=(w=>{var A=w.match(bM);return A?A[0]:""})(m);v!==b&&ue.info("Warning: cookie subdomain discovery mismatch",v,b),b=v}return b?"; domain=."+b:""}return""}(ce.location.hostname,s);if(n){var u=new Date;u.setTime(u.getTime()+864e5*n),o="; expires="+u.toUTCString()}i&&(a="; secure");var h=e+"="+encodeURIComponent(JSON.stringify(t))+o+"; SameSite=Lax; path=/"+c+a;return h.length>3686.4&&ue.warn("cookieStore warning: large cookie, len="+h.length),ce.cookie=h,h}catch{return}},F(e,t){if(ce!=null&&ce.cookie)try{$n.M(e,"",-1,t)}catch{return}}},_d=null,it={R(){if(!us(_d))return _d;var e=!0;if(fe($))e=!1;else try{var t="__mplssupport__";it.M(t,"xyz"),it.O(t)!=='"xyz"'&&(e=!1),it.F(t)}catch{e=!1}return e||ue.error("localStorage unsupported; falling back to cookie store"),_d=e,e},B(e){ue.error("localStorage error: "+e)},O(e){try{return $?.localStorage.getItem(e)}catch(t){it.B(t)}return null},Z(e){try{return JSON.parse(it.O(e))||{}}catch{}return null},M(e,t){try{$?.localStorage.setItem(e,JSON.stringify(t))}catch(n){it.B(n)}},F(e){try{$?.localStorage.removeItem(e)}catch(t){it.B(t)}}},vM=[Sl,"distinct_id",El,fh,Cl,Tl,kn],ka={},SM={R:()=>!0,B(e){ue.error("memoryStorage error: "+e)},O:e=>ka[e]||null,Z:e=>ka[e]||null,M(e,t){ka[e]=t},F(e){delete ka[e]}}
983,Ys=null,Mt={R(){if(!us(Ys))return Ys;if(Ys=!0,fe($))Ys=!1;else try{var e="__support__";Mt.M(e,"xyz"),Mt.O(e)!=='"xyz"'&&(Ys=!1),Mt.F(e)}catch{Ys=!1}return Ys},B(e){ue.error("sessionStorage error: ",e)},O(e){try{return $?.sessionStorage.getItem(e)}catch(t){Mt.B(t)}return null},Z(e){try{return JSON.parse(Mt.O(e))||null}catch{}return null},M(e,t){try{$?.sessionStorage.setItem(e,JSON.stringify(t))}catch(n){Mt.B(n)}},F(e){try{$?.sessionStorage.removeItem(e)}catch(t){Mt.B(t)}}};class EM{constructor(t){this._instance=t}get Bt(){return this._instance.config}get consent(){return this.rr()?0:this.ir}isOptedOut(){return this.Bt.cookieless_mode===os||this.isRejected()||this.consent===-1&&this.Bt.cookieless_mode===ei}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===0}isRejected(){return this.consent===0||this.consent===-1&&this.Bt.opt_out_capturing_by_default}optInOut(t){this.nr.M(this.sr,t?1:0,this.Bt.cookie_expiration,this.Bt.cross_subdomain_cookie,this.Bt.secure_cookie)}reset(){this.nr.F(this.sr,this.Bt.cross_subdomain_cookie)}get sr(){var{token:t,opt_out_capturing_cookie_prefix:n,consent_persistence_name:s}=this._instance.config;return s||(n?n+t:"__ph_opt_in_out_"+t)}get ir(){var t=this.nr.O(this.sr);return ud(t)?1:Ge(kk,t)?0:-1}get nr(){var t=this.Bt.opt_out_capturing_persistence_type,n=t==="localStorage"?it:$n;if(!this.ar||this.ar!==n){this.ar=n;var s=t==="localStorage"?$n:it;s.O(this.sr)&&(this.ar.O(this.sr)||this.optInOut(ud(s.O(this.sr))),s.F(this.sr,this.Bt.cross_subdomain_cookie))}return this.ar}rr(){return!!this.Bt.respect_dnt&&[pn?.doNotTrack,pn?.msDoNotTrack,_e.doNotTrack].some(t=>ud(t))}}var Ma=tt("[Dead Clicks]"),wM=()=>!0,TM=e=>{var t,n=!((t=e.instance.persistence)==null||!t.get_property(hh)),s=e.instance.config.capture_dead_clicks;return Wn(s)?s:!!ut(s)||n};class mm{get lazyLoadedDeadClicksAutocapture(){return this.lr}constructor(t,n,s){this.instance=t,this.isEnabled=n,this.onCapture=s,this.startIfEnabledOrStop()}onRemoteConfig(t){"captureDeadClicks"in t&&(this.instance.persistence&&this.instance.persistence.register({[hh]:t.captureDeadClicks}),this.startIfEnabledOrStop())}startIfEnabledOrStop(){this.isEnabled(this)?this.ur(()=>{this.hr()}):this.stop()}ur(t){var n,s;(n=_e.__PosthogExtensions__)!=null&&n.initDeadClicksAutocapture&&t(),(s=_e.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this.instance,"dead-clicks-autocapture",i=>{i?Ma.error("failed to load script",i):t()})}hr(){var t;if(ce){if(!this.lr&&(t=_e.__PosthogExtensions__)!=null&&t.initDeadClicksAutocapture){var n=ut(this.instance.config.capture_dead_clicks)?this.instance.config.capture_dead_clicks:{};n.__onCapture=this.onCapture,this.lr=_e.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,n),this.lr.start(ce),Ma.info("starting...")}}else Ma.error("`document` not found. Cannot start.")}stop(){this.lr&&(this.lr.stop(),this.lr=void 0,Ma.info("stopping..."))}}var bd=tt("[SegmentIntegration]"),zv="posthog-js";function Vv(e,t){var{organization:n,projectId:s,prefix:i,severityAllowList:o=["error"],sendExceptionsToPostHog:a=!0}=t===void 0?{}:t;return c=>{var u,h,m,_,b;if(o!=="*"&&!o.includes(c.level)||!e.__loaded)return c;c.tags||(c.tags={});var v=e.requestRouter.endpointFor("ui","/project/"+e.config.token+"/person/"+e.get_distinct_id());c.tags["PostHog Person URL"]=v,e.sessionRecordingStarted()&&(c.tags["PostHog Recording URL"]=e.get_session_replay_url({withTimestamp:!0}));var w,A=((u=c.exception)==null?void 0:u.values)||[],B=A.map(I=>oe({},I,{stacktrace:I.stacktrace?oe({},I.stacktrace,{type:"raw",frames:(I.stacktrace.frames||[]).map(T=>oe({},T,{platform:"web:javascript"}))}):void 0})),H={$exception_message:((h=A[0])==null?void 0:h.value)||c.message,$exception_type:(m=A[0])==null?void 0:m.type,$exception_level:c.level,$exception_list:B,$sentry_event_id:c.event_id,$sentry_exception:c.exception,$sentry_exception_message:((_=A[0])==null?void 0:_.value)||c.message,$sentry_exception_type:(b=A[0])==null?void 0:b.type,$sentry_tags:c.tags};return n&&s&&(H.$sentry_url=(i||"https://sentry.io/organizations/")+n+"/issues/?project="+s+"&query="+c.event_id),a&&((w=e.exceptions)==null||w.sendExceptionEvent(H)),c}}class CM{constructor(t,n,s,i,o,a){this.name=zv,this.setupOnce=function(c){c(Vv(t,{organization:n,projectId:s,prefix:i,severityAllowList:o,sendExceptionsToPostHog:a==null||a}))}}}class ym{constructor(t){this.cr=(n,s,i)=>{i&&(i.noSessionId||i.activityTimeout||i.sessionPastMaximumLength)&&(ue.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:n,changeReason:i}),this.dr=void 0,this._instance.scrollManager.resetContext())},this._instance=t,this.vr()}vr(){var t;this.pr=(t=this._instance.sessionManager)==null?void 0:t.onSessionId(this.cr)}destroy(){var t;(t=this.pr)==null||t.call(this),this.pr=void 0}doPageView(t,n){var s,i=this.gr(t,n);return this.dr={pathname:(s=$?.location.pathname)!==null&&s!==void 0?s:"",pageViewId:n,timestamp:t},this._instance.scrollManager.resetContext(),i}doPageLeave(t){var n;return this.gr(t,(n=this.dr)==null?void 0:n.pageViewId)}doEvent(){var t;return{$pageview_id:(t=this.dr)==null?void 0:t.pageViewId}}gr(t,n){var s=this.dr;if(!s)return{$pageview_id:n};var i={$pageview_id:n,$prev_pageview_id:s.pageViewId},o=this._instance.scrollManager.getContext();if(o&&!this._instance.config.disable_scroll_properties){var{maxScrollHeight:a,lastScrollY:c,maxScrollY:u,maxContentHeight:h,lastContentY:m,maxContentY:_}=o;if(!(fe(a)||fe(c)||fe(u)||fe(h)||fe(m)||fe(_))){a=Math.ceil(a),c=Math.ceil(c),u=Math.ceil(u),h=Math.ceil(h),m=
983Math.ceil(m),_=Math.ceil(_);var b=a>1?zn(c/a,0,1,ue):1,v=a>1?zn(u/a,0,1,ue):1,w=h>1?zn(m/h,0,1,ue):1,A=h>1?zn(_/h,0,1,ue):1;i=rt(i,{$prev_pageview_last_scroll:c,$prev_pageview_last_scroll_percentage:b,$prev_pageview_max_scroll:u,$prev_pageview_max_scroll_percentage:v,$prev_pageview_last_content:m,$prev_pageview_last_content_percentage:w,$prev_pageview_max_content:_,$prev_pageview_max_content_percentage:A})}}return s.pathname&&(i.$prev_pageview_pathname=s.pathname),s.timestamp&&(i.$prev_pageview_duration=(t.getTime()-s.timestamp.getTime())/1e3),i}}var AM={[Pv]:{exposure:"hidden"},[Vo]:{exposure:"hidden"},__cmpns:{exposure:"hidden"},[qo]:{exposure:"hidden"},[Gu]:{exposure:"event"},[Uu]:{exposure:"hidden"},[Fu]:{exposure:"event"},[Bu]:{exposure:"hidden"},[Hu]:{exposure:"event"},[$u]:{exposure:"event"},[hh]:{exposure:"event"},[Wu]:{exposure:"hidden"},[zu]:{exposure:"event"},[jo]:{exposure:"hidden"},$session_recording_enabled_server_side:{exposure:"hidden"},[El]:{exposure:"hidden"},[fh]:{exposure:"event"},$session_past_minimum_duration:{exposure:"event"},$session_recording_url_trigger_activated_session:{exposure:"event"},$session_recording_event_trigger_activated_session:{exposure:"event"},$debug_first_full_snapshot_timestamp:{exposure:"event"},[$i]:{exposure:"derived",shouldSkipFromEventProperties:(e,t)=>t(),transformToEventProperties(e){if(!ut(e))return{};for(var t={},n=Object.keys(e),s=0;n.length>s;s++)t["$feature/"+n[s]]=e[n[s]];return t}},[za]:{exposure:"event"},[Ko]:{exposure:"hidden"},[Vu]:{exposure:"hidden"},[qu]:{exposure:"event"},[ju]:{exposure:"event"},[ts]:{exposure:"event"},[Ni]:{exposure:"hidden"},[Yo]:{exposure:"hidden"},[Zs]:{exposure:"hidden"},[Ku]:{exposure:"hidden"},[Yu]:{exposure:"event"},[Va]:{exposure:"hidden"},$product_tours_activated:{exposure:"hidden"},$conversations_widget_session_id:{exposure:"event"},$conversations_ticket_id:{exposure:"event"},$conversations_widget_state:{exposure:"event"},$conversations_user_traits:{exposure:"event"},[hr]:{exposure:"hidden"},[Xu]:{exposure:"hidden"},[Ju]:{exposure:"hidden"},[wl]:{exposure:"hidden"},[kn]:{exposure:"hidden"},[Qu]:{exposure:"hidden"},[Zu]:{exposure:"hidden"},[ep]:{exposure:"hidden"},[tp]:{exposure:"hidden"},[Tl]:{exposure:"hidden"},[Cl]:{exposure:"hidden"},[Nv]:{exposure:"event"},[Lv]:{exposure:"event"},[Dv]:{exposure:"event"},[Gv]:{exposure:"event"},[Fv]:{exposure:"event"},[Bv]:{exposure:"event"},[Hv]:{exposure:"event"},$sdk_debug_replay_event_trigger_status:{exposure:"event"},$sdk_debug_replay_linked_flag_trigger_status:{exposure:"event"},$sdk_debug_replay_matched_recording_trigger_groups:{exposure:"event"},$sdk_debug_replay_remote_trigger_matching_config:{exposure:"event"},$sdk_debug_replay_trigger_groups_count:{exposure:"event"},$sdk_debug_replay_url_trigger_status:{exposure:"event"},$session_recording_start_reason:{exposure:"event"}},RM=[["$posthog_sr_group_event_trigger_",{exposure:"hidden"}],["$posthog_sr_group_url_trigger_",{exposure:"hidden"}],["$posthog_sr_group_sampling_",{exposure:"hidden"}]],Il=e=>{var t=ce?.createElement("a");return fe(t)?null:(t.href=e,t)},Ol=function(e,t){for(var n,s=((e.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&"),i=0;s.length>i;i++){var o=s[i].split("=");if(o[0]===t){n=o;break}}if(!He(n)||2>n.length)return"";var a=n[1];try{a=decodeURIComponent(a)}catch{ue.error("Skipping decoding for malformed query param: "+a)}return a.replace(/\+/g," ")},Nr=function(e,t,n){if(!e||!t||!t.length)return e;for(var s=e.split("#"),i=s[1],o=(s[0]||"").split("?"),a=o[1],c=o[0],u=(a||"").split("&"),h=[],m=0;u.length>m;m++){var _=u[m].split("=");He(_)&&(t.includes(_[0])?h.push(_[0]+"="+n):h.push(u[m]))}var b=c;return a!=null&&(b+="?"+h.join("&")),i!=null&&(b+="#"+i),b},kl=function(e,t){var n=e.match(new RegExp(t+"=([^&]*)"));return n?n[1]:null},Pa="https?://(.*)",ho=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],xM=["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid",...ho],Lr="<masked>",IM=["li_fat_id"];function qv(e,t,n){if(!ce)return{};var s,i=t?[...ho,...n||[]]:[],o=jv(Nr(ce.URL,i,Lr),e),a=(s={},Qe(IM,function(c){var u=$n.O(c);s[c]=u||null}),s);return rt(a,o)}function jv(e,t){var n=xM.concat(t||[]),s={};return Qe(n,function(i){var o=Ol(e,i);s[i]=o||null}),s}function Kv(e){var t=function(o){return o?o.search(Pa+"google.([^/?]*)")===0?"google":o.search(Pa+"bing.com")===0?"bing":o.search(Pa+"yahoo.com")===0?"yahoo":o.search(Pa+"duckduckgo.com")===0?"duckduckgo":null:null}(e),n=t!="yahoo"?"q":"p",s={};if(!us(t)){s.$search_engine=t;var i=ce?Ol(ce.referrer,n):"";i.length&&(s.ph_keyword=i)}return s}function _m(){return navigator.language||navigator.userLanguage}var Ml="$direct";function Yv(){return ce?.referrer||Ml}function Xv(e,t){var n=e?[...ho,...t||[]]:[],s=kt?.href.substring(0,1e3);return{r:Yv().substring(0,1e3),u:s?Nr(s,n,Lr):void 0}}function Jv(e){var t,{r:n,u:s}=e,i={$referrer:n,$referring_domain:n==null?void 0:n==Ml?Ml:(t=Il(n))==null?void 0:t.host};
983if(s){i.$current_url=s;var o=Il(s);i.$host=o?.host,i.$pathname=o?.pathname;var a=jv(s);rt(i,a)}if(n){var c=Kv(n);rt(i,c)}return i}function Qv(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}function OM(){try{return new Date().getTimezoneOffset()}catch{return}}var kM=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"];class vd{constructor(t,n){this.Bt=t,this.props={},this.mr=!1,this.yr=(s=>{var i="";return s.token&&(i=s.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),s.persistence_name?"ph_"+s.persistence_name:"ph_"+i+"_posthog"})(t),this.nr=this.br(t),this.load(),t.debug&&ue.info("Persistence loaded",t.persistence,oe({},this.props)),this.update_config(t,t,n),this.save()}isDisabled(){return!!this._r}br(t){kM.indexOf(t.persistence.toLowerCase())===-1&&(ue.critical("Unknown persistence type "+t.persistence+"; falling back to localStorage+cookie"),t.persistence="localStorage+cookie");var n=function(i){i===void 0&&(i=[]);var o=[...vM,...i];return oe({},it,{Z(a){try{var c={};try{c=$n.Z(a)||{}}catch{}var u=rt(c,JSON.parse(it.O(a)||"{}"));return it.M(a,u),u}catch{}return null},M(a,c,u,h,m,_){try{it.M(a,c,void 0,void 0,_);var b={};o.forEach(v=>{c[v]&&(b[v]=c[v])}),Object.keys(b).length&&$n.M(a,b,u,h,m,_)}catch(v){it.B(v)}},F(a,c){try{$?.localStorage.removeItem(a),$n.F(a,c)}catch(u){it.B(u)}}})}(t.cookie_persisted_properties||[]),s=t.persistence.toLowerCase();return s==="localstorage"&&it.R()?it:s==="localstorage+cookie"&&n.R()?n:s==="sessionstorage"&&Mt.R()?Mt:s==="memory"?SM:s==="cookie"?$n:n.R()?n:$n}wr(t){var n=t??this.Bt.feature_flag_cache_ttl_ms;if(!n||0>=n)return!1;var s=this.props[wl];return!s||typeof s!="number"||Date.now()-s>n}properties(){var t={};return Qe(this.props,(n,s)=>{var i=(o=>{var a=AM[o];if(a)return a;for(var[c,u]of RM)if(o.indexOf(c)===0)return u})(s);if(i?.exposure==="derived"){if(i.shouldSkipFromEventProperties!=null&&i.shouldSkipFromEventProperties(n,s===$i?()=>this.wr():()=>!1))return;i.transformToEventProperties&&rt(t,i.transformToEventProperties(n))}else i&&i.exposure!=="event"||(t[s]=n)}),t}load(){if(!this._r){var t=this.nr.Z(this.yr);t&&(this.props=rt({},t))}}save(){this._r||this.nr.M(this.yr,this.props,this.Ir,this.Cr,this.Sr,this.Bt.debug)}remove(){this.nr.F(this.yr,!1),this.nr.F(this.yr,!0)}clear(){this.remove(),this.props={}}register_once(t,n,s){if(ut(t)){fe(n)&&(n="None"),this.Ir=fe(s)?this.kr:s;var i=!1;if(Qe(t,(o,a)=>{this.props.hasOwnProperty(a)&&this.props[a]!==n||(this.Tr(a,o),i=!0)}),i)return this.save(),!0}return!1}register(t,n){if(ut(t)){this.Ir=fe(n)?this.kr:n;var s=!1;if(Qe(t,(i,o)=>{t.hasOwnProperty(o)&&this.props[o]!==i&&(this.Tr(o,i),s=!0)}),s)return this.save(),!0}return!1}unregister(t){t in this.props&&(this.Ar(t),this.save())}update_campaign_params(){if(!this.mr){var t=qv(this.Bt.custom_campaign_params,this.Bt.mask_personal_data_properties,this.Bt.custom_personal_data_properties);Hi(mh(t))||this.register(t),this.mr=!0}}update_search_keyword(){var t;this.register((t=ce?.referrer)?Kv(t):{})}update_referrer_info(){var t;this.register_once({$referrer:Yv(),$referring_domain:ce!=null&&ce.referrer&&((t=Il(ce.referrer))==null?void 0:t.host)||Ml},void 0)}set_initial_person_info(){this.props[ep]||this.props[tp]||this.register_once({[Tl]:Xv(this.Bt.mask_personal_data_properties,this.Bt.custom_personal_data_properties)},void 0)}get_initial_props(){var t={};Qe([tp,ep],a=>{var c=this.props[a];c&&Qe(c,function(u,h){t["$initial_"+Mu(h)]=u})});var n,s,i=this.props[Tl];if(i){var o=(n=Jv(i),s={},Qe(n,function(a,c){s["$initial_"+Mu(c)]=a}),s);rt(t,o)}return t}safe_merge(t){return Qe(this.props,function(n,s){s in t||(t[s]=n)}),t}update_config(t,n,s){if(this.kr=this.Ir=t.cookie_expiration,this.set_disabled(t.disable_persistence||!!s),this.set_cross_subdomain(t.cross_subdomain_cookie),this.set_secure(t.secure_cookie),t.persistence!==n.persistence||!((a,c)=>{if(a.length!==c.length)return!1;var u=[...a].sort(),h=[...c].sort();return u.every((m,_)=>m===h[_])})(t.cookie_persisted_properties||[],n.cookie_persisted_properties||[])){var i=this.br(t),o=this.props;this.clear(),this.nr=i,this.props=o,this.save()}}set_disabled(t){this._r=t,this._r?this.remove():this.save()}set_cross_subdomain(t){t!==this.Cr&&(this.Cr=t,this.remove(),this.save())}set_secure(t){t!==this.Sr&&(this.Sr=t,this.remove(),this.save())}set_event_timer(t,n){var s=this.props[qo]||{};s[t]=n,this.Tr(qo,s),this.save()}remove_event_timer(t){var n=this.props[qo]||{},s=n[t];return fe(s)||(delete n[t],this.Tr(qo,n),this.save()),s}get_property(t){return this.props[t]}set_property(t,n){this.Tr(t,n),this.save()}Tr(t,n){this.props[t]=n}Ar(t){delete this.props[t]}}var Lo={Activation:"events",Cancellation:"cancelEvents"},Sd={Popover:"popover",API:"api",Widget:"widget"},Xo={SHOWN:"survey shown",DISMISSED:"survey dismissed",SENT:"survey sent"},Ed={SURVEY_ID:"$survey_id",SURVEY_ITERATION:"$survey_iteration",SURVEY_LAST_SEEN_DATE:"$survey_last_seen_date"},sp={Popover:"popover",Inline:"inline"},MM={SHOWN:"product tour shown"},bm={TOUR_LAST_SEEN_DATE:"$product_tour_last_seen_date",TOUR_TYPE:"$product_tour_type"},vm=tt("[RateLimiter]");class PM{constructor(t){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=n=>{var s=n.text;
983if(s&&s.length)try{(JSON.parse(s).quota_limited||[]).forEach(i=>{vm.info((i||"events")+" is quota limited."),this.serverLimits[i]=new Date().getTime()+6e4})}catch(i){return void vm.warn('could not rate limit - continuing. Error: "'+i?.message+'"',{text:s})}},this.instance=t,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){var t;return((t=this.instance.config.rate_limiting)==null?void 0:t.events_per_second)||10}get captureEventsBurstLimit(){var t;return Math.max(((t=this.instance.config.rate_limiting)==null?void 0:t.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(t){var n,s,i;t===void 0&&(t=!1);var{captureEventsBurstLimit:o,captureEventsPerSecond:a}=this,c=new Date().getTime(),u=(n=(s=this.instance.persistence)==null?void 0:s.get_property(Zu))!==null&&n!==void 0?n:{tokens:o,last:c};u.tokens+=(c-u.last)/1e3*a,u.last=c,u.tokens>o&&(u.tokens=o);var h=1>u.tokens;return h||t||(u.tokens=Math.max(0,u.tokens-1)),!h||this.lastEventRateLimited||t||this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:"posthog-js client rate limited. Config is set to "+a+" events per second and "+o+" events burst limit."},{skip_client_rate_limiting:!0}),this.lastEventRateLimited=h,(i=this.instance.persistence)==null||i.set_property(Zu,u),{isRateLimited:h,remainingTokens:u.tokens}}isServerRateLimited(t){var n=this.serverLimits[t||"events"]||!1;return n!==!1&&new Date().getTime()<n}}var Do=tt("[RemoteConfig]");class Zv{constructor(t){this._instance=t}get remoteConfig(){var t;return(t=_e._POSTHOG_REMOTE_CONFIG)==null||(t=t[this._instance.config.token])==null?void 0:t.config}Er(t){var n,s;(n=_e.__PosthogExtensions__)!=null&&n.loadExternalDependency?(s=_e.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this._instance,"remote-config",()=>t(this.remoteConfig)):t()}Rr(t){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets","/array/"+this._instance.config.token+"/config"),callback(n){t(n.json)}})}load(){try{if(this.remoteConfig)return Do.info("Using preloaded remote config",this.remoteConfig),this.Nr(this.remoteConfig),void this.Mr();if(this._instance.Fr())return void Do.warn("Remote config is disabled. Falling back to local config.");this.Er(t=>{if(!t)return Do.info("No config found after loading remote JS config. Falling back to JSON."),void this.Rr(n=>{this.Nr(n),this.Mr()});this.Nr(t),this.Mr()})}catch(t){Do.error("Error loading remote config",t)}}stop(){this.Or&&(clearInterval(this.Or),this.Or=void 0)}refresh(){this._instance.Fr()||ce?.visibilityState==="hidden"||this._instance.reloadFeatureFlags()}Mr(){var t;if(!this.Or){var n=(t=this._instance.config.remote_config_refresh_interval_ms)!==null&&t!==void 0?t:3e5;n!==0&&(this.Or=setInterval(()=>{this.refresh()},n))}}Nr(t){var n;t||Do.error("Failed to fetch remote config from PostHog."),this._instance.Nr(t??{}),t?.hasFeatureFlags!==!1&&(this._instance.config.advanced_disable_feature_flags_on_first_load||(n=this._instance.featureFlags)==null||n.ensureFlagsLoaded())}}var Bn={GZipJS:"gzip-js",Base64:"base64"},An=Uint8Array,tn=Uint16Array,fo=Uint32Array,yh=new An([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0,0,0,0]),_h=new An([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13,0,0]),Sm=new An([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),e0=function(e,t){for(var n=new tn(31),s=0;31>s;++s)n[s]=t+=1<<e[s-1];var i=new fo(n[30]);for(s=1;30>s;++s)for(var o=n[s];n[s+1]>o;++o)i[o]=o-n[s]<<5|s;return[n,i]},t0=e0(yh,2),ip=t0[1];t0[0][28]=258,ip[258]=28;for(var Em=e0(_h,0)[1],n0=new tn(32768),Ze=0;32768>Ze;++Ze){var Ii=(43690&Ze)>>>1|(21845&Ze)<<1;n0[Ze]=((65280&(Ii=(61680&(Ii=(52428&Ii)>>>2|(13107&Ii)<<2))>>>4|(3855&Ii)<<4))>>>8|(255&Ii)<<8)>>>1}var fr=function(e,t,n){for(var s=e.length,i=0,o=new tn(t);s>i;++i)++o[e[i]-1];var a,c=new tn(t);for(i=0;t>i;++i)c[i]=c[i-1]+o[i-1]<<1;for(a=new tn(s),i=0;s>i;++i)a[i]=n0[c[e[i]-1]++]>>>15-e[i];return a},pi=new An(288);for(Ze=0;144>Ze;++Ze)pi[Ze]=8;for(Ze=144;256>Ze;++Ze)pi[Ze]=9;for(Ze=256;280>Ze;++Ze)pi[Ze]=7;for(Ze=280;288>Ze;++Ze)pi[Ze]=8;var Pl=new An(32);for(Ze=0;32>Ze;++Ze)Pl[Ze]=5;var NM=fr(pi,9),LM=fr(Pl,5),s0=function(e){return(e/8>>0)+(7&e&&1)},i0=function(e,t,n){(n==null||n>e.length)&&(n=e.length);var s=new(e instanceof tn?tn:e instanceof fo?fo:An)(n-t);return s.set(e.subarray(t,n)),s},Qn=function(e,t,n){var s=t/8>>0;e[s]|=n<<=7&t,e[s+1]|=n>>>8},Go=function(e,t,n){var s=t/8>>0;e[s]|=n<<=7&t,e[s+1]|=n>>>8,e[s+2]|=n>>>16},wd=function(e,t){for(var n=[],s=0;e.length>s;++s)e[s]&&n.push({s,f:e[s]});var i=n.length,o=n.slice();if(!i)return[new An(0),0];if(i==1){var a=new An(n[0].s+1);return a[n[0].s]=1,[a,1]}n.sort(function(C,M){return C.f-M.f}),n.push({s:-1,f:25001});var c=n[0],u=n[1],h=0,m=1,_=2;for(n[0]={s:-1,f:c.f+u.f,l:c,r:u};m!=i-1;)c=n[n[_].f>n[h].f?h++:_++],u=n[h!=m&&n[_].f>n[h].f?h++:_++],n[m++]={s:-1,f:c.f+u.f,l:c,r:u};var b=o[0].s;for(s=1;i>s;++s)o[s].s>b&&(b=o[s].s);
vendor: 3,605 bytes, line 983
983var v=new tn(b+1),w=op(n[m-1],v,0);if(w>t){s=0;var A=0,B=w-t,H=1<<B;for(o.sort(function(C,M){return v[M.s]-v[C.s]||C.f-M.f});i>s;++s){var I=o[s].s;if(t>=v[I])break;A+=H-(1<<w-v[I]),v[I]=t}for(A>>>=B;A>0;){var T=o[s].s;t>v[T]?A-=1<<t-v[T]++-1:++s}for(;s>=0&&A;--s){var S=o[s].s;v[S]==t&&(--v[S],++A)}w=t}return[new An(v),w]},op=function(e,t,n){return e.s==-1?Math.max(op(e.l,t,n+1),op(e.r,t,n+1)):t[e.s]=n},wm=function(e){for(var t=e.length;t&&!e[--t];);for(var n=new tn(++t),s=0,i=e[0],o=1,a=function(u){n[s++]=u},c=1;t>=c;++c)if(e[c]==i&&c!=t)++o;else{if(!i&&o>2){for(;o>138;o-=138)a(32754);o>2&&(a(o>10?o-11<<5|28690:o-3<<5|12305),o=0)}else if(o>3){for(a(i),--o;o>6;o-=6)a(8304);o>2&&(a(o-3<<5|8208),o=0)}for(;o--;)a(i);o=1,i=e[c]}return[n.subarray(0,s),t]},Uo=function(e,t){for(var n=0,s=0;t.length>s;++s)n+=e[s]*t[s];return n},rp=function(e,t,n){var s=n.length,i=s0(t+2);e[i]=255&s,e[i+1]=s>>>8,e[i+2]=255^e[i],e[i+3]=255^e[i+1];for(var o=0;s>o;++o)e[i+o+4]=n[o];return 8*(i+4+s)},Tm=function(e,t,n,s,i,o,a,c,u,h,m){Qn(t,m++,n),++i[256];for(var _=wd(i,15),b=_[0],v=_[1],w=wd(o,15),A=w[0],B=w[1],H=wm(b),I=H[0],T=H[1],S=wm(A),C=S[0],M=S[1],U=new tn(19),D=0;I.length>D;++D)U[31&I[D]]++;for(D=0;C.length>D;++D)U[31&C[D]]++;for(var k=wd(U,7),F=k[0],g=k[1],W=19;W>4&&!F[Sm[W-1]];--W);var Z,P,pe,se,te=h+5<<3,de=Uo(i,pi)+Uo(o,Pl)+a,Fe=Uo(i,b)+Uo(o,A)+a+14+3*W+Uo(U,F)+(2*U[16]+3*U[17]+7*U[18]);if(de>=te&&Fe>=te)return rp(t,m,e.subarray(u,u+h));if(Qn(t,m,1+(de>Fe)),m+=2,de>Fe){Z=fr(b,v),P=b,pe=fr(A,B),se=A;var et=fr(F,g);for(Qn(t,m,T-257),Qn(t,m+5,M-1),Qn(t,m+10,W-4),m+=14,D=0;W>D;++D)Qn(t,m+3*D,F[Sm[D]]);m+=3*W;for(var Ye=[I,C],$e=0;2>$e;++$e){var St=Ye[$e];for(D=0;St.length>D;++D)Qn(t,m,et[Pt=31&St[D]]),m+=F[Pt],Pt>15&&(Qn(t,m,St[D]>>>5&127),m+=St[D]>>>12)}}else Z=NM,P=pi,pe=LM,se=Pl;for(D=0;c>D;++D)if(s[D]>255){var Pt;Go(t,m,Z[257+(Pt=s[D]>>>18&31)]),m+=P[Pt+257],Pt>7&&(Qn(t,m,s[D]>>>23&31),m+=yh[Pt]);var Ut=31&s[D];Go(t,m,pe[Ut]),m+=se[Ut],Ut>3&&(Go(t,m,s[D]>>>5&8191),m+=_h[Ut])}else Go(t,m,Z[s[D]]),m+=P[s[D]];return Go(t,m,Z[256]),m+P[256]},DM=new fo([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),GM=function(){for(var e=new fo(256),t=0;256>t;++t){for(var n=t,s=9;--s;)n=(1&n&&3988292384)^n>>>1;e[t]=n}return e}(),Td=function(e,t,n){for(;n;++t)e[t]=n,n>>>=8};function UM(e,t){t===void 0&&(t={});var n=function(){var _=4294967295;return{p(b){for(var v=_,w=0;b.length>w;++w)v=GM[255&v^b[w]]^v>>>8;_=v},d(){return 4294967295^_}}}(),s=e.length;n.p(e);var i,o,a,c,u,h=(c=10+((i=t).filename&&i.filename.length+1||0),u=8,function(_,b,v,w,A,B){var H=_.length,I=new An(w+H+5*(1+Math.floor(H/7e3))+A),T=I.subarray(w,I.length-A),S=0;if(!b||8>H)for(var C=0;H>=C;C+=65535){var M=C+65535;H>M?S=rp(T,S,_.subarray(C,M)):(T[C]=!0,S=rp(T,S,_.subarray(C,H)))}else{for(var U=DM[b-1],D=U>>>13,k=8191&U,F=(1<<v)-1,g=new tn(32768),W=new tn(F+1),Z=Math.ceil(v/3),P=2*Z,pe=function(he){return(_[he]^_[he+1]<<Z^_[he+2]<<P)&F},se=new fo(25e3),te=new tn(288),de=new tn(32),Fe=0,et=0,Ye=(C=0,0),$e=0,St=0;H>C;++C){var Pt=pe(C),Ut=32767&C,Et=W[Pt];if(g[Ut]=Et,W[Pt]=Ut,C>=$e){var bn=H-C;if((Fe>7e3||Ye>24576)&&bn>423){S=Tm(_,T,0,se,te,de,et,Ye,St,C-St,S),Ye=Fe=et=0,St=C;for(var wt=0;286>wt;++wt)te[wt]=0;for(wt=0;30>wt;++wt)de[wt]=0}var on=2,rn=0,ps=k,jt=Ut-Et&32767;if(bn>2&&Pt==pe(C-jt))for(var R=Math.min(D,bn)-1,N=Math.min(32767,C),V=Math.min(258,bn);N>=jt&&--ps&&Ut!=Et;){if(_[C+on]==_[C+on-jt]){for(var X=0;V>X&&_[C+X]==_[C+X-jt];++X);if(X>on){if(on=X,rn=jt,X>R)break;var Q=Math.min(jt,X-2),ie=0;for(wt=0;Q>wt;++wt){var ae=C-jt+wt+32768&32767,ne=ae-g[ae]+32768&32767;ne>ie&&(ie=ne,Et=ae)}}}
983jt+=(Ut=Et)-(Et=g[Ut])+32768&32767}if(rn){se[Ye++]=268435456|ip[on]<<18|Em[rn];var re=31&ip[on],j=31&Em[rn];et+=yh[re]+_h[j],++te[257+re],++de[j],$e=C+on,++Fe}else se[Ye++]=_[C],++te[_[C]]}}S=Tm(_,T,!0,se,te,de,et,Ye,St,C-St,S)}return i0(I,0,w+s0(S)+A)}(o=e,(a=t).level==null?6:a.level,a.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(o.length)))):12+a.mem,c,u)),m=h.length;return function(_,b){var v=b.filename;if(_[0]=31,_[1]=139,_[2]=8,_[8]=2>b.level?4:b.level==9?2:0,_[9]=3,b.mtime!=0&&Td(_,4,Math.floor(new Date(b.mtime||Date.now())/1e3)),v){_[3]=8;for(var w=0;v.length>=w;++w)_[w+10]=v.charCodeAt(w)}}(h,t),Td(h,m-8,n.d()),Td(h,m-4,s),h}var FM=!!Ou||!!Iu,o0="text/plain",Cm=!1,uc=function(e,t,n){var s;n===void 0&&(n=!0);var[i,o]=e.split("?"),a=oe({},t),c=(s=o?.split("&").map(h=>{var m,[_,b]=h.split("="),v=n&&(m=a[_])!==null&&m!==void 0?m:b;return delete a[_],_+"="+v}))!==null&&s!==void 0?s:[],u=function(h,m){var _,b;m===void 0&&(m="&");var v=[];return Qe(h,function(w,A){fe(w)||fe(A)||A==="undefined"||(_=encodeURIComponent((B=>B instanceof File)(w)?w.name:w.toString()),b=encodeURIComponent(A),v[v.length]=b+"="+_)}),v.join(m)}(a);return u&&c.push(u),i+"?"+c.join("&")},Wi=(e,t)=>JSON.stringify(e,(n,s)=>typeof s=="bigint"?s.toString():s,t),Cd=e=>{if(e.tr)return e.tr;var{data:t,compression:n}=e;if(t){if(n===Bn.GZipJS){var s=UM(function(c,u){var h=c.length;if(typeof TextEncoder<"u")return new TextEncoder().encode(c);for(var m=new An(c.length+(c.length>>>1)),_=0,b=function(B){m[_++]=B},v=0;h>v;++v){if(_+5>m.length){var w=new An(_+8+(h-v<<1));w.set(m),m=w}var A=c.charCodeAt(v);128>A?b(A):2048>A?(b(192|A>>>6),b(128|63&A)):A>55295&&57344>A?(b(240|(A=65536+(1047552&A)|1023&c.charCodeAt(++v))>>>18),b(128|A>>>12&63),b(128|A>>>6&63),b(128|63&A)):(b(224|A>>>12),b(128|A>>>6&63),b(128|63&A))}return i0(m,0,_)}(Wi(t)),{mtime:0});return{contentType:o0,body:s.buffer.slice(s.byteOffset,s.byteOffset+s.byteLength),estimatedSize:s.byteLength}}if(n===Bn.Base64){var i=function(c){return c&&btoa(encodeURIComponent(c).replace(/%([0-9A-F]{2})/g,(u,h)=>String.fromCharCode(parseInt(h,16))))}(Wi(t)),o=(c=>"data="+encodeURIComponent(typeof c=="string"?c:Wi(c)))(i);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}var a=Wi(t);return{contentType:"application/json",body:a,estimatedSize:new Blob([a]).size}}},BM=function(){var e=En(function*(t){var n=Wi(t.data),s=yield function(o,a,c){return ku.apply(this,arguments)}(n,Vt.DEBUG,{rethrow:!0});if(!s)return t;var i=yield s.arrayBuffer();return oe({},t,{tr:{contentType:o0,body:i,estimatedSize:i.byteLength}})});return function(t){return e.apply(this,arguments)}}(),Am=(e,t)=>uc(e,{_:new Date().getTime().toString(),ver:Vt.JS_SDK_VERSION,compression:t}),ja=[];Iu&&ja.push({transport:"fetch",method(e){var t,n,{contentType:s,body:i,estimatedSize:o}=(t=Cd(e))!==null&&t!==void 0?t:{},a=new Headers;Qe(e.headers,function(m,_){a.append(_,m)}),s&&a.append("Content-Type",s);var c=e.url,u=null;if(sm){var h=new sm;u={signal:h.signal,timeout:setTimeout(()=>h.abort(),e.timeout)}}Iu(c,oe({method:e?.method||"GET",headers:a,keepalive:e.method==="POST"&&52428.8>(o||0),body:i,signal:(n=u)==null?void 0:n.signal},e.fetchOptions)).then(m=>m.text().then(_=>{var b={statusCode:m.status,text:_};if(m.status===200)try{b.json=JSON.parse(_)}catch(v){ue.error(v)}e.callback==null||e.callback(b)})).catch(m=>{ue.error(m),e.callback==null||e.callback({statusCode:0,error:m})}).finally(()=>u?clearTimeout(u.timeout):null)}}),Ou&&ja.push({transport:"XHR",method(e){var t,n=new Ou;n.open(e.method||"GET",e.url,!0);var{contentType:s,body:i}=(t=Cd(e))!==null&&t!==void 0?t:{};Qe(e.headers,function(o,a){n.setRequestHeader(a,o)}),s&&n.setRequestHeader("Content-Type",s),e.timeout&&(n.timeout=e.timeout),e.disableXHRCredentials||(n.withCredentials=!0),n.onreadystatechange=()=>{if(n.readyState===4){var o={statusCode:n.status,text:n.responseText};if(n.status===200)try{o.json=JSON.parse(n.responseText)}catch{}e.callback==null||e.callback(o)}},n.send(i)}}),pn!=null&&pn.sendBeacon&&ja.push({transport:"sendBeacon",method(e){var t=uc(e.url,{beacon:"1"});try{var n,{contentType:s,body:i}=(n=Cd(e))!==null&&n!==void 0?n:{};if(!i)return;var o=i instanceof Blob?i:new Blob([i],{type:s});pn.sendBeacon(t,o)}catch{}}});var ap=3e3;class HM{constructor(t,n){this.Pr=!0,this.Lr=[],this.Dr=zn(n?.flush_interval_ms||ap,250,5e3,ue.createLogger("flush interval"),ap),this.Br=t}enqueue(t){this.Lr.push(t),this.jr||this.$r()}unload(){this.qr();var t=this.Lr.length>0?this.Zr():{},n=Object.values(t);[...n.filter(s=>s.url.indexOf("/e")===0),...n.filter(s=>s.url.indexOf("/e")!==0)].map(s=>{this.Br(oe({},s,{transport:"sendBeacon"}))})}enable(){this.Pr=!1,this.$r()}$r(){var t=this;this.Pr||(this.jr=setTimeout(()=>{if(this.qr(),this.Lr.length>0){var n=this.Zr(),s=function(){var o=n[i],a=new Date().getTime();o.data&&He(o.data)&&Qe(o.data,c=>{c.offset=Math.abs(c.timestamp-a),delete c.timestamp}),t.Br(o)};for(var i in n)s()}},this.Dr))}qr(){clearTimeout(this.jr),this.jr=void 0}Zr(){var t={};return Qe(this.Lr,n=>{var s,i=n,o=(i?i.batchKey:null)||i.url;fe(t[o])&&(t[o]=oe({},i,{data:[]})),(s=t[o].data)==null||s.push(i.data)}),this.Lr=[],t}}var $M=["retriesPerformedSoFar"];class WM{constructor(t){this.Vr=!1,this.Hr=3e3,this.Lr=[],this._instance=t,this.Lr=[],this.zr=!0,!fe($)&&"onLine"in $.navigator&&(this.zr=$.navigator.onLine,this.Ur=()=>{this.zr=!0,this.Yr()},this.Gr=()=>{this.zr=!1},ft($,"online",this.Ur),ft($,"offline",this.Gr))}get length(){return this.Lr.length}retriableRequest(t){var{retriesPerformedSoFar:n}=t,s=lv(t,$M);Pi(n)&&(s.url=uc(s.url,{retry_count:n})),this._instance._send_request(oe({},s,{callback:i=>{i.statusCode===200||i.statusCode>=400&&500>i.statusCode||(n??0)>=10?s.callback==null||s.callback(i):this.Wr(oe({retriesPerformedSoFar:n},s))}}))}Wr(t){var n=t.retriesPerformedSoFar||0;t.retriesPerformedSoFar=n+1;var s=function(a){var c=3e3*Math.pow(2,a),u=c/2,h=Math.min(18e5,c),m=Math.random()-.5;return Math.ceil(h+m*(h-u))}(n),i=Date.now()+s;this.Lr.push({retryAt:i,requestOptions:t});var o="Enqueued failed request for retry in "+s;
983navigator.onLine||(o+=" (Browser is offline)"),ue.warn(o),this.Vr||(this.Vr=!0,this.Xr())}Xr(){if(this.Jr&&clearTimeout(this.Jr),this.Lr.length===0)return this.Vr=!1,void(this.Jr=void 0);this.Jr=setTimeout(()=>{this.zr&&this.Lr.length>0&&this.Yr(),this.Xr()},this.Hr)}Yr(){var t=Date.now(),n=[],s=this.Lr.filter(o=>t>o.retryAt||(n.push(o),!1));if(this.Lr=n,s.length>0)for(var{requestOptions:i}of s)this.retriableRequest(i)}unload(){for(var{requestOptions:t}of(this.Jr&&(clearTimeout(this.Jr),this.Jr=void 0),this.Vr=!1,fe($)||(this.Ur&&($.removeEventListener("online",this.Ur),this.Ur=void 0),this.Gr&&($.removeEventListener("offline",this.Gr),this.Gr=void 0)),this.Lr))try{this._instance._send_request(oe({},t,{transport:"sendBeacon"}))}catch(n){ue.error(n)}this.Lr=[]}}class zM{constructor(t){this.Kr=()=>{var n,s,i,o;this.Qr||(this.Qr={});var a=this.scrollElement(),c=this.scrollY(),u=a?Math.max(0,a.scrollHeight-a.clientHeight):0,h=c+(a?.clientHeight||0),m=a?.scrollHeight||0;this.Qr.lastScrollY=Math.ceil(c),this.Qr.maxScrollY=Math.max(c,(n=this.Qr.maxScrollY)!==null&&n!==void 0?n:0),this.Qr.maxScrollHeight=Math.max(u,(s=this.Qr.maxScrollHeight)!==null&&s!==void 0?s:0),this.Qr.lastContentY=h,this.Qr.maxContentY=Math.max(h,(i=this.Qr.maxContentY)!==null&&i!==void 0?i:0),this.Qr.maxContentHeight=Math.max(m,(o=this.Qr.maxContentHeight)!==null&&o!==void 0?o:0)},this._instance=t}get ei(){return this._instance.config.scroll_root_selector}getContext(){return this.Qr}resetContext(){var t=this.Qr;return setTimeout(this.Kr,0),t}startMeasuringScrollPosition(){ft($,"scroll",this.Kr,{capture:!0}),ft($,"scrollend",this.Kr,{capture:!0}),ft($,"resize",this.Kr)}scrollElement(){if(!this.ei)return $?.document.documentElement;var t=He(this.ei)?this.ei:[this.ei];for(var n of t){var s=$?.document.querySelector(n);if(s)return s}}scrollY(){if(this.ei){var t=this.scrollElement();return t&&t.scrollTop||0}return $&&($.scrollY||$.pageYOffset||$.document.documentElement.scrollTop)||0}scrollX(){if(this.ei){var t=this.scrollElement();return t&&t.scrollLeft||0}return $&&($.scrollX||$.pageXOffset||$.document.documentElement.scrollLeft)||0}}var VM=e=>Xv(e?.config.mask_personal_data_properties,e?.config.custom_personal_data_properties);class Rm{constructor(t,n,s,i){this.ti=o=>{var a=this.ri();if(!a||a.sessionId!==o){var c={sessionId:o,props:this.ii(this._instance)};this.ni.register({[Qu]:c})}},this._instance=t,this.si=n,this.ni=s,this.ii=i||VM,this.si.onSessionId(this.ti)}ri(){return this.ni.props[Qu]}getSetOnceProps(){var t,n=(t=this.ri())==null?void 0:t.props;return n?"r"in n?Jv(n):{$referring_domain:n.referringDomain,$pathname:n.initialPathName,utm_source:n.utm_source,utm_campaign:n.utm_campaign,utm_medium:n.utm_medium,utm_content:n.utm_content,utm_term:n.utm_term}:{}}getSessionProps(){var t={};return Qe(mh(this.getSetOnceProps()),(n,s)=>{s==="$current_url"&&(s="url"),t["$session_entry_"+Mu(s)]=n}),t}}class bh{constructor(){this.oi={}}on(t,n){return this.oi[t]||(this.oi[t]=[]),this.oi[t].push(n),()=>{this.oi[t]=this.oi[t].filter(s=>s!==n)}}emit(t,n){for(var s of this.oi[t]||[])s(n);for(var i of this.oi["*"]||[])i(t,n)}}var Ad=tt("[SessionId]");class xm{on(t,n){return this.ai.on(t,n)}constructor(t,n,s){var i;if(this.li=[],this.ui=void 0,this.ai=new bh,this.hi=(h,m)=>!(!Pi(h)||!Pi(m))&&Math.abs(h-m)>this.sessionTimeoutMs,!t.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(t.config.cookieless_mode===os)throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.Bt=t.config,this.ni=t.persistence,this.ci=void 0,this.di=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null,this.vi=n||Ms,this.fi=s||Ms;var o=this.Bt.persistence_name||this.Bt.token;if(this._sessionTimeoutMs=1e3*zn(this.Bt.session_idle_timeout_seconds||1800,60,36e3,Ad.createLogger("session_idle_timeout_seconds"),1800),t.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.pi(),this.gi="ph_"+o+"_window_id",this.mi="ph_"+o+"_primary_window_exists",this.yi()){var a=Mt.Z(this.gi),c=Mt.Z(this.mi);a&&!c?this.ci=a:Mt.F(this.gi),Mt.M(this.mi,!0)}if((i=this.Bt.bootstrap)!=null&&i.sessionID)try{var u=(h=>{var m=this.Bt.bootstrap.sessionID.replace(/-/g,"");if(m.length!==32)throw new Error("Not a valid UUID");if(m[12]!=="7")throw new Error("Not a UUIDv7");return parseInt(m.substring(0,12),16)})();this.bi(this.Bt.bootstrap.sessionID,new Date().getTime(),u)}catch(h){Ad.error("Invalid sessionID in bootstrap",h)}this.wi()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(t){return fe(this.li)&&(this.li=[]),this.li.push(t),this.di&&t(this.di,this.ci),()=>{this.li=this.li.filter(n=>n!==t)}}yi(){return this.Bt.persistence!=="memory"&&!this.ni._r&&Mt.R()}Ii(t){t!==this.ci&&(this.ci=t,this.yi()&&Mt.M(this.gi,t))}Ci(){return this.ci?this.ci:this.yi()?Mt.Z(this.gi):null}
983bi(t,n,s){t===this.di&&n===this._sessionActivityTimestamp&&s===this._sessionStartTimestamp||(this._sessionStartTimestamp=s,this._sessionActivityTimestamp=n,this.di=t,this.ni.register({[El]:[n,t,s]}))}Si(){var t=this.ni.props[El];return He(t)&&t.length===2&&t.push(t[0]),t||[0,null,0]}resetSessionId(){this.bi(null,null,null)}destroy(){clearTimeout(this.xi),this.xi=void 0,this.ui&&$&&($.removeEventListener(Rl,this.ui,{capture:!1}),this.ui=void 0),this.li=[]}wi(){this.ui=()=>{this.yi()&&Mt.F(this.mi)},ft($,Rl,this.ui,{capture:!1})}checkAndGetSessionAndWindowId(t,n){if(t===void 0&&(t=!1),n===void 0&&(n=null),this.Bt.cookieless_mode===os)throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');var s=n||new Date().getTime(),[i,o,a]=this.Si(),c=this.Ci(),u=Pi(a)&&Math.abs(s-a)>864e5,h=!1,m=!o,_=!m&&!t&&this.hi(s,i);m||_||u?(o=this.vi(),c=this.fi(),Ad.info("new session ID generated",{sessionId:o,windowId:c,changeReason:{noSessionId:m,activityTimeout:_,sessionPastMaximumLength:u}}),a=s,h=!0):c||(c=this.fi(),h=!0);var b=Pi(i)&&t&&!u?i:s,v=Pi(a)?a:new Date().getTime();return this.Ii(c),this.bi(o,b,v),t||this.pi(),h&&this.li.forEach(w=>w(o,c,h?{noSessionId:m,activityTimeout:_,sessionPastMaximumLength:u}:void 0)),{sessionId:o,windowId:c,sessionStartTimestamp:v,changeReason:h?{noSessionId:m,activityTimeout:_,sessionPastMaximumLength:u}:void 0,lastActivityTimestamp:i}}pi(){clearTimeout(this.xi),this.xi=setTimeout(()=>{var[t]=this.Si();if(this.hi(new Date().getTime(),t)){var n=this.di;this.resetSessionId(),this.ai.emit("forcedIdleReset",{idleSessionId:n})}},1.1*this.sessionTimeoutMs)}}var r0=function(e,t){if(!e)return!1;var n=e.userAgent;if(n&&rm(n,t))return!0;try{var s=e?.userAgentData;if(s!=null&&s.brands&&s.brands.some(i=>rm(i?.brand,t)))return!0}catch{}return!!e.webdriver},Nl=function(e,t){if(!function(n){try{new RegExp(n)}catch{return!1}return!0}(t))return!1;try{return new RegExp(t).test(e)}catch{return!1}};function Im(e,t,n){return Wi({distinct_id:e,userPropertiesToSet:t,userPropertiesToSetOnce:n})}var a0={exact:(e,t)=>t.some(n=>e.some(s=>n===s)),is_not:(e,t)=>t.every(n=>e.every(s=>n!==s)),regex:(e,t)=>t.some(n=>e.some(s=>Nl(n,s))),not_regex:(e,t)=>t.every(n=>e.every(s=>!Nl(n,s))),icontains:(e,t)=>t.map(Na).some(n=>e.map(Na).some(s=>n.includes(s))),not_icontains:(e,t)=>t.map(Na).every(n=>e.map(Na).every(s=>!n.includes(s))),gt:(e,t)=>t.some(n=>{var s=parseFloat(n);return!isNaN(s)&&e.some(i=>s>parseFloat(i))}),lt:(e,t)=>t.some(n=>{var s=parseFloat(n);return!isNaN(s)&&e.some(i=>s<parseFloat(i))})},Na=e=>e.toLowerCase();function l0(e,t){return!e||Object.entries(e).every(n=>{var[s,i]=n,o=t?.[s];if(fe(o)||us(o))return!1;var a=[String(o)],c=a0[i.operator];return!!c&&c(i.values,a)})}var lp="custom",Om="i.posthog.com",qM=/^\/static\//;class jM{constructor(t){this.ki={},this.instance=t}get apiHost(){var t=this.instance.config.api_host.trim().replace(/\/$/,"");return t==="https://app.posthog.com"?"https://us.i.posthog.com":t}get flagsApiHost(){var t=this.instance.config.flags_api_host;return t?t.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var t,n=(t=this.instance.config.ui_host)==null?void 0:t.replace(/\/$/,"");return n||(n=this.apiHost.replace("."+Om,".posthog.com")),n==="https://app.posthog.com"?"https://us.posthog.com":n}get region(){return this.ki[this.apiHost]||(this.ki[this.apiHost]=/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"us":/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?"eu":lp),this.ki[this.apiHost]}Ti(t){var n=this.instance.config.__preview_external_dependency_versioned_paths;if(typeof n=="string"&&qM.test(t))return n.trim().replace(/\/$/,"")||void 0}endpointFor(t,n){if(n===void 0&&(n=""),n&&(n=n[0]==="/"?n:"/"+n),t==="ui")return this.uiHost+n;if(t==="flags")return this.flagsApiHost+n;if(t==="assets"){var s=this.Ti(n);if(s)return""+s+n}if(this.region===lp)return this.apiHost+n;var i=Om+n;switch(t){case"assets":return"https://"+this.region+"-assets."+i;case"api":return"https://"+this.region+"."+i}}}var je=tt("[Surveys]"),cp="seenSurvey_",KM=[Sd.Popover,Sd.Widget,Sd.API],YM={ignoreConditions:!1,ignoreDelay:!1,displayType:sp.Popover}
983,XM=tt("[PostHog ExternalIntegrations]"),JM={intercom:"intercom-integration",crispChat:"crisp-chat-integration"};class QM{constructor(t){this._instance=t}ur(t,n){var s;(s=_e.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this._instance,t,i=>{if(i)return XM.error("failed to load script",i);n()})}startIfEnabledOrStop(){var t=this,n=function(a){var c,u,h;!i||(c=_e.__PosthogExtensions__)!=null&&(c=c.integrations)!=null&&c[a]||t.ur(JM[a],()=>{var m;(m=_e.__PosthogExtensions__)==null||(m=m.integrations)==null||(m=m[a])==null||m.start(t._instance)}),!i&&(u=_e.__PosthogExtensions__)!=null&&(u=u.integrations)!=null&&u[a]&&((h=_e.__PosthogExtensions__)==null||(h=h.integrations)==null||(h=h[a])==null||h.stop())};for(var[s,i]of Object.entries((o=this._instance.config.integrations)!==null&&o!==void 0?o:{})){var o;n(s)}}}var Oi,gr={},Rd=0,dp=()=>{},km='Consent opt in/out is not valid with cookieless_mode="always" and will be ignored',Fo="Surveys module not available",Mm="sanitize_properties is deprecated. Use before_send instead",c0="Invalid value for property_denylist config: ",Di="posthog",d0=!FM&&Qt?.indexOf("MSIE")===-1&&Qt?.indexOf("Mozilla")===-1,Pm=e=>{var t;return oe({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,token:"",autocapture:!0,cross_subdomain_cookie:gM(ce?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:dp,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:"if_capture_pageview",defaults:e??"unset",__preview_deferred_init_extensions:!1,__preview_external_dependency_versioned_paths:!1,debug:kt&&ot(kt?.search)&&kt.search.indexOf("__posthog_debug=true")!==-1||!1,cookie_expiration:365,upgrade:!1,disable_session_recording:!1,disable_persistence:!1,disable_web_experiments:!0,disable_surveys:!1,disable_surveys_automatic_display:!1,disable_conversations:!1,disable_product_tours:!1,disable_external_dependency_loading:!1,enable_recording_console_log:void 0,secure_cookie:($==null||(t=$.location)==null?void 0:t.protocol)==="https:",ip:!1,opt_out_capturing_by_default:!1,opt_out_persistence_by_default:!1,opt_out_useragent_filter:!1,opt_out_capturing_persistence_type:"localStorage",consent_persistence_name:null,opt_out_capturing_cookie_prefix:null,opt_in_site_apps:!1,property_denylist:[],respect_dnt:!1,sanitize_properties:null,request_headers:{},request_batching:!0,properties_string_max_length:65535,mask_all_element_attributes:!1,mask_all_text:!1,mask_personal_data_properties:!1,custom_personal_data_properties:[],advanced_disable_flags:!1,advanced_disable_decide:!1,advanced_disable_feature_flags:!1,advanced_disable_feature_flags_on_first_load:!1,advanced_only_evaluate_survey_feature_flags:!1,advanced_feature_flags_dedup_per_session:!1,advanced_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,surveys_request_timeout_ms:1e4,on_request_error(n){ue.error("Bad HTTP status: "+n.statusCode+" "+n.text)},get_device_id:n=>n,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:np,before_send:void 0,request_queue_config:{flush_interval_ms:ap},error_tracking:{},_onCapture:dp,__preview_eager_load_replay:!1},(n=>({rageclick:!n||"2025-11-30">n||{content_ignorelist:!0},capture_pageview:!n||"2025-05-24">n||"history_change",session_recording:n&&n>="2025-11-30"?{strictMinimumDuration:!0}:{},external_scripts_inject_target:n&&n>="2026-01-30"?"head":"body",internal_or_test_user_hostname:n&&n>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0}))(e))},ZM=[["process_person","person_profiles"],["xhr_headers","request_headers"],["cookie_name","persistence_name"],["disable_cookie","disable_persistence"],["store_google","save_campaign_params"],["verbose","debug"]],Nm=e=>{var t={};for(var[n,s]of ZM)fe(e[n])||(t[s]=e[n]);var i=rt({},t,e);return He(e.property_blacklist)&&(fe(e.property_denylist)?i.property_denylist=e.property_blacklist:He(e.property_denylist)?i.property_denylist=[...e.property_blacklist,...e.property_denylist]:ue.error(c0+e.property_denylist)),i};class eP{constructor(){this.__forceAllowLocalhost=!1}get Ai(){return this.__forceAllowLocalhost}set Ai(t){ue.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=t}}class wn{Ei(t,n){if(t){var s=this.Ri.indexOf(t);s!==-1&&this.Ri.splice(s,1)}return this.Ri.push(n),n.initialize==null||n.initialize(),n}Ni(){return this.config.cookieless_mode===os||this.config.cookieless_mode===ei&&this.consent.isRejected()}get decideEndpointWasHit(){var t,n;return(t=(n=this.featureFlags)==null?void 0:n.hasLoadedFlags)!==null&&t!==void 0&&t}get flagsEndpointWasHit(){var t,n;return(t=(n=this.featureFlags)==null?void 0:n.hasLoadedFlags)!==null&&t!==void 0&&t}constructor(){var t;this.webPerformance=new eP,this.Mi=!1,this.version=Vt.LIB_VERSION,this.Fi=new bh,this.Ri=[],this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=Pm(),this.SentryIntegration=CM,this.sentryIntegration=s=>function(i,o){var a=Vv(i,o);return{name:zv,processEvent:c=>a(c)}}(this,s),this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint="/e/",this.Oi=!1,this.Pi=null,this.Li=null,this.Di=null,this.scrollManager=new zM(this),this.pageViewM
983anager=new ym(this),this.rateLimiter=new PM(this),this.requestRouter=new jM(this),this.consent=new EM(this),this.externalIntegrations=new QM(this);var n=(t=wn.__defaultExtensionClasses)!==null&&t!==void 0?t:{};this.featureFlags=n.featureFlags&&new n.featureFlags(this),this.toolbar=n.toolbar&&new n.toolbar(this),this.surveys=n.surveys&&new n.surveys(this),this.conversations=n.conversations&&new n.conversations(this),this.logs=n.logs&&new n.logs(this),this.experiments=n.experiments&&new n.experiments(this),this.exceptions=n.exceptions&&new n.exceptions(this),this.people={set:(s,i,o)=>{var a=ot(s)?{[s]:i}:s;this.setPersonProperties(a),o?.({})},set_once:(s,i,o)=>{var a=ot(s)?{[s]:i}:s;this.setPersonProperties(void 0,a),o?.({})}},this.on("eventCaptured",s=>ue.info('send "'+s?.event+'"',s))}init(t,n,s){if(s&&s!==Di){var i,o=(i=gr[s])!==null&&i!==void 0?i:new wn;return o._init(t,n,s),gr[s]=o,gr[Di][s]=o,o}return this._init(t,n,s)}_init(t,n,s){var i,o;if(n===void 0&&(n={}),fe(t)||Wa(t))return ue.critical("PostHog was initialized without a token. This likely indicates a misconfiguration. Please check the first argument passed to posthog.init()"),this;if(this.__loaded)return console.warn("[PostHog.js]","You have already initialized PostHog! Re-initializing is a no-op"),this;this.__loaded=!0,this.config={},n.debug=this.Bi(n.debug),this.ji=n,this.$i=[],n.person_profiles?this.Li=n.person_profiles:n.process_person&&(this.Li=n.process_person),this.set_config(rt({},Pm(n.defaults),Nm(n),{name:s,token:t})),this.config.on_xhr_error&&ue.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=n.disable_compression?void 0:Bn.GZipJS;var a=this.qi();this.persistence=new vd(this.config,a),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new vd(oe({},this.config,{persistence:"sessionStorage"}),a);var c=oe({},this.persistence.props),u=oe({},this.sessionPersistence.props);this.register({$initialization_time:new Date().toISOString()}),this.Zi=new HM(B=>this.Vi(B),this.config.request_queue_config),this.Hi=new WM(this),this.__request_queue=[];var h=this.Ni();if(h||(this.sessionManager=new xm(this),this.sessionPropsManager=new Rm(this,this.sessionManager,this.persistence)),this.config.__preview_deferred_init_extensions?(ue.info("Deferring extension initialization to improve startup performance"),setTimeout(()=>{this.zi(h)},0)):(ue.info("Initializing extensions synchronously"),this.zi(h)),Vt.DEBUG=Vt.DEBUG||this.config.debug,Vt.DEBUG&&ue.info("Starting in debug mode",{this:this,config:n,thisC:oe({},this.config),p:c,s:u}),!this.config.identity_distinct_id||(i=n.bootstrap)!=null&&i.distinctID||(n.bootstrap=oe({},n.bootstrap,{distinctID:this.config.identity_distinct_id,isIdentifiedID:!0})),((o=n.bootstrap)==null?void 0:o.distinctID)!==void 0){var m=n.bootstrap.distinctID,_=this.get_distinct_id(),b=this.persistence.get_property(kn);if(n.bootstrap.isIdentifiedID&&_!=null&&_!==m&&b===Ri)this.identify(m);else if(n.bootstrap.isIdentifiedID&&_!=null&&_!==m&&b===xi)ue.warn("Bootstrap distinctID differs from an already-identified user. The existing identity is preserved. Call reset() before reinitializing if you intend to switch users.");else{var v=this.config.get_device_id(Ms()),w=n.bootstrap.isIdentifiedID?v:m;this.persistence.set_property(kn,n.bootstrap.isIdentifiedID?xi:Ri),this.register({distinct_id:m,$device_id:w})}}if(h)this.register_once({distinct_id:Ia,$device_id:null},"");else if(!this.get_distinct_id()){var A=this.config.get_device_id(Ms());this.register_once({distinct_id:A,$device_id:A},""),this.persistence.set_property(kn,Ri)}return ft($,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),n.segment?function(B,H){var I=B.config.segment;if(!I)return H();(function(T,S){var C=T.config.segment;if(!C)return S();var M=D=>{var k=()=>D.anonymousId()||Ms();T.config.get_device_id=k,D.id()&&(T.register({distinct_id:D.id(),$device_id:k()}),T.persistence.set_property(kn,xi)),S()},U=C.user();"then"in U&&ss(U.then)?U.then(M):M(U)})(B,()=>{I.register((T=>{Promise&&Promise.resolve||bd.warn("This browser does not have Promise support, and can not use the segment integration");var S=(C,M)=>
983{if(!M)return C;C.event.userId||C.event.anonymousId===T.get_distinct_id()||(bd.info("No userId set, resetting PostHog"),T.reset()),C.event.userId&&C.event.userId!==T.get_distinct_id()&&(bd.info("UserId set, identifying with PostHog"),T.identify(C.event.userId));var U=T.calculateEventProperties(M,C.event.properties);return C.event.properties=Object.assign({},U,C.event.properties),C};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:()=>!0,load:()=>Promise.resolve(),track:C=>S(C,C.event.event),page:C=>S(C,Li),identify:C=>S(C,yd),screen:C=>S(C,"$screen")}})(B)).then(()=>{H()})})}(this,()=>this.Ui()):this.Ui(),ss(this.config._onCapture)&&this.config._onCapture!==dp&&(ue.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",B=>this.config._onCapture(B.event,B))),this.config.ip&&ue.warn('The `ip` config option has NO EFFECT AT ALL and has been deprecated. Use a custom transformation or "Discard IP data" project setting instead. See https://posthog.com/tutorials/web-redact-properties#hiding-customer-ip-address for more information.'),this}zi(t){var n,s,i,o,a,c,u,h=performance.now(),m=oe({},wn.__defaultExtensionClasses,this.config.__extensionClasses),_=[];m.featureFlags&&this.Ri.push(this.featureFlags=(n=this.featureFlags)!==null&&n!==void 0?n:new m.featureFlags(this)),m.exceptions&&this.Ri.push(this.exceptions=(s=this.exceptions)!==null&&s!==void 0?s:new m.exceptions(this)),m.historyAutocapture&&this.Ri.push(this.historyAutocapture=new m.historyAutocapture(this)),m.tracingHeaders&&this.Ri.push(new m.tracingHeaders(this)),m.siteApps&&this.Ri.push(this.siteApps=new m.siteApps(this)),m.sessionRecording&&!t&&this.Ri.push(this.sessionRecording=new m.sessionRecording(this)),this.config.disable_scroll_properties||_.push(()=>{this.scrollManager.startMeasuringScrollPosition()}),m.autocapture&&this.Ri.push(this.autocapture=new m.autocapture(this)),m.surveys&&this.Ri.push(this.surveys=(i=this.surveys)!==null&&i!==void 0?i:new m.surveys(this)),m.logs&&this.Ri.push(this.logs=(o=this.logs)!==null&&o!==void 0?o:new m.logs(this)),m.conversations&&this.Ri.push(this.conversations=(a=this.conversations)!==null&&a!==void 0?a:new m.conversations(this)),m.productTours&&this.Ri.push(this.productTours=new m.productTours(this)),m.heatmaps&&this.Ri.push(this.heatmaps=new m.heatmaps(this)),m.webVitalsAutocapture&&this.Ri.push(this.webVitalsAutocapture=new m.webVitalsAutocapture(this)),m.exceptionObserver&&this.Ri.push(this.exceptionObserver=new m.exceptionObserver(this)),m.deadClicksAutocapture&&this.Ri.push(this.deadClicksAutocapture=new m.deadClicksAutocapture(this,TM)),m.toolbar&&this.Ri.push(this.toolbar=(c=this.toolbar)!==null&&c!==void 0?c:new m.toolbar(this)),m.experiments&&this.Ri.push(this.experiments=(u=this.experiments)!==null&&u!==void 0?u:new m.experiments(this)),this.Ri.forEach(b=>{b.initialize&&_.push(()=>{b.initialize==null||b.initialize()})}),_.push(()=>{if(this.Yi){var b=this.Yi;this.Yi=void 0,this.Nr(b)}}),this.Gi(_,h)}Gi(t,n){for(;t.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-n>=30&&t.length>0)return void setTimeout(()=>{this.Gi(t,n)},0);var s=t.shift();if(s)try{s()}catch(o){ue.error("Error initializing extension:",o)}}var i=Math.round(performance.now()-n);this.register_for_session({[Fv]:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",[Bv]:i}),this.config.__preview_deferred_init_extensions&&ue.info("PostHog extensions initialized ("+i+"ms)")}Nr(t){var n;if(!ce||!ce.body)return ue.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout(()=>{this.Nr(t)},500);this.config.__preview_deferred_init_extensions&&(this.Yi=t),this.Wi=t,this.compression=void 0,t.supportedCompression&&!this.config.disable_compression&&(this.compression=Ge(t.supportedCompression,Bn.GZipJS)?Bn.GZipJS:Ge(t.supportedCompression,Bn.Base64)?Bn.Base64:void 0),(n=t.analytics)!=null&&n.endpoint&&(this.analyticsDefaultEndpoint=t.analytics.endpoint),this.set_config({person_profiles:this.Li?this.Li:np}),this.Ri.forEach(s=>s.onRemoteConfig==null?void 0:s.onRemoteConfig(t))}Ui(){try{this.config.loaded(this)}catch(s){ue.critical("`loaded` function failed",s)}if(this.Xi(),this.config.internal_or_test_user_hostname&&kt!=null&&kt.hostname){var t=kt.hostname,n=this.config.internal_or_test_user_hostname;(typeof n=="string"?t===n:n.test(t))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout(()=>{(this.consent.isOptedIn()||this.Ni())&&this.Ji()},1),this.Ki=new Zv(this),this.Ki.load()}Xi(){var t;this.is_capturing()&&this.config.request_batching&&((t=this.Zi)==null||t.enable())}_dom_loaded(){this.is_capturing()&&Oa(this.__request_queue,t=>this.Vi(t)),this.__request_queue=[],this.Xi()}_handle_unload(){var t,n,s,i;(t=this.surveys)==null||t.handlePageUnload(),this.config.request_batching?(this.Qi()&&this.capture(md),(n=this.logs)==null||n.flushLogs("sendBeacon"),(s=this.Zi)==null||s.unload(),(i=this.Hi)==null||i.unload()):this.Qi()&&this.capture(md,null,{transport:"sendBeacon"})}_send_request(t){this.__loaded&&(d0?this.__request_queue.push(t):this.rateLimiter.isServerRateLimited(t.batchKey)||(t.transport=t.transport||this.config.api_transport,t.url=uc(t.url,{ip:this.config.ip?1:0}),t.headers=oe({},this.config.request_headers,t.headers),t.compression=t.compression==="best-available"?this.compression:t.compression,t.disableXHRCredentials=this.config.__preview_disable_xhr_credentials,this.config.__preview_disable_beacon&&(t.disableTransport=["sendBeacon"]),t.fetchOptions=t.fetchOptions||this.config.fetch_options,
983(n=>{var s,i,o,a=oe({},n);a.timeout=a.timeout||6e4,a.url=Am(a.url,a.compression);var c=(s=a.transport)!==null&&s!==void 0?s:"fetch",u=ja.filter(m=>!a.disableTransport||!m.transport||!a.disableTransport.includes(m.transport)),h=(i=(o=function(m,_){for(var b=0;m.length>b;b++)if(m[b].transport===c)return m[b]}(u))==null?void 0:o.method)!==null&&i!==void 0?i:u[0].method;if(!h)throw new Error("No available transport method");c!=="sendBeacon"&&a.data&&a.compression===Bn.GZipJS&&Ck&&!Cm?BM(a).then(m=>{h(m)}).catch(m=>{if((_=>!(!_||typeof _!="object")&&("name"in _?String(_.name):"")==="NotReadableError")(m))return Cm=!0,void h(oe({},a,{compression:void 0,url:Am(n.url,void 0)}));h(a)}):h(a)})(oe({},t,{callback:n=>{var s,i;this.rateLimiter.checkForLimiting(n),400>n.statusCode||(s=(i=this.config).on_request_error)==null||s.call(i,n),t.callback==null||t.callback(n)}}))))}Vi(t){this.Hi?this.Hi.retriableRequest(t):this._send_request(t)}_execute_array(t){Rd++;try{var n,s=[],i=[],o=[];Oa(t,c=>{c&&(He(n=c[0])?o.push(c):ss(c)?c.call(this):He(c)&&n==="alias"?s.push(c):He(c)&&n.indexOf("capture")!==-1&&ss(this[n])?o.push(c):i.push(c))});var a=function(c,u){Oa(c,function(h){if(He(h[0])){var m=u;Qe(h,function(_){m=m[_[0]].apply(m,_.slice(1))})}else u[h[0]].apply(u,h.slice(1))})};a(s,this),a(i,this),a(o,this)}finally{Rd--}}push(t){if(Rd>0&&He(t)&&ot(t[0])){var n=wn.prototype[t[0]];ss(n)&&n.apply(this,t.slice(1))}else this._execute_array([t])}capture(t,n,s){var i,o,a,c,u;if(this.__loaded&&this.persistence&&this.sessionPersistence&&this.Zi){if(this.is_capturing())if(!fe(t)&&ot(t)){var h=!this.config.opt_out_useragent_filter&&this._is_bot();if(!h||this.config.__preview_capture_bot_pageviews){var m=s!=null&&s.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(m==null||!m.isRateLimited){n!=null&&n.$current_url&&!ot(n?.$current_url)&&(ue.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),n==null||delete n.$current_url),t!=="$exception"||s!=null&&s.en||ue.warn("Using `posthog.capture('$exception')` is unreliable because it does not attach required metadata. Use `posthog.captureException(error)` instead, which attaches required metadata automatically."),this.sessionPersistence.update_search_keyword(),this.config.save_campaign_params&&this.sessionPersistence.update_campaign_params(),this.config.save_referrer&&this.sessionPersistence.update_referrer_info(),(this.config.save_campaign_params||this.config.save_referrer)&&this.persistence.set_initial_person_info();var _=new Date,b=s?.timestamp||_,v=Ms(),w={uuid:v,event:t,properties:this.calculateEventProperties(t,n||{},b,v)};t===Li&&this.config.__preview_capture_bot_pageviews&&h&&(w.event="$bot_pageview",w.properties.$browser_type="bot"),m&&(w.properties.$lib_rate_limit_remaining_tokens=m.remainingTokens),s?.$set&&(w.$set=s?.$set);var A,B,H,I=this.tn(s?.$set_once,t!==hm,t===yd);if(I&&(w.$set_once=I),s!=null&&s._noTruncate||(o=this.config.properties_string_max_length,a=w,c=k=>ot(k)?k.slice(0,o):k,u=new Set,w=function k(F,g){return F!==Object(F)?c?c(F):F:u.has(F)?void 0:(u.add(F),He(F)?(W=[],Oa(F,Z=>{W.push(k(Z))})):(W={},Qe(F,(Z,P)=>{u.has(Z)||(W[P]=k(Z))})),W);var W}(a)),w.timestamp=b,fe(s?.timestamp)||(w.properties.$event_time_override_provided=!0,w.properties.$event_time_override_system_time=_),t===Xo.DISMISSED||t===Xo.SENT){var T=n?.[Ed.SURVEY_ID],S=n?.[Ed.SURVEY_ITERATION];(k=>{try{var F=(g=>((W,Z)=>{var P=""+cp+Z.id;return Z.current_iteration&&Z.current_iteration>0&&(P=""+cp+Z.id+"_"+Z.current_iteration),P})(0,g))(k);if(localStorage.getItem(F))return;localStorage.setItem(F,"true")}catch(g){je.error("Failed to persist survey seen state",g)}})({id:T,current_iteration:S}),w.$set=oe({},w.$set,{[(A={id:T,current_iteration:S},B=t===Xo.SENT?"responded":"dismissed",H="$survey_"+B+"/"+A.id,A.current_iteration&&A.current_iteration>0&&(H="$survey_"+B+"/"+A.id+"/"+A.current_iteration),H)]:!0})}else t===Xo.SHOWN&&(w.$set=oe({},w.$set,{[Ed.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));if(t===MM.SHOWN){var C=n?.[bm.TOUR_TYPE];C&&(w.$set=oe({},w.$set,{[bm.TOUR_LAST_SEEN_DATE+"/"+C]:new Date().toISOString()}))}var M=oe({},w.properties.$set,w.$set);if(Hi(M)||this.setPersonPropertiesForFlags(M),!Ue(this.config.before_send)){var U=this.rn(w);if(!U)return;w=U}
983this.Fi.emit("eventCaptured",w);var D={method:"POST",url:(i=s?._url)!==null&&i!==void 0?i:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),data:w,compression:"best-available",batchKey:s?._batchKey};return!this.config.request_batching||s&&(s==null||!s._batchKey)||s!=null&&s.send_instantly?this.Vi(D):this.Zi.enqueue(D),w}ue.critical("This capture call is ignored due to client rate limiting.")}}else ue.error("No event name provided to posthog.capture")}else ue.uninitializedWarning("posthog.capture")}_addCaptureHook(t){return this.on("eventCaptured",n=>t(n.event,n))}calculateEventProperties(t,n,s,i,o){if(s=s||new Date,!this.persistence||!this.sessionPersistence)return n;var a=o?void 0:this.persistence.remove_event_timer(t),c=oe({},n);if(c.token=this.config.token,c.$config_defaults=this.config.defaults,this.Ni()&&(c.$cookieless_mode=!0),t==="$snapshot"){var u=oe({},this.persistence.properties(),this.sessionPersistence.properties());return c.distinct_id=u.distinct_id,(!ot(c.distinct_id)&&!xn(c.distinct_id)||Wa(c.distinct_id))&&ue.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),c}var h,m=function(H,I){var T,S,C,M;if(!Qt)return{};var U,D,k,F,g,W,Z,P,pe=H?[...ho,...I||[]]:[],[se,te]=function(de){for(var Fe=0;cm.length>Fe;Fe++){var[et,Ye]=cm[Fe],$e=et.exec(de),St=$e&&(ss(Ye)?Ye($e,de):Ye);if(St)return St}return["",""]}(Qt);return rt(mh({$os:se,$os_version:te,$browser:Rv(Qt,navigator.vendor),$device:dm(Qt),$device_type:(D=Qt,k={userAgentDataPlatform:(T=navigator)==null||(T=T.userAgentData)==null?void 0:T.platform,maxTouchPoints:(S=navigator)==null?void 0:S.maxTouchPoints,screenWidth:$==null||(C=$.screen)==null?void 0:C.width,screenHeight:$==null||(M=$.screen)==null?void 0:M.height,devicePixelRatio:$?.devicePixelRatio},P=dm(D),P===hv||P===pv||P==="Kobo"||P==="Kindle Fire"||P===Av?co:P===Mr||P===Zi||P===Pr||P===Nu?"Console":P===gv?"Wearable":P?gn:k?.userAgentDataPlatform==="Android"&&((F=k?.maxTouchPoints)!==null&&F!==void 0?F:0)>0?600>Math.min((g=k?.screenWidth)!==null&&g!==void 0?g:0,(W=k?.screenHeight)!==null&&W!==void 0?W:0)/((Z=k?.devicePixelRatio)!==null&&Z!==void 0?Z:1)?gn:co:"Desktop"),$timezone:Qv(),$timezone_offset:OM()}),{$current_url:Nr(kt?.href,pe,Lr),$host:kt?.host,$pathname:kt?.pathname,$raw_user_agent:Qt.length>1e3?Qt.substring(0,997)+"...":Qt,$browser_version:Hk(Qt,navigator.vendor),$browser_language:_m(),$browser_language_prefix:(U=_m(),typeof U=="string"?U.split("-")[0]:void 0),$screen_height:$?.screen.height,$screen_width:$?.screen.width,$viewport_height:$?.innerHeight,$viewport_width:$?.innerWidth,$lib:Vt.LIB_NAME,$lib_version:Vt.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3})}(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties);if(this.sessionManager){var{sessionId:_,windowId:b}=this.sessionManager.checkAndGetSessionAndWindowId(o,s.getTime());c.$session_id=_,c.$window_id=b}this.sessionPropsManager&&rt(c,this.sessionPropsManager.getSessionProps());try{var v;this.sessionRecording&&rt(c,this.sessionRecording.sdkDebugProperties),c.$sdk_debug_retry_queue_size=(v=this.Hi)==null?void 0:v.length}catch(H){c.$sdk_debug_error_capturing_properties=String(H)}if(this.requestRouter.region===lp&&(c.$lib_custom_api_host=this.config.api_host),h=t!==Li||o?t!==md||o?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(s):this.pageViewManager.doPageView(s,i),c=rt(c,h),t===Li&&ce&&(c.title=ce.title),!fe(a)){var w=s.getTime()-a;c.$duration=parseFloat((w/1e3).toFixed(3))}Qt&&this.config.opt_out_useragent_filter&&(c.$browser_type=this._is_bot()?"bot":"browser"),(c=rt({},m,this.persistence.properties(),this.sessionPersistence.properties(),c)).$is_identified=this._isIdentified(),He(this.config.property_denylist)?Qe(this.config.property_denylist,function(H){delete c[H]}):ue.error(c0+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);var A=this.config.sanitize_properties;A&&(ue.error(Mm),c=A(c,t));var B=this.nn();return c.$process_person_profile=B,B&&!o&&this.sn("_calculate_event_properties"),c}tn(t,n,s){var i;if(n===void 0&&(n=!0),s===void 0&&(s=!1),!this.persistence||!this.nn()||this.Mi&&!s)return t;var o=this.persistence.get_initial_props(),a=(i=this.sessionPropsManager)==null?void 0:i.getSetOnceProps(),c=rt({},o,a||{},t||{}),u=this.config.sanitize_properties;return u&&(ue.error(Mm),c=u(c,"$set_once")),n&&(this.Mi=!0),Hi(c)?void 0:c}register(t,n){var s;(s=this.persistence)==null||s.register(t,n)}register_once(t,n,s){var i;(i=this.persistence)==null||i.register_once(t,n,s)}register_for_session(t){var n;(n=this.sessionPersistence)==null||n.register(t)}unregister(t){var n;(n=this.persistence)==null||n.unregister(t)}unregister_for_session(t){var n;(n=this.sessionPersistence)==null||n.unregister(t)}an(t,n){this.register({[t]:n})}getFeatureFlag(t,n){var s;return(s=this.featureFlags)==null?void 0:s.getFeatureFlag(t,n)}getFeatureFlagPayload(t){var n;return(n=this.featureFlags)==null?void 0:n.getFeatureFlagPayload(t)}getFeatureFlagResult(t,n){var s;return(s=this.featureFlags)==null?void 0:s.getFeatureFlagResult(t,n)}isFeatureEnabled(t,n){var s;return(s=this.featureFlags)==null?void 0:s.isFeatureEnabled(t,n)}reloadFeatureFlags(){var t;(t=this.featureFlags)==null||t.reloadFeatureFlags()}updateFlags(t,n,s){var i;(i=this.featureFlags)==null||i.updateFlags(t,n,s)}updateEarlyAccessFeatureEnrollment(t,n,s){var i;(i=this.featureFlags)==null||i.updateEarlyAccessFeatureEnrollment(t,n,s)}getEarlyAccessFeatures(t,n,s){var i;return n===void 0&&(n=!1),(i=this.featureFlags)==null?void 0:i.getEarlyAccessFeatures(t,n,s)}on(t,n){return this.Fi.on(t,n)}onFeatureFlags(t){return this.featureFlags?this.featureFlags.onFeatureFlags(t):(t([],{},{errorsLoading:!0}),()=>{})}onSurveysLoaded(t){return this.surveys?this.surveys.onSurveysLoaded(t):(t([],{isLoaded:!1,error:Fo}),()=>{})}onSessionId(t){var n,s;return(n=(s=this.sessionManager)==null?void 0:s.onSessionId(t))!==null&&n!==void 0?n:()=>{}}getSurveys(t,n){n===void 0&&(n=!1),this.surveys?this.surveys.getSurveys(t,n):t([],{isLoaded:!1,error:Fo})}getActiveMatchingSurveys(t,n){n===void 0&&(n=!1),this.surveys?this.surveys.getActiveMatchingSurveys(t,n):t([],{isLoaded:!1,error:Fo})}renderSurvey(t,n){var s;(s=this.surveys)==null||s.renderSurvey(t,n)}displaySurvey(t,n){var s;n===void 0&&(n=YM),(s=this.surveys)==null||s.displaySurvey(t,n)}cancelPendingSurvey(t){var n;(n=this.surveys)==null||n.cancelPendingSurvey(t)}canRenderSurvey(t){var n,s;return(n=(s=this.surveys)==null?void 0:s.canRenderSurvey(t))!==null&&n!==void 0?n:{visible:!1,disabledReason:Fo}}canRenderSurveyAsync(t,n){var s,i;return n===void 0&&(n=!1),(s=(i=this.surveys)==null?void 0:i.canRenderSurveyAsync(t,n))!==null&&s!==void 0?s:Promise.resolve({visible:!1,disabledReason:Fo})}ln(t){return!t||Wa(t)?(ue.critical("Unique user id has not been set in posthog.identify"),!1):t===Ia?(ue.critical('The string "'+t+'" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.'),!1):!["distinct_id","distinctid"].includes(t.toLowerCase())&&!["undefined","null"].includes(t.toLowerCase())||(ue.critical('The string "'+t+'" was set in posthog.identify which indicates an error. This ID should be unique to the user and n
983ot a hardcoded string.'),!1)}identify(t,n,s){if(!this.__loaded||!this.persistence)return ue.uninitializedWarning("posthog.identify");if(xn(t)&&(t=t.toString(),ue.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),this.ln(t)&&this.sn("posthog.identify")){var i=this.get_distinct_id();this.register({$user_id:t}),this.get_property(Sl)||this.register_once({$had_persisted_distinct_id:!0,$device_id:i},""),t!==i&&t!==this.get_property(Vo)&&(this.unregister(Vo),this.register({distinct_id:t}));var o,a=(this.persistence.get_property(kn)||Ri)===Ri;t!==i&&a?(this.persistence.set_property(kn,xi),this.setPersonPropertiesForFlags({$set:n||{},$set_once:s||{}},!1),this.capture(yd,{distinct_id:t,$anon_distinct_id:i},{$set:n||{},$set_once:s||{}}),this.Di=Im(t,n,s),(o=this.featureFlags)==null||o.setAnonymousDistinctId(i)):(n||s)&&this.setPersonProperties(n,s),t!==i&&(this.reloadFeatureFlags(),this.unregister(hr))}}setPersonProperties(t,n){if((t||n)&&this.sn("posthog.setPersonProperties")){var s=Im(this.get_distinct_id(),t,n);this.Di!==s?(this.setPersonPropertiesForFlags({$set:t||{},$set_once:n||{}},!0),this.capture("$set",{$set:t||{},$set_once:n||{}}),this.Di=s):ue.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.")}}group(t,n,s){if(t&&n){var i=this.getGroups(),o=i[t]!==n;if(o&&this.resetGroupPropertiesForFlags(t),this.register({$groups:oe({},i,{[t]:n})}),o||s){var a={$group_type:t,$group_key:n};s&&(a.$group_set=s),this.capture(hm,a)}s&&this.setGroupPropertiesForFlags({[t]:s}),o&&!s&&this.reloadFeatureFlags()}else ue.error("posthog.group requires a group type and group key")}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(t,n){var s;n===void 0&&(n=!0),(s=this.featureFlags)==null||s.setPersonPropertiesForFlags(t,n)}resetPersonPropertiesForFlags(){var t;(t=this.featureFlags)==null||t.resetPersonPropertiesForFlags()}setGroupPropertiesForFlags(t,n){var s;n===void 0&&(n=!0),this.sn("posthog.setGroupPropertiesForFlags")&&((s=this.featureFlags)==null||s.setGroupPropertiesForFlags(t,n))}resetGroupPropertiesForFlags(t){var n;(n=this.featureFlags)==null||n.resetGroupPropertiesForFlags(t)}reset(t){var n,s,i,o,a,c,u,h;if(ue.info("reset"),!this.__loaded)return ue.uninitializedWarning("posthog.reset");var m=this.get_property(Sl);if(this.consent.reset(),(n=this.persistence)==null||n.clear(),(s=this.sessionPersistence)==null||s.clear(),(i=this.surveys)==null||i.reset(),(o=this.Ki)==null||o.stop(),(a=this.featureFlags)==null||a.reset(),(c=this.conversations)==null||c.reset(),(u=this.persistence)==null||u.set_property(kn,Ri),(h=this.sessionManager)==null||h.resetSessionId(),this.Di=null,this.config.cookieless_mode===os)this.register_once({distinct_id:Ia,$device_id:null},"");else{var _=this.config.get_device_id(Ms());this.register_once({distinct_id:_,$device_id:t?_:m},"")}this.register({$last_posthog_reset:new Date().toISOString()},1),delete this.config.identity_distinct_id,delete this.config.identity_hash,this.reloadFeatureFlags()}setIdentity(t,n){var s;this.config.identity_distinct_id=t,this.config.identity_hash=n,this.alias(t),(s=this.conversations)==null||s.un()}clearIdentity(){var t;delete this.config.identity_distinct_id,delete this.config.identity_hash,(t=this.conversations)==null||t.hn()}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var t,n;return(t=(n=this.sessionManager)==null?void 0:n.checkAndGetSessionAndWindowId(!0).sessionId)!==null&&t!==void 0?t:""}get_session_replay_url(t){if(!this.sessionManager)return"";var{sessionId:n,sessionStartTimestamp:s}=this.sessionManager.checkAndGetSessionAndWindowId(!0),i=this.requestRouter.endpointFor("ui","/project/"+this.config.token+"/replay/"+n);if(t!=null&&t.withTimestamp&&s){var o,a=(o=t.timestampLookBack)!==null&&o!==void 0?o:10;if(!s)return i;i+="?t="+Math.max(Math.floor((new Date().getTime()-s)/1e3)-a,0)}return i}alias(t,n){return t===this.get_property(Pv)?(ue.critical("Attempting to create alias for existing People user - aborting."),-2):this.sn("posthog.alias")?(fe(n)&&(n=this.get_distinct_id()),t!==n?(this.an(Vo,t),this.capture("$create_alias",{alias:t,distinct_id:n})):(ue.warn("alias matches current distinct_id - skipping api call."),this.identify(t),-1)):void 0}set_config(t){var n=oe({},this.config);if(ut(t)){var s,i,o,a,c,u,h,m,_,b;rt(this.config,Nm(t));var v=this.qi();(s=this.persistence)==null||s.update_config(this.config,n,v),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new vd(oe({},this.config,{persistence:"sessionStorage"}),v);var w=this.Bi(this.config.debug);Wn(w)&&(this.config.debug=w),Wn(this.config.debug)&&(this.config.debug?(Vt.DEBUG=!0,it.R()&&it.M("ph_debug",!0),ue.info("set_config",{config:t,oldConfig:n,newConfig:oe({},this.config)})):(Vt.DEBUG=!1,it.R()&&it.F("ph_debug"))),(i=this.exceptionObserver)==null||i.onConfigChange(),(o=this.exceptions)==null||o.onConfigChange(),(a=this.sessionRecording)==null||a.startIfEnabledOrStop(),(c=this.autocapture)==null||c.startIfEnabled(),(u=this.heatmaps)==null||u.startIfEnabled(),(h=this.exceptionObserver)==null||h.startIfEnabledOrStop(),(m=this.deadClicksAutocapture)==null||m.startIfEnabledOrStop(),(_=this.surveys)==null||_.loadIfEnabled(),this.cn(),(b=this.externalIntegrations)==null||b.startIfEnabledOrStop()}}_overrideSDKInfo(t,n){Vt.LIB_NAME=t,Vt.LIB_VERSION=n}startSessionRecording(t){var n,s,i,o,a,c=t===!0,u={sampling:c||!(t==null||!t.sampling),linked_flag:c||!(t==null||!t.linked_flag),url_trigger:c||!(t==null||!t.url_trigger),event_trigger:c||!(t==null||!t.event_trigger)};Object.values(u).some(Boolean)&&((n=this.sessionManager)==null||n.checkAndGetSessionAndWindowId(),u.sampling&&((s=this.sessionRecording)==null||s.overrideSampling()),u.linked_flag&&((i=this.sessionRecording)==null||i.overrideLinkedFlag()),u.url_trigger&&((o=this.sessionRecording)==null||o.overrideTrigger("url")),u.event_trigger&&((a=this.sessionRecording)==null||a.overrideTrigger("event"))),this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var t;return!((t=this.sessionRecording)==null||!t.started)}captureException(t,n){if(this.exceptions){var s=new Error("PostHog syntheticException"),i=this.exceptions.buildProperties(t,{handled:!0,syntheticException:s});return this.exceptions.sendExceptionEvent(oe({},i,n))}}addExceptionStep(t,n){var s;(s=this.exceptions)==null||s.addExceptionStep(t,n)}captureLog(t){var n;(n=this.logs)==null||n.captureLog(t)}get logger(){var t,n;return(t=(n=this.logs)==null?void 0:n.logger)!==null&&t!==void 0?t:wn.dn}startExceptionAutocapture(t){this.set_config({capture_exceptions:t==null||t})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(t){var n,s;return(n=(s=this.toolbar)==null?void 0:s.loadToolbar(t))!==null&&n!==void 0&&n}get_property(t){var n;return(n=this.persistence)==null?void 0:n.props[t]}getSessionProperty(t){var n;return(n=this.sessionPersistence)==null?void 0:n.props[t]}toString(){var t,n=(t=this.config.name)!==null&&t!==void 0?t:Di;return n!==Di&&(n=Di+"."+n),n}_isIdentified(){var t,n;return((t=this.persistence)==null?void 0:t.get_property(kn))===xi||((n=this.sessionPersistence)==null?void 0:n.get_property(kn))===xi}nn(){var t,n;return!(this.config.person_profiles==="never"||this.config.person_profiles===np&&!this._isIdentified()&&Hi(this.getGroups())&&((t=this.persistence)==null||(t=t.props)==null||!t[Vo])&&((n=this.persistence)==null||(n=n.props)==null||!n[Cl]))}Qi(){return this.config.capture_pageleave===!0||this.config.capture_pageleave==="if_capture_pageview"&&(this.config.capture_pageview===!0||this.config.capture_pageview==="history_change")}createPersonProfile(){this.nn()||this.sn("posthog.createPersonProfile")&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.sn("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:!0})}sn(t){return this.config.person_profiles==="never"?(ue.error(t+' was called, but process_person is set to "never". This call will be ignored.'),!1):(this.an(Cl,!0),!0)}qi(){if(this.config.cookieless_mode==="always")return!0;var t=this.consent.isOptedOut();return this.config.disable_persistence||t&&!(!this.config.opt_out_persistence_by_default&&this.config.cookieless_mode!==ei)}cn(){var t,n,s,i,o=this.qi();return((t=this.persistence)==null?void 0:t._r)!==o&&((s=this.persistence)==null||s.set_disabled(o)),((n=this.sessionPersistence)==null?void 0:n._r)!==o&&((i=this.sessionPersistence)==null||i.set_disabled(o)),o}opt_in_capturing(t){var n;if(this.config.cookieless_mode!==os){if(this.Ni()){var s,i,o,a,c;this.reset(!0),(s=this.sessionManager)==null||s.destroy(),(i=this.pageViewM
983anager)==null||i.destroy(),this.sessionManager=new xm(this),this.pageViewManager=new ym(this),this.persistence&&(this.sessionPropsManager=new Rm(this,this.sessionManager,this.persistence));var u,h=(o=(a=this.config.__extensionClasses)==null?void 0:a.sessionRecording)!==null&&o!==void 0?o:(c=wn.__defaultExtensionClasses)==null?void 0:c.sessionRecording;h&&(this.sessionRecording=this.Ei(this.sessionRecording,new h(this)),this.Wi&&((u=this.sessionRecording)==null||u.onRemoteConfig==null||u.onRemoteConfig(this.Wi)))}var m,_;this.consent.optInOut(!0),this.cn(),this.Xi(),(n=this.sessionRecording)==null||n.startIfEnabledOrStop(),this.config.cookieless_mode==ei&&((m=this.surveys)==null||m.loadIfEnabled()),(fe(t?.captureEventName)||t!=null&&t.captureEventName)&&this.capture((_=t?.captureEventName)!==null&&_!==void 0?_:"$opt_in",t?.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.Ji()}else ue.warn(km)}opt_out_capturing(){var t,n,s;this.config.cookieless_mode!==os?(this.config.cookieless_mode===ei&&this.consent.isOptedIn()&&this.reset(!0),this.consent.optInOut(!1),this.cn(),this.config.cookieless_mode===ei&&(this.register({distinct_id:Ia,$device_id:null}),(t=this.sessionManager)==null||t.destroy(),(n=this.pageViewManager)==null||n.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,(s=this.sessionRecording)==null||s.stopRecording(),this.sessionRecording=void 0,this.Ji())):ue.warn(km)}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){var t=this.consent.consent;return t===1?"granted":t===0?"denied":"pending"}is_capturing(){return this.config.cookieless_mode===os||(this.config.cookieless_mode===ei?this.consent.isRejected()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this.cn()}_is_bot(){return pn?r0(pn,this.config.custom_blocked_useragents):void 0}Ji(){ce&&(ce.visibilityState==="visible"?this.Oi||(this.Oi=!0,this.capture(Li,{title:ce.title},{send_instantly:!0}),this.Pi&&(ce.removeEventListener(Al,this.Pi),this.Pi=null)):this.Pi||(this.Pi=this.Ji.bind(this),ft(ce,Al,this.Pi)))}debug(t){t===!1?($?.console.log("You've disabled debug mode."),this.set_config({debug:!1})):($?.console.log("You're now in debug mode. All calls to PostHog will be logged in your console.\nYou can disable this with `posthog.debug(false)`."),this.set_config({debug:!0}))}Fr(){var t,n,s,i,o,a,c=this.ji||{};return"advanced_disable_flags"in c?!!c.advanced_disable_flags:this.config.advanced_disable_flags!==!1?!!this.config.advanced_disable_flags:this.config.advanced_disable_decide===!0?(ue.warn("Config field 'advanced_disable_decide' is deprecated. Please use 'advanced_disable_flags' instead. The old field will be removed in a future major version."),!0):(s="advanced_disable_decide",i=ue,o=(n="advanced_disable_flags")in(t=c)&&!Ue(t[n]),a=s in t&&!Ue(t[s]),o?t[n]:!!a&&(i&&i.warn("Config field '"+s+"' is deprecated. Please use '"+n+"' instead. The old field will be removed in a future major version."),t[s]))}rn(t){if(Ue(this.config.before_send))return t;var n=He(this.config.before_send)?this.config.before_send:[this.config.before_send],s=t;for(var i of n){if(s=i(s),Ue(s)){var o="Event '"+t.event+"' was rejected in beforeSend function";return Ik(t.event)?ue.warn(o+". This can cause unexpected behavior."):ue.info(o),null}s.properties&&!Hi(s.properties)||ue.warn("Event '"+t.event+"' has no properties after beforeSend function, this is likely an error.")}return s}getPageViewId(){var t;return(t=this.pageViewManager.dr)==null?void 0:t.pageViewId}captureTraceFeedback(t,n){this.capture("$ai_feedback",{$ai_trace_id:String(t),$ai_feedback_text:n})}captureTraceMetric(t,n,s){this.capture("$ai_metric",{$ai_trace_id:String(t),$ai_metric_name:n,$ai_metric_value:String(s)})}Bi(t){var n=Wn(t)&&!t,s=it.R()&&it.O("ph_debug")==="true";return!n&&(!!s||t)}}wn.__defaultExtensionClasses={},wn.dn={trace:Oi=()=>{},debug:Oi,info:Oi,warn:Oi,error:Oi,fatal:Oi},function(e,t){for(var n=0;t.length>n;n++)e.prototype[t[n]]=hM(e.prototype[t[n]])}(wn,["identify"]);var tP=1,nP=3,sP=11;function Lm(e){return e instanceof Element&&(e.id===Uv||!(e.closest==null||!e.closest(".toolbar-global-fade-container")))}function hi(e){return!!e&&e.nodeType===tP}function Pn(e,t){return!!e&&!!e.tagName&&e.tagName.toLowerCase()===t.toLowerCase()}function u0(e){return!!e&&e.nodeType===nP}function p0(e){return!!e&&e.nodeType===sP&&hi(e.host)}function vh(e){return e?cc(e).split(/\s+/):[]}function Dm(e){var t=$?.location.href;return!!(t&&e&&e.some(n=>t.match(n)))}function Ll(e){var t="";switch(typeof e.className){case"string":t=e.className;break;case"object":t=(e.className&&"baseVal"in e.className?e.className.baseVal:null)||e.getAttribute("class")||"";break;default:t=""}return vh(t)}function h0(e){return Ue(e)?null:cc(e).split(/(\s+)/).filter(t=>mr(t)).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function Dr(e){var t="";return pp(e)&&!g0(e)&&e.childNodes&&e.childNodes.length&&Qe(e.childNodes,function(n){var s;u0(n)&&n.textContent&&(t+=(s=h0(n.textContent))!==null&&s!==void 0?s:"")}),cc(t)}function Gm(e){return fe(e.target)?e.srcElement||null:(t=e.target)!=null&&t.shadowRoot?e.composedPath()[0]||null:e.target||null;var t}var Sh=["a","button","form","input","select","textarea","label"];function Um(e,t){if(fe(t))return!0;
983var n,s=function(o){if(t.some(a=>o.matches(a)))return{v:!0}};for(var i of e)if(n=s(i))return n.v;return!1}function f0(e){var t=e.parentNode;return!(!t||!hi(t))&&t}var iP=["next","previous","prev",">","<"],Fm=[".ph-no-rageclick",".ph-no-capture"],up=e=>!e||Pn(e,"html")||!hi(e),Bm=(e,t)=>{if(!$||up(e))return{parentIsUsefulElement:!1,targetElementList:[]};for(var n=!1,s=[e],i=e;i.parentNode&&!Pn(i,"body");)if(p0(i.parentNode))s.push(i.parentNode.host),i=i.parentNode.host;else{var o=f0(i);if(!o)break;if(t||Sh.indexOf(o.tagName.toLowerCase())>-1)n=!0;else{var a=$.getComputedStyle(o);a&&a.getPropertyValue("cursor")==="pointer"&&(n=!0)}s.push(o),i=o}return{parentIsUsefulElement:n,targetElementList:s}};function pp(e){for(var t=e;t.parentNode&&!Pn(t,"body");t=t.parentNode){var n=Ll(t);if(Ge(n,"ph-sensitive")||Ge(n,"ph-no-capture"))return!1}if(Ge(Ll(e),"ph-include"))return!0;var s=e.type||"";if(ot(s))switch(s.toLowerCase()){case"hidden":case"password":return!1}var i=e.name||e.id||"";return!ot(i)||!/^cc|cardnum|ccnum|creditcard|csc|cvc|cvv|exp|pass|pwd|routing|seccode|securitycode|securitynum|socialsec|socsec|ssn/i.test(i.replace(/[^a-zA-Z0-9]/g,""))}function g0(e){return!!(Pn(e,"input")&&!["button","checkbox","submit","reset"].includes(e.type)||Pn(e,"select")||Pn(e,"textarea")||e.getAttribute("contenteditable")==="true")}var m0="(4[0-9]{12}(?:[0-9]{3})?)|(5[1-5][0-9]{14})|(6(?:011|5[0-9]{2})[0-9]{12})|(3[47][0-9]{13})|(3(?:0[0-5]|[68][0-9])[0-9]{11})|((?:2131|1800|35[0-9]{3})[0-9]{11})",oP=new RegExp("^(?:"+m0+")$"),rP=new RegExp(m0),y0="\\d{3}-?\\d{2}-?\\d{4}",aP=new RegExp("^("+y0+")$"),lP=new RegExp("("+y0+")");function mr(e,t){return t===void 0&&(t=!0),!(Ue(e)||ot(e)&&(e=cc(e),(t?oP:rP).test((e||"").replace(/[- ]/g,""))||(t?aP:lP).test(e)))}function Hm(e){var t=Dr(e);return mr(t=(t+" "+_0(e)).trim())?t:""}function _0(e){var t="";return e&&e.childNodes&&e.childNodes.length&&Qe(e.childNodes,function(n){var s;if(n&&((s=n.tagName)==null?void 0:s.toLowerCase())==="span")try{var i=Dr(n);t=(t+" "+i).trim(),n.childNodes&&n.childNodes.length&&(t=(t+" "+_0(n)).trim())}catch(o){ue.error("[AutoCapture]",o)}}),t}function $m(e){return e.replace(/"|\\"/g,'\\"')}function cP(e){var t=e.attr__class;return t?He(t)?t:vh(t):void 0}class Wm{constructor(t){this.disabled=t===!1;var n=ut(t)?t:{};this.thresholdPx=n.threshold_px||30,this.timeoutMs=n.timeout_ms||1e3,this.clickCount=n.click_count||3,this.clicks=[]}isRageClick(t,n,s){if(this.disabled)return!1;var i=this.clicks[this.clicks.length-1];if(i&&Math.abs(t-i.x)+Math.abs(n-i.y)<this.thresholdPx&&this.timeoutMs>s-i.timestamp){if(this.clicks.push({x:t,y:n,timestamp:s}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:t,y:n,timestamp:s}];return!1}}var xd="$copy_autocapture",Id=tt("[AutoCapture]");function Od(e,t){return t.length>e?t.slice(0,e)+"...":t}function dP(e){if(e.previousElementSibling)return e.previousElementSibling;var t=e;do t=t.previousSibling;while(t&&!hi(t));return t}function uP(e,t){var n,s,{e:i,maskAllElementAttributes:o,maskAllText:a,elementAttributeIgnoreList:c,elementsChainAsString:u}=t;if(!hi(e))return{props:{}};for(var h=[e],m=e;m.parentNode&&!Pn(m,"body");)if(p0(m.parentNode))h.push(m.parentNode.host),m=m.parentNode.host;else{if(!hi(m.parentNode))break;h.push(m.parentNode),m=m.parentNode}var _,b,v=[],w={},A=!1,B=!1;if(Qe(h,C=>{var M=pp(C);if(Pn(C,"a")){var U=C.getAttribute("href");A=M&&!!U&&mr(U)&&U}Ge(Ll(C),"ph-no-capture")&&(B=!0),v.push(function(k,F,g,W){var Z=k.tagName.toLowerCase(),P={tag_name:Z};Sh.indexOf(Z)>-1&&!g&&(P.$el_text=Z.toLowerCase()==="a"||Z.toLowerCase()==="button"?Od(1024,Hm(k)):Od(1024,Dr(k)));var pe=Ll(k);pe.length>0&&(P.classes=pe.filter(function(Fe){return Fe!==""})),Qe(k.attributes,function(Fe){var et;if((!g0(k)||["name","id","class","aria-label"].indexOf(Fe.name)!==-1)&&(W==null||!W.includes(Fe.name))&&
983!F&&mr(Fe.value)&&(!ot(et=Fe.name)||et.substring(0,10)!=="_ngcontent"&&et.substring(0,7)!=="_nghost")){var Ye=Fe.value;Fe.name==="class"&&(Ye=vh(Ye).join(" ")),P["attr__"+Fe.name]=Od(1024,Ye)}});for(var se=1,te=1,de=k;de=dP(de);)se++,de.tagName===k.tagName&&te++;return P.nth_child=se,P.nth_of_type=te,P}(C,o,a,c));var D=function(k){if(!pp(k))return{};var F={};return Qe(k.attributes,function(g){if(g.name&&g.name.indexOf("data-ph-capture-attribute")===0){var W=g.name.replace("data-ph-capture-attribute-",""),Z=g.value;W&&Z&&mr(Z)&&(F[W]=Z)}}),F}(C);rt(w,D)}),B)return{props:{},explicitNoCapture:B};if(a||(v[0].$el_text=Pn(e,"a")||Pn(e,"button")?Hm(e):Dr(e)),A){var H,I;v[0].attr__href=A;var T=(H=Il(A))==null?void 0:H.host,S=$==null||(I=$.location)==null?void 0:I.host;T&&S&&T!==S&&(_=A)}return{props:rt({$event_type:i.type,$ce_version:1},u?{}:{$elements:v},{$elements_chain:(b=v,function(C){return C.map(M=>{var U,D,k="";if(M.tag_name&&(k+=M.tag_name),M.attr_class)for(var F of(M.attr_class.sort(),M.attr_class))k+="."+F.replace(/"/g,"");var g=oe({},M.text?{text:M.text}:{},{"nth-child":(U=M.nth_child)!==null&&U!==void 0?U:0,"nth-of-type":(D=M.nth_of_type)!==null&&D!==void 0?D:0},M.href?{href:M.href}:{},M.attr_id?{attr_id:M.attr_id}:{},M.attributes),W={};return qa(g).sort((Z,P)=>{var[pe]=Z,[se]=P;return pe.localeCompare(se)}).forEach(Z=>{var[P,pe]=Z;return W[$m(P.toString())]=$m(pe.toString())}),(k+=":")+qa(W).map(Z=>{var[P,pe]=Z;return P+'="'+pe+'"'}).join("")}).join(";")}(function(C){return C.map(M=>{var U,D,k={text:(U=M.$el_text)==null?void 0:U.slice(0,400),tag_name:M.tag_name,href:(D=M.attr__href)==null?void 0:D.slice(0,2048),attr_class:cP(M),attr_id:M.attr__id,nth_child:M.nth_child,nth_of_type:M.nth_of_type,attributes:{}};return qa(M).filter(F=>{var[g]=F;return g.indexOf("attr__")===0}).forEach(F=>{var[g,W]=F;return k.attributes[g]=W}),k})}(b)))},(n=v[0])!=null&&n.$el_text?{$el_text:(s=v[0])==null?void 0:s.$el_text}:{},_&&i.type==="click"?{$external_click_url:_}:{},w)}}var Bo=tt("[ExceptionAutocapture]");function zm(e,t,n){try{if(!(t in e))return()=>{};var s=e[t],i=n(s);return ss(i)&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__posthog_wrapped__:{enumerable:!1,value:!0}})),e[t]=i,()=>{e[t]=s}}catch{return()=>{}}}var pP=tt("[TracingHeaders]"),vs=tt("[Web Vitals]"),Vm=9e5,qm="disabled",jm="lazy_loading",Ho="awaiting_config",La="missing_config";tt("[SessionRecording]"),tt("[SessionRecording]");var hp="[SessionRecording]",Ss=tt(hp),hP=tt("[Heatmaps]");function Km(e){return ut(e)&&"clientX"in e&&"clientY"in e&&xn(e.clientX)&&xn(e.clientY)}var Ym=tt("[Product Tours]"),fP=["$set_once","$set"],Es=tt("[SiteApps]"),Xm="Error while initializing PostHog app with config id ";function ki(e,t,n){if(Ue(e))return!1;switch(n){case"exact":return e===t;case"contains":var s=t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(s,"i").test(e);case"regex":try{return new RegExp(t).test(e)}catch{return!1}default:return!1}}class gP{constructor(t){this.vn=new bh,this.fn=(n,s)=>this.pn(n,s)&&this.gn(n,s)&&this.mn(n,s)&&this.yn(n,s),this.pn=(n,s)=>s==null||!s.event||n?.event===s?.event,this._instance=t,this.bn=new Set,this._n=new Set}init(){var t,n;fe((t=this._instance)==null?void 0:t._addCaptureHook)||(n=this._instance)==null||n._addCaptureHook((s,i)=>{this.on(s,i)})}register(t){var n,s;if(!fe((n=this._instance)==null?void 0:n._addCaptureHook)&&(t.forEach(a=>{var c,u;(c=this._n)==null||c.add(a),(u=a.steps)==null||u.forEach(h=>{var m;(m=this.bn)==null||m.add(h?.event||"")})}),(s=this._instance)!=null&&s.autocapture)){var i,o=new Set;t.forEach(a=>{var c;(c=a.steps)==null||c.forEach(u=>{u!=null&&u.selector&&o.add(u?.selector)})}),(i=this._instance)==null||i.autocapture.setElementSelectors(o)}}on(t,n){var s;n!=null&&t.length!=0&&(this.bn.has(t)||this.bn.has(n?.event))&&this._n&&((s=this._n)==null?void 0:s.size)>0&&this._n.forEach(i=>{this.wn(n,i)&&this.vn.emit("actionCaptured",i.name)})}In(t){this.onAction("actionCaptured",n=>t(n))}wn(t,n){if(n?.steps==null)return!1;for(var s of n.steps)if(this.fn(t,s))return!0;return!1}onAction(t,n){return this.vn.on(t,n)}gn(t,n){if(n!=null&&n.url){var s,i=t==null||(s=t.properties)==null?void 0:s.$current_url;
983if(!i||typeof i!="string"||!ki(i,n.url,n.url_matching||"contains"))return!1}return!0}mn(t,n){return!!this.Cn(t,n)&&!!this.Sn(t,n)&&!!this.xn(t,n)}Cn(t,n){var s;if(n==null||!n.href)return!0;var i=this.kn(t);if(i.length>0)return i.some(c=>ki(c.href,n.href,n.href_matching||"exact"));var o,a=(t==null||(s=t.properties)==null?void 0:s.$elements_chain)||"";return!!a&&ki((o=a.match(/(?::|")href="(.*?)"/))?o[1]:"",n.href,n.href_matching||"exact")}Sn(t,n){var s;if(n==null||!n.text)return!0;var i=this.kn(t);if(i.length>0)return i.some(h=>ki(h.text,n.text,n.text_matching||"exact")||ki(h.$el_text,n.text,n.text_matching||"exact"));var o,a,c,u=(t==null||(s=t.properties)==null?void 0:s.$elements_chain)||"";return!!u&&(o=function(h){for(var m,_=[],b=/(?::|")text="(.*?)"/g;!Ue(m=b.exec(h));)_.includes(m[1])||_.push(m[1]);return _}(u),a=n.text,c=n.text_matching||"exact",o.some(h=>ki(h,a,c)))}xn(t,n){var s,i;if(n==null||!n.selector)return!0;var o=t==null||(s=t.properties)==null?void 0:s.$element_selectors;if(o!=null&&o.includes(n.selector))return!0;var a=(t==null||(i=t.properties)==null?void 0:i.$elements_chain)||"";if(n.selector_regex&&a)try{return new RegExp(n.selector_regex).test(a)}catch{return!1}return!1}kn(t){var n;return(t==null||(n=t.properties)==null?void 0:n.$elements)==null?[]:t?.properties.$elements}yn(t,n){return n==null||!n.properties||n.properties.length===0||l0(n.properties.reduce((s,i)=>{var o=He(i.value)?i.value.map(String):i.value!=null?[String(i.value)]:[];return s[i.key]={values:o,operator:i.operator||"exact"},s},{}),t?.properties)}}class mP{constructor(t){this._instance=t,this.Tn=new Map,this.An=new Map,this.En=new Map}Rn(t,n){return!!t&&l0(t.propertyFilters,n?.properties)}Nn(t,n){var s=new Map;return t.forEach(i=>{var o;(o=i.conditions)==null||(o=o[n])==null||(o=o.values)==null||o.forEach(a=>{if(a!=null&&a.name){var c=s.get(a.name)||[];c.push(i.id),s.set(a.name,c)}})}),s}Mn(t,n,s){var i=(s===Lo.Activation?this.Tn:this.An).get(t),o=[];return this.Fn(a=>{o=a.filter(c=>i?.includes(c.id))}),o.filter(a=>{var c,u=(c=a.conditions)==null||(c=c[s])==null||(c=c.values)==null?void 0:c.find(h=>h.name===t);return this.Rn(u,n)})}register(t){var n;fe((n=this._instance)==null?void 0:n._addCaptureHook)||(this.On(t),this.Pn(t))}Pn(t){var n=t.filter(s=>{var i,o;return((i=s.conditions)==null?void 0:i.actions)&&((o=s.conditions)==null||(o=o.actions)==null||(o=o.values)==null?void 0:o.length)>0});n.length!==0&&(this.Ln==null&&(this.Ln=new gP(this._instance),this.Ln.init(),this.Ln.In(s=>{this.onAction(s)})),n.forEach(s=>{var i,o,a,c,u;s.conditions&&(i=s.conditions)!=null&&i.actions&&(o=s.conditions)!=null&&(o=o.actions)!=null&&o.values&&((a=s.conditions)==null||(a=a.actions)==null||(a=a.values)==null?void 0:a.length)>0&&((c=this.Ln)==null||c.register(s.conditions.actions.values),(u=s.conditions)==null||(u=u.actions)==null||(u=u.values)==null||u.forEach(h=>{if(h&&h.name){var m=this.En.get(h.name);m&&m.push(s.id),this.En.set(h.name,m||[s.id])}}))}))}On(t){var n,s=t.filter(o=>{var a,c;return((a=o.conditions)==null?void 0:a.events)&&((c=o.conditions)==null||(c=c.events)==null||(c=c.values)==null?void 0:c.length)>0}),i=t.filter(o=>{var a,c;return((a=o.conditions)==null?void 0:a.cancelEvents)&&((c=o.conditions)==null||(c=c.cancelEvents)==null||(c=c.values)==null?void 0:c.length)>0});s.length===0&&i.length===0||((n=this._instance)==null||n._addCaptureHook((o,a)=>{this.onEvent(o,a)}),this.Tn=this.Nn(t,Lo.Activation),this.An=this.Nn(t,Lo.Cancellation))}onEvent(t,n){var s,i=this.le(),o=this.Dn(),a=this.Bn(),c=((s=this._instance)==null||(s=s.persistence)==null?void 0:s.props[o])||[];if(a===t&&n&&c.length>0){var u,h;i.info("event matched, removing item from activated items",{event:t,eventPayload:n,existingActivatedItems:c});var m=(n==null||(u=n.properties)==null?void 0:u.$survey_id)||(n==null||(h=n.properties)==null?void 0:h.$product_tour_id);if(m){var _=c.indexOf(m);0>_||(c.splice(_,1),this.jn(c))}}else{if(this.An.has(t)){var b=this.Mn(t,n,Lo.Cancellation);b.length>0&&(i.info("cancel event matched, cancelling items",{event:t,itemsToCancel:b.map(w=>w.id)}),b.forEach(w=>{var A=c.indexOf(w.id);0>A||c.splice(A,1),this.$n(w.id)}),this.jn(c))}if(this.Tn.has(t)){i.info("event name matched",{event:t,eventPayload:n,items:this.Tn.get(t)});var v=this.Mn(t,n,Lo.Activation);this.jn(c.concat(v.map(w=>w.id)||[]))}}}onAction(t){var n,s=this.Dn(),i=((n=this._instance)==null||(n=n.persistence)==null?void 0:n.props[s])||[];this.En.has(t)&&this.jn(i.concat(this.En.get(t)||[]))}jn(t){var n=this.le(),s=[...new Set(t)].filter(i=>!this.qn(i));n.info("updating activated items",{activatedItems:s}),this.Zn(s)}getActivatedIds(){var t,n=this.Dn();return((t=this._instance)==null||(t=t.persistence)==null?void 0:t.props[n])||[]}
983getEventToItemsMap(){return this.Tn}Vn(){return this.Ln}}class yP extends mP{constructor(t){super(t)}Dn(){return Yu}Bn(){return Xo.SHOWN}Fn(t){var n;(n=this._instance)==null||n.getSurveys(t)}$n(t){var n;(n=this._instance)==null||n.cancelPendingSurvey(t)}le(){return je}Zn(t){var n;(n=this._instance)==null||(n=n.persistence)==null||n.register({[Yu]:t})}qn(){return!1}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}}var kd="SDK is not enabled or survey functionality is not yet loaded",Jm="Disabled. Not loading surveys.",_P=$!=null&&$.location?kl($.location.hash,"__posthog")||kl(location.hash,"state"):null,Qm="_postHogToolbarParams",Zm=tt("[Toolbar]"),$t=tt("[FeatureFlags]"),Xs=tt("[FeatureFlags]",{debugEnabled:!0}),Md=`" failed. Feature flags didn't load in time.`,ey=e=>{for(var t={},n=0;e.length>n;n++)t[e[n]]=!0;return t},ty=e=>{var t={};for(var[n,s]of qa(e||{}))s&&(t[n]=s);return t},Zn=tt("[Error tracking]"),ny="Refusing to render web experiment since the viewer is a likely bot",bP={icontains:(e,t)=>!!$&&t.href.toLowerCase().indexOf(e.toLowerCase())>-1,not_icontains:(e,t)=>!!$&&t.href.toLowerCase().indexOf(e.toLowerCase())===-1,regex:(e,t)=>!!$&&Nl(t.href,e),not_regex:(e,t)=>!!$&&!Nl(t.href,e),exact:(e,t)=>t.href===e,is_not:(e,t)=>t.href!==e};class Dt{get Bt(){return this._instance.config}constructor(t){var n=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(s){s===void 0&&(s=!1),n.getWebExperiments(i=>{Dt.Hn("retrieved web experiments from the server"),n.zn=new Map,i.forEach(o=>{if(o.feature_flag_key){var a;n.zn&&(Dt.Hn("setting flag key ",o.feature_flag_key," to web experiment ",o),(a=n.zn)==null||a.set(o.feature_flag_key,o));var c=n._instance.getFeatureFlag(o.feature_flag_key);ot(c)&&o.variants[c]&&n.Un(o.name,c,o.variants[c].transforms)}else if(o.variants)for(var u in o.variants){var h=o.variants[u];Dt.Yn(h)&&n.Un(o.name,u,h.transforms)}})},s)},this._instance=t,this._instance.onFeatureFlags(s=>{this.onFeatureFlags(s)})}initialize(){}onFeatureFlags(t){if(this._is_bot())Dt.Hn(ny);else if(!this.Bt.disable_web_experiments){if(Ue(this.zn))return this.zn=new Map,this.loadIfEnabled(),void this.previewWebExperiment();Dt.Hn("applying feature flags",t),t.forEach(n=>{var s;if(this.zn&&(s=this.zn)!=null&&s.has(n)){var i,o=this._instance.getFeatureFlag(n),a=(i=this.zn)==null?void 0:i.get(n);o&&a!=null&&a.variants[o]&&this.Un(a.name,o,a.variants[o].transforms)}})}}previewWebExperiment(){var t=Dt.getWindowLocation();if(t!=null&&t.search){var n=Ol(t?.search,"__experiment_id"),s=Ol(t?.search,"__experiment_variant");n&&s&&(Dt.Hn("previewing web experiments "+n+" && "+s),this.getWebExperiments(i=>{this.Gn(parseInt(n),s,i)},!1,!0))}}loadIfEnabled(){this.Bt.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(t,n,s){if(this.Bt.disable_web_experiments&&!s)return t([]);var i=this._instance.get_property("$web_experiments");if(i&&!n)return t(i);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/web_experiments/?token="+this.Bt.token),method:"GET",callback:o=>t(o.statusCode===200&&o.json&&o.json.experiments||[])})}Gn(t,n,s){var i=s.filter(o=>o.id===t);i&&i.length>0&&(Dt.Hn("Previewing web experiment ["+i[0].name+"] with variant ["+n+"]"),this.Un(i[0].name,n,i[0].variants[n].transforms))}static Yn(t){return!Ue(t.conditions)&&Dt.Wn(t)&&Dt.Xn(t)}static Wn(t){var n;if(Ue(t.conditions)||Ue((n=t.conditions)==null?void 0:n.url))return!0;var s,i,o,a=Dt.getWindowLocation();return!!a&&((s=t.conditions)==null||!s.url||bP[(i=(o=t.conditions)==null?void 0:o.urlMatchType)!==null&&i!==void 0?i:"icontains"](t.conditions.url,a))}
983static getWindowLocation(){return $?.location}static Xn(t){var n;if(Ue(t.conditions)||Ue((n=t.conditions)==null?void 0:n.utm))return!0;var s=qv();if(s.utm_source){var i,o,a,c,u,h,m,_,b=(i=t.conditions)==null||(i=i.utm)==null||!i.utm_campaign||((o=t.conditions)==null||(o=o.utm)==null?void 0:o.utm_campaign)==s.utm_campaign,v=(a=t.conditions)==null||(a=a.utm)==null||!a.utm_source||((c=t.conditions)==null||(c=c.utm)==null?void 0:c.utm_source)==s.utm_source,w=(u=t.conditions)==null||(u=u.utm)==null||!u.utm_medium||((h=t.conditions)==null||(h=h.utm)==null?void 0:h.utm_medium)==s.utm_medium,A=(m=t.conditions)==null||(m=m.utm)==null||!m.utm_term||((_=t.conditions)==null||(_=_.utm)==null?void 0:_.utm_term)==s.utm_term;return b&&w&&A&&v}return!1}static Hn(t){for(var n=arguments.length,s=new Array(n>1?n-1:0),i=1;n>i;i++)s[i-1]=arguments[i];ue.info("[WebExperiments] "+t,s)}Un(t,n,s){this._is_bot()?Dt.Hn(ny):n!=="control"?s.forEach(i=>{if(i.selector){var o;Dt.Hn("applying transform of variant "+n+" for experiment "+t+" ",i);var a=(o=document)==null?void 0:o.querySelectorAll(i.selector);a?.forEach(c=>{var u=c;i.html&&(u.innerHTML=i.html),i.css&&u.setAttribute("style",i.css)})}}):Dt.Hn("Control variants leave the page unmodified.")}_is_bot(){return pn&&this._instance?r0(pn,this.Bt.custom_blocked_useragents):void 0}}var Sn=tt("[Conversations]"),Js="Conversations not available yet.",pc={featureFlags:class{constructor(e){this.Jn=!1,this.Kn=!1,this.Qn=!1,this.es=!1,this.ts=!1,this.rs=!1,this.ns=!1,this.ss=!1,this._instance=e,this.featureFlagEventHandlers=[]}get Bt(){return this._instance.config}get ni(){return this._instance.persistence}os(e){return this._instance.get_property(e)}ls(){var e,t;return(e=(t=this.ni)==null?void 0:t.wr(this.Bt.feature_flag_cache_ttl_ms))!==null&&e!==void 0&&e}us(){return!!this.ls()&&(this.ss||this.Qn||(this.ss=!0,$t.warn("Feature flag cache is stale, triggering refresh..."),this.reloadFeatureFlags()),!0)}hs(){var e,t=(e=this.Bt.evaluation_contexts)!==null&&e!==void 0?e:this.Bt.evaluation_environments;return!this.Bt.evaluation_environments||this.Bt.evaluation_contexts||this.ns||($t.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.ns=!0),t!=null&&t.length?t.filter(n=>{var s=n&&typeof n=="string"&&n.trim().length>0;return s||$t.error("Invalid evaluation context found:",n,"Expected non-empty string"),s}):[]}cs(){return this.hs().length>0}initialize(){var e,t,{config:n}=this._instance,s=(e=(t=n.bootstrap)==null?void 0:t.featureFlags)!==null&&e!==void 0?e:{};if(Object.keys(s).length){var i,o,a=(i=(o=n.bootstrap)==null?void 0:o.featureFlagPayloads)!==null&&i!==void 0?i:{},c=Object.keys(s).filter(h=>!!s[h]).reduce((h,m)=>(h[m]=s[m]||!1,h),{}),u=Object.keys(a).filter(h=>c[h]).reduce((h,m)=>(a[m]&&(h[m]=a[m]),h),{});this.receivedFeatureFlags({featureFlags:c,featureFlagPayloads:u})}}updateFlags(e,t,n){var s=n!=null&&n.merge?this.getFlagVariants():{},i=n!=null&&n.merge?this.getFlagPayloads():{},o=oe({},s,e),a=oe({},i,t),c={};for(var[u,h]of Object.entries(o)){var m=typeof h=="string";c[u]={key:u,enabled:!!m||!!h,variant:m?h:void 0,reason:void 0,metadata:fe(a?.[u])?void 0:{id:0,version:void 0,description:void 0,payload:a[u]}}}this.receivedFeatureFlags({flags:c})}get hasLoadedFlags(){return this.Kn}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var e=this.os(Vu),t=this.os(ts),n=this.os(Ni);if(!n&&!t)return e||{};var s=rt({},e||{}),i=[...new Set([...Object.keys(n||{}),...Object.keys(t||{})])];for(var o of i){var a,c,u=s[o],h=t?.[o],m=fe(h)?(a=u?.enabled)!==null&&a!==void 0&&a:!!h,_=fe(h)?u.variant:typeof h=="string"?h:void 0,b=n?.[o],v=oe({},u,{enabled:m,variant:m?_??u?.variant:void 0});m!==u?.enabled&&(v.original_enabled=u?.enabled),_!==u?.variant&&(v.original_variant=u?.variant),b&&(v.metadata=oe({},u?.metadata,{payload:b,original_payload:u==null||(c=u.metadata)==null?void 0:c.payload})),s[o]=v}return this.Jn||($t.warn(" Overriding feature flag details!",{flagDetails:e,overriddenPayloads:n,finalDetails:s}),this.Jn=!0),s}getFlagVariants(){var e=this.os($i),t=this.os(ts);if(!t)return e||{};for(var n=rt({},e),s=Object.keys(t),i=0;s.length>i;i++)n[s[i]]=t[s[i]];return this.Jn||($t.warn(" Overriding feature flags!",{enabledFlags:e,overriddenFlags:t,finalFlags:n}),this.Jn=!0),n}getFlagPayloads(){var e=this.os(qu),t=this.os(Ni);if(!t)return e||{};for(var n=rt({},e||{}),s=Object.keys(t),i=0;s.length>i;i++)n[s[i]]=t[s[i]];return this.Jn||($t.warn(" Overriding feature flag payloads!",{flagPayloads:e,overriddenPayloads:t,finalPayloads:n}),this.Jn=!0),n}reloadFeatureFlags(){this.es||this.Bt.advanced_disable_feature_flags||this.ds||(this._instance.Fi.emit("featureFlagsReloading",!0),this.ds=setTimeout(()=>{this.vs()},5))}fs(){clearTimeout(this.ds),this.ds=void 0}ensureFlagsLoaded(){this.Kn||this.Qn||this.ds||this.reloadFeatureFlags()}setAnonymousDistinctId(e){this.$anon_distinct_id=e}setReloadingPaused(e){this.es=e}vs(e){var t;if(this.fs(),!this._instance.Fr())if(this.Qn)this.ts=!0;else{var n=this.Bt.token,s=this.os(Sl),i={token:n,distinct_id:this._instance.get_distinct_id(),groups:this._instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:oe({},((t=this.ni)==null?void 0:t.get_initial_props())||{},this.os(Yo)||{}),group_properties:this.os(Zs),timezone:Qv()};us(s)||fe(s)||(i.$device_id=s),(e!=null&&e.disableFlags||this.Bt.advanced_disable_feature_flags)&&(i.disable_flags=!0),this.cs()&&(i.evaluation_contexts=this.hs());var o=this._instance.requestRouter.endpointFor("flags","/flags/?v=2"+(this.Bt.advanced_only_evaluate_survey_feature_flags?"&only_evaluate_survey_feature_flags=true":""));this.Qn=!0,this._instance._send_request({method:"POST",url:o,data:i,compression:this.Bt.disable_compression?void 0:Bn.Base64,timeout:this.Bt.feature_flag_request_timeout_ms,callback:a=>{var c,u,h,m=!0;if(a.statusCode===200&&(this.ts||(this.$anon_distinct_id=void 0),m=!1),this.Qn=!1,!i.disable_flags||this.ts){this.rs=!m;var _=[];
983a.error?a.error instanceof Error?_.push(a.error.name==="AbortError"?"timeout":"connection_error"):_.push("unknown_error"):a.statusCode!==200&&_.push("api_error_"+a.statusCode),(c=a.json)!=null&&c.errorsWhileComputingFlags&&_.push("errors_while_computing_flags");var b,v=!((u=a.json)==null||(u=u.quotaLimited)==null||!u.includes("feature_flags"));v&&_.push("quota_limited"),(h=this.ni)==null||h.register({[Ju]:_}),v?$t.warn("You have hit your feature flags quota limit, and will not be able to load feature flags until the quota is reset.  Please visit https://posthog.com/docs/billing/limits-alerts to learn more."):(i.disable_flags||this.receivedFeatureFlags((b=a.json)!==null&&b!==void 0?b:{},m,{partialResponse:!!this.Bt.advanced_only_evaluate_survey_feature_flags}),this.ts&&(this.ts=!1,this.vs()))}}})}}getFeatureFlag(e,t){var n;if(t===void 0&&(t={}),!t.fresh||this.rs)if(this.Kn||this.getFlags()&&this.getFlags().length>0){if(!this.us()){var s=this.getFeatureFlagResult(e,t);return(n=s?.variant)!==null&&n!==void 0?n:s?.enabled}}else $t.warn('getFeatureFlag for key "'+e+Md)}getFeatureFlagDetails(e){return this.getFlagsWithDetails()[e]}getFeatureFlagPayload(e){var t=this.getFeatureFlagResult(e,{send_event:!1});return t?.payload}getFeatureFlagResult(e,t){if(t===void 0&&(t={}),!t.fresh||this.rs)if(this.Kn||this.getFlags()&&this.getFlags().length>0){if(!this.us()){var n=this.getFlagVariants(),s=e in n,i=n[e],o=this.getFlagPayloads()[e],a=String(i),c=this.os(ju)||void 0,u=this.os(wl)||void 0,h=this.os(hr)||{};if(this.Bt.advanced_feature_flags_dedup_per_session){var m,_=this._instance.get_session_id(),b=this.os(Xu);_&&_!==b&&(h={},(m=this.ni)==null||m.register({[hr]:h,[Xu]:_}))}if((t.send_event||!("send_event"in t))&&(!(e in h)||!h[e].includes(a))){var v,w,A,B,H,I,T,S,C,M;He(h[e])?h[e].push(a):h[e]=[a],(v=this.ni)==null||v.register({[hr]:h});var U=this.getFeatureFlagDetails(e),D=[...(w=this.os(Ju))!==null&&w!==void 0?w:[]];fe(i)&&D.push("flag_missing");var k={$feature_flag:e,$feature_flag_response:i,$feature_flag_payload:o||null,$feature_flag_request_id:c,$feature_flag_evaluated_at:u,$feature_flag_bootstrapped_response:((A=this.Bt.bootstrap)==null||(A=A.featureFlags)==null?void 0:A[e])||null,$feature_flag_bootstrapped_payload:((B=this.Bt.bootstrap)==null||(B=B.featureFlagPayloads)==null?void 0:B[e])||null,$used_bootstrap_value:!this.rs};fe(U==null||(H=U.metadata)==null?void 0:H.version)||(k.$feature_flag_version=U.metadata.version);var F,g=(I=U==null||(T=U.reason)==null?void 0:T.description)!==null&&I!==void 0?I:U==null||(S=U.reason)==null?void 0:S.code;g&&(k.$feature_flag_reason=g),U!=null&&(C=U.metadata)!=null&&C.id&&(k.$feature_flag_id=U.metadata.id),fe(U?.original_variant)&&fe(U?.original_enabled)||(k.$feature_flag_original_response=fe(U.original_variant)?U.original_enabled:U.original_variant),U!=null&&(M=U.metadata)!=null&&M.original_payload&&(k.$feature_flag_original_payload=U==null||(F=U.metadata)==null?void 0:F.original_payload),D.length&&(k.$feature_flag_error=D.join(",")),this._instance.capture("$feature_flag_called",k)}if(s){var W=o;if(!fe(o))try{W=JSON.parse(o)}catch{}return{key:e,enabled:!!i,variant:typeof i=="string"?i:void 0,payload:W}}}}else $t.warn('getFeatureFlagResult for key "'+e+Md)}getRemoteConfigPayload(e,t){var n=this.Bt.token,s={distinct_id:this._instance.get_distinct_id(),token:n};this.cs()&&(s.evaluation_contexts=this.hs()),this._instance._send_request({method:"POST",url:this._instance.requestRouter.endpointFor("flags","/flags/?v=2"),data:s,compression:this.Bt.disable_compression?void 0:Bn.Base64,timeout:this.Bt.feature_flag_request_timeout_ms,callback(i){var o,a=(o=i.json)==null?void 0:o.featureFlagPayloads;t(a?.[e]||void 0)}})}isFeatureEnabled(e,t){if(t===void 0&&(t={}),!t.fresh||this.rs){if(this.Kn||this.getFlags()&&this.getFlags().length>0){var n=this.getFeatureFlag(e,t);return fe(n)?void 0:!!n}$t.warn('isFeatureEnabled for key "'+e+Md)}}addFeatureFlagsHandler(e){this.featureFlagEventHandlers.push(e)}removeFeatureFlagsHandler(e){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter(t=>t!==e)}
983receivedFeatureFlags(e,t,n){if(this.ni){this.Kn=!0;var s=this.getFlagVariants(),i=this.getFlagPayloads(),o=this.getFlagsWithDetails();(function(a,c,u,h,m,_){u===void 0&&(u={}),h===void 0&&(h={}),m===void 0&&(m={});var b=(D=>{var k=D.flags;return k?(D.featureFlags=Object.fromEntries(Object.keys(k).map(F=>{var g;return[F,(g=k[F].variant)!==null&&g!==void 0?g:k[F].enabled]})),D.featureFlagPayloads=Object.fromEntries(Object.keys(k).filter(F=>k[F].enabled).filter(F=>{var g;return(g=k[F].metadata)==null?void 0:g.payload}).map(F=>{var g;return[F,(g=k[F].metadata)==null?void 0:g.payload]}))):$t.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),D})(a),v=b.flags,w=b.featureFlags,A=b.featureFlagPayloads;if(w){var B=a.requestId,H=a.evaluatedAt;if(He(w)){$t.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");var I={};if(w)for(var T=0;w.length>T;T++)I[w[T]]=!0;c&&c.register({[za]:w,[$i]:I})}else{var S=w,C=A,M=v;if(_!=null&&_.partialResponse)S=oe({},u,S),C=oe({},h,C),M=oe({},m,M);else if(a.errorsWhileComputingFlags)if(v){var U=new Set(Object.keys(v).filter(D=>{var k;return!((k=v[D])!=null&&k.failed)}));S=oe({},u,Object.fromEntries(Object.entries(S).filter(D=>{var[k]=D;return U.has(k)}))),C=oe({},h,Object.fromEntries(Object.entries(C||{}).filter(D=>{var[k]=D;return U.has(k)}))),M=oe({},m,Object.fromEntries(Object.entries(M||{}).filter(D=>{var[k]=D;return U.has(k)})))}else S=oe({},u,S),C=oe({},h,C),M=oe({},m,M);c&&c.register(oe({[za]:Object.keys(ty(S)),[$i]:S||{},[qu]:C||{},[Vu]:M||{}},B?{[ju]:B}:{},H?{[wl]:H}:{}))}}})(e,this.ni,s,i,o,n),t||(this.ss=!1),this.ps(t)}}override(e,t){t===void 0&&(t=!1),$t.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:e,suppressWarning:t})}overrideFeatureFlags(e){if(!this._instance.__loaded||!this.ni)return $t.uninitializedWarning("posthog.featureFlags.overrideFeatureFlags");if(e===!1)return this.ni.unregister(ts),this.ni.unregister(Ni),this.ps(),Xs.info("All overrides cleared");if(He(e)){var t=ey(e);return this.ni.register({[ts]:t}),this.ps(),Xs.info("Flag overrides set",{flags:e})}if(e&&typeof e=="object"&&("flags"in e||"payloads"in e)){var n,s=e;if(this.Jn=!!((n=s.suppressWarning)!==null&&n!==void 0&&n),"flags"in s){if(s.flags===!1)this.ni.unregister(ts),Xs.info("Flag overrides cleared");else if(s.flags){if(He(s.flags)){var i=ey(s.flags);this.ni.register({[ts]:i})}else this.ni.register({[ts]:s.flags});Xs.info("Flag overrides set",{flags:s.flags})}}return"payloads"in s&&(s.payloads===!1?(this.ni.unregister(Ni),Xs.info("Payload overrides cleared")):s.payloads&&(this.ni.register({[Ni]:s.payloads}),Xs.info("Payload overrides set",{payloads:s.payloads}))),void this.ps()}if(e&&typeof e=="object")return this.ni.register({[ts]:e}),this.ps(),Xs.info("Flag overrides set",{flags:e});$t.warn("Invalid overrideOptions provided to overrideFeatureFlags",{overrideOptions:e})}onFeatureFlags(e){if(this.addFeatureFlagsHandler(e),this.Kn){var{flags:t,flagVariants:n}=this.gs();e(t,n)}return()=>this.removeFeatureFlagsHandler(e)}updateEarlyAccessFeatureEnrollment(e,t,n){var s,i=(this.os(Ko)||[]).find(u=>u.flagKey===e),o={["$feature_enrollment/"+e]:t},a={$feature_flag:e,$feature_enrollment:t,$set:o};i&&(a.$early_access_feature_name=i.name),n&&(a.$feature_enrollment_stage=n),this._instance.capture("$feature_enrollment_update",a),this.setPersonPropertiesForFlags(o,!1);var c=oe({},this.getFlagVariants(),{[e]:t});(s=this.ni)==null||s.register({[za]:Object.keys(ty(c)),[$i]:c}),this.ps()}getEarlyAccessFeatures(e,t,n){t===void 0&&(t=!1);var s=this.os(Ko),i=n?"&"+n.map(o=>"stage="+o).join("&"):"";if(s&&!t)return e(s);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/early_access_features/?token="+this.Bt.token+i),method:"GET",callback:o=>{var a,c;if(o.json){var u=o.json.earlyAccessFeatures;return(a=this.ni)==null||a.unregister(Ko),(c=this.ni)==null||c.register({[Ko]:u}),e(u)}}})}gs(){var e=this.getFlags(),t=this.getFlagVariants();return{flags:e.filter(n=>t[n]),flagVariants:Object.keys(t).filter(n=>t[n]).reduce((n,s)=>(n[s]=t[s],n),{})}}ps(e){var{flags:t,flagVariants:n}=this.gs();
983this.featureFlagEventHandlers.forEach(s=>s(t,n,{errorsLoading:e}))}setPersonPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this.os(Yo)||{},s=e?.$set||(e!=null&&e.$set_once?{}:e),i=e?.$set_once,o={};if(i)for(var a in i)({}).hasOwnProperty.call(i,a)&&(a in n||(o[a]=i[a]));this._instance.register({[Yo]:oe({},n,o,s)}),t&&this._instance.reloadFeatureFlags()}resetPersonPropertiesForFlags(){this._instance.unregister(Yo)}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this.os(Zs)||{};Object.keys(n).length!==0&&Object.keys(n).forEach(s=>{n[s]=oe({},n[s],e[s]),delete e[s]}),this._instance.register({[Zs]:oe({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetGroupPropertiesForFlags(e){if(e){var t=this.os(Zs)||{};this._instance.register({[Zs]:oe({},t,{[e]:{}})})}else this._instance.unregister(Zs)}reset(){this.Kn=!1,this.Qn=!1,this.es=!1,this.ts=!1,this.rs=!1,this.$anon_distinct_id=void 0,this.fs(),this.Jn=!1}}},vP={sessionRecording:class{get Bt(){return this._instance.config}get ni(){return this._instance.persistence}get started(){var e;return!((e=this.ys)==null||!e.isStarted)}get status(){var e,t;return this.bs===Ho||this.bs===La?this.bs:(e=(t=this.ys)==null?void 0:t.status)!==null&&e!==void 0?e:this.bs}constructor(e){if(this._forceAllowLocalhostNetworkCapture=!1,this.bs=qm,this._s=void 0,this._instance=e,!this._instance.sessionManager)throw Ss.error("started without valid sessionManager"),new Error(hp+" started without valid sessionManager. This is a bug.");if(this.Bt.cookieless_mode===os)throw new Error(hp+' cannot be used with cookieless_mode="always"')}initialize(){this.startIfEnabledOrStop()}get ws(){var e,t=!((e=this._instance.get_property(jo))==null||!e.enabled),n=!this.Bt.disable_session_recording,s=this.Bt.disable_session_recording||this._instance.consent.isOptedOut();return $&&t&&n&&!s}startIfEnabledOrStop(e){var t;if(!this.ws||(t=this.ys)==null||!t.isStarted){var n=!fe(Object.assign)&&!fe(Array.from);this.ws&&n?(this.Is(e),Ss.info("starting")):(this.bs=qm,this.stopRecording())}}Is(e){var t,n,s;this.ws&&(this.bs!==Ho&&this.bs!==La&&(this.bs=jm),_e!=null&&(t=_e.__PosthogExtensions__)!=null&&(t=t.rrweb)!=null&&t.record&&(n=_e.__PosthogExtensions__)!=null&&n.initSessionRecording?this.Cs(e):(s=_e.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this._instance,this.Ss,i=>{if(i)return Ss.error("could not load recorder",i);this.Cs(e)}))}stopRecording(){var e,t;(e=this._s)==null||e.call(this),this._s=void 0,(t=this.ys)==null||t.stop()}xs(){var e,t;(e=this._s)==null||e.call(this),this._s=void 0,(t=this.ys)==null||t.discard()}ks(){var e;(e=this.ni)==null||e.unregister(fh)}Ts(e,t){if(Ue(e))return null;var n,s=xn(e)?e:parseFloat(e);return typeof(n=s)!="number"||!Number.isFinite(n)||0>n||n>1?(Ss.warn(t+" must be between 0 and 1. Ignoring invalid value:",e),null):s}As(e){if(this.ni){var t,n,s=this.ni,i=()=>{var o,a=e.sessionRecording===!1?void 0:e.sessionRecording,c=this.Ts((o=this.Bt.session_recording)==null?void 0:o.sampleRate,"session_recording.sampleRate"),u=this.Ts(a?.sampleRate,"remote config sampleRate"),h=c??u;Ue(h)&&this.ks();var m=a?.minimumDurationMilliseconds;s.register({[jo]:oe({cache_timestamp:Date.now(),enabled:!!a},a,{networkPayloadCapture:oe({capturePerformance:e.capturePerformance},a?.networkPayloadCapture),canvasRecording:{enabled:a?.recordCanvas,fps:a?.canvasFps,quality:a?.canvasQuality},sampleRate:h,minimumDurationMilliseconds:fe(m)?null:m,endpoint:a?.endpoint,triggerMatchType:a?.triggerMatchType,masking:a?.masking,urlTriggers:a?.urlTriggers,version:a?.version,triggerGroups:a?.triggerGroups})})};i(),(t=this._s)==null||t.call(this),this._s=(n=this._instance.sessionManager)==null?void 0:n.onSessionId(i)}}onRemoteConfig(e){return"sessionRecording"in e?e.sessionRecording===!1?(this.As(e),void this.xs()):(this.As(e),void this.startIfEnabledOrStop()):(this.bs===Ho&&(this.bs=La,Ss.warn("config refresh failed, recording will not start until page reload")),void this.startIfEnabledOrStop())}log(e,t){var n;t===void 0&&(t="log"),(n=this.ys)!=null&&n.log?this.ys.log(e,t):Ss.warn("log called before recorder was ready")}get Ss(){var e,t,n=(e=this._instance)==null||(e=e.persistence)==null?void 0:e.get_property(jo);return(n==null||(t=n.scriptConfig)==null?void 0:t.script)||"lazy-recorder"}Es(){var e,t=this._instance.get_property(jo);if(!t)return!1;var n=(e=(typeof t=="object"?t:JSON.parse(t)).cache_timestamp)!==null&&e!==void 0?e:Date.now();return 36e5>=Date.now()-n}Cs(e){var t,n;if((t=_e.__PosthogExtensions__)==null||!t.initSessionRecording)return Ss.warn("Called on script loaded before session recording is available. This can be caused by adblockers."),void this._instance.register_for_session({[Hv]:!0});if(this.ys||(this.ys=(n=_e.__PosthogExtensions__)==null?void 0:n.initSessionRecording(this._instance),this.ys._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),!this.Es())return this.bs===La||this.bs===Ho?void 0:(this.bs=Ho,Ss.info("persisted remote config is stale, requesting fresh config before starting"),void new Zv(this._instance).load());this.bs=jm,this.ys.start(e)}onRRwebEmit(e){var t;(t=this.ys)==null||t.onRRwebEmit==null||t.onRRwebEmit(e)}overrideLinkedFlag(){var e,t;this.ys||(t=this.ni)==null||t.register({[Lv]:!0}),(e=this.ys)==null||e.overrideLinkedFlag()}overrideSampling(){var e,t;this.ys||(t=this.ni)==null||t.register({[Nv]:!0}),(e=this.ys)==null||e.overrideSampling()}overrideTrigger(e){var t,n;this.ys||(n=this.ni)==null||n.register({[e==="url"?Dv:Gv]:!0}),(t=this.ys)==null||t.overrideTrigger(e)}get sdkDebugProperties(){var e;return((e=this.ys)==null?void 0:e.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(e,t){var n;return!((n=this.ys)==null||!n.tryAddCustomEvent(e,t))}}},SP={autocapture:class{constructor(e){this.Rs=!1,this.Ns=null,this.Ms=!1,this.instance=e,this.rageclicks=new Wm(e.config.rageclick),this.Fs=null}initialize(){this.startIfEnabled()}get Bt(){var e,t,n=ut(this.instance.config.autocapture)?this.instance.config.autocapture:{};return n.url_allowlist=(e=n.url_allowlist)==null?void 0:e.map(s=>new RegExp(s)),n.url_ignorelist=(t=n.url_ignorelist)==null?void 0:t.map(s=>new RegExp(s)),n}
983Os(){if(this.isBrowserSupported()){if($&&ce){var e=n=>{n=n||$?.event;try{this.Ps(n)}catch(s){Id.error("Failed to capture event",s)}};if(ft(ce,"submit",e,{capture:!0}),ft(ce,"change",e,{capture:!0}),ft(ce,"click",e,{capture:!0}),this.Bt.capture_copied_text){var t=n=>{n=n||$?.event;try{this.Ps(n,xd)}catch(s){Id.error("Failed to capture copy/cut event",s)}};ft(ce,"copy",t,{capture:!0}),ft(ce,"cut",t,{capture:!0})}}}else Id.info("Disabling Automatic Event Collection because this browser is not supported")}startIfEnabled(){this.isEnabled&&!this.Rs&&(this.Os(),this.Rs=!0)}onRemoteConfig(e){e.elementsChainAsString&&(this.Ms=e.elementsChainAsString),this.instance.persistence&&this.instance.persistence.register({[Gu]:!!e.autocapture_opt_out}),this.Ns=!!e.autocapture_opt_out,this.startIfEnabled()}setElementSelectors(e){this.Fs=e}getElementSelectors(e){var t,n=[];return(t=this.Fs)==null||t.forEach(s=>{var i=ce?.querySelectorAll(s);i?.forEach(o=>{e===o&&n.push(s)})}),n}get isEnabled(){var e,t,n=(e=this.instance.persistence)==null?void 0:e.props[Gu];if(us(this.Ns)&&!Wn(n)&&!this.instance.Fr())return!1;var s=(t=this.Ns)!==null&&t!==void 0?t:!!n;return!!this.instance.config.autocapture&&!s}Ps(e,t){if(t===void 0&&(t="$autocapture"),this.isEnabled){var n,s=Gm(e);u0(s)&&(s=s.parentNode||null),t==="$autocapture"&&e.type==="click"&&e instanceof MouseEvent&&this.instance.config.rageclick&&(n=this.rageclicks)!=null&&n.isRageClick(e.clientX,e.clientY,e.timeStamp||new Date().getTime())&&function(_,b){if(!$||up(_))return!1;var v,w,A;if(Wn(b)?(v=!!b&&Fm,w=void 0):(v=(A=b?.css_selector_ignorelist)!==null&&A!==void 0?A:Fm,w=b?.content_ignorelist),v===!1)return!1;
983var{targetElementList:B}=Bm(_,!1);return!function(H,I){if(H===!1||fe(H))return!1;var T;if(H===!0)T=iP;else{if(!He(H))return!1;if(H.length>10)return ue.error("[PostHog] content_ignorelist array cannot exceed 10 items. Use css_selector_ignorelist for more complex matching."),!1;T=H.map(S=>S.toLowerCase())}return I.some(S=>{var{safeText:C,ariaLabel:M}=S;return T.some(U=>C.includes(U)||M.includes(U))})}(w,B.map(H=>{var I;return{safeText:Dr(H).toLowerCase(),ariaLabel:((I=H.getAttribute("aria-label"))==null?void 0:I.toLowerCase().trim())||""}}))&&!Um(B,v)}(s,this.instance.config.rageclick)&&this.Ps(e,"$rageclick");var i=t===xd;if(s&&function(_,b,v,w,A){var B,H,I,T;if(v===void 0&&(v=void 0),!$||up(_)||(B=v)!=null&&B.url_allowlist&&!Dm(v.url_allowlist)||(H=v)!=null&&H.url_ignorelist&&Dm(v.url_ignorelist))return!1;if((I=v)!=null&&I.dom_event_allowlist){var S=v.dom_event_allowlist;if(S&&!S.some(k=>b.type===k))return!1}var{parentIsUsefulElement:C,targetElementList:M}=Bm(_,w);if(!function(k,F){var g=F?.element_allowlist;if(fe(g))return!0;var W,Z=function(pe){if(g.some(se=>pe.tagName.toLowerCase()===se))return{v:!0}};for(var P of k)if(W=Z(P))return W.v;return!1}(M,v)||!Um(M,(T=v)==null?void 0:T.css_selector_allowlist))return!1;var U=$.getComputedStyle(_);if(U&&U.getPropertyValue("cursor")==="pointer"&&b.type==="click")return!0;var D=_.tagName.toLowerCase();switch(D){case"html":return!1;case"form":return(A||["submit"]).indexOf(b.type)>=0;case"input":case"select":case"textarea":return(A||["change","click"]).indexOf(b.type)>=0;default:return C?(A||["click"]).indexOf(b.type)>=0:(A||["click"]).indexOf(b.type)>=0&&(Sh.indexOf(D)>-1||_.getAttribute("contenteditable")==="true")}}(s,e,this.Bt,i,i?["copy","cut"]:void 0)){var{props:o,explicitNoCapture:a}=uP(s,{e,maskAllElementAttributes:this.instance.config.mask_all_element_attributes,maskAllText:this.instance.config.mask_all_text,elementAttributeIgnoreList:this.Bt.element_attribute_ignorelist,elementsChainAsString:this.Ms});if(a)return!1;var c=this.getElementSelectors(s);if(c&&c.length>0&&(o.$element_selectors=c),t===xd){var u,h=h0($==null||(u=$.getSelection())==null?void 0:u.toString()),m=e.type||"clipboard";if(!h)return!1;o.$selected_content=h,o.$copy_type=m}return this.instance.capture(t,o),!0}}}isBrowserSupported(){return ss(ce?.querySelectorAll)}},historyAutocapture:class{constructor(e){var t;this._instance=e,this.Ls=($==null||(t=$.location)==null?void 0:t.pathname)||""}initialize(){this.startIfEnabled()}get isEnabled(){return this._instance.config.capture_pageview==="history_change"}startIfEnabled(){this.isEnabled&&(ue.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}stop(){this.Ds&&this.Ds(),this.Ds=void 0,ue.info("History API monitoring stopped")}monitorHistoryChanges(){var e,t;if($&&$.history){var n=this;(e=$.history.pushState)!=null&&e.__posthog_wrapped__||zm($.history,"pushState",s=>function(i,o,a){s.call(this,i,o,a),n.Bs("pushState")}),(t=$.history.replaceState)!=null&&t.__posthog_wrapped__||zm($.history,"replaceState",s=>function(i,o,a){s.call(this,i,o,a),n.Bs("replaceState")}),this.js()}}Bs(e){try{var t,n=$==null||(t=$.location)==null?void 0:t.pathname;if(!n)return;n!==this.Ls&&this.isEnabled&&this._instance.capture(Li,{navigation_type:e}),this.Ls=n}catch(s){ue.error("Error capturing "+e+" pageview",s)}}js(){if(!this.Ds){var e=()=>{this.Bs("popstate")};ft($,"popstate",e),this.Ds=()=>{$&&$.removeEventListener("popstate",e)}}}},heatmaps:class{get Bt(){return this.instance.config}constructor(e){var t;this.$s=!1,this.Rs=!1,this.qs=null,this.instance=e,this.$s=!((t=this.instance.persistence)==null||!t.props[Uu]),this.rageclicks=new Wm(e.config.rageclick)}initialize(){this.startIfEnabled()}get flushIntervalMilliseconds(){var e=5e3;return ut(this.Bt.capture_heatmaps)&&this.Bt.capture_heatmaps.flush_interval_milliseconds&&(e=this.Bt.capture_heatmaps.flush_interval_milliseconds),e}get isEnabled(){return Ue(this.Bt.capture_heatmaps)?Ue(this.Bt.enable_heatmaps)?this.$s:this.Bt.enable_heatmaps:this.Bt.capture_heatmaps!==!1}startIfEnabled(){if(this.isEnabled){if(this.Rs)return;hP.info("starting..."),this.Zs(),this.Ft()}else{var e;clearInterval((e=this.qs)!==null&&e!==void 0?e:void 0),this.Vs(),this.getAndClearBuffer()}}onRemoteConfig(e){if("heatmaps"in e){var t=!!e.heatmaps;this.instance.persistence&&this.instance.persistence.register({[Uu]:t}),this.$s=t,this.startIfEnabled()}}getAndClearBuffer(){var e=this.T;return this.T=void 0,e}Hs(e){this.Tt(e.originalEvent,"deadclick")}Ft(){this.qs&&clearInterval(this.qs),this.qs=ce?.visibilityState==="visible"?setInterval(this.Yr.bind(this),this.flushIntervalMilliseconds):null}Zs(){$&&ce&&(this.zs=this.Yr.bind(this),ft($,Rl,this.zs),this.Us=e=>this.Tt(e||$?.event),ft(ce,"click",this.Us,{capture:!0}),this.Ys=e=>this.Gs(e||$?.event),ft(ce,"mousemove",this.Ys,{capture:!0}),this.Ws=new mm(this.instance,wM,this.Hs.bind(this)),this.Ws.startIfEnabledOrStop(),this.Xs=this.Ft.bind(this),ft(ce,Al,this.Xs),this.Rs=!0)}Vs(){var e;$&&ce&&(this.zs&&$.removeEventListener(Rl,this.zs),this.Us&&ce.removeEventListener("click",this.Us,{capture:!0}),this.Ys&&ce.removeEventListener("mousemove",this.Ys,{capture:!0}),this.Xs&&ce.removeEventListener(Al,this.Xs),clearTimeout(this.Js),(e=this.Ws)==null||e.stop(),this.Rs=!1)}Ks(e,t){var n=this.instance.scrollManager.scrollY(),s=this.instance.scrollManager.scrollX(),i=this.instance.scrollManager.scrollElement(),o=function(a,c,u){for(var h=a;h&&hi(h)&&!Pn(h,"body");){if(h===u)return!1;if(Ge(c,$?.getComputedStyle(h).position))return!0;h=f0(h)}return!1}(Gm(e),["fixed","sticky"],i);return{x:e.clientX+(o?0:s),y:e.clientY+(o?0:n),target_fixed:o,type:t}}Tt(e,t){var n;if(t===void 0&&(t="click"),!Lm(e.target)&&Km(e)){var s=this.Ks(e,t);(n=this.rageclicks)!=null&&n.isRageClick(e.clientX,e.clientY,new Date().getTime())&&this.Qs(oe({}
983,s,{type:"rageclick"})),this.Qs(s)}}Gs(e){!Lm(e.target)&&Km(e)&&(clearTimeout(this.Js),this.Js=setTimeout(()=>{this.Qs(this.Ks(e,"mousemove"))},500))}Qs(e){if($){var t=$.location.href,n=this.Bt.custom_personal_data_properties,s=this.Bt.mask_personal_data_properties?[...ho,...n||[]]:[],i=Nr(t,s,Lr);this.T=this.T||{},this.T[i]||(this.T[i]=[]),this.T[i].push(e)}}Yr(){this.T&&!Hi(this.T)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},deadClicksAutocapture:mm,webVitalsAutocapture:class{constructor(e){var t;this.$s=!1,this.Rs=!1,this.T={url:void 0,metrics:[],firstMetricTimestamp:void 0},this.eo=()=>{clearTimeout(this.ro),this.T.metrics.length!==0&&(this._instance.capture("$web_vitals",this.T.metrics.reduce((n,s)=>oe({},n,{["$web_vitals_"+s.name+"_event"]:oe({},s),["$web_vitals_"+s.name+"_value"]:s.value}),{})),this.T={url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.ht=n=>{var s,i=(s=this._instance.sessionManager)==null?void 0:s.checkAndGetSessionAndWindowId(!0);if(fe(i))vs.error("Could not read session ID. Dropping metrics!");else{this.T=this.T||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var o=this.io();fe(o)||(Ue(n?.name)||Ue(n?.value)?vs.error("Invalid metric received",n):!this.no||this.no>n.value?(this.T.url!==o&&(this.eo(),this.ro=setTimeout(this.eo,this.flushToCaptureTimeoutMs)),fe(this.T.url)&&(this.T.url=o),this.T.firstMetricTimestamp=fe(this.T.firstMetricTimestamp)?Date.now():this.T.firstMetricTimestamp,n.attribution&&n.attribution.interactionTargetElement&&(n.attribution.interactionTargetElement=void 0),this.T.metrics.push(oe({},n,{$current_url:o,$session_id:i.sessionId,$window_id:i.windowId,timestamp:Date.now()})),this.T.metrics.length===this.allowedMetrics.length&&this.eo()):vs.error("Ignoring metric with value >= "+this.no,n))}},this.so=()=>{if(!this.Rs){var n,s,i,o,a=_e.__PosthogExtensions__;fe(a)||fe(a.postHogWebVitalsCallbacks)||({onLCP:n,onCLS:s,onFCP:i,onINP:o}=a.postHogWebVitalsCallbacks),n&&s&&i&&o?(this.allowedMetrics.indexOf("LCP")>-1&&n(this.ht.bind(this)),this.allowedMetrics.indexOf("CLS")>-1&&s(this.ht.bind(this)),this.allowedMetrics.indexOf("FCP")>-1&&i(this.ht.bind(this)),this.allowedMetrics.indexOf("INP")>-1&&o(this.ht.bind(this)),this.Rs=!0):vs.error("web vitals callbacks not loaded - not starting")}},this._instance=e,this.$s=!((t=this._instance.persistence)==null||!t.props[$u]),this.startIfEnabled()}get oo(){return this._instance.config.capture_performance}get allowedMetrics(){var e,t,n=ut(this.oo)?(e=this.oo)==null?void 0:e.web_vitals_allowed_metrics:void 0;return Ue(n)?((t=this._instance.persistence)==null?void 0:t.props[zu])||["CLS","FCP","INP","LCP"]:n}get flushToCaptureTimeoutMs(){return(ut(this.oo)?this.oo.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var e=ut(this.oo)?this.oo.web_vitals_attribution:void 0;return e!=null&&e}get no(){var e=ut(this.oo)&&xn(this.oo.__web_vitals_max_value)?this.oo.__web_vitals_max_value:Vm;return e>0&&6e4>=e?Vm:e}get isEnabled(){var e=kt?.protocol;if(e!=="http:"&&e!=="https:")return vs.info("Web Vitals are disabled on non-http/https protocols"),!1;var t=ut(this.oo)?this.oo.web_vitals:Wn(this.oo)?this.oo:void 0;return Wn(t)?t:this.$s}startIfEnabled(){this.isEnabled&&!this.Rs&&(vs.info("enabled, starting..."),this.ur(this.so))}onRemoteConfig(e){if("capturePerformance"in e){var t=ut(e.capturePerformance)&&!!e.capturePerformance.web_vitals,n=ut(e.capturePerformance)?e.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[$u]:t}),this._instance.persistence.register({[zu]:n})),this.$s=t,this.startIfEnabled()}}ur(e){var t,n;(t=_e.__PosthogExtensions__)!=null&&t.postHogWebVitalsCallbacks?e():(n=_e.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,this.useAttribution?"web-vitals-with-attribution":"web-vitals",s=>{s?vs.error("failed to load script",s):e()})}io(){var e=$?$.location.href:void 0;if(e){var t=this._instance.config.custom_personal_data_properties,n=this._instance.config.mask_personal_data_properties?[...ho,...t||[]]:[];return Nr(e,n,Lr)}vs.error("Could not determine current URL")}}},EP={exceptionObserver:class{constructor(e){var t,n,s;this.so=()=>{var i;if($&&this.isEnabled&&(i=_e.__PosthogExtensions__)!=null&&i.errorWrappingFunctions){var o=_e.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,a=_e.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,c=_e.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.ao&&this.Bt.capture_unhandled_errors&&(this.ao=o(this.captureException.bind(this))),!this.lo&&this.Bt.capture_unhandled_rejections&&(this.lo=a(this.captureException.bind(this))),!this.uo&&this.Bt.capture_console_errors&&(this.uo=c(this.captureException.bind(this)))}catch(u){Bo.error("failed to start",u),this.ho()}}},this._instance=e,this.co=!((t=this._instance.persistence)==null||!t.props[Fu]),this.do=new Mk({refillRate:(n=this._instance.config.error_tracking.__exceptionRateLimiterRefillRate)!==null&&n!==void 0?n:1,bucketSize:(s=this._instance.config.error_tracking.__exceptionRateLimiterBucketSize)!==null&&s!==void 0?s:10,refillInterval:1e4,Gt:Bo}),this.Bt=this.vo(),this.startIfEnabledOrStop()}vo(){var e=this._instance.config.capture_exceptions,t={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return ut(e)?t=oe({},t,e):(fe(e)?this.co:e)&&(t=oe({},t,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),t}get isEnabled(){return this.Bt.capture_console_errors||this.Bt.capture_unhandled_errors||this.Bt.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Bo.info("enabled"),this.ho(),this.ur(this.so)):this.ho()}ur(e){var t,n;(t=_e.__PosthogExtensions__)!=null&&t.errorWrappingFunctions&&e(
983),(n=_e.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"exception-autocapture",s=>{if(s)return Bo.error("failed to load script",s);e()})}ho(){var e,t,n;(e=this.ao)==null||e.call(this),this.ao=void 0,(t=this.lo)==null||t.call(this),this.lo=void 0,(n=this.uo)==null||n.call(this),this.uo=void 0}onRemoteConfig(e){"autocaptureExceptions"in e&&(this.co=!!e.autocaptureExceptions||!1,this._instance.persistence&&this._instance.persistence.register({[Fu]:this.co}),this.Bt=this.vo(),this.startIfEnabledOrStop())}onConfigChange(){this.Bt=this.vo()}captureException(e){var t,n,s,i=(t=e==null||(n=e.$exception_list)==null||(n=n[0])==null?void 0:n.type)!==null&&t!==void 0?t:"Exception";this.do.consumeRateLimit(i)?Bo.info("Skipping exception capture because of client rate limiting.",{exception:i}):(s=this._instance.exceptions)==null||s.sendExceptionEvent(e)}},exceptions:class{constructor(e){var t,n;this.fo=[],this.po=new Vk([new Zk,new lM,new tM,new eM,new rM,new oM,new sM,new aM],function(s){for(var i=arguments.length,o=new Array(i>1?i-1:0),a=1;i>a;a++)o[a-1]=arguments[a];return function(c,u){u===void 0&&(u=0);for(var h=[],m=c.split(`
984`),_=u;m.length>_;_++){var b=m[_];if(1024>=b.length){var v=pm.test(b)?b.replace(pm,"$1"):b;if(!v.match(/\S*Error: /)){for(var w of o){var A=w(v,s);if(A){h.push(A);break}}if(h.length>=50)break}}}return function(B){if(!B.length)return[];var H=Array.from(B);return H.reverse(),H.slice(0,50).map(I=>{return oe({},I,{filename:I.filename||(T=H,T[T.length-1]||{}).filename,function:I.function||po});var T})}(h)}}("web:javascript",Yk,Qk)),this._instance=e,this.fo=(t=(n=this._instance.persistence)==null?void 0:n.get_property(Bu))!==null&&t!==void 0?t:[],this.mo=vl(this.yo()),this.bo=new dM(this.mo)}onConfigChange(){this.mo=vl(this.yo()),this.bo.setConfig(this.mo)}onRemoteConfig(e){var t,n,s;if("errorTracking"in e){var i=(t=(n=e.errorTracking)==null?void 0:n.suppressionRules)!==null&&t!==void 0?t:[],o=(s=e.errorTracking)==null?void 0:s.captureExtensionExceptions;this.fo=i,this._instance.persistence&&this._instance.persistence.register({[Bu]:this.fo,[Hu]:o})}}get _o(){var e,t=!!this._instance.get_property(Hu),n=this._instance.config.error_tracking.captureExtensionExceptions;return(e=n??t)!==null&&e!==void 0&&e}buildProperties(e,t){return this.po.buildFromUnknown(e,{syntheticException:t?.syntheticException,mechanism:{handled:t?.handled}})}addExceptionStep(e,t){if(this.mo.enabled)try{if(!ot(e)||e.trim().length===0)return void Zn.warn("Ignoring exception step because message must be a non-empty string");var n=this.wo(t),{sanitizedProperties:s,droppedKeys:i}=function(o){if(!o)return{sanitizedProperties:{},droppedKeys:[]};var a=[];return{sanitizedProperties:Object.keys(o).reduce((c,u)=>cM.has(u)?(a.push(u),c):(c[u]=o[u],c),{}),droppedKeys:a}}(n);i.length>0&&Zn.warn("Ignoring reserved exception step fields",{droppedKeys:i}),this.bo.add(oe({[_l]:e,[bl]:new Date().toISOString()},s))}catch(o){Zn.error("Failed to add exception step. Ignoring breadcrumb.",o)}}sendExceptionEvent(e){try{var t=e.$exception_list;if(this.Io(t)){if(this.Co(t))return this.So("Exception dropped: matched a suppression rule"),void Zn.info("Skipping exception capture because a suppression rule matched");if(!this._o&&this.xo(t))return this.So("Exception dropped: thrown by a browser extension"),void Zn.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ko(t))return this.So("Exception dropped: thrown by the PostHog SDK"),void Zn.info("Skipping exception capture because it was thrown by the PostHog SDK")}var n=this.mo.enabled&&Ue(e.$exception_steps)?this.To(e):e;try{var s=this._instance.capture("$exception",n,{_noTruncate:!0,_batchKey:"exceptionEvent",en:!0});return s&&this.bo.clear(),s}catch(i){return Zn.error("Failed to capture exception event. Dropping this exception.",i),void this.bo.clear()}}catch(i){return void Zn.error("Failed to process exception event. Ignoring this exception.",i)}}To(e){try{var t=this.bo.getAttachable();return t.length===0?e:oe({},e,{$exception_steps:t})}catch(n){return Zn.error("Failed to read buffered exception steps. Capturing exception without steps.",n),e}}So(e){this.mo.enabled&&this.bo.add({[_l]:e,[bl]:new Date().toISOString()})}wo(e){return ut(e)?oe({},e):{}}yo(){var e,t;return(e=(t=this._instance.config.error_tracking)==null?void 0:t.exception_steps)!==null&&e!==void 0?e:{}}Co(e){if(e.length===0)return!1;var t=e.reduce((n,s)=>{var{type:i,value:o}=s;return ot(i)&&i.length>0&&n.$exception_types.push(i),ot(o)&&o.length>0&&n.$exception_values.push(o),n},{$exception_types:[],$exception_values:[]});return this.fo.some(n=>{var s=n.values.map(i=>{var o,a=a0[i.operator],c=He(i.value)?i.value:[i.value],u=(o=t[i.key])!==null&&o!==void 0?o:[];return c.length>0&&a(c,u)});return n.type==="OR"?s.some(Boolean):s.every(Boolean)})}xo(e){return e.flatMap(t=>{var n,s;return(n=(s=t.stacktrace)==null?void 0:s.frames)!==null&&n!==void 0?n:[]}).some(t=>t.filename&&t.filename.startsWith("chrome-extension://"))}ko(e){if(e.length>0){var t,n,s,i,o=(t=(n=e[0].stacktrace)==null?void 0:n.frames)!==null&&t!==void 0?t:[],a=o[o.length-1];return(s=a==null||(i=a.filename)==null?void 0:i.includes("posthog.com/static"))!==null&&s!==void 0&&s}return!1}Io(e){return!Ue(e)&&He(e)}}},wP=oe({productTours:class{get ni(){return this._instance.persistence}constructor(e){this.Ao=null,this.Eo=null,this._instance=e}initialize(){this.loadIfEnabled()}onRemoteConfig(e){"productTours"in e&&(this.ni&&this.ni.register({[Wu]:!!e.productTours}),this.loadIfEnabled())}loadIfEnabled(){var e,t;this.Ao||(e=this._instance).config.disable_product_tours||(t=e.persistence)==null||!t.get_property(Wu)||this.ur(()=>this.Ro())}ur(e){var t,n;(t=_e.__PosthogExtensions__)!=null&&t.generateProductTours?e():(n=_e.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"product-tours",s=>{s?Ym.error("Could not load product tours script",s):e()})}Ro(){var e;!this.Ao&&(e=_e.__PosthogExtensions__)!=null&&e.generateProductTours&&(this.Ao=_e.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(e,t){if(t===void 0&&(t=!1),!He(this.Eo)||t){var n=this.ni;if(n){var s=n.props[Va];if(He(s)&&!t)return this.Eo=s,void e(s,{isLoaded:!0})}this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/product_tours/?token="+this._instance.config.token),method:"GET",callback:i=>{var o=i.statusCode;if(o!==200||!i.json){var a="Product Tours API could not be loaded, status: "+o;return Ym.error(a),void e([],{isLoaded:!1,error:a})}var c=He(i.json.product_tours)?i.json.product_tours:[];this.Eo=c,n&&n.register({[Va]:c}),e(c,{isLoaded:!0})}})}else e(this.Eo,{isLoaded:!0})}getActiveProductTours(e){Ue(this.Ao)?e([],{isLoaded:!1,error:"Product tours not loaded"}):this.Ao.getActiveProductTours(e)}showProductTour(e){var t;(t=this.Ao)==null||t.showTourById(e)}previewTour(e){this.Ao?this.Ao.previewTour(e):this.ur(()=>{var t;this.Ro(),(t=this.Ao)==null||t.previewTour(e)})}dismissProductTour(){var e;(e=this.Ao)==null||e.dismissTour("user_clicked_skip")}nextStep(){var e;(e=this.Ao)==null||e.nextStep()}previousStep(){var e;(e=this.Ao)==null||e.previousStep()}clearCache(){var e;this.Eo=null,(e=this.ni)==null||e.unregister(Va)}resetTour(e){var t;(t=this.Ao)==null||t.resetTour(e)}resetAllTours(){var e;(e=this.Ao)==null||e.resetAllTours()}cancelPendingTour(e){var t;(t=this.Ao)==null||t.cancelPendingTour(e)}}},pc),TP={siteApps:class{constructor(e){this._instance=e,this.No=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}Mo(e,t){if(t){var n=this.globalsForEvent(t);this.No.push(n),this.No.length>1e3&&(this.No=this.No.slice(10))}}get siteAppLoaders(){var e;return(e=_e._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.siteApps}initialize(){if(this.isEnabled){var e=this._instance._addCaptureHook(this.Mo.bind(this));this.Fo=()=>{e(),this.No=[],this.Fo=void 0}}}globalsForEvent(e){var t,n,s,i,o,a,c;if(!e)throw new Error("Event payload is required");var u={},h=this._instance.get_property("$groups")||[],m=this._instance.get_property("$stored_group_properties")||{};for(var[_,b]of Object.entries(m))u[_]={id:h[_],type:_,properties:b};var{$set_once:v,$set:w}=e;return{event:oe({},lv(e,fP),{properties:oe({},e.properties,w?{$set:oe({},(t=(n=e.properties)==null?void 0:n.$set)!==null&&t!==void 0?t:{},w)}:{},v?{$set_once:oe({},(s=(i=e.properties)==null?void 0:i.$set_once)!==null&&s!==void 0?s:{},v)}:{}),elements_chain:(o=(a=e.properties)==null?void 0:a.$elements_chain)!==null&&o!==void 0?o:"",distinct_id:(c=e.properties)==null?void 0:c.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:u}}setupSiteApp(e){var t=this.apps[e.id],n=()=>{var a;!t.errored&&this.No.length&&(Es.info("Processing "+this.No.length+" events for site app with id "+e.id),this.No.forEac
984h(c=>t.processEvent==null?void 0:t.processEvent(c)),t.processedBuffer=!0),Object.values(this.apps).every(c=>c.processedBuffer||c.errored)&&((a=this.Fo)==null||a.call(this))},s=!1,i=a=>{t.errored=!a,t.loaded=!0,Es.info("Site app with id "+e.id+" "+(a?"loaded":"errored")),s&&n()};try{var{processEvent:o}=e.init({posthog:this._instance,callback(a){i(a)}});o&&(t.processEvent=o),s=!0}catch(a){Es.error(Xm+e.id,a),i(!1)}if(s&&t.loaded)try{n()}catch(a){Es.error("Error while processing buffered events PostHog app with config id "+e.id,a),t.errored=!0}}Oo(){var e=this.siteAppLoaders||[];for(var t of e)this.apps[t.id]={id:t.id,loaded:!1,errored:!1,processedBuffer:!1};for(var n of e)this.setupSiteApp(n)}Po(e){if(Object.keys(this.apps).length!==0){var t=this.globalsForEvent(e);for(var n of Object.values(this.apps))try{n.processEvent==null||n.processEvent(t)}catch(s){Es.error("Error while processing event "+e.event+" for site app "+n.id,s)}}}onRemoteConfig(e){var t,n,s,i=this;if((t=this.siteAppLoaders)!=null&&t.length)return this.isEnabled?(this.Oo(),void this._instance.on("eventCaptured",u=>this.Po(u))):void Es.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if((n=this.Fo)==null||n.call(this),(s=e.siteApps)!=null&&s.length)if(this.isEnabled){var o=function(u){var h;_e["__$$ph_site_app_"+u]=i._instance,(h=_e.__PosthogExtensions__)==null||h.loadSiteApp==null||h.loadSiteApp(i._instance,c,m=>{if(m)return Es.error(Xm+u,m)})};for(var{id:a,url:c}of e.siteApps)o(a)}else Es.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}}},CP={tracingHeaders:class{constructor(e){this.Lo=void 0,this.Do=void 0,this.so=()=>{var t,n,s=this.Bo()||[];fe(this.Lo)&&((t=_e.__PosthogExtensions__)==null||(t=t.tracingHeadersPatchFns)==null||t._patchXHR(s,this._instance.get_distinct_id(),this._instance.sessionManager)),fe(this.Do)&&((n=_e.__PosthogExtensions__)==null||(n=n.tracingHeadersPatchFns)==null||n._patchFetch(s,this._instance.get_distinct_id(),this._instance.sessionManager))},this._instance=e}initialize(){this.startIfEnabledOrStop()}ur(e){var t,n;(t=_e.__PosthogExtensions__)!=null&&t.tracingHeadersPatchFns&&e(),(n=_e.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"tracing-headers",s=>{if(s)return pP.error("failed to load script",s);e()})}Bo(){var e;return(e=this._instance.config.addTracingHeaders)!==null&&e!==void 0?e:this._instance.config.__add_tracing_headers}startIfEnabledOrStop(){var e,t;this.Bo()?this.ur(this.so):((e=this.Lo)==null||e.call(this),(t=this.Do)==null||t.call(this),this.Lo=void 0,this.Do=void 0)}}},AP=oe({surveys:class{get Bt(){return this._instance.config}constructor(e){this.jo=void 0,this._surveyManager=null,this.$o=!1,this.qo=[],this.Zo=null,this._instance=e,this._surveyEventReceiver=null}initialize(){this.loadIfEnabled()}onRemoteConfig(e){if(!this.Bt.disable_surveys){var t=e.surveys;if(Ue(t))return je.warn("Flags not loaded yet. Not loading surveys.");var n=He(t);this.jo=n?t.length>0:t,je.info("flags response received, isSurveysEnabled: "+this.jo),this.loadIfEnabled()}}reset(){localStorage.removeItem("lastSeenSurveyDate");for(var e=[],t=0;t<localStorage.length;t++){var n=localStorage.key(t);(n!=null&&n.startsWith(cp)||n!=null&&n.startsWith("inProgressSurvey_"))&&e.push(n)}e.forEach(s=>localStorage.removeItem(s))}loadIfEnabled(){if(!this._surveyManager)if(this.$o)je.info("Already initializing surveys, skipping...");else if(this.Bt.disable_surveys)je.info(Jm);else if(this.Bt.cookieless_mode&&this._instance.consent.isOptedOut())je.info("Not loading surveys in cookieless mode without consent.");else{var e=_e?.__PosthogExtensions__;if(e){if(!fe(this.jo)||this.Bt.advanced_enable_surveys){var t=this.jo||this.Bt.advanced_enable_surveys;this.$o=!0;try{var n=e.generateSurveys;if(n)return void this.Vo(n,t);var s=e.loadExternalDependency;if(!s)return void this.Ho(gh);s(this._instance,"surveys",i=>{i||!e.generateSurveys?this.Ho("Could not load surveys script",i):this.Vo(e.generateSurveys,t)})}catch(i){throw this.Ho("Error initializing surveys",i),i}finally{this.$o=!1}}}else je.error("PostHog Extensions not found.")}}Vo(e,t){this._surveyManager=e(this._instance,t),this._surveyEventReceiver=new yP(this._instance),je.info("Surveys loaded successfully"),this.zo({isLoaded:!0})}Ho(e,t){je.error(e,t),this.zo({isLoaded:!1,error:e})}onSurveysLoaded(e){return this.qo.push(e),this._surveyManager&&this.zo({isLoaded:!0}),()=>{this.qo=this.qo.filter(t=>t!==e)}}getSurveys(e,t){if(t===void 0&&(t=!1),this.Bt.disable_surveys)return je.info(Jm),e([]);var n,s=this._instance.get_property(Ku);if(s&&!t)return e(s,{isLoaded:!0});typeof Promise<"u"&&this.Zo?this.Zo.then(i=>{var{surveys:o,context:a}=i;return e(o,a)}):(typeof Promise<"u"&&(this.Zo=new Promise(i=>{n=i}
984)),this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/surveys/?token="+this.Bt.token),method:"GET",timeout:this.Bt.surveys_request_timeout_ms,callback:i=>{var o;this.Zo=null;var a=i.statusCode;if(a!==200||!i.json){var c="Surveys API could not be loaded, status: "+a;je.error(c);var u={isLoaded:!1,error:c};return e([],u),void(n==null||n({surveys:[],context:u}))}var h,m=i.json.surveys||[],_=m.filter(v=>function(w){return!(!w.start_date||w.end_date)}(v)&&(function(w){var A;return!((A=w.conditions)==null||(A=A.events)==null||(A=A.values)==null||!A.length)}(v)||function(w){var A;return!((A=w.conditions)==null||(A=A.actions)==null||(A=A.values)==null||!A.length)}(v)));_.length>0&&((h=this._surveyEventReceiver)==null||h.register(_)),(o=this._instance.persistence)==null||o.register({[Ku]:m});var b={isLoaded:!0};e(m,b),n?.({surveys:m,context:b})}}))}zo(e){for(var t of this.qo)try{if(!e.isLoaded)return t([],e);this.getSurveys(t)}catch(n){je.error("Error in survey callback",n)}}getActiveMatchingSurveys(e,t){if(t===void 0&&(t=!1),!Ue(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(e,t);je.warn("init was not called")}Uo(e){var t=null;return this.getSurveys(n=>{var s;t=(s=n.find(i=>i.id===e))!==null&&s!==void 0?s:null}),t}Yo(e){if(Ue(this._surveyManager))return{eligible:!1,reason:kd};var t=typeof e=="string"?this.Uo(e):e;return t?this._surveyManager.checkSurveyEligibility(t):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(e){if(Ue(this._surveyManager))return je.warn("init was not called"),{visible:!1,disabledReason:kd};var t=this.Yo(e);return{visible:t.eligible,disabledReason:t.reason}}canRenderSurveyAsync(e,t){return Ue(this._surveyManager)?(je.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:kd})):new Promise(n=>{this.getSurveys(s=>{var i,o=(i=s.find(c=>c.id===e))!==null&&i!==void 0?i:null;if(o){var a=this.Yo(o);n({visible:a.eligible,disabledReason:a.reason})}else n({visible:!1,disabledReason:"Survey not found"})},t)})}renderSurvey(e,t,n){var s;if(Ue(this._surveyManager))je.warn("init was not called");else{var i=typeof e=="string"?this.Uo(e):e;if(i!=null&&i.id)if(KM.includes(i.type)){var o=ce?.querySelector(t);if(o)return(s=i.appearance)!=null&&s.surveyPopupDelaySeconds?(je.info("Rendering survey "+i.id+" with delay of "+i.appearance.surveyPopupDelaySeconds+" seconds"),void setTimeout(()=>{var a,c;je.info("Rendering survey "+i.id+" with delay of "+((a=i.appearance)==null?void 0:a.surveyPopupDelaySeconds)+" seconds"),(c=this._surveyManager)==null||c.renderSurvey(i,o,n),je.info("Survey "+i.id+" rendered")},1e3*i.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(i,o,n);je.warn("Survey element not found")}else je.warn("Surveys of type "+i.type+" cannot be rendered in the app");else je.warn("Survey not found")}}displaySurvey(e,t){var n;if(Ue(this._surveyManager))je.warn("init was not called");else{var s=this.Uo(e);if(s){var i=s;if((n=s.appearance)!=null&&n.surveyPopupDelaySeconds&&t.ignoreDelay&&(i=oe({},s,{appearance:oe({},s.appearance,{surveyPopupDelaySeconds:0})})),t.displayType!==sp.Popover&&t.initialResponses&&je.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),t.ignoreConditions===!1){var o=this.canRenderSurvey(s);if(!o.visible)return void je.warn("Survey is not eligible to be displayed: ",o.disabledReason)}t.displayType!==sp.Inline?this._surveyManager.handlePopoverSurvey(i,t):this.renderSurvey(i,t.selector,t.properties)}else je.warn("Survey not found")}}cancelPendingSurvey(e){Ue(this._surveyManager)?je.warn("init was not called"):this._surveyManager.cancelSurvey(e)}handlePageUnload(){var e;(e=this._surveyManager)==null||e.handlePageUnload()}}},pc),RP={toolbar:class{constructor(e){this.instance=e}Go(e){_e.ph_toolbar_state=e}Wo(){var e;return(e=_e.ph_toolbar_state)!==null&&e!==void 0?e:0}initialize(){return this.maybeLoadToolbar()}maybeLoadToolbar(e,t,n){if(e===void 0&&(e=void 0),t===void 0&&(t=void 0),n===void 0&&(n=void 0),$v(this.instance.config)||!$||!ce)return!1;e=e??$.location,n=n??$.history;try{if(!t){try{$.localStorage.setItem("test","test"),$.localStorage.removeItem("test")}catch{return!1}t=$?.localStorage}var s,i=_P||kl(e.hash,"__posthog")||kl(e.hash,"state"),o=i?fm(()=>JSON.parse(atob(decodeURIComponent(i))))||fm(()=>JSON.parse(decodeURIComponent(i))):null;return o&&o.action==="ph_authorize"?((s=o).source="url",s&&Object.keys(s).length>0&&(o.desiredHash?e.hash=o.desiredHash:n?n.replaceState(n.state,"",e.pathname+e.search):e.hash="")):((s=JSON.parse(t.getItem(Qm)||"{}")).source="localstorage",delete s.userIntent),!(!s.token||this.instance.config.token!==s.token||(this.loadToolbar(s),0))}catch{return!1}}Xo(e){var t=_e.ph_load_toolbar||_e.ph_load_editor;!Ue(t)&&ss(t)?t(e,this.instance):Zm.warn("No toolbar load function found")}loadToolbar(e){var t=!(ce==null||!ce.getElementById(Uv));if(!$||t)return!1;var n=this.instance.requestRouter.region==="custom"&&this.instance.config.advanced_disable_toolbar_metrics,s=oe({token:this.instance.config.token},e,{apiURL:this.instance.requestRouter.endpointFor("ui")},n?{instrument:!1}:{});if($.localStorage.setItem(Qm,JSON.stringify(oe({},s,{source:void 0}))),this.Wo()===2)this.Xo(s);else if(this.Wo()===0){var i;this.Go(1),(i=_e.__PosthogExtensions__)==null||i.loadExternalDependency==null||i.loadExternalDependency(this.instance,"toolbar",o=>{if(o)return Zm.error("[Toolbar] Failed to load",o),void this.Go(0);this.Go(2),this.Xo(s)}),ft($,"turbolinks:load",()=>{this.Go(0),this.loadToolbar(s)})}return!0}Jo(e){return this.loadToolbar(e)}maybeLoadEditor(e,t,n){return e===void 0&&(e=void 0),t===void 0&&(t=void 0),n===void 0&&(n=void 0),this.maybeLoadToolbar(e,t,n)}}},xP=oe({experiments:Dt},pc),IP={conversations:class{constructor(e){this.Ko=void 0,this._conversationsManager=null,this.Qo=!1,this.ea=null,this._instance=e}initialize(){this.loadIfEnabled()}onRemoteConfig(e){if(!this._instance.config.disable_conversations){var t=e.conversations;Ue(t)||(Wn(t)?this.Ko=t:(this.Ko=t.enabled,this.ea=t),this.loadIfEnabled())}}reset(){var e;(e=this._conversationsManager)==null||e.reset(),this._conversationsManager=null,this.Ko=void 0,this.ea=null}loadIfEnabled(){if(!(this._conversationsManager||this.Qo||this._instance.config.disable_conversations||$v(this._instance.config)||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var e=_e?.__PosthogExtensions__;if(e&&!fe(this.Ko)&&this.Ko)if(this.ea&&this.ea.token){this.Qo=!0;try{var t=e.initConversations;if(t)return this.ta(t),void(this.Qo=!1);var n=e.loadExternalDependency;if(!n)return void this.ra(gh);n(this._instance,"conversations",s=>{s||!e.initConversations?this.ra("Could not load conversations script",s):this.ta(e.initConversations),this.Qo=!1})}catch(s){this.ra("Error initializing conversations",s),this.Qo=!1}}else Sn.error("Conversations enabled but missing token in remote config.")}}ta(e){if(this.ea)try{this._conversationsManager=e(this.ea,this._instance),Sn.info("Conversations loaded successfully")}catch(t){this.ra("Error completing conversations initialization",t)}else Sn.error("Cannot complete initialization: remote config is null")}ra(e,t){Sn.error(e,t),this._conversationsManager=null,this.Qo=!1}show(){this._conversationsManager?this._conversationsManager.show():Sn.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return this.Ko===!0&&!us(this._conversationsManager)}isVisible(){var e,t;return(e=(t=this._conversationsManager)==null?void 0:t.isVisible())!==null&&e!==void 0&&e}sendMessage(e,t,n){var s=this;return En(function*(){return s._conversationsManager?s._conversationsManager.sendMessage(e,t,n):(Sn.warn(Js),null)})()}getMessages(e,t){var n=this;return En(function*(){return n._conversationsManager?n._conversationsManager.getMessages(e,t):(Sn.warn(Js),null)})()}markAsRead(e){var t=this;return En(function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(Sn.warn(Js),null)})()}getTickets(e){var t=this;return En(function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(Sn.warn(Js),null)})()}requestRestoreLink(e){var t=this;return En(function*(){return t._conversationsManager?t._conversationsManager.requestRestoreLink(e):(Sn.warn(Js),null)})()}restoreFromToken(e){var t=this;return En(function*(){return t._conversationsManager?t._conversationsManager.restoreFromToken(e):(Sn.warn(Js),null)})()}restoreFromUrlToken(){var e=this;return En(function*(){return e._conversationsManager?e._conversationsManager.restoreFromUrlToken():(Sn.warn(Js),null)})()}getCurrentTicketId(){var e,t;return(e=(t=this._conversationsManager)==null?void 0:t.getCurrentTicketId())!==null&&e!==void 0?e:null}getWidgetSessionId(){var e,t;return(e=(t=this._conversationsManager)==null?void 0:t.getWidgetSessionId())!==null&&e!==void 0?e:null}un(){var e;(e=this._conversationsManager)==null||e.setIdentity()}hn(){var e;(e=this._conversationsManager)==null||e.clearIdentity()}}},OP={logs:class{constructor(e){var t;this.ia=!1,this.na=!1,this.Gt=tt("[logs]"),this.sa=[],this.oa=0,this.aa=0,this.la=!1,this._instance=e,this._instance&&(t=this._instance.config.logs)!=null&&t.captureConsoleLogs&&(this.ia=!0)}initialize(){this.loadIfEnabled()}onRemoteConfig(e){var t,n=(t=e.logs)==null?void 0:t.captureConsoleLogs;!Ue(n)&&n&&(this.ia=!0,this.loadIfEnabled())}reset(){this.sa=[],this.jr&&(clearTimeout(this.jr),this.jr=void 0),this.oa=0,this.aa=0,this.la=!1}loadIfEnabled(){if(this.ia&&!this.na){var e=_e?.__PosthogExtensions__;if(e){var t=e.loadExternalDependency;t?t(this._instance,"logs",n=>{var s;n||(s=e.logs)==null||!s.initializeLogs?this.Gt.error("Could not load logs script",n):(e.logs.initializeLogs(this._instance),this.na=!0)}):this.Gt.error(gh)}else this.Gt.error("PostHog Extensions not found.")}}captureLog(e){var t,n,s,i,o,a;if(this._instance.is_capturing())if(e&&e.body){var c=(t=(n=this._instance.config.logs)==null?void 0:n.flushIntervalMs)!==null&&t!==void 0?t:3e3,u=(s=(i=this._instance.config.logs)==null?void 0:i.maxLogsPerInterval)!==null&&s!==void 0?s:1e3,h=Date.now();if(c>h-this.aa||(this.aa=h,this.oa=0,this.la=!1),u>this.oa){this.oa++;var m=function(_,b){var v=_.level||"info",{text:w,number:A}=xv[v]||Wk,B=String(Date.now())+"000000",H={};b.distinctId&&(H.posthogDistinctId=b.distinctId),b.sessionId&&(H.sessionId=b.sessionId),b.currentUrl&&(H["url.full"]=b.currentUrl),b.screenName&&(H["screen.name"]=b.screenName),b.appState&&(H["app.state"]=b.appState),b.activeFeatureFlags&&b.activeFeatureFlags.length>0&&(H.feature_flags=b.activeFeatureFlags);var I=oe({},H,_.attributes||{}),T={timeUnixNano:B,observedTimeUnixNano:B,severityNumber:A,severityText:w,body:{stringValue:_.body},attributes:um(I)};return _.trace_id&&(T.traceId=_.trace_id),_.span_id&&(T.spanId=_.span_id),fe(_.trace_flags)||(T.flags=_.trace_flags),T}(e,this.ua());this.sa.push({record:m}),((o=(a=this._instance.config.logs)==null?void 0:a.maxBufferSize)!==null&&o!==void 0?o:100)>this.sa.length?this.ha():this.flushLogs()}else this.la||(this.Gt.warn("captureLog dropping logs: exceeded "+u+" logs per "+c+"ms"),this.la=!0)}else this.Gt.warn("captureLog requires a body")}get logger(){return this.ca||(this.ca={trace:(e,t)=>this.captureLog({body:e,level:"trace",attributes:t}),debug:(e,t)=>this.captureLog({body:e,level:"debug",attributes:t}),info:(e,t)=>this.captureLog({body:e,level:"info",attributes:t}),warn:(e,t)=>this.captureLog({body:e,level:"warn",attributes:t}),error:(e,t)=>
984this.captureLog({body:e,level:"error",attributes:t}),fatal:(e,t)=>this.captureLog({body:e,level:"fatal",attributes:t})}),this.ca}flushLogs(e){if(this.jr&&(clearTimeout(this.jr),this.jr=void 0),this.sa.length!==0){var t=this.sa;this.sa=[];var n=this._instance.config.logs,s=oe({"service.name":n?.serviceName||"unknown_service"},n?.environment&&{"deployment.environment":n.environment},n?.serviceVersion&&{"service.version":n.serviceVersion},n?.resourceAttributes),i=function(a,c,u,h){return{resourceLogs:[{resource:{attributes:um(c)},scopeLogs:[{scope:{name:u,version:h},logRecords:a}]}]}}(t.map(a=>a.record),s,Vt.LIB_NAME,Vt.LIB_VERSION),o=this._instance.requestRouter.endpointFor("api","/i/v1/logs")+"?token="+encodeURIComponent(this._instance.config.token);this._instance.Vi({method:"POST",url:o,data:i,compression:"best-available",batchKey:"logs",transport:e})}}ha(){var e,t;this.jr||(this.jr=setTimeout(()=>{this.jr=void 0,this.flushLogs()},(e=(t=this._instance.config.logs)==null?void 0:t.flushIntervalMs)!==null&&e!==void 0?e:3e3))}ua(){var e,t={};if(t.distinctId=this._instance.get_distinct_id(),this._instance.sessionManager){var{sessionId:n}=this._instance.sessionManager.checkAndGetSessionAndWindowId(!0);t.sessionId=n}if(_e!=null&&(e=_e.location)!=null&&e.href&&(t.currentUrl=_e.location.href),this._instance.featureFlags){var s=this._instance.featureFlags.getFlags();s&&s.length>0&&(t.activeFeatureFlags=s)}return t}}},kP=oe({},pc,vP,SP,EP,wP,TP,AP,CP,RP,xP,IP,OP);wn.__defaultExtensionClasses=oe({},kP);var sy,Pd=(sy=gr[Di]=new wn,function(){function e(){e.done||(e.done=!0,d0=!1,Qe(gr,function(t){t._dom_loaded()}))}ce!=null&&ce.addEventListener?ce.readyState==="complete"?e():ft(ce,"DOMContentLoaded",e,{capture:!1}):$&&ue.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")}(),sy);const MP={editorType:1},Qs=ic("editorStore",{state:()=>MP,persist:{storage:sessionStorage},getters:{getEditorType:e=>e.editorType},actions:{setEditorType({value:e}){this.$state.editorType=e}}}),eo={},fp=Object.freeze({localBrowserTime:"browser",utc:"utc"}),PP=(e="UTC")=>Fs().tz(e).format("hh:mm A"),NP=(e="UTC")=>Fs().tz(e).add(1,"day").format("YYYY-MM-DD"),x6=(e,t)=>{const n=DP(e,t);return n||b0(e,t)},LP=e=>{const t="getTimeZones_"+String(e);if(eo[t]!==void 0)return eo[t];const n=[],s=Fs.tz.names().reduce((i,o)=>{const a=Eh[o];return!Array.isArray(a)||a.length===0||i.push(o),i},n);return eo[t]=s,s},I6=e=>{const t="getTimeZoneGroups_"+String(e);if(eo[t]!==void 0)return eo[t];const s=LP(e).reduce((o,a)=>{const c=a.indexOf("/");if(c===-1){const h="";return o[h]=o[h]??[],o[h].push(a),o}const u=a.substr(0,c);return o[u]=o[u]??[],o[u].push(a),o},{}),i=Object.keys(s).map(o=>({name:o,zones:s[o]}));return eo[t]=i,i},DP=(e,t)=>{switch(e){case fp.utc:return{name:"Coordinated Universal Time",ianaName:"UTC",zone:e,countries:[],abbreviation:"UTC, GMT",offsetInMins:0};case fp.localBrowserTime:{const n=Fs.tz.guess(!0),s=b0(n,t)??{};return{countries:Eh[n]??[],abbreviation:"Your local time",offsetInMins:new Date().getTimezoneOffset(),...s,name:"Browser Time",ianaName:s.ianaName,zone:e}}default:return}},O6=(e,t)=>{e=new Date(e||Date.now()),e.setMilliseconds(0),t===fp.localBrowserTime&&(t=Intl.DateTimeFormat().resolvedOptions().timeZone);const n=e.getTimezoneOffset()/60*-1,s=e.toLocaleString("en-US",{timeZone:t}),i=new Date(s),o=(i.getTime()-e.getTime())/1e3/60/60,a=n+o;return`${"UTC"+(a<0?"":"+")+a}`},GP=e=>/^(\+|\-).+/.test(e)?"":e,b0=(e,t)=>{const n=Fs.tz.zone(e);if(n)return{name:e,ianaName:n.name,zone:e,countries:Eh[e]??[],abbreviation:GP(n.abbr(t)),offsetInMins:n.utcOffset(t)}},UP={AF:"Afghanistan",AX:"Aland Islands",AL:"Albania",DZ:"Algeria",AS:"American Samoa",AD:"Andorra",AO:"Angola",AI:"Anguilla",AQ:"Antarctica",AG:"Antigua And Barbuda",AR:"Argentina",AM:"Armenia",AW:"Aruba",AU:"Australia",AT:"Austria",AZ:"Azerbaijan",BS:"Bahamas",BH:"Bahrain",BD:"Bangladesh",BB:"Barbados",BY:"Belarus",BE:"Belgium",BZ:"Belize",BJ:"Benin",BM:"Bermuda",BT:"Bhutan",BO:"Bolivia",BA:"Bosnia And Herzegovina",BW:"Botswana",BV:"Bouvet Island",BR:"Brazil",IO:"British Indian Ocean Territory",BN:"Brunei Darussalam",BG:"Bulgaria",BF:"Burkina Faso",BI:"Burundi",KH:"Cambodia",CM:"Cameroon",CA:"Canada",CV:"Cape Verde",KY:"Cayman Islands",CF:"Central African Republic",TD:"Chad",CL:"Chile",CN:"China",CX:"Christmas Island",CC:"Cocos (Keeling) Islands",CO:"Colombia",KM:"Comoros",CG:"Congo",CD:"Congo, Democratic Republic",CK:"Cook Islands",CR:"Costa Rica",CI:"Cote D'Ivoire",HR:"Croatia",CU:"Cuba",CY:"Cyprus",CZ:"Czech Republic",DK:"Denmark",DJ:"Djibouti",DM:"Dominica",DO:"Dominican Republic",EC:"Ecuador",EG:"Egypt",SV:"El Salvador",GQ:"Equatorial Guinea",ER:"Eritrea",EE:"Estonia",ET:"Ethiopia",FK:"Falkland Islands (Malvinas)",FO:"Faroe Islands",FJ:"Fiji",FI:"Finland",FR:"France",GF:"French Guiana",PF:"French Polynesia",TF:"French Southern Territories",GA:"Gabon",GM:"Gambia",GE:"Georgia",DE:"Germany",GH:"Ghana",GI:"Gibraltar",GR:"Greece",GL:"Greenland",GD:"Grenada",GP:"Guadeloupe",GU:"Guam",GT:"Guatemala",GG:"Guernsey",GN:"Guinea",GW:"Guinea-Bissau",GY:"Guyana",HT:"Haiti",HM:"Heard Island & Mcdonald Islands",VA:"Holy See (Vatican City State)",HN:"Honduras",HK:"Hong Kong",HU:"Hungary",IS:"Iceland",IN:"India",ID:"Indonesia",IR:"Iran (Islamic Republic Of)",IQ:"Iraq",IE:"Ireland",IM:"Isle Of Man",IL:"Israel",IT:"Italy",JM:"Jamaica",JP:"Japan",JE:"Jersey",JO:"Jordan",KZ:"Kazakhstan",KE:"Kenya",KI:"Kiribati",KR:"Korea",KW:"Kuwait",KG:"Kyrgyzstan",LA:"Lao People's Democratic Republic",LV:"Latvia",LB:"Lebanon",LS:"Lesotho",LR:"Liberia",LY:"Libyan Arab Jamahiriya",LI:"Liechtenstein",LT:"Lithuania",LU:"Luxembourg",MO:"Macao",MK:"Macedonia",MG:"Mad
984agascar",MW:"Malawi",MY:"Malaysia",MV:"Maldives",ML:"Mali",MT:"Malta",MH:"Marshall Islands",MQ:"Martinique",MR:"Mauritania",MU:"Mauritius",YT:"Mayotte",MX:"Mexico",FM:"Micronesia (Federated States Of)",MD:"Moldova",MC:"Monaco",MN:"Mongolia",ME:"Montenegro",MS:"Montserrat",MA:"Morocco",MZ:"Mozambique",MM:"Myanmar",NA:"Namibia",NR:"Nauru",NP:"Nepal",NL:"Netherlands",AN:"Netherlands Antilles",NC:"New Caledonia",NZ:"New Zealand",NI:"Nicaragua",NE:"Niger",NG:"Nigeria",NU:"Niue",NF:"Norfolk Island",MP:"Northern Mariana Islands",NO:"Norway",OM:"Oman",PK:"Pakistan",PW:"Palau",PS:"Palestinian Territory (Occupied)",PA:"Panama",PG:"Papua New Guinea",PY:"Paraguay",PE:"Peru",PH:"Philippines",PN:"Pitcairn",PL:"Poland",PT:"Portugal",PR:"Puerto Rico",QA:"Qatar",RE:"Reunion",RO:"Romania",RU:"Russian Federation",RW:"Rwanda",BL:"Saint Barthelemy",SH:"Saint Helena",KN:"Saint Kitts And Nevis",LC:"Saint Lucia",MF:"Saint Martin",PM:"Saint Pierre And Miquelon",VC:"Saint Vincent And Grenadines",WS:"Samoa",SM:"San Marino",ST:"Sao Tome And Principe",SA:"Saudi Arabia",SN:"Senegal",RS:"Serbia",SC:"Seychelles",SL:"Sierra Leone",SG:"Singapore",SK:"Slovakia",SI:"Slovenia",SB:"Solomon Islands",SO:"Somalia",ZA:"South Africa",GS:"South Georgia And Sandwich Isl.",ES:"Spain",LK:"Sri Lanka",SD:"Sudan",SR:"Suriname",SJ:"Svalbard And Jan Mayen",SZ:"Swaziland",SE:"Sweden",CH:"Switzerland",SY:"Syrian Arab Republic",TW:"Taiwan",TJ:"Tajikistan",TZ:"Tanzania",TH:"Thailand",TL:"Timor-Leste",TG:"Togo",TK:"Tokelau",TO:"Tonga",TT:"Trinidad And Tobago",TN:"Tunisia",TR:"Turkey",TM:"Turkmenistan",TC:"Turks And Caicos Islands",TV:"Tuvalu",UG:"Uganda",UA:"Ukraine",AE:"United Arab Emirates",GB:"United Kingdom",US:"United States",UM:"United States Outlying Islands",UY:"Uruguay",UZ:"Uzbekistan",VU:"Vanuatu",VE:"Venezuela",VN:"Viet Nam",VG:"Virgin Islands, British",VI:"Virgin Islands, U.S.",WF:"Wallis And Futuna",EH:"Western Sahara",YE:"Yemen",ZM:"Zambia",ZW:"Zimbabwe"},Eh=Fs.tz.countries().reduce((e,t)=>Fs.tz.zonesForCountry(t).reduce((s,i)=>{s[i]||(s[i]=[]);const o=UP[t];return o&&s[i].push({code:t,name:o}),s},e),{}),v0=()=>({track(e,t){try{if(!e||!Pd?.capture||!Pd.__loaded)return;Pd.capture(e,t||void 0)}catch{}}}),FP={[qe.Draft]:"Draft",[qe.Scheduled]:"Scheduled",[qe.Sending]:"Sending",[qe.Sent]:"Sent",[qe.Quarantined]:"Quarantined",[qe.Evaluating]:"Evaluating",[qe.EvaluationFailed]:"Failed",[qe.WarmingUp]:"Warming Up",[qe.WarmingUpPaused]:"Warming Up Paused",[qe.SpreadSendingPaused]:"Spread Sending Paused"},BP={[qe.Draft]:"bg-sendx-secondary text-sendx-text-primary",[qe.Scheduled]:"bg-yellow-100 text-yellow-800",[qe.Sending]:"bg-sendx-primary text-sendx-text-primary",[qe.Sent]:"bg-sendx-accent-light text-sendx-accent-primary",[qe.Quarantined]:"bg-orange-100 text-orange-800",[qe.Evaluating]:"bg-violet-100 text-violet-800",[qe.EvaluationFailed]:"text-sendx-warning-primary",[qe.WarmingUp]:"bg-orange-100 text-orange-800",[qe.WarmingUpPaused]:"bg-orange-100 text-orange-800",[qe.SpreadSendingPaused]:"bg-orange-100 text-orange-800"},HP="Draft",$P="bg-sendx-secondary text-sendx-text-primary";function k6(e){return FP[e]??HP}function M6(e){return BP[e]??$P}const iy={[qe.Draft]:0,[qe.Scheduled]:1,[qe.Evaluating]:2,[qe.WarmingUp]:3,[qe.Sending]:3,[qe.Sent]:4};function S0(e,t){if(t==null||e===t)return!1;const n=iy[e],s=iy[t];return n===void 0||s===void 0?!0:s>=n}function WP(e,t,n,s){if(!Array.isArray(e)||e.length===0||t==null)return null;const i=e.findIndex(o=>o&&String(o.id)===String(t));return i===-1||!S0(e[i].status,n)?null:e.map((o,a)=>a===i?{...o,status:n,...s!=null?{sent:s}:{}}:o)}const Nd=25,oy=new Map;function E0(e,t){try{const n=e+"|"+(t||"unknown"),s=oy.get(n)||0;if(s>=Nd)return!1;if(oy.set(n,s+1),s+1===Nd)try{Gr("schedule.telemetry_capped",{level:"warning",tags:{schedule_event:"telemetry_capped",context:t||"unknown"},extra:{cappedEvent:e,cap:Nd}})}catch{}return!0}catch{return!0}}function wh(e,t={}){try{if(!E0("invalid_time_value",e))return;Gr("schedule.invalid_time_value",{level:"warning",tags:{schedule_event:"invalid_time_value",context:e||"unknown"},extra:t})}catch{}}function ry(e,t={}){try{if(!E0("invalid_normalization",e))return;
984Gr("schedule.invalid_normalization",{level:"warning",tags:{schedule_event:"invalid_normalization",context:e||"unknown"},extra:t})}catch{}}const zP="09:00",Dl="09:00 AM",VP=/^\s*(\d{1,2}):(\d{2})\s*([AaPp])[Mm]\s*$/,qP=/^\s*(\d{1,2}):(\d{2})\s*$/,go=e=>(e<10?"0":"")+e;function Th(e){if(typeof e!="string")return null;const t=e.match(VP);if(t){const s=Number(t[1]),i=Number(t[2]),o=t[3].toLowerCase()==="p";if(s>12||i>59)return null;let a=s%12;return o&&(a+=12),{hours:a,minutes:i}}const n=e.match(qP);if(n){const s=Number(n[1]),i=Number(n[2]);return s>23||i>59?null:{hours:s,minutes:i}}return null}function yr(e){return Th(e)!==null}const jP=/^\s*(\d{4})-(\d{2})-(\d{2})\s*$/;function _r(e){if(typeof e!="string")return!1;const t=e.match(jP);if(!t)return!1;const[n,s,i]=[Number(t[1]),Number(t[2]),Number(t[3])];if(s<1||s>12||i<1||i>31)return!1;const o=new Date(Date.UTC(n,s-1,i));return o.getUTCFullYear()===n&&o.getUTCMonth()===s-1&&o.getUTCDate()===i}function KP(e,{source:t="",context:n,trustMoment:s=!1}={}){const i=String(t),o=i.indexOf(" "),a=o===-1?i:i.slice(0,o),c=o===-1?"":i.slice(o+1);if((s||_r(a)&&yr(c))&&e&&typeof e.isValid=="function"&&e.isValid())return[e.format("YYYY-MM-DD"),e.format("hh:mm"),e.format("A")];n&&wh(n,{direction:"scheduleParts",source:String(t),rawDate:a,rawTime:c,dateValid:_r(a),timeValid:yr(c)});const h=_r(a)?a:"",_=(yr(c)?w0(c):Dl).split(" ");return[h,_[0],_[1]]}function P6(e,{source:t="",context:n,trustMoment:s=!1}={}){const i=KP(e,{source:t,context:n,trustMoment:s});return i[1]+" "+i[2]}function N6(e=new Date){return go(e.getHours())+":"+go(e.getMinutes())}const br=e=>e==null||String(e).trim()==="",L6=e=>e===1||e===2||e===3;function D6(e,{fallback:t=zP,context:n}={}){const s=Th(e);return s?go(s.hours)+":"+go(s.minutes):(n&&!br(e)&&wh(n,{value:String(e),direction:"to24Hour"}),t)}function w0(e,{fallback:t=Dl,context:n}={}){const s=Th(e);if(!s)return n&&!br(e)&&wh(n,{value:String(e),direction:"to12Hour"}),t;const i=s.hours>=12?"PM":"AM",o=s.hours%12||12;return go(o)+":"+go(s.minutes)+" "+i}function YP(e){const t=e?.recommendation;if(!t)return!1;if((e?.decision||"ALLOW")!=="ALLOW")return!0;const s=t.mode||"blast";return s==="spread"||s==="plain_warmup"}function XP(e,t,n,s,i,o){const a=e?["campaign",String(e)]:["draft",(o||"").trim().toLowerCase(),t||0,(n||"").toLowerCase()];return JSON.stringify([...a,s||"",i||""])}function G6(e){return e==="week"?"Safe Limit / week":e==="day"?"Safe Limit / day":"Safe Limit"}function T0(e){const t=e?.recommendation?.penaltiesApplied||[];return t.includes("no_history")?"no_history":t.includes("new_domain")?"new_domain":t.includes("long_dormancy")?"long_dormancy":t.includes("volume_spike")?"volume_spike":t.includes("soft_bounce_penalty")?"soft_bounce":t.includes("domain_age_cap")?"domain_age":t.includes("dormancy_penalty")?"dormancy":"overage"}let Da=null;const ay=new Set,ly=new Map;function gp(e){const t=e?.scheduleRecommendation,n=t?.recommendation,s=t?.decision;if(!n||!s||s==="ALLOW"&&(n.mode||"blast")==="blast")return null;const i=n.mode||"";let o="blast";e.spreadSending?o="spread":(e.autowarmup||e.plainwarmup)&&(o="plain_warmup");const a=n.spreadHours||0,c=e.spreadSending&&e.spreadSendingDuration||0,u=n.warmupStartDay||0,h=e.autowarmup?e.autowarmupStartLevel||0:e.plainwarmup&&e.plainwarmupStartLevel||0,m=o===i;return{hadRecommendation:!0,recommendedMode:i,selectedMode:o,recommendedWarmupDay:u,selectedWarmupDay:h,recommendedSpreadHours:a,selectedSpreadHours:c,followedRecommendation:m,modifiedParameters:m&&(i==="spread"&&c!==a||i==="plain_warmup"&&h!==u)}}function JP(e,t,n,s,i){const o=e?.decision,a=e?.recommendation;if(!a||!o)return;const c=XP(n,t,s,o,a.mode,i);ay.has(c)||(ay.add(c),v0().track("recommendation:shown",{decision:o,mode:a.mode||"",primary_reason:T0(e),ratio:a.ratio||0,safe_limit:a.safeLimit||0,recipient_count:t||0,spread_hours:a.spreadHours||0,warmup_start_day:a.warmupStartDay||0,domain_age_days:a.domainAgeInDays||0,days_since_last_send:a.daysSinceLastSend||0,campaign_id:n||null,algo_version:a.algoVersion||"",weekly_ratio:a.weeklyRatio||0,required_days:a.requiredDays||0,banner_rendered:YP(e)}))}function cy(e,t){const n=gp(e);if(!n)return;const s=[n.followedRecommendation,n.selectedMode,n.selectedSpreadHours,n.selectedWarmupDay].join("|"),i=t||"draft";if(ly.get(i)===s)return;ly.set(i,s);const o=e?.scheduleRecommendation;v0().track("recommendation:action",{decision:o?.decision||"",primary_reason:T0(o),recommended_mode:n.recommendedMode,selected_mode:n.selectedMode,followed_recommendation:n.followedRecommendation,modified_parameters:n.modifiedParameters,recommended_spread_hours:n.recommendedSpreadHours,selected_spread_hours:n.selectedSpreadHours,recommended_warmup_day:n.recommendedWarmupDay,selected_warmup_day:n.selectedWarmupDay,ratio:o?.recommendation?.ratio||0,recipient_count:e?.re
984cipientCount||0,campaign_id:t||null})}const Ne={instructionMessage:null,newsletterCount:0,newslettersData:{},newsletters:[],senders:{},sendersCount:0,mergeTags:{},showExportDropdown:!1,includedRecipients:[],excludedRecipients:[],newsletterCampaignRequestsById:{},newsletterCampaignRequest:{name:"",subject:"",sender:0,previewText:"",htmlCode:"",templateCode:"",templateName:"",senderObject:null,includedRecipientObject:[],excludedRecipientObject:[],thumbnail:"",plainText:"",type:ov.BroadcastCampaign,scheduleType:iv.ScheduleLater,scheduleCondition:"2030-03-03",timeCondition:"05:30 AM",timezone:"",preferredTimezone:"",preferredTimeCondition:"05:30 AM",status:qe.Scheduled,autogenerateUTM:!1,trackLink:!0,trackOpen:!0,sendInContactsTimezone:!1,smartSend:!1,spreadSending:!1,spreadSendingDuration:4,autowarmup:!1,autowarmupType:1,autowarmupStartLevel:1,plainwarmup:!1,plainwarmupStartLevel:1,ttlEnable:!1,ttlMinute:1440,attachmentIdStr:"",includedSegments:{},excludedSegments:{},campaignScreenshotUrl:"",replyTo:"",recipientCount:null,warmupPlan:null,plainwarmupPlan:null,liveSeedsEnabled:!1,totalSeedsPercentage:10,liveSeedsProviderDistribution:[],scheduleRecommendation:null,subscriptionTypeId:0,subscriptionTypeIds:[]},shopifyProducts:[],shopifyProductsCount:0,shopifyProductPaginationInfo:"",smartCollections:[],allImages:[],allInboxTests:[],allInboxTestsById:{},inboxTestCount:0},dy=ic("campaignStore",{state:()=>Ne,persist:{storage:sessionStorage},getters:{getState:e=>e.newsletterCampaignRequest,getNewsletterDetails:e=>e.newslettersData},actions:{setResource({resource:e,value:t}){this[e]=t},setResourceById({resource:e,id:t,value:n}){this[e][t]=n},refreshCampaignData(){this.setResource({resource:"newsletters",value:[]}),this.setResource({resource:"newsletterCount",value:0})},patchCampaignStatus({campaignId:e,status:t,sentCount:n}){const s=WP(this.newsletters,e,t,n);s&&this.setResource({resource:"newsletters",value:s});const i=this.newslettersData?.[e];i&&S0(i.status,t)&&this.setResourceById({resource:"newslettersData",id:e,value:{...i,status:t,...n!=null?{sent:n}:{}}})},refreshState(){const e=Ie(),t=Qs();let n="",s="";e.$state.currentTeam?.editorType===1?(n=dr.DragDropHtmlCode,s=dr.DragDropTemplateCode):e.$state.currentTeam?.editorType===0?(n=dr.PlainTextHtmlCode,s=""):e.$state.currentTeam?.editorType===2&&(n=rO,s=ah);let i=PP(),o=NP();this.setResource({resource:"newsletterCampaignRequest",value:{name:"",subject:"",sender:e.$state?.currentTeam?.default_sender?.id,previewText:"",htmlCode:n,templateCode:s,templateName:"",senderObject:null,includedRecipientObject:[],excludedRecipientObject:[],thumbnail:"",plainText:"",type:ov.BroadcastCampaign,scheduleType:iv.ScheduleLater,scheduleCondition:o,timeCondition:i,timezone:e?.$state?.currentTeam?.defaultTimeZone??"",preferredTimezone:e?.$state?.currentTeam?.defaultTimeZone??"",preferredTimeCondition:i,status:qe.Draft,autogenerateUTM:!1,trackLink:!0,trackOpen:!0,sendInContactsTimezone:!1,smartSend:!1,spreadSending:!1,spreadSendingDuration:4,autowarmup:!1,autowarmupType:1,autowarmupStartLevel:1,plainwarmup:!1,plainwarmupStartLevel:1,ttlEnable:!1,ttlMinute:1440,attachmentIdStr:"",includedSegments:{},excludedSegments:{},campaignScreenshotUrl:"",replyTo:"",editorType:e.$state?.currentTeam?.editorType??1,recipientCount:null,warmupPlan:null,plainwarmupPlan:null,liveSeedsEnabled:!1,totalSeedsPercentage:10,liveSeedsProviderDistribution:[],scheduleRecommendation:null}}),t.setEditorType({value:e.$state?.currentTeam?.editorType??1})},setStateById(e){const t=Ne.newslettersData[e];let n=JSON.parse(t.metadata),s={},i={};for(let b=0;b<t.includedSegmentOptions?.length;b++)s[t.includedSegmentOptions[b].type]||(s[t.includedSegmentOptions[b].type]=[]),s[t.includedSegmentOptions[b].type].push(t.includedSegmentOptions[b].id);for(let b=0;b<t.excludedSegmentOptions?.length;b++)i[t.excludedSegmentOptions[b].type]||(i[t.excludedSegmentOptions[b].type]=[]),i[t.excludedSegmentOptions[b].type].push(t.excludedSegmentOptions[b].id);t?.timezone||(t.timezone="Atlantic/Reykjavik");let o,a;const c=_r(String(t.scheduleCondition??""))&&yr(String(t.timeCondition??"")),u=t.smartSend===!0||t.sendInContactsTimezone===!0?"UTC":t.timezone,h=c?Fs.tz(t.scheduleCondition+" "+t.timeCondition,"YYYY-MM-DD hh:mm A","UTC").tz(u):null;h&&typeof h.isValid=="function"&&h.isValid()?(o=h.format("YYYY-MM-DD"),a=h.format("hh:mm A")):((!br(t.scheduleCondition)||!br(t.timeCondition))&&ry("campaign.fetch",{campaignId:e,scheduleCondition:String(t.scheduleCondition),timeCondition:String(t.timeCondition),timezone:String(t.timezone)}),o=_r(String(t.scheduleCondition??""))?t.scheduleCondition:"",a=Dl);let m=t.preferredTimeCondition;yr(String(m??""))?m=w0(m):(br(m)||ry("campaign.fetch.preferredTime",{campaignId:e,preferredTimeCondition:String(m)}),m=Dl);let _=t.liveSeedsProviderDistribution?JSON.parse(t.liveSeedsProviderDistribution):[];this.setResourceById({resource:"newsletterCampaignRequestsById",id:e,value:{name:t.name,subject:n.subject,sender:t.sender.id,replyTo:n.replyTo,previewText:n.preview_text,htmlCode:n.html,templateCode:n.template,templateName:"",senderObject:t.sender,includedRecipientObject:t.includedSegmentOptions,excludedRecipientObject:t.excludedSegmentOptions,thumbnail:"",plainText:n.text,type:t.type,sc
984heduleType:t.scheduleType,scheduleCondition:o,timeCondition:a,timezone:t.timezone,preferredTimezone:t.preferredTimezone,preferredTimeCondition:m,status:t.status,autogenerateUTM:t.autogenerateUTM,trackLink:t.trackLink??!0,trackOpen:t.trackOpen??!0,sendInContactsTimezone:t.sendInContactsTimezone,smartSend:t.smartSend,spreadSending:t.spreadSending,spreadSendingDuration:t.spreadSendingDuration,autowarmup:t.autowarmup,autowarmupType:t.autowarmupType,autowarmupStartLevel:t.autowarmupStartLevel,plainwarmup:t.plainwarmup||!1,plainwarmupStartLevel:t.plainwarmupStartLevel||1,ttlEnable:t.ttlEnable,ttlMinute:t.ttlMinute,attachmentIdStr:t.attachmentIdStr,includedSegments:s,excludedSegments:i,campaignScreenshotUrl:t.campaignScreenshotUrl,emailRevenue:t.emailRevenue,revenuePerRecipient:t.revenuePerRecipient,editorType:t.editorType,recipientCount:null,warmupPlan:null,plainwarmupPlan:null,liveSeedsEnabled:t.liveSeedsEnabled||!1,totalSeedsPercentage:t.totalSeedsPercentage||10,liveSeedsProviderDistribution:_,scheduleRecommendation:null,subscriptionTypeId:t.subscriptionType?.id??t.subscriptionTypeId??0,subscriptionTypeIds:Array.isArray(t.subscriptionTypeIds)&&t.subscriptionTypeIds.length>0?t.subscriptionTypeIds:(t.subscriptionType?.id??t.subscriptionTypeId??0)>0?[t.subscriptionType?.id??t.subscriptionTypeId]:[]}})},createNewSender({name:e,email:t,token:n}){return ct()?Promise.reject("sample-mode"):new Promise((s,i)=>{const o={name:e,email:t};Y(K()+"team/sender/",{method:"POST",headers:{[ni]:n},body:JSON.stringify(o)},"$t7FmBAGZCb").then(a=>{const c=a.data.value,u=a.error.value;u?i(u):s(c)}).catch(a=>{i(a)})})},editSender({id:e,name:t,email:n,token:s}){return ct()?Promise.reject("sample-mode"):new Promise((i,o)=>{const a={name:t,email:n};Y(K()+"team/sender/"+e,{method:"PUT",headers:{[ni]:s},body:JSON.stringify(a)},"$2mIlLvqjCQ").then(c=>{const u=c.data.value,h=c.error.value;h?o(h):i(u)}).catch(c=>{o(c)})})},archiveSender({id:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/sender/"+e+"/archive",{method:"POST"},"$TuEEr9MvVT").then(s=>{const i=s.data.value,o=s.error.value;o?n({error:o,data:i,statusCode:o?.statusCode}):t(i)}).catch(s=>{n({error:s})})})},unarchiveSender({id:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/sender/"+e+"/unarchive",{method:"POST"},"$jthtyJUaHU").then(s=>{const i=s.data.value,o=s.error.value;o?n({error:o,data:i,statusCode:o?.statusCode}):t(i)}).catch(s=>{n({error:s})})})},async fetchAllSenders({offset:e,limit:t,search:n,isArchived:s=!1}){if(dt()){const{getSampleSenders:i}=await st(async()=>{const{getSampleSenders:a}=await import("./C0w3OV8d.js");return{getSampleSenders:a}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),o=i({offset:e,limit:t,search:n,isArchived:s});return this.setResource({resource:"senders",value:o}),Promise.resolve(o)}return new Promise((i,o)=>{let a=n??"";Y(K()+"team/sender/",{method:"GET",params:{offset:e,limit:t,search:a,isArchived:s}},"$bEC8t2j3Po").then(c=>{const u=c.data.value,h=c.error.value;h?o(h):(this.setResource({resource:"senders",value:u}),i(u))}).catch(c=>{o(c)})})},async fetchAllSendersCount({search:e,isArchived:t=!1}){if(dt()){const{getSampleSendersCount:n}=await st(async()=>{const{getSampleSendersCount:i}=await import("./C0w3OV8d.js");return{getSampleSendersCount:i}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),s=n({search:e,isArchived:t});return this.setResource({resource:"sendersCount",value:s}),Promise.resolve(s)}return new Promise((n,s)=>{let i=e??"";Y(K()+"team/sender/count",{method:"GET",params:{search:i,isArchived:t}},"$0MoCrtRgDi").then(o=>{const a=o.data.value.count,c=o.error.value;c?s(c):(this.setResource({resource:"sendersCount",value:a}),n(a))}).catch(o=>{s(o)})})},fetchAllMergeTags({viewInBrowser:e}){return new Promise((t,n)=>{let s=e??"";Y(K()+"team/mergetag",{method:"GET",params:{viewInBrowser:s}},"$VTh3tyJ6A3").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):(this.setResource({resource:"mergeTags",value:o}),t(o))}).catch(i=>{n(i)})})},async fetchAllCampaignCount({search:e,status:t}){if(dt()){const{getSampleCampaignCount:n}=await st(async()=>{const{getSampleCampaignCount:i}=await import("./C0w3OV8d.js");return{getSampleCampaignCount:i}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),s=n({status:t});return this.setResource({resource:"newsletterCount",value:s}),Promise.resolve(s)}return new Promise((n,s)=>{let i=e??"";Y(K()+"team/campaign/count",{method:"GET",params:{search:i,status:t}},"$NDR43oYQdW").then(o=>{const a=o.data.value,c=o.error.value;c?s(c):(this.setResource({resource:"newsletterCount",value:a.count}),n(a))}).catch(o=>{s(o)})})},async fetchAllCampaignTypeCount(){if(dt()){const{getSampleCampaignTypeCount:e}=await st(async()=>{const{getSampleCampaignTypeCount:t}=await import("./C0w3OV8d.js");return{getSampleCampaignTypeCount:t}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url);return Promise.resolve(e())}return new Promise((e,t)=>
984{Y(K()+"team/campaign/counts",{method:"GET"},"$cnaVylIBvS").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):e(s)}).catch(n=>{t(n)})})},async fetchAllCampaigns({offset:e,limit:t,search:n,status:s,integrationType:i,entity:o,order:a}){if(dt()){const{getSampleCampaigns:c}=await st(async()=>{const{getSampleCampaigns:h}=await import("./C0w3OV8d.js");return{getSampleCampaigns:h}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),u=c({status:s,offset:e,limit:t,search:n});return this.setResource({resource:"newsletters",value:u}),Promise.resolve(u)}return new Promise((c,u)=>{let h=n??"",m=o??"",_=a??"";Y(K()+"team/campaign/",{method:"GET",params:{offset:e,limit:t,search:h,status:s,integrationType:i,entity:m,order:_},key:"campaignSearch"},"$DzvLqqZVzP").then(b=>{const v=b.data.value,w=b.error.value;w?u(w):(this.setResource({resource:"newsletters",value:v}),c(v))}).catch(b=>{u(b)})})},fetchAllCampaignsAttributedRevenue({ids:e,status:t}){return new Promise((n,s)=>{Y(K()+"team/campaign/revenue/stats",{method:"POST",key:"campaignRevenueStats",body:JSON.stringify({ids:e})},"$ZNK8uS8EzM").then(i=>{const o=i.data.value,a=i.error.value;if(a)s(a);else{const c=this.newsletters?.map((u,h)=>{const m=o.find(_=>_.id==u.id);return{...u,emailRevenue:m?m.emailRevenue:"",revenuePerRecipient:m?m.revenuePerRecipient:""}});this.setResource({resource:"newsletters",value:c}),n(c)}}).catch(i=>{s(i)})})},deleteCampaign({campaignId:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/campaign/"+e,{method:"DELETE"},"$ST2Pi5S8rB").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>{n(s)})})},async archiveCampaign({campaignId:e}){if(dt()){const{getSampleCampaignArchiveUsage:t}=await st(async()=>{const{getSampleCampaignArchiveUsage:i}=await import("./CSrXoIY3.js");return{getSampleCampaignArchiveUsage:i}},[],import.meta.url),n=t(e);return n&&Object.keys(n).length>0&&Object.values(n).some(i=>Array.isArray(i)&&i.length>0)?Promise.reject({statusCode:409,data:{usage:n}}):Promise.resolve()}return new Promise((t,n)=>{Y(K()+"team/campaign/"+e+"/archive",{method:"POST"},"$5C4MiO6ehG").then(s=>{const i=s.data.value,o=s.error.value;o?n({error:o,data:o?.data,statusCode:o?.statusCode}):t(i)}).catch(s=>n(s))})},unarchiveCampaign({campaignId:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/campaign/"+e+"/unarchive",{method:"POST"},"$Hb78ayMiCp").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>n(s))})},async fetchCampaignById({campaignId:e}){if(dt()){const{getSampleCampaignById:t}=await st(async()=>{const{getSampleCampaignById:s}=await import("./C0w3OV8d.js");return{getSampleCampaignById:s}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),n=t(e);if(this.setResourceById({resource:"newslettersData",id:e,value:n}),this.setStateById(e),n.beeTemplateId)try{const i=await Ie().fetchCompleteBeeCatalogTemplateById(n.beeTemplateId);if(i?.html_data!=null||i?.json_data!=null){const o=i.html_data??this.newsletterCampaignRequestsById[e]?.htmlCode??"",a=typeof i.json_data=="string"?i.json_data:i.json_data!=null?JSON.stringify(i.json_data):"",c=this.newsletterCampaignRequestsById[e];if(c){const h={...c,htmlCode:o,templateCode:a};this.setResourceById({resource:"newsletterCampaignRequestsById",id:e,value:h}),this.setResource({resource:"newsletterCampaignRequest",value:h})}const u=this.newslettersData[e];if(u?.metadata)try{const h=JSON.parse(u.metadata);h.html=o,h.template=a;const m={...u,metadata:JSON.stringify(h)};this.setResourceById({resource:"newslettersData",id:e,value:m})}catch(h){console.warn("Sample campaign: could not update metadata",h)}}}catch(s){console.warn("Sample campaign: could not fetch Bee template",n.beeTemplateId,s)}return Promise.resolve(n)}return new Promise((t,n)=>{const s=Qs();Y(K()+"team/campaign/"+e,{method:"GET"},"$EOhnRDwZ3Y").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):(s.setEditorType({value:o.editorType}),this.setResourceById({resource:"newslettersData",id:e,value:o}),this.setStateById(e),t(o))}).catch(i=>{n(i)})})},pauseCampaignById({campaignId:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Qs(),Y(K()+"team/campaign/"+e+"/pause",{method:"PUT"}
984,"$WtEVmaxzMO").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>{n(s)})})},copyCampaign({campaignId:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/campaign/copy/"+e,{method:"GET"},"$OrAi3kWMBw").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):(Qs().setEditorType({value:i.editorType??1}),this.setResourceById({resource:"newslettersData",id:i.id,value:i}),this.setStateById(i.id),t(i))}).catch(s=>{n(s)})})},getCampaignRecipientCount({caller:e,campaignId:t}){return Da&&Da.abort(),Da=new AbortController,new Promise((n,s)=>{let i=Ne.newsletterCampaignRequest;if(e==="editMode"&&(i=Ne.newsletterCampaignRequestsById[t]),dt()){if(e==="editMode"){const a={...Ne.newsletterCampaignRequestsById[t],isLoadingCount:!0};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:a})}else{const a={...Ne.newsletterCampaignRequest,isLoadingCount:!0};this.setResource({resource:"newsletterCampaignRequest",value:a})}const o=a=>{if(e==="editMode"){const c={...Ne.newsletterCampaignRequestsById[t],recipientCount:a,isLoadingCount:!1};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:c})}else{const c={...Ne.newsletterCampaignRequest,recipientCount:a,isLoadingCount:!1};this.setResource({resource:"newsletterCampaignRequest",value:c})}};(async()=>{try{const{getSampleListById:a}=await st(async()=>{const{getSampleListById:w}=await import("./ERjOz6Bj.js");return{getSampleListById:w}},__vite__mapDeps([6,1,2,7,3,4,5,8]),import.meta.url),{getSampleTagById:c}=await st(async()=>{const{getSampleTagById:w}=await import("./zRFedEKM.js");return{getSampleTagById:w}},__vite__mapDeps([9,1,2,7,3,4,5,8]),import.meta.url),{getSampleSegmentById:u}=await st(async()=>{const{getSampleSegmentById:w}=await import("./BzVE5D8y.js");return{getSampleSegmentById:w}},__vite__mapDeps([10,1,2,3,4,5]),import.meta.url),h=i?.includedSegments||{},m=i?.excludedSegments||{};let _=0;for(const w of["list","tag","segment"]){const A=h[w]||[];for(const B of A)w==="list"?_+=a(B)?.contactCount||0:w==="tag"?_+=c(B)?.contactCount||0:w==="segment"&&(_+=u(B)?.contactCount||0)}let b=0;for(const w of["list","tag","segment"]){const A=m[w]||[];for(const B of A)w==="list"?b+=a(B)?.contactCount||0:w==="tag"?b+=c(B)?.contactCount||0:w==="segment"&&(b+=u(B)?.contactCount||0)}const v=Math.max(0,_-b);o(v),n({count:v})}catch(a){console.error("get campaign recipient count (sample) error:",a),o(0),s(a)}})();return}if(e==="editMode"){const o={...Ne.newsletterCampaignRequestsById[t],isLoadingCount:!0};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:o})}else{const o={...Ne.newsletterCampaignRequest,isLoadingCount:!0};this.setResource({resource:"newsletterCampaignRequest",value:o})}Y(K()+"team/campaign/recipient/count",{method:"POST",body:JSON.stringify(i),signal:Da.signal},"$SFG3SXbfO8").then(o=>{const a=o.data.value,c=o.error.value;if(c){if(c.name!=="AbortError"){if(e==="editMode"){const u={...Ne.newsletterCampaignRequestsById[t],isLoadingCount:!1,recipientCountError:c?.message||"Network error"};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:u})}else{const u={...Ne.newsletterCampaignRequest,isLoadingCount:!1,recipientCountError:c?.message||"Network error"};this.setResource({resource:"newsletterCampaignRequest",value:u})}s(c)}}else{if(e==="editMode"){const u={...Ne.newsletterCampaignRequestsById[t],recipientCount:a?.count,demoCapInfo:a?.demoCapInfo||null,preferenceExcluded:a?.preferenceExcluded||0,preferenceTypeName:a?.preferenceTypeName||"",isLoadingCount:!1,recipientCountError:null};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:u})}else{const u={...Ne.newsletterCampaignRequest,recipientCount:a?.count,demoCapInfo:a?.demoCapInfo||null,preferenceExcluded:a?.preferenceExcluded||0,preferenceTypeName:a?.preferenceTypeName||"",isLoadingCount:!1,recipientCountError:null};this.setResource({resource:"newsletterCampaignRequest",value:u})}n(a)}}).catch(o=>{if(o.name!=="AbortError"){if(console.error("get campaign recipient count exception: ",o),e==="editMode"){const a={...Ne.newsletterCampaignRequestsById[t],isLoadingCount:!1,recipientCountError:o?.message||"Request failed"};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:a})}else{const a={...Ne.newsletterCampaignRequest,isLoadingCount:!1,recipientCountError:o?.message||"Request failed"};this.setResource({resource:"newsletterCampaignRequest",value:a})}s(o)}})})},getCampaignWarmupPlan({caller:e,campaignId:t}){return new Promise((n,s)=>{let i=Ne.newsletterCampaignRequest;if(e==="editMode"&&(i=Ne.newsletterCampaignRequestsById[t]),dt()){(async()=>{try{const{getSampleAutoWarmupPlan:o}=await st(async()=>{const{getSampleAutoWarmupPlan:c}=await import("./C0w3OV8d.js");return{getSampleAutoWarmupPlan:c}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),a=o(i?.recipientCount||0,i?.autowarmupStartLevel||1,i?.autowarmupType||1);if(e==="editMode"){const c={...Ne.newsletterCampaignRequestsById[t],warmupPlan:a};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:c})}else{const c={...Ne.newsletterCampaignRequest,warmupPlan:a};this.setResource({resource:"newsletterCampaignRequest",value:c})}n({plan:a})}catch(o){console.error("sample auto warmup plan error:",o),s(o)}})();return}Y(K()+"team/campaign/recipient/warmup-plan",{method:"POST",body:JSON.stringify(i)},"$JZckCDQ1BK").then(o=>{const a=o.data.value,c=o.error.value;if(c)s(c);else{if(e==="editMode"){const u={...Ne.newsletterCampaignRequestsById[t],warmupPlan:a?.plan};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:u})}else{const u={...Ne.newsletterCampaignRequest,warmupPlan:a?.plan};this.setResource({resource:"newsletterCampaignRequest",value:u})}n(a)}}).catch(o=>{s(o)})})},getPlainWarmupPlan({caller:e,campaignId:t}){return new Promise((n,s)=>{let i=Ne.newsletterCampaignRequest;if(e==="editMode"&&(i=Ne.newsletterCampaignRequestsById[t]),dt()){(async()=>{try{const{getSamplePlainWarmupPlan:o}=await st(async()=>{const{getSamplePlainWarmupPlan:c}=await import("./C0w3OV8d.js");return{getSamplePlainWarmupPlan:c}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url),a=o(i?.recipientCount||0,i?.plainwarmupStartLevel||1);if(e==="editMode"){const c={...Ne.newsletterCampaignRequestsById[t],plainwarmupPlan:a};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:c})}else{const c={...Ne.newsletterCampaignRequest,plainwarmupPlan:a};this.setResource({resource:"newsletterCampaignRequest",value:c})}n({plan:a})}catch(o){console.error("sample plain warmup plan error:",o),s(o)}})();return}Y(K()+"team/campaign/recipient/plain-warmup-plan",{method:"POST",body:JSON.stringify(i)},"$JxS6nU79HJ").then(o=>{const a=o.data.value,c=o.error.value;if(c)s(c);else{if(e==="editMode"){const u={...Ne.newsletterCampaignRequestsById[t],plainwarmupPlan:a?.plan};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:u})}else{const u={...Ne.newsletterCampaignRequest,plainwarmupPlan:a?.plan};this.setResource({resource:"newsletterCampaignRequest",value:u})}n(a)}}).catch(o=>{s(o)})})},getScheduleRecommendation({caller:e,campaignId:t}){return new Promise((n,s)=>{let i=Ne.newsletterCampaignRequest;e==="editMode"&&(i=Ne.newsletterCampaignRequestsById[t]);const o=i?.recipientCount||0,a=i?.senderObject?.email||i?.sender?.email||"",c=m=>{if(e==="editMode"){const _={...Ne.newsletterCampaignRequestsById[t],scheduleRecommendation:m};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:_})}else{const _={...Ne.newsletterCampaignRequest,scheduleRecommendation:m};this.setResource({resource:"newsletterCampaignRequest",value:_})}};if(dt()){st(async()=>{const{getSampleScheduleRecommendation:m}=await import("./DJLOoFKj.js");return{getSampleScheduleRecommendation:m}},[],import.meta.url).then(({getSampleScheduleRecommendation:m})=>{const _=m(o,a);c(_),n({recommendation:_})}).catch(s);return}if(!o||!a){n(null);return}
984const h=pw()?.currentUser;if(!h){n(null);return}h.getIdToken().then(m=>Y(K()+"team/campaign/schedule-recommendation?recipientCount="+o+"&fromEmail="+encodeURIComponent(a),{method:"GET",headers:{[ni]:m}},"$itEcU3O4qm")).then(m=>{const _=m.data.value,b=m.error.value;b?s(b):(c(_),JP(_,o,e==="editMode"?t:null,a,i?.name),n(_))}).catch(m=>{s(m)})})},onPublishCampaigns({campaignIds:e}){return ct()?Promise.resolve():new Promise((t,n)=>{const s={ids:e};Y(K()+"team/campaign/publish/add",{method:"POST",body:JSON.stringify(s)},"$7lMIUAZwAJ").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},onUnpublishCampaigns({campaignIds:e}){return ct()?Promise.resolve():new Promise((t,n)=>{const s={ids:e};Y(K()+"team/campaign/publish/remove",{method:"POST",body:JSON.stringify(s)},"$rtDwQIOGtB").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},createCampaign(e,t={}){if(ct())return Promise.resolve();const n={...Ne.newsletterCampaignRequest,...t};return new Promise((s,i)=>{Y(K()+"team/campaign/",{method:"POST",body:JSON.stringify({...n,scheduleRecommendationContext:gp(n)})},"$moHmQxqmfV").then(o=>{const a=o.data.value,c=o.error.value;c?i(c):(cy(n,a?.id),e&&this.refreshState(),s(a))}).catch(o=>{i(o)})})},editCampaign({campaignId:e,overrides:t={}}){if(ct())return Promise.resolve();const n={...Ne.newsletterCampaignRequestsById[e],...t};return new Promise((s,i)=>{Y(K()+"team/campaign/"+e,{method:"PUT",body:JSON.stringify({...n,scheduleRecommendationContext:gp(n)})},"$ln9trXolmY").then(o=>{const a=o.data.value,c=o.error.value;c?i(c):(cy(n,e),s(a))}).catch(o=>{i(o)})})},resendToUnopeners({campaignId:e}){return new Promise((t,n)=>{Y(K()+"team/campaign/resend/unopeners/"+e,{method:"GET"},"$vMTl1iEV9Y").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):(Qs().setEditorType({value:i.editorType??1}),this.setResourceById({resource:"newslettersData",id:i.id,value:i}),this.setStateById(i.id),t(i))}).catch(s=>{n(s)})})},onExportAll({campaignIds:e}){return new Promise((t,n)=>{const s={ids:e};Y(K()+"team/campaign/export/all",{method:"POST",body:JSON.stringify(s)},"$8umgLVgyvk").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},onExportLastXDays({days:e,fromDate:t,toDate:n}){return new Promise((s,i)=>{const o={};t&&n?(o.fromDate=t,o.toDate=n):o.days=e,Y(K()+"team/campaign/export/days",{method:"POST",body:JSON.stringify(o)},"$AamRdcSWec").then(a=>{const c=a.data.value,u=a.error.value;u?i(u):s(c)}).catch(a=>{i(a)})})},onExportType({campaignId:e,type:t,includeTags:n=!1,includeCustomFields:s=!1,includeLists:i=!1}){return new Promise((o,a)=>{Y(K()+"team/campaign/"+e+"/export/"+t,{method:"GET",query:{includeTags:n,includeCustomFields:s,includeLists:i}},"$yaMgUQOBBo").then(c=>{const u=c.data.value,h=c.error.value;h?a(h):o(u)}).catch(c=>{a(c)})})},sendTestEmail({message:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/campaign/sendtestemail",{method:"POST",body:JSON.stringify(e)},"$zb21YYI6sa").then(s=>{const i=s.data.value,o=s.error.value;o?n(o.data?.error||null):t(i)}).catch(s=>{n(s)})})},validateCampaignContent({htmlContent:e,templateCode:t,campaignId:n,subject:s}){return new Promise((i,o)=>{const a={htmlContent:e,templateCode:t,campaignId:n,subject:s||""};Y(K()+"team/campaign/validateContent",{method:"POST",body:JSON.stringify(a)},"$OWmzJvfVat").then(c=>{const u=c.data.value,h=c.error.value;h?o(h):i(u)}).catch(c=>{console.error("content validation request failed: ",c),o(c)})})},fetchSharableUrl({campaignId:e}){return new Promise((t,n)=>{Y(K()+"team/campaign/"+e+"/share",{method:"GET"},"$YMLwKq0Esl").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):(i.url,t(i.url))}).catch(s=>{n(s)})})},saveCampaignAsTemplate({campaignId:e,abtestId:t=""}){return ct()?Promise.resolve():new Promise((n,s)=>{Y(K()+"team/campaign/"+e+"/save",{method:"POST",query:t?{ab_test_id:t}:{}},"$hb81VCBKM8").then(i=>{const o=i.data.value,a=i.error.value;a?s(a):n(o)}).catch(i=>{s(i)})})},fetchScreenshotUrl({html:e}){return new Promise((t,n)=>{const s={html:e,entityName:aO.EntityCampaign};Y(K()+"team/html/screenshot",{method:"POST",body:JSON.stringify(s)},"$ytfyPWGclS").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):(o.url,t(o.url))}).catch(i=>{n(i)})})}
984,fetchShopifyProducts({filter:e,page:t,collectionId:n}){return new Promise((s,i)=>{Y(K()+"shop/products",{method:"GET",query:{filter:e,page:t,collectionId:n}},"$uEMQlVBNzo").then(o=>{const{products:a,pageInfo:c}=o.data.value,u=o.error.value;u?i(u):(this.setResource({resource:"shopifyProducts",value:a}),this.setResource({resource:"shopifyProductPaginationInfo",value:c}),s({products:a,pageInfo:c}))}).catch(o=>{i(o)})})},fetchBeeRowForShopifyProducts({productIds:e,layout:t,buttonColor:n,buttonText:s,buttonTextColor:i,teamId:o}){return new Promise((a,c)=>{Y(K()+"shop/product/editor/response",{method:"GET",query:{pids:productsIds,buttonColor:n,buttonText:s,buttonTextColor:i,team_id:o}},"$1Ini3zxJVa").then(u=>{const h=u.data.value,m=u.error.value;m?c(m):a(h)}).catch(u=>{c(u)})})},fetchShopifySmartCollections(){return new Promise((e,t)=>{Y(K()+"shop/smartcollection",{method:"GET"},"$GqLirhViFA").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):(this.setResource({resource:"smartCollections",value:s}),e(s))}).catch(n=>{t(n)})})},createShopifyCoupon({body:e}){return ct()?Promise.resolve():new Promise((t,n)=>{Y(K()+"team/coupon/",{method:"POST",body:JSON.stringify(e)},"$3lYZzwEKso").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>{n(s)})})},getShareableReport({htmlFile:e}){return ct()?Promise.resolve():new Promise((t,n)=>{const s=new FormData;s.append("fileinput",e),Y(K()+"team/report/shared-report?type=campaign",{method:"POST",body:s},"$jM46dTKvqu").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})},getShareableReportBackend({campaignId:e,type:t="campaign",dateFrom:n="",dateTo:s="",isBotExcluded:i=!1}){return ct()?Promise.resolve():new Promise((o,a)=>{Y(K()+"team/report/shareable",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({campaignId:e,type:t,dateFrom:n,dateTo:s,isBotExcluded:i})},"$6KCFTvExiH").then(c=>{const u=c.data.value,h=c.error.value;h?a(h):o(u)}).catch(c=>{a(c)})})},uploadCampaignImage(e){if(ct())return Promise.resolve();const t=new FormData;return t.append("fileinput",e),new Promise((n,s)=>{Y(`${K()}team/image/campaign/upload`,{method:"POST",body:t},"$dlkPlRMCht").then(i=>{const o=i.data.value,a=i.error.value;a?s(a):(this.uploadedImageId=o.id,n(o))}).catch(i=>{s(i)})})},getAllCampaignImages(){return new Promise((e,t)=>{Y(`${K()}team/image/campaign`,{method:"GET"},"$CxMYlmkljk").then(n=>{const s=n.data.value,i=n.error.value;i?t(i):(s.images,this.allImages=s.images,e(s))}).catch(n=>{t(n)})})},runInboxTest({name:e,subject:t,senderName:n,senderEmail:s,html:i,plainText:o,previewText:a,thumbnailUrl:c}){return ct()?Promise.resolve():new Promise((u,h)=>{Y(K()+"team/addon/inboxtest/run",{method:"POST",body:JSON.stringify({name:e,subject:t,senderName:n,senderEmail:s,html:i,plainText:o,previewText:a,thumbnailUrl:c})},"$2gABPOovbY").then(m=>{const _=m.data.value,b=m.error.value;b?h(b):u(_)}).catch(m=>{h(m)})})},createInboxTest({name:e,entityName:t,entityId:n}){return new Promise((s,i)=>{Y(K()+"team/addon/inboxtest?name="+e+"&entityName="+t+"&entityId="+n,{method:"POST"},"$X57pp5DAPz").then(o=>{const a=o.data.value,c=o.error.value;c?i(c):s(a)}).catch(o=>{i(o)})})},requestSeedListAndSendTestEmails({testId:e,fullMessage:t}){return new Promise((n,s)=>{Y(K()+"team/addon/inboxtest/"+e+"/inbox-test",{method:"POST",body:JSON.stringify(t)},"$3PhuslN1v8").then(i=>{const o=i.data.value,a=i.error.value;a?s(a):n(o)}).catch(i=>{s(i)})})},async getAllInboxTestCount({search:e=""}={}){if(dt()){const{getSampleInboxTests:t}=await st(async()=>{const{getSampleInboxTests:s}=await import("./By66BCEV.js");return{getSampleInboxTests:s}},[],import.meta.url),n=t({offset:0,limit:100,search:e});return Promise.resolve({count:n.length})}return new Promise((t,n)=>{Y(`${K()}team/addon/inboxtest/count`,{method:"GET",params:{search:e}},"$KhNW34uSPT").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):(i.images,this.inboxTestCount=i.count,t(i.count))}).catch(s=>{n(s)})})},async getAllInboxTests({offset:e=0,limit:t=10,search:n=""}={}){if(dt()){const{getSampleInboxTests:s,getSampleInboxTestById:i}=await st(async()=>
984{const{getSampleInboxTests:c,getSampleInboxTestById:u}=await import("./By66BCEV.js");return{getSampleInboxTests:c,getSampleInboxTestById:u}},[],import.meta.url),a=(s({offset:e,limit:t,search:n})||[]).map(c=>{if(c.html)return c;const u=i(c.id);return{...c,html:u?.html||c.html}});return this.allInboxTests=a,Promise.resolve(a)}return new Promise((s,i)=>{Y(`${K()}team/addon/inboxtest`,{method:"GET",params:{offset:e,limit:t,search:n}},"$wrsjYHfRyr").then(o=>{const a=o.data.value,c=o.error.value;c?i(c):(this.allInboxTests=a,s(a))}).catch(o=>{i(o)})})},async getInboxTestById({inboxTestId:e}){if(dt()){const{getSampleInboxTestById:t}=await st(async()=>{const{getSampleInboxTestById:i}=await import("./By66BCEV.js");return{getSampleInboxTestById:i}},[],import.meta.url),n=t(e);return Qs().setEditorType({value:n.editorType}),this.setResourceById({resource:"allInboxTestsById",id:e,value:n}),Promise.resolve(n)}return new Promise((t,n)=>{const s=Qs();Y(K()+"team/addon/inboxtest/"+e,{method:"GET"},"$VahGcbFxkv").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):(s.setEditorType({value:o.editorType}),this.setResourceById({resource:"allInboxTestsById",id:e,value:o}),t(o))}).catch(i=>{n(i)})})},async getInboxTestResults({inboxTestId:e}){if(dt()){const{getSampleInboxTestResults:t}=await st(async()=>{const{getSampleInboxTestResults:s}=await import("./By66BCEV.js");return{getSampleInboxTestResults:s}},[],import.meta.url),n=t(e);return Promise.resolve(n)}return new Promise((t,n)=>{Y(K()+"team/addon/inboxtest/"+e+"/results",{method:"GET"},"$4EFHlCoiin").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>{n(s)})})},getWarmupReport(e){return dt()?(async()=>{const{getSampleWarmupReport:t}=await st(async()=>{const{getSampleWarmupReport:n}=await import("./C0w3OV8d.js");return{getSampleWarmupReport:n}},__vite__mapDeps([0,1,2,3,4,5]),import.meta.url);return t(e)})():new Promise((t,n)=>{Y(K()+"team/campaign/"+e+"/warmup-report",{method:"GET"},"$u0PErqzxxX").then(s=>{const i=s.data.value,o=s.error.value;o?n(o):t(i)}).catch(s=>{console.error("Error fetching warmup report: ",s),n(s)})})},getLiveSeedsData({caller:e,campaignId:t}){return new Promise((n,s)=>{let i=Ne.newsletterCampaignRequest;e==="editMode"&&(i=Ne.newsletterCampaignRequestsById[t]),Y(K()+"team/campaign/live-seed/data",{method:"POST",body:JSON.stringify(i)},"$JLs6rQMcsv").then(o=>{const a=o.data.value,c=o.error.value;if(c)s(c);else{if(e==="editMode"){const u={...Ne.newsletterCampaignRequestsById[t],recipientsStatsForLiveSeeds:a};this.setResourceById({resource:"newsletterCampaignRequestsById",id:t,value:u})}else{const u={...Ne.newsletterCampaignRequest,recipientsStatsForLiveSeeds:a};this.setResource({resource:"newsletterCampaignRequest",value:u})}n(a)}}).catch(o=>{console.error("Error fetching live seeds data: ",o),s(o)})})},fetchLiveSeedsCampaigns({offset:e,limit:t,search:n}){return new Promise((s,i)=>{let o=n??"";Y(K()+"team/campaign/live-seed/enabled",{method:"GET",params:{offset:e,limit:t,search:o}},"$7ANaPLM54Z").then(a=>{const c=a.data.value,u=a.error.value;u?i(u):s(c)}).catch(a=>{i(a)})})},fetchLiveSeedsCampaignsCount({search:e}){return new Promise((t,n)=>{let s=e??"";Y(K()+"team/campaign/live-seed/enabled/count",{method:"GET",params:{search:s}},"$hBa544b4Y9").then(i=>{const o=i.data.value,a=i.error.value;a?n(a):t(o)}).catch(i=>{n(i)})})}}});var C0={exports:{}};/*@license Copyright 2015-2022 Ably Real-time Ltd (ably.com)
985
986Ably JavaScript Library v2.2.0
987https://github.com/ably/ably-js
988
989Released under the Apache Licence v2.0*/(function(e,t){(function(n,s){e.exports=s()})(dn,()=>{var n={},s={exports:n},i=Object.defineProperty,o=Object.defineProperties,a=Object.getOwnPropertyDescriptor,c=Object.getOwnPropertyDescriptors,u=Object.getOwnPropertyNames,h=Object.getOwnPropertySymbols,m=Object.prototype.hasOwnProperty,_=Object.prototype.propertyIsEnumerable,b=(r,l,d)=>l in r?i(r,l,{enumerable:!0,configurable:!0,writable:!0,value:d}):r[l]=d,v=(r,l)=>{for(var d in l||(l={}))m.call(l,d)&&b(r,d,l[d]);if(h)for(var d of h(l))_.call(l,d)&&b(r,d,l[d]);return r},w=(r,l)=>o(r,c(l)),A=(r,l)=>{var d={};
989for(var p in r)m.call(r,p)&&l.indexOf(p)<0&&(d[p]=r[p]);if(r!=null&&h)for(var p of h(r))l.indexOf(p)<0&&_.call(r,p)&&(d[p]=r[p]);return d},B=(r,l)=>{for(var d in l)i(r,d,{get:l[d],enumerable:!0})},H=(r,l,d,p)=>{if(l&&typeof l=="object"||typeof l=="function")for(let f of u(l))!m.call(r,f)&&f!==d&&i(r,f,{get:()=>l[f],enumerable:!(p=a(l,f))||p.enumerable});return r},I=r=>H(i({},"__esModule",{value:!0}),r),T={};B(T,{ErrorInfo:()=>P,Realtime:()=>Lc,Rest:()=>Tc,default:()=>aw,msgpack:()=>zc,protocolMessageFromDeserialized:()=>$S}),s.exports=I(T);var S=class{},C=typeof dn<"u"?dn:typeof window<"u"?window:self;function M(r,l){return`${r}`.padStart(l?3:2,"0")}function U(r){return S.Config.logTimestamps?function(l){const d=new Date;r(M(d.getHours())+":"+M(d.getMinutes())+":"+M(d.getSeconds())+"."+M(d.getMilliseconds(),1)+" "+l)}:function(l){r(l)}}var D=()=>{var r;let l,d;return typeof((r=C?.console)==null?void 0:r.log)=="function"?(l=function(...p){console.log.apply(console,p)},d=console.warn?function(...p){console.warn.apply(console,p)}:l):l=d=function(){},[l,d].map(U)},k=class Jo{constructor(){this.deprecated=(l,d)=>{this.deprecationWarning(`${l} is deprecated and will be removed in a future version. ${d}`)},this.shouldLog=l=>l<=this.logLevel,this.setLog=(l,d)=>{l!==void 0&&(this.logLevel=l),d!==void 0&&(this.logHandler=this.logErrorHandler=d)},this.logLevel=Jo.defaultLogLevel,this.logHandler=Jo.defaultLogHandler,this.logErrorHandler=Jo.defaultLogErrorHandler}static initLogHandlers(){const[l,d]=D();this.defaultLogHandler=l,this.defaultLogErrorHandler=d,this.defaultLogger=new Jo}static logActionNoStrip(l,d,p,f){l.logAction(d,p,f)}logAction(l,d,p){this.shouldLog(l)&&(l===1?this.logErrorHandler:this.logHandler)("Ably: "+d+": "+p,l)}renamedClientOption(l,d){this.deprecationWarning(`The \`${l}\` client option has been renamed to \`${d}\`. Please update your code to use \`${d}\` instead. \`${l}\` will be removed in a future version.`)}renamedMethod(l,d,p){this.deprecationWarning(`\`${l}\`’s \`${d}\` method has been renamed to \`${p}\`. Please update your code to use \`${p}\` instead. \`${d}\` will be removed in a future version.`)}deprecationWarning(l){this.shouldLog(1)&&this.logErrorHandler(`Ably: Deprecation warning - ${l}`,1)}};k.defaultLogLevel=1,k.LOG_NONE=0,k.LOG_ERROR=1,k.LOG_MAJOR=2,k.LOG_MINOR=3,k.LOG_MICRO=4,k.logAction=(r,l,d,p)=>{k.logActionNoStrip(r,l,d,p)};var F=k,g=F,W={};B(W,{Format:()=>Q,allSame:()=>X,allToLowerCase:()=>Ft,allToUpperCase:()=>jn,arrChooseN:()=>Pe,arrDeleteValue:()=>ps,arrEquals:()=>Ch,arrIntersect:()=>wt,arrIntersectOb:()=>on,arrPopRandomElement:()=>ie,arrSubtract:()=>rn,arrWithoutValue:()=>jt,cheapRandStr:()=>ye,containsValue:()=>Et,copy:()=>de,createMissingPluginError:()=>Ah,dataSizeBytes:()=>be,decodeBody:()=>ke,encodeBody:()=>ze,ensureArray:()=>Fe,forInOwnNonNullProperties:()=>V,getBackoffCoefficient:()=>_o,getGlobalObject:()=>Ot,getJitterCoefficient:()=>hs,getRetryTime:()=>_i,inherits:()=>Ut,inspectBody:()=>he,inspectError:()=>j,intersect:()=>bn,isEmpty:()=>Ye,isErrorInfoOrPartialErrorInfo:()=>re,isNil:()=>$e,isObject:()=>et,keysArray:()=>R,matchDerivedChannel:()=>bo,mixin:()=>te,parseQueryString:()=>ne,prototypicalClone:()=>Pt,randomString:()=>Ee,shallowClone:()=>St,shallowEquals:()=>an,throwMissingPluginError:()=>Dn,toBase64:()=>Qr,toQueryString:()=>ae,valuesArray:()=>N,whenPromiseSettles:()=>Me,withTimeoutAsync:()=>Rh});function Z(r){let l="["+r.constructor.name;return r.message&&(l+=": "+r.message),r.statusCode&&(l+="; statusCode="+r.statusCode),r.code&&(l+="; code="+r.code),r.cause&&(l+="; cause="+j(r.cause)),r.href&&!(r.message&&r.message.indexOf("help.ably.io")>-1)&&(l+="; see "+r.href+" "),l+="]",l}var P=class mp extends Error{constructor(l,d,p,f){super(l),typeof Object.setPrototypeOf<"u"&&Object.setPrototypeOf(this,mp.prototype),this.code=d,this.statusCode=p,this.cause=f}toString(){return Z(this)}static fromValues(l){const{message:d,code:p,statusCode:f}=l;if(typeof d!="string"||typeof p!="number"||typeof f!="number")throw new Error("ErrorInfo.fromValues(): invalid values: "+S.Config.inspect(l));const y=Object.assign(new mp(d,p,f),l);return y.code&&!y.href&&(y.href="https://help.ably.io/error/"+y.code),y}}
989,pe=class yp extends Error{constructor(l,d,p,f){super(l),typeof Object.setPrototypeOf<"u"&&Object.setPrototypeOf(this,yp.prototype),this.code=d,this.statusCode=p,this.cause=f}toString(){return Z(this)}static fromValues(l){const{message:d,code:p,statusCode:f}=l;if(typeof d!="string"||!$e(p)&&typeof p!="number"||!$e(f)&&typeof f!="number")throw new Error("PartialErrorInfo.fromValues(): invalid values: "+S.Config.inspect(l));const y=Object.assign(new yp(d,p,f),l);return y.code&&!y.href&&(y.href="https://help.ably.io/error/"+y.code),y}};function se(r){return Math.floor(Math.random()*r.length)}function te(r,...l){for(let d=0;d<l.length;d++){const p=l[d];if(!p)break;for(const f in p)Object.prototype.hasOwnProperty.call(p,f)&&(r[f]=p[f])}return r}function de(r){return te({},r)}function Fe(r){return $e(r)?[]:Array.isArray(r)?r:[r]}function et(r){return Object.prototype.toString.call(r)=="[object Object]"}function Ye(r){for(const l in r)return!1;return!0}function $e(r){return r==null}function St(r){const l=new Object;for(const d in r)l[d]=r[d];return l}function Pt(r,l){class d{}d.prototype=r;const p=new d;return l&&te(p,l),p}var Ut=function(r,l){if(S.Config.inherits){S.Config.inherits(r,l);return}r.super_=l,r.prototype=Pt(l.prototype,{constructor:r})};function Et(r,l){for(const d in r)if(r[d]==l)return!0;return!1}function bn(r,l){return Array.isArray(l)?wt(r,l):on(r,l)}function wt(r,l){const d=[];for(let p=0;p<r.length;p++){const f=r[p];l.indexOf(f)!=-1&&d.push(f)}return d}function on(r,l){const d=[];for(let p=0;p<r.length;p++){const f=r[p];f in l&&d.push(f)}return d}function rn(r,l){const d=[];for(let p=0;p<r.length;p++){const f=r[p];l.indexOf(f)==-1&&d.push(f)}return d}function ps(r,l){const d=r.indexOf(l),p=d!=-1;return p&&r.splice(d,1),p}function jt(r,l){const d=r.slice();return ps(d,l),d}function R(r,l){const d=[];for(const p in r)l&&!Object.prototype.hasOwnProperty.call(r,p)||d.push(p);return d}function N(r,l){const d=[];for(const p in r)l&&!Object.prototype.hasOwnProperty.call(r,p)||d.push(r[p]);return d}function V(r,l){for(const d in r)Object.prototype.hasOwnProperty.call(r,d)&&r[d]&&l(d)}function X(r,l){if(r.length===0)return!0;const d=r[0][l];return r.every(function(p){return p[l]===d})}var Q=(r=>(r.msgpack="msgpack",r.json="json",r))(Q||{});function ie(r){return r.splice(se(r),1)[0]}function ae(r){const l=[];if(r)for(const d in r)l.push(encodeURIComponent(d)+"="+encodeURIComponent(r[d]));return l.length?"?"+l.join("&"):""}function ne(r){let l;const d=/([^?&=]+)=?([^&]*)/g,p={};for(;l=d.exec(r);)p[decodeURIComponent(l[1])]=decodeURIComponent(l[2]);return p}function re(r){return typeof r=="object"&&r!==null&&(r instanceof P||r instanceof pe)}function j(r){var l,d;return r instanceof Error||((l=r?.constructor)==null?void 0:l.name)==="ErrorInfo"||((d=r?.constructor)==null?void 0:d.name)==="PartialErrorInfo"?r.toString():S.Config.inspect(r)}function he(r){return S.BufferUtils.isBuffer(r)?r.toString():typeof r=="string"?r:S.Config.inspect(r)}function be(r){if(S.BufferUtils.isBuffer(r))return S.BufferUtils.byteLength(r);if(typeof r=="string")return S.Config.stringByteSize(r);throw new Error("Expected input of Utils.dataSizeBytes to be a buffer or string, but was: "+typeof r)}function ye(){return String(Math.random()).substr(2)}var Ee=async r=>{const l=await S.Config.getRandomArrayBuffer(r);return S.BufferUtils.base64Encode(l)};function Pe(r,l){const d=Math.min(l,r.length),p=r.slice(),f=[];for(let y=0;y<d;y++)f.push(ie(p));return f}function Me(r,l){r.then(d=>{l?.(null,d)}).catch(d=>{l?.(d)})}function ke(r,l,d){return d=="msgpack"?(l||Dn("MsgPack"),l.decode(r)):JSON.parse(String(r))}function ze(r,l,d){return d=="msgpack"?(l||Dn("MsgPack"),l.encode(r,!0)):JSON.stringify(r)}function Ft(r){return r.map(function(l){return l&&l.toLowerCase()})}function jn(r){return r.map(function(l){return l&&l.toUpperCase()})}function _o(r){return Math.min((r+2)/3,2)}function hs(){return 1-Math.random()*.2}function _i(r,l){return r*_o(l)*hs()}function Ot(){return typeof dn<"u"?dn:typeof window<"u"?window:self}function an(r,l){return Object.keys(r).every(d=>r[d]===l[d])&&Object.keys(l).every(d=>l[d]===r[d])}function bo(r){const l=/^(\[([^?]*)(?:(.*))\])?(.+)$/,d=r.match(l);if(!d||!d.length||d.length<5)throw new P("regex match failed",400,40010);if(d[2])throw new P(`cannot use a derived option with a ${d[2]} channel`,400,40010);return{qualifierParam:d[3]||"",channelName:d[4]}}function Qr(r){const l=S.BufferUtils,d=l.utf8Encode(r);return l.base64Encode(d)}function Ch(r,l){return r.length===l.length&&r.every(function(d,p){return d===l[p]})}function Ah(r){return new P(`${r} plugin not provided`,40019,400)}function Dn(r){throw Ah(r)}async function Rh(r,l=5e3,d="Timeout expired"){const p=new P(d,5e4,500);return Promise.race([r,new Promise((f,y)=>setTimeout(()=>y(p),l))])}var xh="2.2.0",M0="ably-js/"+xh,Nt={ENVIRONMENT:"",REST_HOST:"rest.ably.io",REALTIME_HOST:"realtime.ably.io",FA
989LLBACK_HOSTS:["A.ably-realtime.com","B.ably-realtime.com","C.ably-realtime.com","D.ably-realtime.com","E.ably-realtime.com"],PORT:80,TLS_PORT:443,TIMEOUTS:{disconnectedRetryTimeout:15e3,suspendedRetryTimeout:3e4,httpRequestTimeout:1e4,httpMaxRetryDuration:15e3,channelRetryTimeout:15e3,fallbackRetryTimeout:6e5,connectionStateTtl:12e4,realtimeRequestTimeout:1e4,recvTimeout:9e4,webSocketConnectTimeout:1e4,webSocketSlowTimeout:4e3},httpMaxRetryCount:3,maxMessageSize:65536,version:xh,protocolVersion:3,agent:M0,getHost:Ih,getPort:P0,getHttpScheme:N0,environmentFallbackHosts:Oh,getFallbackHosts:kh,getHosts:L0,checkHost:Mh,objectifyOptions:U0,normaliseOptions:F0,defaultGetHeaders:B0,defaultPostHeaders:H0};function Ih(r,l,d){return d?l=l==r.restHost&&r.realtimeHost||l||r.realtimeHost:l=l||r.restHost,l}function P0(r,l){return l||r.tls?r.tlsPort:r.port}function N0(r){return r.tls?"https://":"http://"}function Oh(r){return[r+"-a-fallback.ably-realtime.com",r+"-b-fallback.ably-realtime.com",r+"-c-fallback.ably-realtime.com",r+"-d-fallback.ably-realtime.com",r+"-e-fallback.ably-realtime.com"]}function kh(r){const l=r.fallbackHosts,d=typeof r.httpMaxRetryCount<"u"?r.httpMaxRetryCount:Nt.httpMaxRetryCount;return l?Pe(l,d):[]}function L0(r,l){const d=[r.restHost].concat(kh(r));return l?d.map(p=>Ih(r,p,!0)):d}function Mh(r){if(typeof r!="string")throw new P("host must be a string; was a "+typeof r,4e4,400);if(!r.length)throw new P("host must not be zero-length",4e4,400)}function D0(r,l,d,p){return r.realtimeHost?r.realtimeHost:r.restHost?(g.logAction(p,g.LOG_MINOR,"Defaults.normaliseOptions",'restHost is set to "'+r.restHost+'" but realtimeHost is not set, so setting realtimeHost to "'+r.restHost+'" too. If this is not what you want, please set realtimeHost explicitly.'),r.restHost):l?Nt.REALTIME_HOST:d+"-"+Nt.REALTIME_HOST}function G0(r){const l={};for(const d in Nt.TIMEOUTS)l[d]=r[d]||Nt.TIMEOUTS[d];return l}function hc(r){let l=Nt.agent;if(r.agents)for(var d in r.agents)l+=" "+d+"/"+r.agents[d];return l}function U0(r,l,d,p,f){if(r===void 0){const E=l?`${d} must be initialized with either a client options object, an Ably API key, or an Ably Token`:`${d} must be initialized with a client options object`;throw g.logAction(p,g.LOG_ERROR,`${d}()`,E),new Error(E)}let y;if(typeof r=="string")if(r.indexOf(":")==-1){if(!l){const E=`${d} cannot be initialized with just an Ably Token; you must provide a client options object with a \`plugins\` property. (Set this Ably Token as the object’s \`token\` property.)`;throw g.logAction(p,g.LOG_ERROR,`${d}()`,E),new Error(E)}y={token:r}}else{if(!l){const E=`${d} cannot be initialized with just an Ably API key; you must provide a client options object with a \`plugins\` property. (Set this Ably API key as the object’s \`key\` property.)`;throw g.logAction(p,g.LOG_ERROR,`${d}()`,E),new Error(E)}y={key:r}}else y=r;return f&&(y=w(v({},y),{plugins:v(v({},f),y.plugins)})),y}function F0(r,l,d){const p=d??g.defaultLogger;typeof r.recover=="function"&&r.closeOnUnload===!0&&(g.logAction(p,g.LOG_ERROR,"Defaults.normaliseOptions","closeOnUnload was true and a session recovery function was set - these are mutually exclusive, so unsetting the latter"),r.recover=void 0),"closeOnUnload"in r||(r.closeOnUnload=!r.recover),"queueMessages"in r||(r.queueMessages=!0);const f=r.environment&&String(r.environment).toLowerCase()||Nt.ENVIRONMENT,y=!f||f==="production";!r.fallbackHosts&&!r.restHost&&!r.realtimeHost&&!r.port&&!r.tlsPort&&(r.fallbackHosts=y?Nt.FALLBACK_HOSTS:Oh(f));const E=r.restHost||(y?Nt.REST_HOST:f+"-"+Nt.REST_HOST),x=D0(r,y,f,p);(r.fallbackHosts||[]).concat(E,x).forEach(Mh),r.port=r.port||Nt.PORT,r.tlsPort=r.tlsPort||Nt.TLS_PORT,"tls"in r||(r.tls=!0);const G=G0(r);l?"useBinaryProtocol"in r?r.useBinaryProtocol=S.Config.supportsBinary&&r.useBinaryProtocol:r.useBinaryProtocol=S.Config.preferBinary:r.useBinaryProtocol=!1;const L={};r.clientId&&(L["X-Ably-ClientId"]=S.BufferUtils.base64Encode(S.BufferUtils.utf8Encode(r.clientId))),"idempotentRestPublishing"in r||(r.idempotentRestPublishing=!0);let z=null,q=r.connectivityCheckUrl;if(r.connectivityCheckUrl){let[le,J]=r.connectivityCheckUrl.split("?");z=J?ne(J):{},le.indexOf("://")===-1&&(le="https://"+le),q=le}return w(v({}
989,r),{realtimeHost:x,restHost:E,maxMessageSize:r.maxMessageSize||Nt.maxMessageSize,timeouts:G,connectivityCheckParams:z,connectivityCheckUrl:q,headers:L})}function Zr(r,l,d){const p=d||{};if(p.cipher){r||Dn("Crypto");const f=r.getCipher(p.cipher,l);p.cipher=f.cipherParams,p.channelCipher=f.cipher}else"cipher"in p&&(p.cipher=void 0,p.channelCipher=null);return p}var Ph={json:"application/json",xml:"application/xml",html:"text/html",msgpack:"application/x-msgpack"},ea={format:"json",protocolVersion:Nt.protocolVersion};function B0(r,{format:l=ea.format,protocolVersion:d=ea.protocolVersion}={}){return{accept:Ph[l],"X-Ably-Version":d.toString(),"Ably-Agent":hc(r)}}function H0(r,{format:l=ea.format,protocolVersion:d=ea.protocolVersion}={}){let p;return{accept:p=Ph[l],"content-type":p,"X-Ably-Version":d.toString(),"Ably-Agent":hc(r)}}var Te=Nt;function $0(r){return Object.assign(Nt,r)}var W0=class A0{constructor(l,d){this.logger=l,this.members=d||[]}call(l,d){for(const p of this.members)if(p)try{p(l,d)}catch(f){g.logAction(this.logger,g.LOG_ERROR,"Multicaster multiple callback handler","Unexpected exception: "+f+"; stack = "+f.stack)}}push(...l){this.members.push(...l)}createPromise(){return new Promise((l,d)=>{this.push((p,f)=>{p?d(p):l(f)})})}resolveAll(l){this.call(null,l)}rejectAll(l){this.call(l)}static create(l,d){const p=new A0(l,d);return Object.assign((f,y)=>p.call(f,y),{push:f=>p.push(f),createPromise:()=>p.createPromise(),resolveAll:f=>p.resolveAll(f),rejectAll:f=>p.rejectAll(f)})}},fc=W0,Nh=(r=>(r.Get="get",r.Delete="delete",r.Post="post",r.Put="put",r.Patch="patch",r))(Nh||{}),at=Nh,Lh=(r=>(r[r.Success=200]="Success",r[r.NoContent=204]="NoContent",r[r.BadRequest=400]="BadRequest",r[r.Unauthorized=401]="Unauthorized",r[r.Forbidden=403]="Forbidden",r[r.RequestTimeout=408]="RequestTimeout",r[r.InternalServerError=500]="InternalServerError",r))(Lh||{});function z0(r){return r>=200&&r<400}var ta=Lh,gc=Math.pow(2,17);function V0(){return("000000"+Math.floor(Math.random()*1e16)).slice(-16)}function q0(r){return!!r.connection}function Dh(r){return re(r)?(r.code||(r.statusCode===403?r.code=40300:(r.code=40170,r.statusCode=401)),r):new P(j(r),r.code||40170,r.statusCode||401)}var j0=(r,l)=>{const d=S.BufferUtils,p=d.utf8Encode(r),f=d.utf8Encode(l),y=d.hmacSha256(p,f);return d.base64Encode(y)};function Gh(r){if(!r)return"";typeof r=="string"&&(r=JSON.parse(r));const l=Object.create(null),d=R(r,!0);if(!d)return"";d.sort();for(let p=0;p<d.length;p++)l[d[p]]=r[d[p]].sort();return JSON.stringify(l)}function Uh(r,l){if(r.authCallback)g.logAction(l,g.LOG_MINOR,"Auth()","using token auth with authCallback");else if(r.authUrl)g.logAction(l,g.LOG_MINOR,"Auth()","using token auth with authUrl");else if(r.key)g.logAction(l,g.LOG_MINOR,"Auth()","using token auth with client-side signing");else if(r.tokenDetails)g.logAction(l,g.LOG_MINOR,"Auth()","using token auth with supplied token only");else{const d="authOptions must include valid authentication parameters";throw g.logAction(l,g.LOG_ERROR,"Auth()",d),new Error(d)}}function K0(r){return"useTokenAuth"in r&&!r.useTokenAuth}function Fh(r){return r.useTokenAuth||!K0(r)&&(r.authCallback||r.authUrl||r.token||r.tokenDetails)}function Y0(r){return!r.key&&!r.authCallback&&!r.authUrl}var X0=0;function J0(){return X0++}var Q0=class{constructor(r,l){if(this.authOptions={},this.client=r,this.tokenParams=l.defaultTokenParams||{},this.currentTokenRequestId=null,this.waitingForTokenRequest=null,Fh(l))Y0(l)&&g.logAction(this.logger,g.LOG_ERROR,"Auth()","Warning: library initialized with a token literal without any way to renew the token when it expires (no authUrl, authCallback, or key). See https://help.ably.io/error/40171 for help"),this._saveTokenOptions(l.defaultTokenParams,l),Uh(this.authOptions,this.logger);else{if(!l.key){const d="No authentication options provided; need one of: key, authUrl, or authCallback (or for testing only, token or tokenDetails)";throw g.logAction(this.logger,g.LOG_ERROR,"Auth()",d),new P(d,40160,401)}g.logAction(this.logger,g.LOG_MINOR,"Auth()","anonymous, using basic auth"),this._saveBasicOptions(l)}}get logger(){return this.client.logger}async authorize(r,l){if(l&&l.key&&this.authOptions.key!==l.key)throw new P("Unable to update auth options with incompatible key",40102,401);try{let d=await this._forceNewToken(r??null,l??null);return q0(this.client)?new Promise((p,f)=>{this.client.connection.connectionManager.onAuthUpdated(d,(y,E)=>y?f(y):p(E))}):d}catch(d){throw this.client.connection&&d.statusCode===ta.Forbidden&&this.client.connection.connectionManager.actOnErrorFromAuthorize(d),d}}async _forceNewToken(r,l){this.tokenDetails=null,this._saveTokenOptions(r,l),Uh(this.authOptions,this.logger);try{return this._ensureValidAuthCredentials(!0)}finally{delete this.tokenParams.timestamp,delete this.authOptions.queryTime}}async requestToken(r,l){const d=l||this.authOptions,p=r||de(this.tokenParams);let f,y=this.client;if(d.authCallback)g.logAction(this.logger,g.LOG_MINOR,"Auth.requestToken()","using token auth with authCallback"),f=d.authCallback;else if(d.authUrl)g.logAction(this.logger,g.LOG_MINOR,"Auth.requestToken()","using token auth with authUrl"),f=(x,G)=>{const L=te({accept:"application/json, text/plain"},d.authHeaders),z=d.authMethod&&d.authMethod.toLowerCase()==="post";let q;const le=d.authUrl.indexOf("?");le>-1&&(q=ne(d.authUrl.slice(le)),d.authUrl=d.authUrl.slice(0,le),z||(d.authParams=te(q,d.authParams)));const J=te({},d.authParams||{},x),ge=me=>{var Ce,Ke;let Xe=(Ce=me.body)!=null?Ce:null,nt=null;if(me.error)g.logAction(this.logger,g.LOG_MICRO,"Auth.requestToken().tokenRequestCallback","Received Error: "+j(me.error));else{const Lt=(Ke=me.headers["content-type"])!=null?Ke:null;Array.isArray(Lt)?nt=Lt.join(", "):nt=Lt,g.logAction(this.logger,g.LOG_MICRO,"Auth.requestToken().tokenRequestCallback","Received; content-type: "+nt+"; body: "+he(Xe))}if(me.error){G(me.error,null);return}if(me.unpacked){G(null,Xe);return}if(S.BufferUtils.isBuffer(Xe)&&(Xe=Xe.toString()),!nt){G(new P("authUrl response is missing a content-type header",40170,401),null);return}const Ae=nt.indexOf("application/json")>-1,ln=nt.indexOf("text/plain")>-1||nt.indexOf("application/jwt")>-1;if(!Ae&&!ln){G(new P("authUrl responded with unacceptable content-type "+nt+", should be either text/plain, application/jwt or application/json",40170,401),null);return}if(Ae){if(Xe.length>gc){G(new P("authUrl response exceeded max permitted length",40170,401),null);return}try{Xe=JSON.parse(Xe)}catch(Lt){G(new P("Unexpected error processing authURL response; err = "+Lt.message,40170,401),null);return}}G(null,Xe,nt)}
989;if(g.logAction(this.logger,g.LOG_MICRO,"Auth.requestToken().tokenRequestCallback","Requesting token from "+d.authUrl+"; Params: "+JSON.stringify(J)+"; method: "+(z?"POST":"GET")),z){const me=L||{};me["content-type"]="application/x-www-form-urlencoded";const Ce=ae(J).slice(1);Me(this.client.http.doUri(at.Post,d.authUrl,me,Ce,q),(Ke,Xe)=>ge(Ke||Xe))}else Me(this.client.http.doUri(at.Get,d.authUrl,L||{},null,J),(me,Ce)=>ge(me||Ce))};else if(d.key)g.logAction(this.logger,g.LOG_MINOR,"Auth.requestToken()","using token auth with client-side signing"),f=(x,G)=>{Me(this.createTokenRequest(x,d),(L,z)=>G(L,z??null))};else{const x="Need a new token, but authOptions does not include any way to request one (no authUrl, authCallback, or key)";throw g.logAction(this.logger,g.LOG_ERROR,"Auth()","library initialized with a token literal without any way to renew the token when it expires (no authUrl, authCallback, or key). See https://help.ably.io/error/40171 for help"),new P(x,40171,403)}"capability"in p&&(p.capability=Gh(p.capability));const E=(x,G)=>{const L=x.keyName,z="/keys/"+L+"/requestToken",q=function(J){return y.baseUri(J)+z},le=Te.defaultPostHeaders(this.client.options);d.requestHeaders&&te(le,d.requestHeaders),g.logAction(this.logger,g.LOG_MICRO,"Auth.requestToken().requestToken","Sending POST to "+z+"; Token params: "+JSON.stringify(x)),Me(this.client.http.do(at.Post,q,le,JSON.stringify(x),null),(J,ge)=>J?G(J):G(ge.error,ge.body,ge.unpacked))};return new Promise((x,G)=>{let L=!1,z=this.client.options.timeouts.realtimeRequestTimeout,q=setTimeout(()=>{L=!0;const le="Token request callback timed out after "+z/1e3+" seconds";g.logAction(this.logger,g.LOG_ERROR,"Auth.requestToken()",le),G(new P(le,40170,401))},z);f(p,(le,J,ge)=>{if(L)return;if(clearTimeout(q),le){g.logAction(this.logger,g.LOG_ERROR,"Auth.requestToken()","token request signing call returned error; err = "+j(le)),G(Dh(le));return}if(typeof J=="string"){J.length===0?G(new P("Token string is empty",40170,401)):J.length>gc?G(new P("Token string exceeded max permitted length (was "+J.length+" bytes)",40170,401)):J==="undefined"||J==="null"?G(new P("Token string was literal null/undefined",40170,401)):J[0]==="{"&&!(ge&&ge.indexOf("application/jwt")>-1)?G(new P("Token was double-encoded; make sure you're not JSON-encoding an already encoded token request or details",40170,401)):x({token:J});return}if(typeof J!="object"||J===null){const Ce="Expected token request callback to call back with a token string or token request/details object, but got a "+typeof J;g.logAction(this.logger,g.LOG_ERROR,"Auth.requestToken()",Ce),G(new P(Ce,40170,401));return}const me=JSON.stringify(J).length;if(me>gc&&!d.suppressMaxLengthCheck){G(new P("Token request/details object exceeded max permitted stringified size (was "+me+" bytes)",40170,401));return}if("issued"in J){x(J);return}if(!("keyName"in J)){const Ce="Expected token request callback to call back with a token string, token request object, or token details object";g.logAction(this.logger,g.LOG_ERROR,"Auth.requestToken()",Ce),G(new P(Ce,40170,401));return}E(J,(Ce,Ke,Xe)=>{if(Ce){g.logAction(this.logger,g.LOG_ERROR,"Auth.requestToken()","token request API call returned error; err = "+j(Ce)),G(Dh(Ce));return}Xe||(Ke=JSON.parse(Ke)),g.logAction(this.logger,g.LOG_MINOR,"Auth.getToken()","token received"),x(Ke)})})})}async createTokenRequest(r,l){l=l||this.authOptions,r=r||de(this.tokenParams);const d=l.key;if(!d)throw new P("No key specified",40101,403);const p=d.split(":"),f=p[0],y=p[1];if(!y)throw new P("Invalid key specified",40101,403);if(r.clientId==="")throw new P("clientId can’t be an empty string",40012,400);"capability"in r&&(r.capability=Gh(r.capability));const E=te({keyName:f},r),x=r.clientId||"",G=r.ttl||"",L=r.capability||"";E.timestamp||(E.timestamp=await this.getTimestamp(l&&l.queryTime));const z=E.nonce||(E.nonce=V0()),q=E.timestamp,le=E.keyName+`
990`+G+`
991`+L+`
992`+x+`
993`+q+`
994`+z+`
995`;return E.mac=E.mac||j0(le,y),g.logAction(this.logger,g.LOG_MINOR,"Auth.getTokenRequest()","generated signed request"),E}async getAuthParams(){if(this.method=="basic")return{key:this.key};{let r=await this._ensureValidAuthCredentials(!1);if(!r)throw new Error("Auth.getAuthParams(): _ensureValidAuthCredentials returned no error or tokenDetails");return{access_token:r.token}}}async getAuthHeaders(){if(this.method=="basic")return{authorization:"Basic "+this.basicKey};{const r=await this._ensureValidAuthCredentials(!1);if(!r)throw new Error("Auth.getAuthParams(): _ensureValidAuthCredentials returned no error or tokenDetails");return{authorization:"Bearer "+Qr(r.token)}}}async getTimestamp(r){return!this.isTimeOffsetSet()&&(r||this.authOptions.queryTime)?this.client.time():this.getTimestampUsingOffset()}getTimestampUsingOffset(){return Date.now()+(this.client.serverTimeOffset||0)}isTimeOffsetSet(){return this.client.serverTimeOffset!==null}_saveBasicOptions(r){this.method="basic",this.key=r.key,this.basicKey=Qr(r.key),this.authOptions=r||{},"clientId"in r&&this._userSetClientId(r.clientId)}_saveTokenOptions(r,l){this.method="token",r&&(this.tokenParams=r),l&&(l.token&&(l.tokenDetails=typeof l.token=="string"?{token:l.token}:l.token),l.tokenDetails&&(this.tokenDetails=l.tokenDetails),"clientId"in l&&this._userSetClientId(l.clientId),this.authOptions=l)}async _ensureValidAuthCredentials(r){const l=this.tokenDetails;if(l){if(this._tokenClientIdMismatch(l.clientId))throw new P("Mismatch between clientId in token ("+l.clientId+") and current clientId ("+this.clientId+")",40102,403);if(!this.isTimeOffsetSet()||!l.expires||l.expires>=this.getTimestampUsingOffset())return g.logAction(this.logger,g.LOG_MINOR,"Auth.getToken()","using cached token; expires = "+l.expires),l;g.logAction(this.logger,g.LOG_MINOR,"Auth.getToken()","deleting expired token"),this.tokenDetails=null}const d=(this.waitingForTokenRequest||(this.waitingForTokenRequest=fc.create(this.logger))).createPromise();if(this.currentTokenRequestId!==null&&!r)return d;const p=this.currentTokenRequestId=J0();let f,y=null;try{f=await this.requestToken(this.tokenParams,this.authOptions)}catch(x){y=x}if(this.currentTokenRequestId>p)return g.logAction(this.logger,g.LOG_MINOR,"Auth._ensureValidAuthCredentials()","Discarding token request response; overtaken by newer one"),d;this.currentTokenRequestId=null;const E=this.waitingForTokenRequest;return this.waitingForTokenRequest=null,y?(E?.rejectAll(y),d):(E?.resolveAll(this.tokenDetails=f),d)}_userSetClientId(r){if(typeof r=="string"||r===null){if(r==="*")throw new P('Can’t use "*" as a clientId as that string is reserved. (To change the default token request behaviour to use a wildcard clientId, instantiate the library with {defaultTokenParams: {clientId: "*"}}
995), or if calling authorize(), pass it in as a tokenParam: authorize({clientId: "*"}, authOptions)',40012,400);{const l=this._uncheckedSetClientId(r);if(l)throw l}}else throw new P("clientId must be either a string or null",40012,400)}_uncheckedSetClientId(r){if(this._tokenClientIdMismatch(r)){const l="Unexpected clientId mismatch: client has "+this.clientId+", requested "+r,d=new P(l,40102,401);return g.logAction(this.logger,g.LOG_ERROR,"Auth._uncheckedSetClientId()",l),d}else return this.clientId=this.tokenParams.clientId=r,null}_tokenClientIdMismatch(r){return!!(this.clientId&&this.clientId!=="*"&&r&&r!=="*"&&this.clientId!==r)}static isTokenErr(r){return r.code&&r.code>=40140&&r.code<40150}revokeTokens(r,l){return this.client.rest.revokeTokens(r,l)}},Kn=Q0;function mc(r){const l=[];if(r)for(const d in r)l.push(d+"="+r[d]);return l.join("&")}function bi(r,l){return r+(l?"?":"")+mc(l)}function Z0(r,l,d,p,f){r.error?g.logActionNoStrip(f,g.LOG_MICRO,"Http."+l+"()","Received Error; "+bi(d,p)+"; Error: "+j(r.error)):g.logActionNoStrip(f,g.LOG_MICRO,"Http."+l+"()","Received; "+bi(d,p)+"; Headers: "+mc(r.headers)+"; StatusCode: "+r.statusCode+"; Body"+(S.BufferUtils.isBuffer(r.body)?" (Base64): "+S.BufferUtils.base64Encode(r.body):": "+r.body))}function eS(r,l,d,p,f){f.shouldLog(g.LOG_MICRO)&&g.logActionNoStrip(f,g.LOG_MICRO,"Http."+r+"()","Sending; "+bi(l,p)+"; Body"+(S.BufferUtils.isBuffer(d)?" (Base64): "+S.BufferUtils.base64Encode(d):": "+d))}var yc=class{constructor(r){this.client=r,this.platformHttp=new S.Http(r),this.checkConnectivity=this.platformHttp.checkConnectivity?()=>this.platformHttp.checkConnectivity():void 0}get logger(){var r,l;return(l=(r=this.client)==null?void 0:r.logger)!=null?l:g.defaultLogger}get supportsAuthHeaders(){return this.platformHttp.supportsAuthHeaders}get supportsLinkHeaders(){return this.platformHttp.supportsLinkHeaders}_getHosts(r){const l=r.connection,d=l&&l.connectionManager.host;return d?[d].concat(Te.getFallbackHosts(r.options)):Te.getHosts(r.options)}async do(r,l,d,p,f){try{const y=this.client;if(!y)return{error:new P("http.do called without client",5e4,500)};const E=typeof l=="function"?l:function(q){return y.baseUri(q)+l},x=y._currentFallback;if(x)if(x.validUntil>Date.now()){const q=await this.doUri(r,E(x.host),d,p,f);return q.error&&this.platformHttp.shouldFallback(q.error)?(y._currentFallback=null,this.do(r,l,d,p,f)):q}else y._currentFallback=null;const G=this._getHosts(y);if(G.length===1)return this.doUri(r,E(G[0]),d,p,f);let L=null;const z=async(q,le)=>{const J=q.shift();L=L??new Date;const ge=await this.doUri(r,E(J),d,p,f);return ge.error&&this.platformHttp.shouldFallback(ge.error)&&q.length?Date.now()-L.getTime()>y.options.timeouts.httpMaxRetryDuration?{error:new P(`Timeout for trying fallback hosts retries. Total elapsed time exceeded the ${y.options.timeouts.httpMaxRetryDuration}ms limit`,50003,500)}:z(q,!0):(le&&(y._currentFallback={host:J,validUntil:Date.now()+y.options.timeouts.fallbackRetryTimeout}),ge)};return z(G)}catch(y){return{error:new P(`Unexpected error in Http.do: ${j(y)}`,500,5e4)}}}async doUri(r,l,d,p,f){try{eS(r,l,p,f,this.logger);const y=await this.platformHttp.doUri(r,l,d,p,f);return this.logger.shouldLog(g.LOG_MICRO)&&Z0(y,r,l,f,this.logger),y}catch(y){return{error:new P(`Unexpected error in Http.doUri: ${j(y)}`,500,5e4)}}}},Bh=class{constructor(r){var l,d,p,f,y,E,x,G;this._additionalHTTPRequestImplementations=(l=r.plugins)!=null?l:null,this.logger=new g,this.logger.setLog(r.logLevel,r.logHandler),g.logAction(this.logger,g.LOG_MICRO,"BaseClient()","initialized with clientOptions "+S.Config.inspect(r)),this._MsgPack=(p=(d=r.plugins)==null?void 0:d.MsgPack)!=null?p:null;const L=this.options=Te.normaliseOptions(r,this._MsgPack,this.logger);if(L.key){const z=L.key.match(/^([^:\s]+):([^:.\s]+)$/);if(!z){const q="invalid key parameter";throw g.logAction(this.logger,g.LOG_ERROR,"BaseClient()",q),new P(q,40400,404)}L.keyName=z[1],L.keySecret=z[2]}if("clientId"in L)if(typeof L.clientId=="string"||L.clientId===null){if(L.clientId==="*")throw new P('Can’t use "*" as a clientId as that string is reserved. (To change the default token request behaviour to use a wildcard clientId, use {defaultTokenParams: {clientId: "*"}}
995)',40012,400)}else throw new P("clientId must be either a string or null",40012,400);g.logAction(this.logger,g.LOG_MINOR,"BaseClient()","started; version = "+Te.version),this._currentFallback=null,this.serverTimeOffset=null,this.http=new yc(this),this.auth=new Kn(this,L),this._rest=(f=r.plugins)!=null&&f.Rest?new r.plugins.Rest(this):null,this._Crypto=(E=(y=r.plugins)==null?void 0:y.Crypto)!=null?E:null,this.__FilteredSubscriptions=(G=(x=r.plugins)==null?void 0:x.MessageInteractions)!=null?G:null}get rest(){return this._rest||Dn("Rest"),this._rest}get _FilteredSubscriptions(){return this.__FilteredSubscriptions||Dn("MessageInteractions"),this.__FilteredSubscriptions}get channels(){return this.rest.channels}get push(){return this.rest.push}baseUri(r){return Te.getHttpScheme(this.options)+r+":"+Te.getPort(this.options,!1)}async stats(r){return this.rest.stats(r)}async time(r){return this.rest.time(r)}async request(r,l,d,p,f,y){return this.rest.request(r,l,d,p,f,y)}batchPublish(r){return this.rest.batchPublish(r)}batchPresence(r){return this.rest.batchPresence(r)}setLog(r){this.logger.setLog(r.level,r.handler)}};Bh.Platform=S;var Hh=Bh,tS=class Qo{toJSON(){var l,d,p;return{id:this.id,deviceSecret:this.deviceSecret,platform:this.platform,formFactor:this.formFactor,clientId:this.clientId,metadata:this.metadata,deviceIdentityToken:this.deviceIdentityToken,push:{recipient:(l=this.push)==null?void 0:l.recipient,state:(d=this.push)==null?void 0:d.state,error:(p=this.push)==null?void 0:p.error}}}toString(){var l,d,p,f;let y="[DeviceDetails";return this.id&&(y+="; id="+this.id),this.platform&&(y+="; platform="+this.platform),this.formFactor&&(y+="; formFactor="+this.formFactor),this.clientId&&(y+="; clientId="+this.clientId),this.metadata&&(y+="; metadata="+this.metadata),this.deviceIdentityToken&&(y+="; deviceIdentityToken="+JSON.stringify(this.deviceIdentityToken)),(l=this.push)!=null&&l.recipient&&(y+="; push.recipient="+JSON.stringify(this.push.recipient)),(d=this.push)!=null&&d.state&&(y+="; push.state="+this.push.state),(p=this.push)!=null&&p.error&&(y+="; push.error="+JSON.stringify(this.push.error)),(f=this.push)!=null&&f.metadata&&(y+="; push.metadata="+this.push.metadata),y+="]",y}static toRequestBody(l,d,p){return ze(l,d,p)}static fromResponseBody(l,d,p){return p&&(l=ke(l,d,p)),Array.isArray(l)?Qo.fromValuesArray(l):Qo.fromValues(l)}static fromValues(l){return l.error=l.error&&P.fromValues(l.error),Object.assign(new Qo,l)}static fromValuesArray(l){const d=l.length,p=new Array(d);for(let f=0;f<d;f++)p[f]=Qo.fromValues(l[f]);return p}},na=tS;async function $h(r,l,d,p){if(r.http.supportsAuthHeaders){const f=await r.auth.getAuthHeaders();return p(te(f,l),d)}else{const f=await r.auth.getAuthParams();return p(l,te(f,d))}}function nS(r,l,d){if(r.err&&!r.body)return{err:r.err};if(r.statusCode===ta.NoContent)return w(v({},r),{body:[],unpacked:!0});let p=r.body;if(!r.unpacked)try{p=ke(p,l,d)}catch(x){return re(x)?{err:x}:{err:new pe(j(x),null)}}if(!p)return{err:new pe("unenvelope(): Response body is missing",null)};const{statusCode:f,response:y,headers:E}=p;if(f===void 0)return w(v({},r),{body:p,unpacked:!0});if(f<200||f>=300){let x=y&&y.error||r.err;return x||(x=new Error("Error in unenveloping "+p),x.statusCode=f),{err:x,body:y,headers:E,unpacked:!0,statusCode:f}}return{err:r.err,body:y,headers:E,unpacked:!0,statusCode:f}}function sS(r,l,d,p,f){r.err?g.logAction(f,g.LOG_MICRO,"Resource."+l+"()","Received Error; "+bi(d,p)+"; Error: "+j(r.err)):g.logAction(f,g.LOG_MICRO,"Resource."+l+"()","Received; "+bi(d,p)+"; Headers: "+mc(r.headers)+"; StatusCode: "+r.statusCode+"; Body: "+(S.BufferUtils.isBuffer(r.body)?" (Base64): "+S.BufferUtils.base64Encode(r.body):": "+S.Config.inspect(r.body)))}var iS=class Gi{static async get(l,d,p,f,y,E){return Gi.do(at.Get,l,d,null,p,f,y,E??!1)}static async delete(l,d,p,f,y,E){return Gi.do(at.Delete,l,d,null,p,f,y,E)}static async post(l,d,p,f,y,E,x){return Gi.do(at.Post,l,d,p,f,y,E,x)}static async patch(l,d,p,f,y,E,x){return Gi.do(at.Patch,l,d,p,f,y,E,x)}static async put(l,d,p,f,y,E,x){return Gi.do(at.Put,l,d,p,f,y,E,x)}
995static async do(l,d,p,f,y,E,x,G){x&&((E=E||{}).envelope=x);const L=d.logger;async function z(le,J){var ge;if(L.shouldLog(g.LOG_MICRO)){let Ce=f;if(((ge=le["content-type"])==null?void 0:ge.indexOf("msgpack"))>0)try{d._MsgPack||Dn("MsgPack"),Ce=d._MsgPack.decode(f)}catch(Ke){g.logAction(L,g.LOG_MICRO,"Resource."+l+"()","Sending MsgPack Decoding Error: "+j(Ke))}g.logAction(L,g.LOG_MICRO,"Resource."+l+"()","Sending; "+bi(p,J)+"; Body: "+Ce)}const me=await d.http.do(l,p,le,f,J);return me.error&&Kn.isTokenErr(me.error)?(await d.auth.authorize(null,null),$h(d,le,J,z)):{err:me.error,body:me.body,headers:me.headers,unpacked:me.unpacked,statusCode:me.statusCode}}let q=await $h(d,y,E,z);if(x&&(q=nS(q,d._MsgPack,x)),L.shouldLog(g.LOG_MICRO)&&sS(q,l,p,E,L),G){if(q.err)throw q.err;{const le=v({},q);return delete le.err,le}}return q}},Tt=iS;function oS(r){const l=r.match(/^\.\/(\w+)\?(.*)$/);return l&&l[2]&&ne(l[2])}function rS(r){typeof r=="string"&&(r=r.split(","));const l={};for(let d=0;d<r.length;d++){const p=r[d].match(/^\s*<(.+)>;\s*rel="(\w+)"$/);if(p){const f=oS(p[1]);f&&(l[p[2]]=f)}}return l}function aS(r,l,d){return!(d&&(l||typeof r.code=="number"))}var lS=class{constructor(r,l,d,p,f,y){this.client=r,this.path=l,this.headers=d,this.envelope=p??null,this.bodyHandler=f,this.useHttpPaginatedResponse=y||!1}get logger(){return this.client.logger}async get(r){const l=await Tt.get(this.client,this.path,this.headers,r,this.envelope,!1);return this.handlePage(l)}async delete(r){const l=await Tt.delete(this.client,this.path,this.headers,r,this.envelope,!1);return this.handlePage(l)}async post(r,l){const d=await Tt.post(this.client,this.path,l,this.headers,r,this.envelope,!1);return this.handlePage(d)}async put(r,l){const d=await Tt.put(this.client,this.path,l,this.headers,r,this.envelope,!1);return this.handlePage(d)}async patch(r,l){const d=await Tt.patch(this.client,this.path,l,this.headers,r,this.envelope,!1);return this.handlePage(d)}async handlePage(r){if(r.err&&aS(r.err,r.body,this.useHttpPaginatedResponse))throw g.logAction(this.logger,g.LOG_ERROR,"PaginatedResource.handlePage()","Unexpected error getting resource: err = "+j(r.err)),r.err;let l,d,p;try{l=r.statusCode==ta.NoContent?[]:await this.bodyHandler(r.body,r.headers||{},r.unpacked)}catch(f){throw r.err||f}return r.headers&&(d=r.headers.Link||r.headers.link)&&(p=rS(d)),this.useHttpPaginatedResponse?new cS(this,l,r.headers||{},r.statusCode,p,r.err):new Wh(this,l,p)}},Wh=class{constructor(r,l,d){this.resource=r,this.items=l;const p=this;d&&("first"in d&&(this.first=async function(){return p.get(d.first)}),"current"in d&&(this.current=async function(){return p.get(d.current)}),this.next=async function(){return"next"in d?p.get(d.next):null},this.hasNext=function(){return"next"in d},this.isLast=()=>{var f;return!((f=this.hasNext)!=null&&f.call(this))})}async get(r){const l=this.resource,d=await Tt.get(l.client,l.path,l.headers,r,l.envelope,!1);return l.handlePage(d)}},cS=class extends Wh{constructor(r,l,d,p,f,y){super(r,l,f),this.statusCode=p,this.success=p<300&&p>=200,this.headers=d,this.errorCode=y&&y.code,this.errorMessage=y&&y.message}toJSON(){return{items:this.items,statusCode:this.statusCode,success:this.success,headers:this.headers,errorCode:this.errorCode,errorMessage:this.errorMessage}}},fs=lS,zh=class Zo{toJSON(){return{channel:this.channel,deviceId:this.deviceId,clientId:this.clientId}}toString(){let l="[PushChannelSubscription";return this.channel&&(l+="; channel="+this.channel),this.deviceId&&(l+="; deviceId="+this.deviceId),this.clientId&&(l+="; clientId="+this.clientId),l+="]",l}static fromResponseBody(l,d,p){return p&&(l=ke(l,d,p)),Array.isArray(l)?Zo.fromValuesArray(l):Zo.fromValues(l)}static fromValues(l){return Object.assign(new Zo,l)}static fromValuesArray(l){const d=l.length,p=new Array(d);for(let f=0;f<d;f++)p[f]=Zo.fromValues(l[f]);return p}};zh.toRequestBody=ze;var dS=zh,_c=dS,uS=class{constructor(r){this.client=r,this.admin=new pS(r)}},pS=class{constructor(r){this.client=r,this.deviceRegistrations=new hS(r),this.channelSubscriptions=new fS(r)}async publish(r,l){const d=this.client,p=d.options.useBinaryProtocol?"msgpack":"json",f=Te.defaultPostHeaders(d.options,{format:p}),y={}
995,E=te({recipient:r},l);te(f,d.options.headers),d.options.pushFullWait&&te(y,{fullWait:"true"});const x=ze(E,d._MsgPack,p);await Tt.post(d,"/push/publish",x,f,y,null,!0)}},hS=class{constructor(r){this.client=r}async save(r){const l=this.client,d=na.fromValues(r),p=l.options.useBinaryProtocol?"msgpack":"json",f=Te.defaultPostHeaders(l.options,{format:p}),y={};te(f,l.options.headers),l.options.pushFullWait&&te(y,{fullWait:"true"});const E=ze(d,l._MsgPack,p),x=await Tt.put(l,"/push/deviceRegistrations/"+encodeURIComponent(r.id),E,f,y,null,!0);return na.fromResponseBody(x.body,l._MsgPack,x.unpacked?void 0:p)}async get(r){const l=this.client,d=l.options.useBinaryProtocol?"msgpack":"json",p=Te.defaultGetHeaders(l.options,{format:d}),f=r.id||r;if(typeof f!="string"||!f.length)throw new P("First argument to DeviceRegistrations#get must be a deviceId string or DeviceDetails",4e4,400);te(p,l.options.headers);const y=await Tt.get(l,"/push/deviceRegistrations/"+encodeURIComponent(f),p,{},null,!0);return na.fromResponseBody(y.body,l._MsgPack,y.unpacked?void 0:d)}async list(r){const l=this.client,d=l.options.useBinaryProtocol?"msgpack":"json",p=this.client.http.supportsLinkHeaders?void 0:d,f=Te.defaultGetHeaders(l.options,{format:d});return te(f,l.options.headers),new fs(l,"/push/deviceRegistrations",f,p,async function(y,E,x){return na.fromResponseBody(y,l._MsgPack,x?void 0:d)}).get(r)}async remove(r){const l=this.client,d=l.options.useBinaryProtocol?"msgpack":"json",p=Te.defaultGetHeaders(l.options,{format:d}),f={},y=r.id||r;if(typeof y!="string"||!y.length)throw new P("First argument to DeviceRegistrations#remove must be a deviceId string or DeviceDetails",4e4,400);te(p,l.options.headers),l.options.pushFullWait&&te(f,{fullWait:"true"}),await Tt.delete(l,"/push/deviceRegistrations/"+encodeURIComponent(y),p,f,null,!0)}async removeWhere(r){const l=this.client,d=l.options.useBinaryProtocol?"msgpack":"json",p=Te.defaultGetHeaders(l.options,{format:d});te(p,l.options.headers),l.options.pushFullWait&&te(r,{fullWait:"true"}),await Tt.delete(l,"/push/deviceRegistrations",p,r,null,!0)}},fS=class R0{constructor(l){this.remove=R0.prototype.removeWhere,this.client=l}async save(l){const d=this.client,p=_c.fromValues(l),f=d.options.useBinaryProtocol?"msgpack":"json",y=Te.defaultPostHeaders(d.options,{format:f}),E={};te(y,d.options.headers),d.options.pushFullWait&&te(E,{fullWait:"true"});const x=ze(p,d._MsgPack,f),G=await Tt.post(d,"/push/channelSubscriptions",x,y,E,null,!0);return _c.fromResponseBody(G.body,d._MsgPack,G.unpacked?void 0:f)}async list(l){const d=this.client,p=d.options.useBinaryProtocol?"msgpack":"json",f=this.client.http.supportsLinkHeaders?void 0:p,y=Te.defaultGetHeaders(d.options,{format:p});return te(y,d.options.headers),new fs(d,"/push/channelSubscriptions",y,f,async function(E,x,G){return _c.fromResponseBody(E,d._MsgPack,G?void 0:p)}).get(l)}async removeWhere(l){const d=this.client,p=d.options.useBinaryProtocol?"msgpack":"json",f=Te.defaultGetHeaders(d.options,{format:p});te(f,d.options.headers),d.options.pushFullWait&&te(l,{fullWait:"true"}),await Tt.delete(d,"/push/channelSubscriptions",f,l,null,!0)}async listChannels(l){const d=this.client,p=d.options.useBinaryProtocol?"msgpack":"json",f=this.client.http.supportsLinkHeaders?void 0:p,y=Te.defaultGetHeaders(d.options,{format:p});return te(y,d.options.headers),d.options.pushFullWait&&te(l,{fullWait:"true"}),new fs(d,"/push/channels",y,f,async function(E,x,G){const L=!G&&p?ke(E,d._MsgPack,p):E;for(let z=0;z<L.length;z++)L[z]=String(L[z]);return L}).get(l)}},gS=uS;function mS(r){return!r||!r.channelOptions?{channelOptions:r,plugins:{},baseEncodedPreviousPayload:void 0}:r}function yS(r,l,d){if(d&&d.cipher){r||Dn("Crypto");const p=r.getCipher(d.cipher,l);return{cipher:p.cipherParams,channelCipher:p.cipher}}return d??{}}function _S(r){let l=0;return r.name&&(l+=r.name.length),r.clientId&&(l+=r.clientId.length),r.extras&&(l+=JSON.stringify(r.extras).length),r.data&&(l+=be(r.data)),l}async function Vh(r,l,d,p){const f=gs(d),y=yS(l,r,p??null);try{await vo(f,y)}
995catch(E){g.logAction(r,g.LOG_ERROR,"Message.fromEncoded()",E.toString())}return f}async function bS(r,l,d,p){return Promise.all(d.map(function(f){return Vh(r,l,f,p)}))}async function vS(r,l){let d=r.data,p=r.encoding,f=l.channelCipher;p=p?p+"/":"",S.BufferUtils.isBuffer(d)||(d=S.BufferUtils.utf8Encode(String(d)),p=p+"utf-8/");const y=await f.encrypt(d);return r.data=y,r.encoding=p+"cipher+"+f.algorithm,r}async function bc(r,l){const d=r.data;if(!(typeof d=="string"||S.BufferUtils.isBuffer(d)||d===null||d===void 0))if(et(d)||Array.isArray(d))r.data=JSON.stringify(d),r.encoding=r.encoding?r.encoding+"/json":"json";else throw new P("Data type is unsupported",40013,400);return l!=null&&l.cipher?vS(r,l):r}async function qh(r,l){return Promise.all(r.map(d=>bc(d,l)))}var SS=ze;async function vo(r,l){const d=mS(l);let p=r.data;const f=r.encoding;if(f){const y=f.split("/");let E,x=y.length,G=r.data,L="";try{for(;(E=x)>0;){const z=y[--x].match(/([-\w]+)(\+([\w-]+))?/);if(!z)break;switch(L=z[1],L){case"base64":G=S.BufferUtils.base64Decode(String(G)),E==y.length&&(p=G);continue;case"utf-8":G=S.BufferUtils.utf8Decode(G);continue;case"json":G=JSON.parse(G);continue;case"cipher":if(d.channelOptions!=null&&d.channelOptions.cipher&&d.channelOptions.channelCipher){const q=z[3],le=d.channelOptions.channelCipher;if(q!=le.algorithm)throw new Error("Unable to decrypt message with given cipher; incompatible cipher params");G=await le.decrypt(G);continue}else throw new Error("Unable to decrypt message; not an encrypted channel");case"vcdiff":if(!d.plugins||!d.plugins.vcdiff)throw new P("Missing Vcdiff decoder (https://github.com/ably-forks/vcdiff-decoder)",40019,400);if(typeof Uint8Array>"u")throw new P("Delta decoding not supported on this browser (need ArrayBuffer & Uint8Array)",40020,400);try{let q=d.baseEncodedPreviousPayload;typeof q=="string"&&(q=S.BufferUtils.utf8Encode(q));const le=S.BufferUtils.toBuffer(q);G=S.BufferUtils.toBuffer(G),G=S.BufferUtils.arrayBufferViewToBuffer(d.plugins.vcdiff.decode(G,le)),p=G}catch(q){throw new P("Vcdiff delta decode failed with "+q,40018,400)}continue;default:throw new Error("Unknown encoding")}}}catch(z){const q=z;throw new P("Error processing the "+L+" encoding, decoder returned ‘"+q.message+"’",q.code||40013,400)}finally{r.encoding=E<=0?null:y.slice(0,E).join("/"),r.data=G}}d.baseEncodedPreviousPayload=p}async function ES(r,l,d,p,f){f&&(r=ke(r,p,f));for(let y=0;y<r.length;y++){const E=r[y]=gs(r[y]);try{await vo(E,l)}catch(x){g.logAction(d,g.LOG_ERROR,"Message.fromResponseBody()",x.toString())}}return r}function gs(r){return Object.assign(new jh,r)}function vc(r){const l=r.length,d=new Array(l);for(let p=0;p<l;p++)d[p]=gs(r[p]);return d}function Sc(r){let l,d=0;for(let p=0;p<r.length;p++)l=r[p],d+=l.size||(l.size=_S(l));return d}var jh=class{toJSON(){let r=this.encoding,l=this.data;return l&&S.BufferUtils.isBuffer(l)&&(arguments.length>0?(r=r?r+"/base64":"base64",l=S.BufferUtils.base64Encode(l)):l=S.BufferUtils.toBuffer(l)),{name:this.name,id:this.id,clientId:this.clientId,connectionId:this.connectionId,connectionKey:this.connectionKey,extras:this.extras,encoding:r,data:l}}toString(){let r="[Message";return this.name&&(r+="; name="+this.name),this.id&&(r+="; id="+this.id),this.timestamp&&(r+="; timestamp="+this.timestamp),this.clientId&&(r+="; clientId="+this.clientId),this.connectionId&&(r+="; connectionId="+this.connectionId),this.encoding&&(r+="; encoding="+this.encoding),this.extras&&(r+="; extras ="+JSON.stringify(this.extras)),this.data&&(typeof this.data=="string"?r+="; data="+this.data:S.BufferUtils.isBuffer(this.data)?r+="; data (buffer)="+S.BufferUtils.base64Encode(this.data):r+="; data (json)="+JSON.stringify(this.data)),this.extras&&(r+="; extras="+JSON.stringify(this.extras)),r+="]",r}},Kh=jh,Yh=["absent","present","enter","leave","update"];function wS(r){return Yh.indexOf(r)}async function Xh(r,l,d){const p=On(l,!0);try{await Ec(p,d??{})}catch(f){g.logAction(r,g.LOG_ERROR,"PresenceMessage.fromEncoded()",f.toString())}return p}async function TS(r,l,d){return Promise.all(l.map(function(p){return Xh(r,p,d)}))}function On(r,l){return l&&(r.action=Yh[r.action]),Object.assign(new wc,r)}var Ec=vo;async function Jh(r,l,d,p,f){const y=[];f&&(r=ke(r,p,f));for(let E=0;E<r.length;E++){const x=y[E]=On(r[E],!0);try{await Ec(x,l)}catch(G){g.logAction(d,g.LOG_ERROR,"PresenceMessage.fromResponseBody()",G.toString())}}return y}function Qh(r){const l=r.length,d=new Array(l);for(let p=0;p<l;p++)d[p]=On(r[p]);return d}function Zh(r){return r instanceof wc?r:On({data:r})}var wc=class{isSynthesized(){return!this.id||!this.connectionId?!0:this.id.substring(this.connectionId.length,0)!==this.connectionId}parseId(){if(!this.id)throw new Error("parseId(): Presence message does not contain an id");const r=this.id.split(":");return{connectionId:r[0],msgSerial:parseInt(r[1],10),index:parseInt(r[2],10)}}toJSON(){let r=this.data,l=this.encoding;return r&&S.BufferUtils.isBuffer(r)&&(arguments.length>0?(l=l?l+"/base64":"base64",r=S.BufferUtils.base64Encode(r)):r=S.BufferUtils.toBuffer(r)),{id:this.id,clientId:this.clientId,action:wS(this.action),data:r,encoding:l,extras:this.extras}}toString(){let r="[PresenceMessage";return r+="; action="+this.action,this.id&&(r+=";
995 id="+this.id),this.timestamp&&(r+="; timestamp="+this.timestamp),this.clientId&&(r+="; clientId="+this.clientId),this.connectionId&&(r+="; connectionId="+this.connectionId),this.encoding&&(r+="; encoding="+this.encoding),this.data&&(typeof this.data=="string"?r+="; data="+this.data:S.BufferUtils.isBuffer(this.data)?r+="; data (buffer)="+S.BufferUtils.base64Encode(this.data):r+="; data (json)="+JSON.stringify(this.data)),this.extras&&(r+="; extras="+JSON.stringify(this.extras)),r+="]",r}},CS=wc,AS=class{constructor(r){this.channel=r}get logger(){return this.channel.logger}async get(r){g.logAction(this.logger,g.LOG_MICRO,"RestPresence.get()","channel = "+this.channel.name);const l=this.channel.client,d=l.options.useBinaryProtocol?"msgpack":"json",p=this.channel.client.http.supportsLinkHeaders?void 0:d,f=Te.defaultGetHeaders(l.options,{format:d});te(f,l.options.headers);const y=this.channel.channelOptions;return new fs(l,this.channel.client.rest.presenceMixin.basePath(this),f,p,async(E,x,G)=>await Jh(E,y,this.logger,l._MsgPack,G?void 0:d)).get(r)}async history(r){return g.logAction(this.logger,g.LOG_MICRO,"RestPresence.history()","channel = "+this.channel.name),this.channel.client.rest.presenceMixin.history(this,r)}},RS=AS,xS=9;function IS(r){return r.every(function(l){return!l.id})}var OS=class{constructor(r,l,d){var p;g.logAction(r.logger,g.LOG_MINOR,"RestChannel()","started; name = "+l),this.name=l,this.client=r,this.presence=new RS(this),this.channelOptions=Zr((p=r._Crypto)!=null?p:null,this.logger,d)}get logger(){return this.client.logger}setOptions(r){var l;this.channelOptions=Zr((l=this.client._Crypto)!=null?l:null,this.logger,r)}async history(r){return g.logAction(this.logger,g.LOG_MICRO,"RestChannel.history()","channel = "+this.name),this.client.rest.channelMixin.history(this,r)}async publish(...r){const l=r[0],d=r[1];let p,f;if(typeof l=="string"||l===null)p=[gs({name:l,data:d})],f=r[2];else if(et(l))p=[gs(l)],f=r[1];else if(Array.isArray(l))p=vc(l),f=r[1];else throw new P("The single-argument form of publish() expects a message object or an array of message objects",40013,400);f||(f={});const y=this.client,E=y.options,x=E.useBinaryProtocol?"msgpack":"json",G=y.options.idempotentRestPublishing,L=Te.defaultPostHeaders(y.options,{format:x});if(te(L,E.headers),G&&IS(p)){const le=await Ee(xS);p.forEach(function(J,ge){J.id=le+":"+ge.toString()})}await qh(p,this.channelOptions);const z=Sc(p),q=E.maxMessageSize;if(z>q)throw new P("Maximum size of messages that can be published at once exceeded ( was "+z+" bytes; limit is "+q+" bytes)",40009,400);await this._publish(SS(p,y._MsgPack,x),L,f)}async _publish(r,l,d){await Tt.post(this.client,this.client.rest.channelMixin.basePath(this)+"/messages",r,l,d,null,!0)}async status(){return this.client.rest.channelMixin.status(this)}},kS=OS,MS=class x0{constructor(l){this.entries=l&&l.entries||void 0,this.schema=l&&l.schema||void 0,this.appId=l&&l.appId||void 0,this.inProgress=l&&l.inProgress||void 0,this.unit=l&&l.unit||void 0,this.intervalId=l&&l.intervalId||void 0}static fromValues(l){return new x0(l)}},PS=MS,ef=class{static basePath(r){return"/channels/"+encodeURIComponent(r.name)}static history(r,l){const d=r.client,p=d.options.useBinaryProtocol?"msgpack":"json",f=r.client.http.supportsLinkHeaders?void 0:p,y=Te.defaultGetHeaders(d.options,{format:p});te(y,d.options.headers);const E=r.channelOptions;return new fs(d,this.basePath(r)+"/messages",y,f,async function(x,G,L){return await ES(x,E,r.logger,d._MsgPack,L?void 0:p)}).get(l)}static async status(r){const l=r.client.options.useBinaryProtocol?"msgpack":"json",d=Te.defaultPostHeaders(r.client.options,{format:l});return(await Tt.get(r.client,this.basePath(r),d,{},l,!0)).body}},NS=class{static basePath(r){return ef.basePath(r.channel)+"/presence"}static async history(r,l){const d=r.channel.client,p=d.options.useBinaryProtocol?"msgpack":"json",f=r.channel.client.http.supportsLinkHeaders?void 0:p,y=Te.defaultGetHeaders(d.options,{format:p});te(y,d.options.headers);const E=r.channel.channelOptions;return new fs(d,this.basePath(r)+"/history",y,f,async function(x,G,L){return await Jh(x,E,r.logger,d._MsgPack,L?void 0:p)}).get(l)}},tf=class{constructor(r){this.channelMixin=ef,this.presenceMixin=NS,this.client=r,this.channels=new LS(this.client),this.push=new gS(this.client)}async stats(r){const l=Te.defaultGetHeaders(this.client.options),d=this.client.options.useBinaryProtocol?"msgpack":"json",p=this.client.http.supportsLinkHeaders?void 0:d;return te(l,this.client.options.headers),new fs(this.client,"/stats",l,p,function(f,y,E){const x=E?f:JSON.parse(f);for(let G=0;G<x.length;G++)x[G]=PS.fromValues(x[G]);return x}).get(r)}async time(r){const l=Te.defaultGetHeaders(this.client.options);this.client.options.headers&&te(l,this.client.options.headers);const d=x=>this.client.baseUri(x)+"/time";let{error:p,body:f,unpacked:y}=await this.client.http.do(at.Get,d,l,null,r);if(p)throw p;y||(f=JSON.parse(f));const E=f[0];if(!E)throw new P("Internal error (unexpected result type from GET /time)",5e4,500);return this.client.serverTimeOffset=E-Date.now(),E}async request(r,l,d,p,f,y){var E;const[x,G,L]=this.client.options.useBinaryProtocol?(this.client._MsgPack||Dn("MsgPack"),[this.client._MsgPack.encode,this.client._MsgPack.decode,"msgpack"]):[JSON.stringify,JSON.parse,"json"],z=this.client.http.supportsLinkHeaders?void 0:L;p=p||{};const q=r.toLowerCase(),le=q=="get"?Te.defaultGetHeaders(this.client.options,{format:L,protocolVersion:d}):Te.defaultPostHeaders(this.client.options,{format:L,protocolVersion:d});typeof f!="string"&&(f=(E=x(f))!=null?E:null),te(le,this.client.options.headers),y&&te(le,y);const J=new fs(this.client,l,le,z,async function(ge,me,Ce){return Fe(Ce?ge:G(ge))},!0);if(!S.Http.methods.includes(q))throw new P("Unsupported method "+q,40500,405);return S.Http.methodsWithBody.includes(q)?J[q](p,f):J[q](p)}async batchPublish(r){let l,d;Array.isArray(r)?(l=r,d=!1):(l=[r],d=!0);const p=this.client.options.useBinaryProtocol?"msgpack":"json",f=Te.defaultPostHeaders(this.client.options,{format:p});this.client.options.headers&&te(f,this.client.options.headers);const y=ze(l,this.client._MsgPack,p),E=await Tt.post(this.client,"/messages",y,f,{},null,!0),x=E.unpacked?E.body:ke(E.body,this.client._MsgPack,p);return d?x[0]:x}async batchPresence(r){const l=this.client.options.useBinaryProtocol?"msgpack":"json",d=Te.defaultPostHeaders(this.client.options,{format:l});this.client.options.headers&&te(d,this.client.options.headers);const p=r.join(","),f=await Tt.get(this.client,"/presence",d,{channels:p},null,!0);return f.unpacked?f.body:ke(f.body,this.client._MsgPack,l)}async revokeTokens(r,l){if(Fh(this.client.options))throw new P("Cannot revoke tokens when using token auth",40162,401);const d=this.client.options.keyName;let p=l??{};const f=v({targets:r.map(L=>`${L.type}:${L.value}`)},p),y=this.client.options.useBinaryProtocol?"msgpack":"json",E=Te.defaultPostHeaders(this.client.options,{format:y});this.client.options.headers&&te(E,this.client.options.headers);
995const x=ze(f,this.client._MsgPack,y),G=await Tt.post(this.client,`/keys/${d}/revokeTokens`,x,E,{},null,!0);return G.unpacked?G.body:ke(G.body,this.client._MsgPack,y)}},LS=class{constructor(r){this.client=r,this.all=Object.create(null)}get(r,l){r=String(r);let d=this.all[r];return d?l&&d.setOptions(l):this.all[r]=d=new kS(this.client,r,l),d}release(r){delete this.all[String(r)]}},DS=class extends Hh{constructor(r){super(Te.objectifyOptions(r,!1,"BaseRest",g.defaultLogger,{Rest:tf}))}},nf={Rest:tf},sf=class extends Kh{static async fromEncoded(r,l){return Vh(g.defaultLogger,S.Crypto,r,l)}static async fromEncodedArray(r,l){return bS(g.defaultLogger,S.Crypto,r,l)}static fromValues(r){return Object.assign(new Kh,r)}static async encode(r,l){return bc(r,l)}static async decode(r,l){return vo(r,l)}},of=class extends CS{static async fromEncoded(r,l){return Xh(g.defaultLogger,r,l)}static async fromEncodedArray(r,l){return TS(g.defaultLogger,r,l)}static fromValues(r,l){return On(r,l)}},vi=class Ka extends DS{constructor(l){var d,p;if(!Ka._MsgPack)throw new Error("Expected DefaultRest._MsgPack to have been set");super(Te.objectifyOptions(l,!0,"Rest",g.defaultLogger,w(v({},nf),{Crypto:(d=Ka.Crypto)!=null?d:void 0,MsgPack:(p=Ka._MsgPack)!=null?p:void 0})))}static get Crypto(){if(this._Crypto===null)throw new Error("Encryption not enabled; use ably.encryption.js instead");return this._Crypto}static set Crypto(l){this._Crypto=l}};vi._Crypto=null,vi.Message=sf,vi.PresenceMessage=of,vi._MsgPack=null,vi._Http=yc;var Tc=vi;function GS(r,l,d,p){try{d.apply(l,p)}catch(f){g.logAction(r,g.LOG_ERROR,"EventEmitter.emit()","Unexpected listener exception: "+f+"; stack = "+(f&&f.stack))}}function Cc(r,l,d){let p,f,y;for(let E=0;E<r.length;E++)if(p=r[E],d&&(p=p[d]),Array.isArray(p)){for(;(f=p.indexOf(l))!==-1;)p.splice(f,1);d&&p.length===0&&delete r[E][d]}else if(et(p))for(y in p)Object.prototype.hasOwnProperty.call(p,y)&&Array.isArray(p[y])&&Cc([p],l,y)}var US=class{constructor(r){this.logger=r,this.any=[],this.events=Object.create(null),this.anyOnce=[],this.eventsOnce=Object.create(null)}on(...r){if(r.length===1){const l=r[0];if(typeof l=="function")this.any.push(l);else throw new Error("EventListener.on(): Invalid arguments: "+S.Config.inspect(r))}if(r.length===2){const[l,d]=r;if(typeof d!="function")throw new Error("EventListener.on(): Invalid arguments: "+S.Config.inspect(r));if($e(l))this.any.push(d);else if(Array.isArray(l))l.forEach(p=>{this.on(p,d)});else{if(typeof l!="string")throw new Error("EventListener.on(): Invalid arguments: "+S.Config.inspect(r));(this.events[l]||(this.events[l]=[])).push(d)}}}off(...r){if(r.length==0||$e(r[0])&&$e(r[1])){this.any=[],this.events=Object.create(null),this.anyOnce=[],this.eventsOnce=Object.create(null);return}const[l,d]=r;let p=null,f=null;if(r.length===1||!d)typeof l=="function"?p=l:f=l;else{if(typeof d!="function")throw new Error("EventEmitter.off(): invalid arguments:"+S.Config.inspect(r));[f,p]=[l,d]}if(p&&$e(f)){Cc([this.any,this.events,this.anyOnce,this.eventsOnce],p);return}if(Array.isArray(f)){f.forEach(y=>{this.off(y,p)});return}if(typeof f!="string")throw new Error("EventEmitter.off(): invalid arguments:"+S.Config.inspect(r));p?Cc([this.events,this.eventsOnce],p,f):(delete this.events[f],delete this.eventsOnce[f])}listeners(r){if(r){const l=this.events[r]||[];return this.eventsOnce[r]&&Array.prototype.push.apply(l,this.eventsOnce[r]),l.length?l:null}return this.any.length?this.any:null}emit(r,...l){const d={event:r},p=[];this.anyOnce.length&&(Array.prototype.push.apply(p,this.anyOnce),this.anyOnce=[]),this.any.length&&Array.prototype.push.apply(p,this.any);const f=this.eventsOnce[r];f&&(Array.prototype.push.apply(p,f),delete this.eventsOnce[r]);const y=this.events[r];y&&Array.prototype.push.apply(p,y),p.forEach(E=>{GS(this.logger,d,E,l)})}once(...r){const l=r.length;if(l===0||l===1&&typeof r[0]!="function"){const f=r[0];return new Promise(y=>{this.once(f,y)})}const[d,p]=r;if(r.length===1&&typeof d=="function")this.anyOnce.push(d);else if($e(d)){if(typeof p!="function")throw new Error("EventEmitter.once(): Invalid arguments:"+S.Config.inspect(r));this.anyOnce.push(p)}else if(Array.isArray(d)){const f=this,y=function(){const E=Array.prototype.slice.call(arguments);
995if(d.forEach(function(x){f.off(x,y)}),typeof p!="function")throw new Error("EventEmitter.once(): Invalid arguments:"+S.Config.inspect(r));p.apply(this,E)};d.forEach(function(E){f.on(E,y)})}else{if(typeof d!="string")throw new Error("EventEmitter.once(): Invalid arguments:"+S.Config.inspect(r));const f=this.eventsOnce[d]||(this.eventsOnce[d]=[]);if(p){if(typeof p!="function")throw new Error("EventEmitter.once(): Invalid arguments:"+S.Config.inspect(r));f.push(p)}}}async whenState(r,l){if(typeof r!="string"||typeof l!="string")throw new Error("whenState requires a valid state String argument");return r===l?null:this.once(r)}},Bt=US,De={HEARTBEAT:0,ACK:1,NACK:2,CONNECT:3,CONNECTED:4,DISCONNECT:5,DISCONNECTED:6,CLOSE:7,CLOSED:8,ERROR:9,ATTACH:10,ATTACHED:11,DETACH:12,DETACHED:13,PRESENCE:14,MESSAGE:15,SYNC:16,AUTH:17,ACTIVATE:18},rf=[];Object.keys(De).forEach(function(r){rf[De[r]]=r});var Yn={HAS_PRESENCE:1,HAS_BACKLOG:2,RESUMED:4,TRANSIENT:16,ATTACH_RESUME:32,PRESENCE:65536,PUBLISH:1<<17,SUBSCRIBE:1<<18,PRESENCE_SUBSCRIBE:1<<19},FS=Object.keys(Yn);Yn.MODE_ALL=Yn.PRESENCE|Yn.PUBLISH|Yn.SUBSCRIBE|Yn.PRESENCE_SUBSCRIBE;function af(r){const l=[];if(r)for(let d=0;d<r.length;d++)l.push(r[d].toString());return"[ "+l.join(", ")+" ]"}var lf=["PRESENCE","PUBLISH","SUBSCRIBE","PRESENCE_SUBSCRIBE"],BS=ze;function HS(r,l,d,p){const f=ke(r,l,p);return Ac(f,d)}function Ac(r,l){const d=r.error;d&&(r.error=P.fromValues(d));const p=r.messages;if(p)for(let y=0;y<p.length;y++)p[y]=gs(p[y]);const f=l?r.presence:void 0;if(l&&f&&l)for(let y=0;y<f.length;y++)f[y]=l.presenceMessageFromValues(f[y],!0);return Object.assign(new xc,w(v({},r),{presence:f}))}function $S(r){return Ac(r,{presenceMessageFromValues:On,presenceMessagesFromValuesArray:Qh})}function Gn(r){return Object.assign(new xc,r)}function Rc(r,l){let d="[ProtocolMessage";r.action!==void 0&&(d+="; action="+rf[r.action]||r.action);const p=["id","channel","channelSerial","connectionId","count","msgSerial","timestamp"];let f;for(let y=0;y<p.length;y++)f=p[y],r[f]!==void 0&&(d+="; "+f+"="+r[f]);if(r.messages&&(d+="; messages="+af(vc(r.messages))),r.presence&&l&&(d+="; presence="+af(l.presenceMessagesFromValuesArray(r.presence))),r.error&&(d+="; error="+P.fromValues(r.error).toString()),r.auth&&r.auth.accessToken&&(d+="; token="+r.auth.accessToken),r.flags&&(d+="; flags="+FS.filter(r.hasFlag).join(",")),r.params){let y="";V(r.params,function(E){y.length>0&&(y+="; "),y+=E+"="+r.params[E]}),y.length>0&&(d+="; params=["+y+"]")}return d+="]",d}var xc=class{constructor(){this.hasFlag=r=>(this.flags&Yn[r])>0}setFlag(r){return this.flags=this.flags|Yn[r]}getMode(){return this.flags&&this.flags&Yn.MODE_ALL}encodeModesToFlags(r){r.forEach(l=>this.setFlag(l))}decodeModesFromFlags(){const r=[];return lf.forEach(l=>{this.hasFlag(l)&&r.push(l)}),r.length>0?r:void 0}},cf=xc,WS=class extends Bt{constructor(r){super(r),this.messages=[]}count(){return this.messages.length}push(r){this.messages.push(r)}shift(){return this.messages.shift()}last(){return this.messages[this.messages.length-1]}copyAll(){return this.messages.slice()}append(r){this.messages.push.apply(this.messages,r)}prepend(r){this.messages.unshift.apply(this.messages,r)}completeMessages(r,l,d){g.logAction(this.logger,g.LOG_MICRO,"MessageQueue.completeMessages()","serial = "+r+"; count = "+l),d=d||null;const p=this.messages;if(p.length===0)throw new Error("MessageQueue.completeMessages(): completeMessages called on any empty MessageQueue");const f=p[0];if(f){const y=f.message.msgSerial,E=r+l;if(E>y){const x=p.splice(0,E-y);for(const G of x)G.callback(d)}p.length==0&&this.emit("idle")}}completeAllMessages(r){this.completeMessages(0,Number.MAX_SAFE_INTEGER||Number.MAX_VALUE,r)}resetSendAttempted(){for(let r of this.messages)r.sendAttempted=!1}clear(){g.logAction(this.logger,g.LOG_MICRO,"MessageQueue.clear()","clearing "+this.messages.length+" messages"),this.messages=[],this.emit("idle")}},df=WS,uf=class{constructor(r,l){this.message=r,this.callback=l,this.merged=!1;const d=r.action;this.sendAttempted=!1,this.ackRequired=d==De.MESSAGE||d==De.PRESENCE}},zS=class extends Bt{constructor(r){super(r.logger),this.transport=r,this.messageQueue=new df(this.logger),r.on("ack",(l,d)=>{this.onAck(l,d)}),r.on("nack",(l,d,p)=>{this.onNack(l,d,p)})}onAck(r,l){g.logAction(this.logger,g.LOG_MICRO,"Protocol.onAck()","serial = "+r+"; count = "+l),this.messageQueue.completeMessages(r,l)}onNack(r,l,d){g.logAction(this.logger,g.LOG_ERROR,"Protocol.onNack()","serial = "+r+"; count = "+l+"; err = "+j(d)),d||(d=new P("Unable to send message; channel not responding",50001,500)),this.messageQueue.completeMessages(r,l,d)}onceIdle(r){const l=this.messageQueue;if(l.count()===0){r();return}l.once("idle",r)}send(r){r.ackRequired&&this.messageQueue.push(r),this.logger.shouldLog(g.LOG_MICRO)&&g.logActionNoStrip(this.logger,g.LOG_MICRO,"Protocol.send()","sending msg; "+Rc(r.message,this.transport.connectionManager.realtime._RealtimePresence)),r.sendAttempted=!0,this.transport.send(r.message)}getTransport(){return this.transport}getPendingMessages(){return this.messageQueue.copyAll()}clearPendingMessages(){return this.messageQueue.clear()}finish(){const r=this.transport;this.onceIdle(function(){r.disconnect()})}},VS=zS,qS=class{constructor(r,l,d,p){this.previous=r,this.current=l,d&&(this.retryIn=d),p&&(this.reason=p)}},sa=qS,ms={DISCONNECTED:80003,SUSPENDED:80002,FAILED:8e4,CLOSING:80017,CLOSED:80017,UNKNOWN_CONNECTION_ERR:50002,UNKNOWN_CHANNEL_ERR:50001},jS={disconnected:()=>P.fromValues({statusCode:400,code:ms.DISCONNECTED,message:"Connection to server temporarily unavailable"}),suspended:()=>P.fromValues({statusCode:400,code:ms.SUSPENDED,message:"Connection to server unavailable"}),failed:()=>P.fromValues({statusCode:400,code:ms.FAILED,message:"Connection failed or disconnected by server"}),closing:()=>P.fromValues({statusCode:400,code:ms.CLOSING,message:"Connection closing"}),closed:()=>P.fromValues({statusCode:400,code:ms.CLOSED,message:"Connection closed"}),unknownConnectionErr:()=>P.fromValues({statusCode:500,code:ms.UNKNOWN_CONNECTION_ERR,message:"Internal 
995connection error"}),unknownChannelErr:()=>P.fromValues({statusCode:500,code:ms.UNKNOWN_CONNECTION_ERR,message:"Internal channel error"})};function KS(r){return!r.statusCode||!r.code||r.statusCode>=500?!0:Object.values(ms).includes(r.code)}var ys=jS,YS=Gn({action:De.CLOSE}),XS=Gn({action:De.DISCONNECT}),JS=class extends Bt{constructor(r,l,d,p){super(r.logger),p&&(d.format=void 0,d.heartbeats=!0),this.connectionManager=r,this.auth=l,this.params=d,this.timeouts=d.options.timeouts,this.format=d.format,this.isConnected=!1,this.isFinished=!1,this.isDisposed=!1,this.maxIdleInterval=null,this.idleTimer=null,this.lastActivity=null}connect(){}close(){this.isConnected&&this.requestClose(),this.finish("closed",ys.closed())}disconnect(r){this.isConnected&&this.requestDisconnect(),this.finish("disconnected",r||ys.disconnected())}fail(r){this.isConnected&&this.requestDisconnect(),this.finish("failed",r||ys.failed())}finish(r,l){var d;this.isFinished||(this.isFinished=!0,this.isConnected=!1,this.maxIdleInterval=null,clearTimeout((d=this.idleTimer)!=null?d:void 0),this.idleTimer=null,this.emit(r,l),this.dispose())}onProtocolMessage(r){switch(this.logger.shouldLog(g.LOG_MICRO)&&g.logActionNoStrip(this.logger,g.LOG_MICRO,"Transport.onProtocolMessage()","received on "+this.shortName+": "+Rc(r,this.connectionManager.realtime._RealtimePresence)+"; connectionId = "+this.connectionManager.connectionId),this.onActivity(),r.action){case De.HEARTBEAT:g.logActionNoStrip(this.logger,g.LOG_MICRO,"Transport.onProtocolMessage()",this.shortName+" heartbeat; connectionId = "+this.connectionManager.connectionId),this.emit("heartbeat",r.id);break;case De.CONNECTED:this.onConnect(r),this.emit("connected",r.error,r.connectionId,r.connectionDetails,r);break;case De.CLOSED:this.onClose(r);break;case De.DISCONNECTED:this.onDisconnect(r);break;case De.ACK:this.emit("ack",r.msgSerial,r.count);break;case De.NACK:this.emit("nack",r.msgSerial,r.count,r.error);break;case De.SYNC:this.connectionManager.onChannelMessage(r,this);break;case De.ACTIVATE:break;case De.AUTH:Me(this.auth.authorize(),l=>{l&&g.logAction(this.logger,g.LOG_ERROR,"Transport.onProtocolMessage()","Ably requested re-authentication, but unable to obtain a new token: "+j(l))});break;case De.ERROR:if(g.logAction(this.logger,g.LOG_MINOR,"Transport.onProtocolMessage()","received error action; connectionId = "+this.connectionManager.connectionId+"; err = "+S.Config.inspect(r.error)+(r.channel?", channel: "+r.channel:"")),r.channel===void 0){this.onFatalError(r);break}this.connectionManager.onChannelMessage(r,this);break;default:this.connectionManager.onChannelMessage(r,this)}}onConnect(r){if(this.isConnected=!0,!r.connectionDetails)throw new Error("Transport.onConnect(): Connect message recieved without connectionDetails");const l=r.connectionDetails.maxIdleInterval;l&&(this.maxIdleInterval=l+this.timeouts.realtimeRequestTimeout,this.onActivity())}onDisconnect(r){const l=r&&r.error;g.logAction(this.logger,g.LOG_MINOR,"Transport.onDisconnect()","err = "+j(l)),this.finish("disconnected",l)}onFatalError(r){const l=r&&r.error;g.logAction(this.logger,g.LOG_MINOR,"Transport.onFatalError()","err = "+j(l)),this.finish("failed",l)}onClose(r){const l=r&&r.error;g.logAction(this.logger,g.LOG_MINOR,"Transport.onClose()","err = "+j(l)),this.finish("closed",l)}requestClose(){g.logAction(this.logger,g.LOG_MINOR,"Transport.requestClose()",""),this.send(YS)}requestDisconnect(){g.logAction(this.logger,g.LOG_MINOR,"Transport.requestDisconnect()",""),this.send(XS)}ping(r){const l={action:De.HEARTBEAT};r&&(l.id=r),this.send(Gn(l))}
995dispose(){g.logAction(this.logger,g.LOG_MINOR,"Transport.dispose()",""),this.isDisposed=!0,this.off()}onActivity(){this.maxIdleInterval&&(this.lastActivity=this.connectionManager.lastActivity=Date.now(),this.setIdleTimer(this.maxIdleInterval+100))}setIdleTimer(r){this.idleTimer||(this.idleTimer=setTimeout(()=>{this.onIdleTimerExpire()},r))}onIdleTimerExpire(){if(!this.lastActivity||!this.maxIdleInterval)throw new Error("Transport.onIdleTimerExpire(): lastActivity/maxIdleInterval not set");this.idleTimer=null;const r=Date.now()-this.lastActivity,l=this.maxIdleInterval-r;if(l<=0){const d="No activity seen from realtime in "+r+"ms; assuming connection has dropped";g.logAction(this.logger,g.LOG_ERROR,"Transport.onIdleTimerExpire()",d),this.disconnect(new P(d,80003,408))}else this.setIdleTimer(l+100)}static tryConnect(r,l,d,p,f){const y=new r(l,d,p);let E;const x=function(L){clearTimeout(E),f({event:this.event,error:L})},G=l.options.timeouts.realtimeRequestTimeout;return E=setTimeout(()=>{y.off(["preconnect","disconnected","failed"]),y.dispose(),x.call({event:"disconnected"},new P("Timeout waiting for transport to indicate itself viable",5e4,500))},G),y.on(["failed","disconnected"],x),y.on("preconnect",function(){g.logAction(l.logger,g.LOG_MINOR,"Transport.tryConnect()","viable transport "+y),clearTimeout(E),y.off(["failed","disconnected"],x),f(null,y)}),y.connect(),y}static isAvailable(){throw new P("isAvailable not implemented for transport",5e4,500)}},Si=JS,Kt;(r=>{r.WebSocket="web_socket",r.Comet="comet",r.XhrPolling="xhr_polling"})(Kt||(Kt={}));var QS=typeof dn<"u"?dn:typeof window<"u"?window:self,Ic=()=>{var r;return typeof S.WebStorage<"u"&&((r=S.WebStorage)==null?void 0:r.localSupported)},So=()=>{var r;return typeof S.WebStorage<"u"&&((r=S.WebStorage)==null?void 0:r.sessionSupported)},pf=function(){},Oc="ably-transport-preference";function ZS(r,l,d){let p;if(r.channel!==l.channel||(p=r.action)!==De.PRESENCE&&p!==De.MESSAGE||p!==l.action)return!1;const f=p===De.PRESENCE?"presence":"messages",y=r[f].concat(l[f]);return Sc(y)>d||!X(y,"clientId")||!y.every(function(x){return!x.id})?!1:(r[f]=y,!0)}function kc(r){try{return JSON.parse(r)}catch{return null}}var eE=class{constructor(r,l,d,p){this.options=r,this.host=l,this.mode=d,this.connectionKey=p,this.format=r.useBinaryProtocol?"msgpack":"json"}getConnectParams(r){const l=r?de(r):{},d=this.options;switch(this.mode){case"resume":l.resume=this.connectionKey;break;case"recover":{const p=kc(d.recover);p&&(l.recover=p.connectionKey);break}}return d.clientId!==void 0&&(l.clientId=d.clientId),d.echoMessages===!1&&(l.echo="false"),this.format!==void 0&&(l.format=this.format),this.stream!==void 0&&(l.stream=this.stream),this.heartbeats!==void 0&&(l.heartbeats=this.heartbeats),l.v=Te.protocolVersion,l.agent=hc(this.options),d.transportParams!==void 0&&te(l,d.transportParams),l}toString(){let r="[mode="+this.mode;return this.host&&(r+=",host="+this.host),this.connectionKey&&(r+=",connectionKey="+this.connectionKey),this.format&&(r+=",format="+this.format),r+="]",r}},tE=class I0 extends Bt{constructor(l,d){super(l.logger),this.supportedTransports={},this.disconnectedRetryCount=0,this.pendingChannelMessagesState={isProcessing:!1,queue:[]},this.realtime=l,this.initTransports(),this.options=d;const p=d.timeouts,f=p.webSocketConnectTimeout+p.realtimeRequestTimeout;if(this.states={initialized:{state:"initialized",terminal:!1,queueEvents:!0,sendEvents:!1,failState:"disconnected"},connecting:{state:"connecting",terminal:!1,queueEvents:!0,sendEvents:!1,retryDelay:f,failState:"disconnected"},connected:{state:"connected",terminal:!1,queueEvents:!1,sendEvents:!0,failState:"disconnected"},disconnected:{state:"disconnected",terminal:!1,queueEvents:!0,sendEvents:!1,retryDelay:p.disconnectedRetryTimeout,failState:"disconnected"},suspended:{state:"suspended",terminal:!1,queueEvents:!1,sendEvents:!1,retryDelay:p.suspendedRetryTimeout,failState:"suspended"},closing:{state:"closing",terminal:!1,queueEvents:!1,sendEvents:!1,retryDelay:p.realtimeRequestTimeout,failState:"closed"},closed:{state:"closed",terminal:!0,queueEvents:!1,sendEvents:!1,failState:"closed"},failed:{state:"failed",terminal:!0,queueEvents:!1,sendEvents:!1,failState:"failed"}},this.state=this.states.initialized,this.errorReason=null,this.queuedMessages=new df(this.logger),this.msgSerial=0,this.connectionDetail
995s=void 0,this.connectionId=void 0,this.connectionKey=void 0,this.connectionStateTtl=p.connectionStateTtl,this.maxIdleInterval=null,this.transports=bn(d.transports||Te.defaultTransports,this.supportedTransports),this.transportPreference=null,this.transports.includes(Kt.WebSocket)&&(this.webSocketTransportAvailable=!0),this.transports.includes(Kt.XhrPolling)?this.baseTransport=Kt.XhrPolling:this.transports.includes(Kt.Comet)&&(this.baseTransport=Kt.Comet),this.httpHosts=Te.getHosts(d),this.wsHosts=Te.getHosts(d,!0),this.activeProtocol=null,this.host=null,this.lastAutoReconnectAttempt=null,this.lastActivity=null,this.forceFallbackHost=!1,this.connectCounter=0,this.wsCheckResult=null,this.webSocketSlowTimer=null,this.webSocketGiveUpTimer=null,this.abandonedWebSocket=!1,g.logAction(this.logger,g.LOG_MINOR,"Realtime.ConnectionManager()","started"),g.logAction(this.logger,g.LOG_MICRO,"Realtime.ConnectionManager()","requested transports = ["+(d.transports||Te.defaultTransports)+"]"),g.logAction(this.logger,g.LOG_MICRO,"Realtime.ConnectionManager()","available transports = ["+this.transports+"]"),g.logAction(this.logger,g.LOG_MICRO,"Realtime.ConnectionManager()","http hosts = ["+this.httpHosts+"]"),!this.transports.length){const E="no requested transports available";throw g.logAction(this.logger,g.LOG_ERROR,"realtime.ConnectionManager()",E),new Error(E)}const y=S.Config.addEventListener;y&&(So()&&typeof d.recover=="function"&&y("beforeunload",this.persistConnection.bind(this)),d.closeOnUnload===!0&&y("beforeunload",()=>{g.logAction(this.logger,g.LOG_MAJOR,"Realtime.ConnectionManager()","beforeunload event has triggered the connection to close as closeOnUnload is true"),this.requestState({state:"closing"})}),y("online",()=>{var E;this.state==this.states.disconnected||this.state==this.states.suspended?(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager caught browser ‘online’ event","reattempting connection"),this.requestState({state:"connecting"})):this.state==this.states.connecting&&((E=this.pendingTransport)==null||E.off(),this.disconnectAllTransports(),this.startConnect())}),y("offline",()=>{this.state==this.states.connected&&(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager caught browser ‘offline’ event","disconnecting active transport"),this.disconnectAllTransports())}))}static supportedTransports(l){const d={supportedTransports:{}};return this.initTransports(l,d),d.supportedTransports}static initTransports(l,d){const p=v(v({},S.Transports.bundledImplementations),l);[Kt.WebSocket,...S.Transports.order].forEach(f=>{const y=p[f];y&&y.isAvailable()&&(d.supportedTransports[f]=y)})}initTransports(){I0.initTransports(this.realtime._additionalTransportImplementations,this)}createTransportParams(l,d){return new eE(this.options,l,d,this.connectionKey)}getTransportParams(l){(p=>{if(this.connectionKey){p("resume");return}if(typeof this.options.recover=="string"){p("recover");return}const f=this.options.recover,y=this.getSessionRecoverData(),E=this.sessionRecoveryName();if(y&&typeof f=="function"){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.getTransportParams()","Calling clientOptions-provided recover function with last session data (recovery scope: "+E+")"),f(y,x=>{x?(this.options.recover=y.recoveryKey,p("recover")):p("clean")});return}p("clean")})(p=>{const f=this.createTransportParams(null,p);if(p==="recover"){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.getTransportParams()","Transport recovery mode = recover; recoveryKey = "+this.options.recover);const y=kc(this.options.recover);y&&(this.msgSerial=y.msgSerial)}else g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.getTransportParams()","Transport params = "+f.toString());l(f)})}tryATransport(l,d,p){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.tryATransport()","trying "+d),this.proposedTransport=Si.tryConnect(this.supportedTransports[d],this,this.realtime.auth,l,(f,y)=>{const E=this.state;if(E==this.states.closing||E==this.states.closed||E==this.states.failed){y&&(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.tryATransport()","connection "+E.state+" while we were attempting the transport; closing "+y),y.close()),p(!0);return}if(f){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.tryATransport()","transport "+d+" "+f.event+", err: "+f.error.toString()),Kn.isTokenErr(f.error)&&!(this.errorReason&&Kn.isTokenErr(this.errorReason))?(this.errorReason=f.error,Me(this.realtime.auth._forceNewToken(null,null),x=>{if(x){this.actOnErrorFromAuthorize(x);return}this.tryATransport(l,d,p)})):f.event==="failed"?(this.notifyState({state:"failed",error:f.error}),p(!0)):f.event==="disconnected"&&(KS(f.error)?p(!1):(this.notifyState({state:this.states.connecting.failState,error:f.error}),p(!0)));return}g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.tryATransport()","viable transport "+d+"; setting pending"),this.setTransportPending(y,l),p(null,y)})}setTransportPending(l,d){const p=d.mode;g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.setTransportPending()","transport = "+l+"; mode = "+p),this.pendingTransport=l,this.cancelWebSocketSlowTimer(),this.cancelWebSocketGiveUpTimer(),l.once("connected",(y,E,x)=>{this.activateTransport(y,l,E,x),p==="recover"&&this.options.recover&&(delete this.options.recover,this.unpersistConnection())});const f=this;l.on(["disconnected","closed","failed"],function(y){f.deactivateTransport(l,this.event,y)}
995),this.emit("transport.pending",l)}activateTransport(l,d,p,f){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.activateTransport()","transport = "+d),l&&g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.activateTransport()","error = "+l),p&&g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.activateTransport()","connectionId =  "+p),f&&g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.activateTransport()","connectionDetails =  "+JSON.stringify(f)),this.persistTransportPreference(d);const y=this.state,E=this.states.connected.state;if(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.activateTransport()","current state = "+y.state),y.state==this.states.closing.state||y.state==this.states.closed.state||y.state==this.states.failed.state)return g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.activateTransport()","Disconnecting transport and abandoning"),d.disconnect(),!1;if(delete this.pendingTransport,!d.isConnected)return g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.activateTransport()","Declining to activate transport "+d+" since it appears to no longer be connected"),!1;const x=this.activeProtocol;this.activeProtocol=new VS(d),this.host=d.params.host;const G=f.connectionKey;if(G&&this.connectionKey!=G&&this.setConnection(p,f,!!l),this.onConnectionDetailsUpdate(f,d),S.Config.nextTick(()=>{d.on("connected",(L,z,q)=>{this.onConnectionDetailsUpdate(q,d),this.emit("update",new sa(E,E,null,L))})}),y.state===this.states.connected.state?l&&(this.errorReason=this.realtime.connection.errorReason=l,this.emit("update",new sa(E,E,null,l))):(this.notifyState({state:"connected",error:l}),this.errorReason=this.realtime.connection.errorReason=l||null),this.emit("transport.active",d),x)if(x.messageQueue.count()>0&&g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.activateTransport()","Previous active protocol (for transport "+x.transport.shortName+", new one is "+d.shortName+") finishing with "+x.messageQueue.count()+" messages still pending"),x.transport===d){const L="Assumption violated: activating a transport that was also the transport for the previous active protocol; transport = "+d.shortName+"; stack = "+new Error().stack;g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.activateTransport()",L)}else x.finish();return!0}deactivateTransport(l,d,p){const f=this.activeProtocol,y=f&&f.getTransport()===l,E=l===this.pendingTransport,x=this.noTransportsScheduledForActivation();if(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.deactivateTransport()","transport = "+l),g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.deactivateTransport()","state = "+d+(y?"; was active":E?"; was pending":"")+(x?"":"; another transport is scheduled for activation")),p&&p.message&&g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.deactivateTransport()","reason =  "+p.message),y&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.deactivateTransport()","Getting, clearing, and requeuing "+this.activeProtocol.messageQueue.count()+" pending messages"),this.queuePendingMessages(f.getPendingMessages()),f.clearPendingMessages(),this.activeProtocol=this.host=null),this.emit("transport.inactive",l),y&&x||y&&d==="failed"||d==="closed"||f===null&&E){if(d==="disconnected"&&p&&p.statusCode>500&&this.httpHosts.length>1){this.unpersistTransportPreference(),this.forceFallbackHost=!0,this.notifyState({state:d,error:p,retryImmediately:!0});return}const G=d==="failed"&&Kn.isTokenErr(p)?"disconnected":d;this.notifyState({state:G,error:p});return}}noTransportsScheduledForActivation(){return!this.pendingTransport||!this.pendingTransport.isConnected}setConnection(l,d,p){const f=this.connectionId;(f&&f!==l||!f&&p)&&(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.setConnection()","Resetting msgSerial"),this.msgSerial=0,this.queuedMessages.resetSendAttempted()),this.connectionId!==l&&g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.setConnection()","New connectionId; reattaching any attached channels"),this.realtime.connection.id=this.connectionId=l,this.realtime.connection.key=this.connectionKey=d.connectionKey}clearConnection(){this.realtime.connection.id=this.connectionId=void 0,this.realtime.connection.key=this.connectionKey=void 0,this.msgSerial=0,this.unpersistConnection()}createRecoveryKey(){return this.connectionKey?JSON.stringify({connectionKey:this.connectionKey,msgSerial:this.msgSerial,channelSerials:this.realtime.channels.channelSerials()}):null}checkConnectionStateFreshness(){if(!this.lastActivity||!this.connectionId)return;const l=Date.now()-this.lastActivity;l>this.connectionStateTtl+this.maxIdleInterval&&(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.checkConnectionStateFreshness()","Last known activity from realtime was "+l+"ms ago; discarding connection state"),this.clearConnection(),this.states.connecting.failState="suspended")}persistConnection(){if(So()){const l=this.createRecoveryKey();l&&this.setSessionRecoverData({recoveryKey:l,disconnectedAt:Date.now(),location:QS.location,clientId:this.realtime.auth.clientId})}}unpersistConnection(){this.clearSessionRecoverData()}getError(){if(this.errorReason){const l=pe.fromValues(this.errorReason);return l.cause=this.errorReason,l}
995return this.getStateError()}getStateError(){var l,d;return(d=(l=ys)[this.state.state])==null?void 0:d.call(l)}activeState(){return this.state.queueEvents||this.state.sendEvents}enactStateChange(l){const d="Connection state",p=l.current+(l.reason?"; reason: "+l.reason:"");l.current==="failed"?g.logAction(this.logger,g.LOG_ERROR,d,p):g.logAction(this.logger,g.LOG_MAJOR,d,p),g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.enactStateChange","setting new state: "+l.current+"; reason = "+(l.reason&&l.reason.message));const f=this.state=this.states[l.current];l.reason&&(this.errorReason=l.reason,this.realtime.connection.errorReason=l.reason),(f.terminal||f.state==="suspended")&&this.clearConnection(),this.emit("connectionstate",l)}startTransitionTimer(l){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.startTransitionTimer()","transitionState: "+l.state),this.transitionTimer&&(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.startTransitionTimer()","clearing already-running timer"),clearTimeout(this.transitionTimer)),this.transitionTimer=setTimeout(()=>{this.transitionTimer&&(this.transitionTimer=null,g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager "+l.state+" timer expired","requesting new state: "+l.failState),this.notifyState({state:l.failState}))},l.retryDelay)}cancelTransitionTimer(){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.cancelTransitionTimer()",""),this.transitionTimer&&(clearTimeout(this.transitionTimer),this.transitionTimer=null)}startSuspendTimer(){this.suspendTimer||(this.suspendTimer=setTimeout(()=>{this.suspendTimer&&(this.suspendTimer=null,g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager suspend timer expired","requesting new state: suspended"),this.states.connecting.failState="suspended",this.notifyState({state:"suspended"}))},this.connectionStateTtl))}checkSuspendTimer(l){l!=="disconnected"&&l!=="suspended"&&l!=="connecting"&&this.cancelSuspendTimer()}cancelSuspendTimer(){this.states.connecting.failState="disconnected",this.suspendTimer&&(clearTimeout(this.suspendTimer),this.suspendTimer=null)}startRetryTimer(l){this.retryTimer=setTimeout(()=>{g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager retry timer expired","retrying"),this.retryTimer=null,this.requestState({state:"connecting"})},l)}cancelRetryTimer(){this.retryTimer&&(clearTimeout(this.retryTimer),this.retryTimer=null)}startWebSocketSlowTimer(){this.webSocketSlowTimer=setTimeout(()=>{g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager WebSocket slow timer","checking connectivity"),this.wsCheckResult===null&&this.checkWsConnectivity().then(()=>{g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager WebSocket slow timer","ws connectivity check succeeded"),this.wsCheckResult=!0}).catch(()=>{g.logAction(this.logger,g.LOG_MAJOR,"ConnectionManager WebSocket slow timer","ws connectivity check failed"),this.wsCheckResult=!1}),this.realtime.http.checkConnectivity&&Me(this.realtime.http.checkConnectivity(),(l,d)=>{l||!d?(g.logAction(this.logger,g.LOG_MAJOR,"ConnectionManager WebSocket slow timer","http connectivity check failed"),this.cancelWebSocketGiveUpTimer(),this.notifyState({state:"disconnected",error:new P("Unable to connect (network unreachable)",80003,404)})):g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager WebSocket slow timer","http connectivity check succeeded")})},this.options.timeouts.webSocketSlowTimeout)}cancelWebSocketSlowTimer(){this.webSocketSlowTimer&&(clearTimeout(this.webSocketSlowTimer),this.webSocketSlowTimer=null)}startWebSocketGiveUpTimer(l){this.webSocketGiveUpTimer=setTimeout(()=>{var d,p;this.wsCheckResult||(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager WebSocket give up timer","websocket connection took more than 10s; "+(this.baseTransport?"trying base transport":"")),this.baseTransport?(this.abandonedWebSocket=!0,(d=this.proposedTransport)==null||d.dispose(),(p=this.pendingTransport)==null||p.dispose(),this.connectBase(l,++this.connectCounter)):g.logAction(this.logger,g.LOG_MAJOR,"ConnectionManager WebSocket give up timer","websocket connectivity appears to be unavailable but no other transports to try"))},this.options.timeouts.webSocketConnectTimeout)}cancelWebSocketGiveUpTimer(){this.webSocketGiveUpTimer&&(clearTimeout(this.webSocketGiveUpTimer),this.webSocketGiveUpTimer=null)}notifyState(l){var d,p;const f=l.state,y=f==="disconnected"&&(this.state===this.states.connected||l.retryImmediately||this.state===this.states.connecting&&l.error&&Kn.isTokenErr(l.error)&&!(this.errorReason&&Kn.isTokenErr(this.errorReason)));if(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.notifyState()","new state: "+f+(y?"; will retry connection immediately":"")),f==this.state.state||(this.cancelTransitionTimer(),this.cancelRetryTimer(),this.cancelWebSocketSlowTimer(),this.cancelWebSocketGiveUpTimer(),this.checkSuspendTimer(l.state),(f==="suspended"||f==="connected")&&(this.disconnectedRetryCount=0),this.state.terminal))return;const E=this.states[l.state];let x=E.retryDelay;E.state==="disconnected"&&(this.disconnectedRetryCount++,x=_i(E.retryDelay,this.disconnectedRetryCount));const G=new sa(this.state.state,E.state,x,l.error||((p=(d=ys)[E.state])==null?void 0:p.call(d)));if(y){const L=()=>{this.state===this.states.disconnected&&(this.lastAutoReconnectAttempt=Date.now(),this.requestState({state:"connecting"}))},z=this.lastAutoReconnectAttempt&&Date.now()-this.lastAutoReconnectAttempt+1;z&&z<1e3?(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.notifyState()","Last reconnect attempt was only "+z+"ms ago, waiting another "+(1e3-z)+"ms before trying again"),setTimeout(L,1e3-z)):S.Config.nextTick(L)}else(f==="disconnected"||f==="suspended")&&this.startRetryTimer(x);
995(f==="disconnected"&&!y||f==="suspended"||E.terminal)&&S.Config.nextTick(()=>{this.disconnectAllTransports()}),f=="connected"&&!this.activeProtocol&&g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.notifyState()","Broken invariant: attempted to go into connected state, but there is no active protocol"),this.enactStateChange(G),this.state.sendEvents?this.sendQueuedMessages():this.state.queueEvents||(this.realtime.channels.propogateConnectionInterruption(f,G.reason),this.failQueuedMessages(G.reason))}requestState(l){var d,p;const f=l.state;if(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.requestState()","requested state: "+f+"; current state: "+this.state.state),f==this.state.state||(this.cancelWebSocketSlowTimer(),this.cancelWebSocketGiveUpTimer(),this.cancelTransitionTimer(),this.cancelRetryTimer(),this.checkSuspendTimer(f),f=="connecting"&&this.state.state=="connected")||f=="closing"&&this.state.state=="closed")return;const y=this.states[f],E=new sa(this.state.state,y.state,null,l.error||((p=(d=ys)[y.state])==null?void 0:p.call(d)));this.enactStateChange(E),f=="connecting"&&S.Config.nextTick(()=>{this.startConnect()}),f=="closing"&&this.closeImpl()}startConnect(){if(this.state!==this.states.connecting){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.startConnect()","Must be in connecting state to connect, but was "+this.state.state);return}const l=this.realtime.auth,d=++this.connectCounter,p=()=>{this.checkConnectionStateFreshness(),this.getTransportParams(f=>{if(f.mode==="recover"&&f.options.recover){const y=kc(f.options.recover);y&&this.realtime.channels.recoverChannels(y.channelSerials)}d===this.connectCounter&&this.connectImpl(f,d)})};if(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.startConnect()","starting connection"),this.startSuspendTimer(),this.startTransitionTimer(this.states.connecting),l.method==="basic")p();else{const f=y=>{d===this.connectCounter&&(y?this.actOnErrorFromAuthorize(y):p())};this.errorReason&&Kn.isTokenErr(this.errorReason)?Me(l._forceNewToken(null,null),f):Me(l._ensureValidAuthCredentials(!1),f)}}connectImpl(l,d){const p=this.state.state;if(p!==this.states.connecting.state){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.connectImpl()","Must be in connecting state to connect, but was "+p);return}const f=this.getTransportPreference();f&&f===this.baseTransport&&this.webSocketTransportAvailable&&this.checkWsConnectivity().then(()=>{this.wsCheckResult=!0,this.abandonedWebSocket=!1,this.unpersistTransportPreference(),this.state===this.states.connecting&&(g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.connectImpl():","web socket connectivity available, cancelling connection attempt with "+this.baseTransport),this.disconnectAllTransports(),this.connectWs(l,++this.connectCounter))}).catch(pf),f&&f===this.baseTransport||this.baseTransport&&!this.webSocketTransportAvailable?this.connectBase(l,d):this.connectWs(l,d)}connectWs(l,d){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.connectWs()"),this.startWebSocketSlowTimer(),this.startWebSocketGiveUpTimer(l),this.tryTransportWithFallbacks("web_socket",l,!0,d,()=>this.wsCheckResult!==!1&&!this.abandonedWebSocket)}connectBase(l,d){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.connectBase()"),this.baseTransport?this.tryTransportWithFallbacks(this.baseTransport,l,!1,d,()=>!0):this.notifyState({state:"disconnected",error:new P("No transports left to try",8e4,404)})}tryTransportWithFallbacks(l,d,p,f,y){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.tryTransportWithFallbacks()",l);const E=q=>{this.notifyState({state:this.states.connecting.failState,error:q})},x=p?this.wsHosts.slice():this.httpHosts.slice(),G=(q,le)=>{if(f===this.connectCounter){if(!y()){le&&le.dispose();return}!le&&!q&&z()}},L=x.shift();if(!L){E(new P("Unable to connect (no available host)",80003,404));return}d.host=L;const z=()=>{if(!x.length){E(new P("Unable to connect (and no more fallback hosts to try)",80003,404));return}if(!this.realtime.http.checkConnectivity){E(new pe("Internal error: Http.checkConnectivity not set",null,500));return}Me(this.realtime.http.checkConnectivity(),(q,le)=>{if(f===this.connectCounter&&y()){if(q){E(q);return}if(!le){E(new P("Unable to connect (network unreachable)",80003,404));return}d.host=ie(x),this.tryATransport(d,l,G)}})};if(this.forceFallbackHost&&x.length){this.forceFallbackHost=!1,z();return}this.tryATransport(d,l,G)}closeImpl(){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.closeImpl()","closing connection"),this.cancelSuspendTimer(),this.startTransitionTimer(this.states.closing),this.pendingTransport&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.closeImpl()","Closing pending transport: "+this.pendingTransport),this.pendingTransport.close()),this.activeProtocol&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.closeImpl()","Closing active transport: "+this.activeProtocol.getTransport()),this.activeProtocol.getTransport().close()),this.notifyState({state:"closed"})}onAuthUpdated(l,d){var p;switch(this.state.state){case"connected":{g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.onAuthUpdated()","Sending AUTH message on active transport");const f=(p=this.activeProtocol)==null?void 0:p.getTransport();f&&f.onAuthUpdated&&f.onAuthUpdated(l);const y=Gn({action:De.AUTH,auth:{accessToken:l.token}});this.send(y);const E=()=>{this.off(x),d(null,l)},x=G=>{G.current==="failed"&&(this.off(E),this.off(x),d(G.reason||this.get
995StateError()))};this.once("connectiondetails",E),this.on("connectionstate",x);break}case"connecting":g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.onAuthUpdated()","Aborting current connection attempts in order to start again with the new auth details"),this.disconnectAllTransports();default:{g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.onAuthUpdated()","Connection state is "+this.state.state+"; waiting until either connected or failed");const f=y=>{switch(y.current){case"connected":this.off(f),d(null,l);break;case"failed":case"closed":case"suspended":this.off(f),d(y.reason||this.getStateError());break}};this.on("connectionstate",f),this.state.state==="connecting"?this.startConnect():this.requestState({state:"connecting"})}}}disconnectAllTransports(){g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.disconnectAllTransports()","Disconnecting all transports"),this.connectCounter++,this.pendingTransport&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.disconnectAllTransports()","Disconnecting pending transport: "+this.pendingTransport),this.pendingTransport.disconnect()),delete this.pendingTransport,this.proposedTransport&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.disconnectAllTransports()","Disconnecting proposed transport: "+this.pendingTransport),this.proposedTransport.disconnect()),delete this.pendingTransport,this.activeProtocol&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.disconnectAllTransports()","Disconnecting active transport: "+this.activeProtocol.getTransport()),this.activeProtocol.getTransport().disconnect())}send(l,d,p){p=p||pf;const f=this.state;if(f.sendEvents){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.send()","sending event"),this.sendImpl(new uf(l,p));return}if(!(d&&f.queueEvents)){const E="rejecting event, queueEvent was "+d+", state was "+f.state;g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.send()",E),p(this.errorReason||new P(E,9e4,400));return}this.logger.shouldLog(g.LOG_MICRO)&&g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.send()","queueing msg; "+Rc(l,this.realtime._RealtimePresence)),this.queue(l,p)}sendImpl(l){const d=l.message;l.ackRequired&&!l.sendAttempted&&(d.msgSerial=this.msgSerial++);try{this.activeProtocol.send(l)}catch(p){g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.sendImpl()","Unexpected exception in transport.send(): "+p.stack)}}queue(l,d){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.queue()","queueing event");const p=this.queuedMessages.last(),f=this.options.maxMessageSize;p&&!p.sendAttempted&&ZS(p.message,l,f)?(p.merged||(p.callback=fc.create(this.logger,[p.callback]),p.merged=!0),p.callback.push(d)):this.queuedMessages.push(new uf(l,d))}sendQueuedMessages(){g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.sendQueuedMessages()","sending "+this.queuedMessages.count()+" queued messages");let l;for(;l=this.queuedMessages.shift();)this.sendImpl(l)}queuePendingMessages(l){l&&l.length&&(g.logAction(this.logger,g.LOG_MICRO,"ConnectionManager.queuePendingMessages()","queueing "+l.length+" pending messages"),this.queuedMessages.prepend(l))}failQueuedMessages(l){const d=this.queuedMessages.count();d>0&&(g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.failQueuedMessages()","failing "+d+" queued messages, err = "+j(l)),this.queuedMessages.completeAllMessages(l))}onChannelMessage(l,d){this.pendingChannelMessagesState.queue.push({message:l,transport:d}),this.pendingChannelMessagesState.isProcessing||this.processNextPendingChannelMessage()}processNextPendingChannelMessage(){if(this.pendingChannelMessagesState.queue.length>0){this.pendingChannelMessagesState.isProcessing=!0;const l=this.pendingChannelMessagesState.queue.shift();this.processChannelMessage(l.message).catch(d=>{g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.processNextPendingChannelMessage() received error ",d)}).finally(()=>{this.pendingChannelMessagesState.isProcessing=!1,this.processNextPendingChannelMessage()})}}async processChannelMessage(l){await this.realtime.channels.processChannelMessage(l)}async ping(){var l;if(this.state.state!=="connected")throw new P("Unable to ping service; not connected",4e4,400);const d=(l=this.activeProtocol)==null?void 0:l.getTransport();
995if(!d)throw this.getStateError();g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.ping()","transport = "+d);const p=Date.now(),f=ye();return Rh(new Promise(y=>{const E=x=>{x===f&&(d.off("heartbeat",E),y(Date.now()-p))};d.on("heartbeat",E),d.ping(f)}),this.options.timeouts.realtimeRequestTimeout,"Timeout waiting for heartbeat response")}abort(l){this.activeProtocol.getTransport().fail(l)}getTransportPreference(){var l,d;return this.transportPreference||Ic()&&((d=(l=S.WebStorage)==null?void 0:l.get)==null?void 0:d.call(l,Oc))}persistTransportPreference(l){var d,p;this.transportPreference=l.shortName,Ic()&&((p=(d=S.WebStorage)==null?void 0:d.set)==null||p.call(d,Oc,l.shortName))}unpersistTransportPreference(){var l,d;this.transportPreference=null,Ic()&&((d=(l=S.WebStorage)==null?void 0:l.remove)==null||d.call(l,Oc))}actOnErrorFromAuthorize(l){if(l.code===40171)this.notifyState({state:"failed",error:l});else if(l.code===40102)this.notifyState({state:"failed",error:l});else if(l.statusCode===ta.Forbidden){const d="Client configured authentication provider returned 403; failing the connection";g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.actOnErrorFromAuthorize()",d),this.notifyState({state:"failed",error:new P(d,80019,403,l)})}else{const d="Client configured authentication provider request failed";g.logAction(this.logger,g.LOG_MINOR,"ConnectionManager.actOnErrorFromAuthorize",d),this.notifyState({state:this.state.failState,error:new P(d,80019,401,l)})}}onConnectionDetailsUpdate(l,d){if(!l)return;this.connectionDetails=l,l.maxMessageSize&&(this.options.maxMessageSize=l.maxMessageSize);const p=l.clientId;if(p){const y=this.realtime.auth._uncheckedSetClientId(p);if(y){g.logAction(this.logger,g.LOG_ERROR,"ConnectionManager.onConnectionDetailsUpdate()",y.message),d.fail(y);return}}const f=l.connectionStateTtl;f&&(this.connectionStateTtl=f),this.maxIdleInterval=l.maxIdleInterval,this.emit("connectiondetails",l)}checkWsConnectivity(){const l=new S.Config.WebSocket(Te.wsConnectivityUrl);return new Promise((d,p)=>{let f=!1;l.onopen=()=>{f||(f=!0,d(),l.close())},l.onclose=l.onerror=()=>{f||(f=!0,p())}})}sessionRecoveryName(){return this.options.recoveryKeyStorageName||"ably-connection-recovery"}getSessionRecoverData(){var l,d;return So()&&((d=(l=S.WebStorage)==null?void 0:l.getSession)==null?void 0:d.call(l,this.sessionRecoveryName()))}setSessionRecoverData(l){var d,p;return So()&&((p=(d=S.WebStorage)==null?void 0:d.setSession)==null?void 0:p.call(d,this.sessionRecoveryName(),l))}clearSessionRecoverData(){var l,d;return So()&&((d=(l=S.WebStorage)==null?void 0:l.removeSession)==null?void 0:d.call(l,this.sessionRecoveryName()))}},hf=tE,nE=class extends Bt{constructor(r,l){super(r.logger),this.whenState=d=>Bt.prototype.whenState.call(this,d,this.state),this.ably=r,this.connectionManager=new hf(r,l),this.state=this.connectionManager.state.state,this.key=void 0,this.id=void 0,this.errorReason=null,this.connectionManager.on("connectionstate",d=>{const p=this.state=d.current;S.Config.nextTick(()=>{this.emit(p,d)})}),this.connectionManager.on("update",d=>{S.Config.nextTick(()=>{this.emit("update",d)})})}connect(){g.logAction(this.logger,g.LOG_MINOR,"Connection.connect()",""),this.connectionManager.requestState({state:"connecting"})}async ping(){return g.logAction(this.logger,g.LOG_MINOR,"Connection.ping()",""),this.connectionManager.ping()}close(){g.logAction(this.logger,g.LOG_MINOR,"Connection.close()","connectionKey = "+this.key),this.connectionManager.requestState({state:"closing"})}get recoveryKey(){return this.logger.deprecationWarning("The `Connection.recoveryKey` attribute has been replaced by the `Connection.createRecoveryKey()` method. Replace your usage of `recoveryKey` with the return value of `createRecoveryKey()`. `recoveryKey` will be removed in a future version."),this.createRecoveryKey()}createRecoveryKey(){return this.connectionManager.createRecoveryKey()}},sE=nE,iE=class{constructor(r,l,d,p,f){this.previous=r,this.current=l,l==="attached"&&(this.resumed=d,this.hasBacklog=p),f&&(this.reason=f)}},Mc=iE,ff=function(){};function oE(r){if(r&&"params"in r&&!et(r.params))return new P("options.params must be an object",4e4,400);if(r&&"modes"in r){if(!Array.isArray(r.modes))return new P("options.modes must be an array",4e4,400);for(let l=0;l<r.modes.length;l++){const d=r.modes[l];if(!d||typeof d!="string"||!lf.includes(String.prototype.toUpperCase.call(d)))return new P("Invalid channel mode: "+d,4e4,400)}}}var rE=class _p extends Bt{constructor(l,d,p){var f;super(l.logger),this.retryCount=0,this.history=async function(y){g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.history()","channel = "+this.name);const E=this.client.rest.channelMixin;
995if(y&&y.untilAttach){if(this.state!=="attached")throw new P("option untilAttach requires the channel to be attached",4e4,400);if(!this.properties.attachSerial)throw new P("untilAttach was specified and channel is attached, but attachSerial is not defined",4e4,400);delete y.untilAttach,y.from_serial=this.properties.attachSerial}return E.history(this,y)},this.whenState=y=>Bt.prototype.whenState.call(this,y,this.state),g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel()","started; name = "+d),this.name=d,this.channelOptions=Zr((f=l._Crypto)!=null?f:null,this.logger,p),this.client=l,this._presence=l._RealtimePresence?new l._RealtimePresence.RealtimePresence(this):null,this.connectionManager=l.connection.connectionManager,this.state="initialized",this.subscriptions=new Bt(this.logger),this.syncChannelSerial=void 0,this.properties={attachSerial:void 0,channelSerial:void 0},this.setOptions(p),this.errorReason=null,this._requestedFlags=null,this._mode=null,this._attachResume=!1,this._decodingContext={channelOptions:this.channelOptions,plugins:l.options.plugins||{},baseEncodedPreviousPayload:void 0},this._lastPayload={messageId:null,protocolMessageChannelSerial:null,decodeFailureRecoveryInProgress:null},this._allChannelChanges=new Bt(this.logger)}get presence(){return this._presence||Dn("RealtimePresence"),this._presence}invalidStateError(){return new P("Channel operation failed as channel state is "+this.state,90001,400,this.errorReason||void 0)}static processListenerArgs(l){return l=Array.prototype.slice.call(l),typeof l[0]=="function"&&l.unshift(null),l}async setOptions(l){var d;const p=this.channelOptions,f=oE(l);if(f)throw f;if(this.channelOptions=Zr((d=this.client._Crypto)!=null?d:null,this.logger,l),this._decodingContext&&(this._decodingContext.channelOptions=this.channelOptions),this._shouldReattachToSetOptions(l,p))return this.attachImpl(),new Promise((y,E)=>{this._allChannelChanges.once(["attached","update","detached","failed"],function(x){switch(this.event){case"update":case"attached":y();break;default:E(x.reason)}})})}_shouldReattachToSetOptions(l,d){if(!(this.state==="attached"||this.state==="attaching"))return!1;if(l?.params){const p=gf(l.params),f=gf(d.params);if(Object.keys(p).length!==Object.keys(f).length||!an(f,p))return!0}return!!(l?.modes&&(!d.modes||!Ch(l.modes,d.modes)))}async publish(...l){let d=l[0],p=l.length;if(!this.connectionManager.activeState())throw this.connectionManager.getError();if(p==1)if(et(d))d=[gs(d)];else if(Array.isArray(d))d=vc(d);else throw new P("The single-argument form of publish() expects a message object or an array of message objects",40013,400);else d=[gs({name:l[0],data:l[1]})];const f=this.client.options.maxMessageSize;await qh(d,this.channelOptions);const y=Sc(d);if(y>f)throw new P("Maximum size of messages that can be published at once exceeded ( was "+y+" bytes; limit is "+f+" bytes)",40009,400);return new Promise((E,x)=>{this._publish(d,G=>G?x(G):E())})}_publish(l,d){g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.publish()","message count = "+l.length);const p=this.state;switch(p){case"failed":case"suspended":d(P.fromValues(this.invalidStateError()));break;default:{g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.publish()","sending message; channel state is "+p);const f=new cf;f.action=De.MESSAGE,f.channel=this.name,f.messages=l,this.sendMessage(f,d);break}}}onEvent(l){g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.onEvent()","received message");const d=this.subscriptions;for(let p=0;p<l.length;p++){const f=l[p];d.emit(f.name,f)}}async attach(){return this.state==="attached"?null:new Promise((l,d)=>{this._attach(!1,null,(p,f)=>p?d(p):l(f))})}_attach(l,d,p){p||(p=y=>{y&&g.logAction(this.logger,g.LOG_ERROR,"RealtimeChannel._attach()","Channel attach failed: "+y.toString())});const f=this.connectionManager;if(!f.activeState()){p(f.getError());return}(this.state!=="attaching"||l)&&this.requestState("attaching",d),this.once(function(y){switch(this.event){case"attached":p?.(null,y);break;case"detached":case"suspended":case"failed":p?.(y.reason||f.getError()||new P("Unable to attach; reason unknown; state = "+this.event,9e4,500));break;
995case"detaching":p?.(new P("Attach request superseded by a subsequent detach request",9e4,409));break}})}attachImpl(){g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.attachImpl()","sending ATTACH message");const l=Gn({action:De.ATTACH,channel:this.name,params:this.channelOptions.params,channelSerial:this.properties.channelSerial});this._requestedFlags?l.encodeModesToFlags(this._requestedFlags):this.channelOptions.modes&&l.encodeModesToFlags(jn(this.channelOptions.modes)),this._attachResume&&l.setFlag("ATTACH_RESUME"),this._lastPayload.decodeFailureRecoveryInProgress&&(l.channelSerial=this._lastPayload.protocolMessageChannelSerial),this.sendMessage(l,ff)}async detach(){const l=this.connectionManager;if(!l.activeState())throw l.getError();switch(this.state){case"suspended":this.notifyState("detached");return;case"detached":return;case"failed":throw new P("Unable to detach; channel state = failed",90001,400);default:this.requestState("detaching");case"detaching":return new Promise((d,p)=>{this.once(function(f){switch(this.event){case"detached":d();break;case"attached":case"suspended":case"failed":p(f.reason||l.getError()||new P("Unable to detach; reason unknown; state = "+this.event,9e4,500));break;case"attaching":p(new P("Detach request superseded by a subsequent attach request",9e4,409));break}})})}}detachImpl(l){g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.detach()","sending DETACH message");const d=Gn({action:De.DETACH,channel:this.name});this.sendMessage(d,l||ff)}async subscribe(...l){const[d,p]=_p.processListenerArgs(l);if(this.state==="failed")throw P.fromValues(this.invalidStateError());return d&&typeof d=="object"&&!Array.isArray(d)?this.client._FilteredSubscriptions.subscribeFilter(this,d,p):this.subscriptions.on(d,p),this.attach()}unsubscribe(...l){var d;const[p,f]=_p.processListenerArgs(l);if(typeof p=="object"&&!f||(d=this.filteredSubscriptions)!=null&&d.has(f)){this.client._FilteredSubscriptions.getAndDeleteFilteredSubscriptions(this,p,f).forEach(y=>this.subscriptions.off(y));return}this.subscriptions.off(p,f)}sync(){switch(this.state){case"initialized":case"detaching":case"detached":throw new pe("Unable to sync to channel; not attached",4e4)}const l=this.connectionManager;if(!l.activeState())throw l.getError();const d=Gn({action:De.SYNC,channel:this.name});this.syncChannelSerial&&(d.channelSerial=this.syncChannelSerial),l.send(d)}sendMessage(l,d){this.connectionManager.send(l,this.client.options.queueMessages,d)}sendPresence(l,d){const p=Gn({action:De.PRESENCE,channel:this.name,presence:Array.isArray(l)?this.client._RealtimePresence.presenceMessagesFromValuesArray(l):[this.client._RealtimePresence.presenceMessageFromValues(l)]});this.sendMessage(p,d)}async processMessage(l){(l.action===De.ATTACHED||l.action===De.MESSAGE||l.action===De.PRESENCE)&&this.setChannelSerial(l.channelSerial);let d,p=!1;switch(l.action){case De.ATTACHED:{this.properties.attachSerial=l.channelSerial,this._mode=l.getMode(),this.params=l.params||{};const f=l.decodeModesFromFlags();this.modes=f&&Ft(f)||void 0;const y=l.hasFlag("RESUMED"),E=l.hasFlag("HAS_PRESENCE"),x=l.hasFlag("HAS_BACKLOG");if(this.state==="attached"){y||this._presence&&this._presence.onAttached(E);const G=new Mc(this.state,this.state,y,x,l.error);this._allChannelChanges.emit("update",G),(!y||this.channelOptions.updateOnAttached)&&this.emit("update",G)}else this.state==="detaching"?this.checkPendingState():this.notifyState("attached",l.error,y,E,x);break}case De.DETACHED:{const f=l.error?P.fromValues(l.error):new P("Channel detached",90001,404);this.state==="detaching"?this.notifyState("detached",f):this.state==="attaching"?this.notifyState("suspended",f):this.requestState("attaching",f);break}case De.SYNC:if(p=!0,d=this.syncChannelSerial=l.channelSerial,!l.presence)break;case De.PRESENCE:{const f=l.presence;if(!f)break;const{id:y,connectionId:E,timestamp:x}=l,G=this.channelOptions;let L;for(let z=0;z<f.length;z++)try{L=f[z],await Ec(L,G),L.connectionId||(L.connectionId=E),L.timestamp||(L.timestamp=x),L.id||(L.id=y+":"+z)}catch(q){g.logAction(this.logger,g.LOG_ERROR,"RealtimeChannel.processMessage()",q.toString())}this._presence&&this._presence.setPresence(f,p,d);break}case De.MESSAGE:{if(this.state!=="attached"){g.logAction(this.logger,g.LOG_MAJOR,"RealtimeChannel.processMessage()",'Message "'+l.id+'" skipped as this channel "'+this.name+'" state is not "attached" (state is "'+this.state+'").');return}const f=l.messages,y=f[0],E=f[f.length-1],x=l.id,G=l.connectionId,L=l.timestamp;if(y.extras&&y.extras.delta&&y.extras.delta.from!==this._lastPayload.messageId){const z='Delta message decode failure - previous message not available for message "'+l.id+'" on this channel "'+this.name+'".';g.logAction(this.logger,g.LOG_ERROR,"RealtimeChannel.processMessage()",z),this._startDecodeFailureRecovery(new P(z,40018,400));break}for(let z=0;z<f.length;z++){const q=f[z];try{await vo(q,this._decodingContext)}catch(le){switch(g.logAction(this.logger,g.LOG_ERROR,"RealtimeChannel.processMessage()",le.toString()),le.code){case 40018:this._startDecodeFailureRecovery(le);return;case 40019:case 40021:this.notifyState("failed",le);return}}q.connectionId||(q.connectionId=G),q.timestamp||(q.timestamp=L),q.id||(q.id=x+":"+z)}
995this._lastPayload.messageId=E.id,this._lastPayload.protocolMessageChannelSerial=l.channelSerial,this.onEvent(f);break}case De.ERROR:{const f=l.error;f&&f.code==80016?this.checkPendingState():this.notifyState("failed",P.fromValues(f));break}default:g.logAction(this.logger,g.LOG_ERROR,"RealtimeChannel.processMessage()","Fatal protocol error: unrecognised action ("+l.action+")"),this.connectionManager.abort(ys.unknownChannelErr())}}_startDecodeFailureRecovery(l){this._lastPayload.decodeFailureRecoveryInProgress||(g.logAction(this.logger,g.LOG_MAJOR,"RealtimeChannel.processMessage()","Starting decode failure recovery process."),this._lastPayload.decodeFailureRecoveryInProgress=!0,this._attach(!0,l,()=>{this._lastPayload.decodeFailureRecoveryInProgress=!1}))}onAttached(){g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel.onAttached","activating channel; name = "+this.name)}notifyState(l,d,p,f,y){if(g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.notifyState","name = "+this.name+", current state = "+this.state+", notifying state "+l),this.clearStateTimer(),["detached","suspended","failed"].includes(l)&&(this.properties.channelSerial=null),l===this.state)return;this._presence&&this._presence.actOnChannelState(l,f,d),l==="suspended"&&this.connectionManager.state.sendEvents?this.startRetryTimer():this.cancelRetryTimer(),d&&(this.errorReason=d);const E=new Mc(this.state,l,p,y,d),x='Channel state for channel "'+this.name+'"',G=l+(d?"; reason: "+d:"");l==="failed"?g.logAction(this.logger,g.LOG_ERROR,x,G):g.logAction(this.logger,g.LOG_MAJOR,x,G),l!=="attaching"&&l!=="suspended"&&(this.retryCount=0),l==="attached"&&this.onAttached(),l==="attached"?this._attachResume=!0:(l==="detaching"||l==="failed")&&(this._attachResume=!1),this.state=l,this._allChannelChanges.emit(l,E),this.emit(l,E)}requestState(l,d){g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel.requestState","name = "+this.name+", state = "+l),this.notifyState(l,d),this.checkPendingState()}checkPendingState(){if(!this.connectionManager.state.sendEvents){g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel.checkPendingState","sendEvents is false; state is "+this.connectionManager.state.state);return}switch(g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel.checkPendingState","name = "+this.name+", state = "+this.state),this.state){case"attaching":this.startStateTimerIfNotRunning(),this.attachImpl();break;case"detaching":this.startStateTimerIfNotRunning(),this.detachImpl();break;case"attached":this.sync();break}}timeoutPendingState(){switch(this.state){case"attaching":{const l=new P("Channel attach timed out",90007,408);this.notifyState("suspended",l);break}case"detaching":{const l=new P("Channel detach timed out",90007,408);this.notifyState("attached",l);break}default:this.checkPendingState();break}}startStateTimerIfNotRunning(){this.stateTimer||(this.stateTimer=setTimeout(()=>{g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel.startStateTimerIfNotRunning","timer expired"),this.stateTimer=null,this.timeoutPendingState()},this.client.options.timeouts.realtimeRequestTimeout))}clearStateTimer(){const l=this.stateTimer;l&&(clearTimeout(l),this.stateTimer=null)}startRetryTimer(){if(this.retryTimer)return;this.retryCount++;const l=_i(this.client.options.timeouts.channelRetryTimeout,this.retryCount);this.retryTimer=setTimeout(()=>{this.state==="suspended"&&this.connectionManager.state.sendEvents&&(this.retryTimer=null,g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel retry timer expired","attempting a new attach"),this.requestState("attaching"))},l)}cancelRetryTimer(){this.retryTimer&&(clearTimeout(this.retryTimer),this.retryTimer=null)}getReleaseErr(){const l=this.state;return l==="initialized"||l==="detached"||l==="failed"?null:new P("Can only release a channel in a state where there is no possibility of further updates from the server being received (initialized, detached, or failed); was "+l,90001,400)}setChannelSerial(l){g.logAction(this.logger,g.LOG_MICRO,"RealtimeChannel.setChannelSerial()","Updating channel serial; serial = "+l+"; previous = "+this.properties.channelSerial),l&&(this.properties.channelSerial=l)}async status(){return this.client.rest.channelMixin.status(this)}};function gf(r){const l=r||{},{agent:d}=l;return A(l,["agent"])}var Pc=rE,aE=class O0 extends Hh{constructor(l){var d,p;if(super(Te.objectifyOptions(l,!1,"BaseRealtime",g.defaultLogger)),g.logAction(this.logger,g.LOG_MINOR,"Realtime()",""),typeof EdgeRuntime=="string")throw new P(`Ably.Realtime instance cannot be used in Vercel Edge runtime. If you are running Vercel Edge functions, please replace your "new Ably.Realtime()" with "new Ably.Rest()" and use Ably Rest API instead of the Realtime API. If you are server-rendering your application in the Vercel Edge runtime, please use the condition "if (typeof EdgeRuntime === 'string')" to prevent instantiating Ably.Realtime instance during SSR in the Vercel Edge runtime.`,4e4,400);this._additionalTransportImplementations=O0.transportImplementationsFromPlugins(this.options.plugins),this._RealtimePresence=(p=(d=this.options.plugins)==null?void 0:d.RealtimePresence)!=null?p:null,this.connection=new sE(this,this.options),this._channels=new lE(this),this.options.autoConnect!==!1&&this.connect()}static transportImplementationsFromPlugins(l){const d={};return l?.WebSocketTransport&&(d[Kt.WebSocket]=l.WebSocketTransport),l?.XHRPolling&&(d[Kt.XhrPolling]=l.XHRPolling),d}get channels(){return this._channels}connect(){g.logAction(this.logger,g.LOG_MINOR,"Realtime.connect()",""),this.connection.connect()}close(){g.logAction(this.logger,g.LOG_MINOR,"Realtime.close()",""),this.connection.close()}},lE=class extends Bt{constructor(r){super(r.logger),this.realtime=r,this.all=Object.create(null),r.connection.connectionManager.on("transport.active",()=>{this.onTransportActive()})}channelSerials(){let r={};for(const l of R(this.all,!0)){const d=this.all[l];d.properties.channelSerial&&(r[l]=d.properties.channelSerial)}return r}recoverChannels(r){for(const l of R(r,!0)){const d=this.get(l);d.properties.channelSerial=r[l]}}async processChannelMessage(r){const l=r.channel;if(l===void 0){g.logAction(this.logger,g.LOG_ERROR,"Channels.processChannelMessage()","received event unspecified channel, action = "+r.action);return}const d=this.all[l];if(!d){g.logAction(this.logger,g.LOG_ERROR,"Channels.processChannelMessage()","received event for non-existent channel: "+l);return}await d.processMessage(r)}onTransportActive(){for(const r in this.all){const l=this.all[r];l.state==="attaching"||l.state==="detaching"?l.checkPendingState():l.state==="suspended"?l._attach(!1,null):l.state==="attached"&&l.requestState("attaching")}}propogateConnectionInterruption(r,l){const d={closing:"detached",closed:"detached",failed:"failed",suspended:"suspended"},p=["attaching","attached","detaching","suspended"],f=d[r];for(const y in this.all){const E=this.all[y];p.includes(E.state)&&E.notifyState(f,l)}}get(r,l){r=String(r);let d=this.all[r];if(!d)d=this.all[r]=new Pc(this.realtime,r,l);else if(l){if(d._shouldReattachToSetOptions(l,d.channelOptions))throw new P("Channels.get() cannot be used to set channel options that would cause the channel to reattach. Please, use RealtimeChannel.setOptions() instead.",4e4,400);d.setOptions(l)}return d}getDerived(r,l,d){if(l.filter){const p=Qr(l.filter),f=bo(r);r=`[filter=${p}${f.qualifierParam}]${f.channelName}`}return this.get(r,d)}release(r){r=String(r);const l=this.all[r];if(!l)return;const d=l.getReleaseErr();if(d)throw d;delete this.all[r]}},cE=aE;function dE(r){return r.channel.client.auth.clientId}function Nc(r){const l=r.channel.client,d=l.auth.clientId;return(!d||d==="*")&&l.connection.state==="connected"}function uE(r,l,d){switch(r.state){case"attached":case"suspended":d();break;case"initialized":case"detached":case"detaching":case"attaching":Me(r.attach(),function(p){p?l(p):d()});break;
995default:l(P.fromValues(r.invalidStateError()))}}function mf(r,l){if(r.isSynthesized()||l.isSynthesized())return r.timestamp>=l.timestamp;const d=r.parseId(),p=l.parseId();return d.msgSerial===p.msgSerial?d.index>p.index:d.msgSerial>p.msgSerial}var pE=class extends Bt{constructor(r){super(r.logger),this.channel=r,this.syncComplete=!1,this.members=new yf(this,l=>l.clientId+":"+l.connectionId),this._myMembers=new yf(this,l=>l.clientId),this.subscriptions=new Bt(this.logger),this.pendingPresence=[]}async enter(r){if(Nc(this))throw new P("clientId must be specified to enter a presence channel",40012,400);return this._enterOrUpdateClient(void 0,void 0,r,"enter")}async update(r){if(Nc(this))throw new P("clientId must be specified to update presence data",40012,400);return this._enterOrUpdateClient(void 0,void 0,r,"update")}async enterClient(r,l){return this._enterOrUpdateClient(void 0,r,l,"enter")}async updateClient(r,l){return this._enterOrUpdateClient(void 0,r,l,"update")}async _enterOrUpdateClient(r,l,d,p){const f=this.channel;if(!f.connectionManager.activeState())throw f.connectionManager.getError();g.logAction(this.logger,g.LOG_MICRO,"RealtimePresence."+p+"Client()","channel = "+f.name+", id = "+r+", client = "+(l||"(implicit) "+dE(this)));const y=Zh(d);switch(y.action=p,r&&(y.id=r),l&&(y.clientId=l),await bc(y,f.channelOptions),f.state){case"attached":return new Promise((E,x)=>{f.sendPresence(y,G=>G?x(G):E())});case"initialized":case"detached":f.attach();case"attaching":return new Promise((E,x)=>{this.pendingPresence.push({presence:y,callback:G=>G?x(G):E()})});default:{const E=new pe("Unable to "+p+" presence channel while in "+f.state+" state",90001);throw E.code=90001,E}}}async leave(r){if(Nc(this))throw new P("clientId must have been specified to enter or leave a presence channel",40012,400);return this.leaveClient(void 0,r)}async leaveClient(r,l){const d=this.channel;if(!d.connectionManager.activeState())throw d.connectionManager.getError();g.logAction(this.logger,g.LOG_MICRO,"RealtimePresence.leaveClient()","leaving; channel = "+this.channel.name+", client = "+r);const p=Zh(l);return p.action="leave",r&&(p.clientId=r),new Promise((f,y)=>{switch(d.state){case"attached":d.sendPresence(p,E=>E?y(E):f());break;case"attaching":this.pendingPresence.push({presence:p,callback:E=>E?y(E):f()});break;case"initialized":case"failed":{const E=new pe("Unable to leave presence channel (incompatible state)",90001);y(E);break}default:y(d.invalidStateError())}})}
995async get(r){const l=!r||("waitForSync"in r?r.waitForSync:!0);return new Promise((d,p)=>{function f(y){d(r?y.list(r):y.values())}if(this.channel.state==="suspended"){l?p(P.fromValues({statusCode:400,code:91005,message:"Presence state is out of sync due to channel being in the SUSPENDED state"})):f(this.members);return}uE(this.channel,y=>p(y),()=>{const y=this.members;l?y.waitSync(function(){f(y)}):f(y)})})}async history(r){g.logAction(this.logger,g.LOG_MICRO,"RealtimePresence.history()","channel = "+this.name);const l=this.channel.client.rest.presenceMixin;if(r&&r.untilAttach)if(this.channel.state==="attached")delete r.untilAttach,r.from_serial=this.channel.properties.attachSerial;else throw new P("option untilAttach requires the channel to be attached, was: "+this.channel.state,4e4,400);return l.history(this,r)}setPresence(r,l,d){g.logAction(this.logger,g.LOG_MICRO,"RealtimePresence.setPresence()","received presence for "+r.length+" participants; syncChannelSerial = "+d);let p,f;const y=this.members,E=this._myMembers,x=[],G=this.channel.connectionManager.connectionId;l&&(this.members.startSync(),d&&(f=d.match(/^[\w-]+:(.*)$/))&&(p=f[1]));for(let L=0;L<r.length;L++){const z=On(r[L]);switch(z.action){case"leave":y.remove(z)&&x.push(z),z.connectionId===G&&!z.isSynthesized()&&E.remove(z);break;case"enter":case"present":case"update":y.put(z)&&x.push(z),z.connectionId===G&&E.put(z);break}}l&&!p&&(y.endSync(),this.channel.syncChannelSerial=null);for(let L=0;L<x.length;L++){const z=x[L];this.subscriptions.emit(z.action,z)}}onAttached(r){g.logAction(this.logger,g.LOG_MINOR,"RealtimePresence.onAttached()","channel = "+this.channel.name+", hasPresence = "+r),r?this.members.startSync():(this._synthesizeLeaves(this.members.values()),this.members.clear()),this._ensureMyMembersPresent();const l=this.pendingPresence,d=l.length;if(d){this.pendingPresence=[];const p=[],f=fc.create(this.logger);g.logAction(this.logger,g.LOG_MICRO,"RealtimePresence.onAttached","sending "+d+" queued presence messages");for(let y=0;y<d;y++){const E=l[y];p.push(E.presence),f.push(E.callback)}this.channel.sendPresence(p,f)}}actOnChannelState(r,l,d){switch(r){case"attached":this.onAttached(l);break;case"detached":case"failed":this._clearMyMembers(),this.members.clear();case"suspended":this.failPendingPresence(d);break}}failPendingPresence(r){if(this.pendingPresence.length){g.logAction(this.logger,g.LOG_MINOR,"RealtimeChannel.failPendingPresence","channel; name = "+this.channel.name+", err = "+j(r));for(let l=0;l<this.pendingPresence.length;l++)try{this.pendingPresence[l].callback(r)}catch{}this.pendingPresence=[]}}_clearMyMembers(){this._myMembers.clear()}_ensureMyMembersPresent(){const r=this._myMembers,l=d=>{if(d){const p="Presence auto-re-enter failed: "+d.toString(),f=new P(p,91004,400);g.logAction(this.logger,g.LOG_ERROR,"RealtimePresence._ensureMyMembersPresent()",p);const y=new Mc(this.channel.state,this.channel.state,!0,!1,f);this.channel.emit("update",y)}};for(const d in r.map){const p=r.map[d];g.logAction(this.logger,g.LOG_MICRO,"RealtimePresence._ensureMyMembersPresent()",'Auto-reentering clientId "'+p.clientId+'" into the presence set'),Me(this._enterOrUpdateClient(p.id,p.clientId,p.data,"enter"),l)}}_synthesizeLeaves(r){const l=this.subscriptions;r.forEach(function(d){const p=On({action:"leave",connectionId:d.connectionId,clientId:d.clientId,data:d.data,encoding:d.encoding,timestamp:Date.now()});l.emit("leave",p)})}async subscribe(...r){const l=Pc.processListenerArgs(r),d=l[0],p=l[1],f=this.channel;if(f.state==="failed")throw P.fromValues(f.invalidStateError());this.subscriptions.on(d,p),await f.attach()}unsubscribe(...r){const l=Pc.processListenerArgs(r),d=l[0],p=l[1];this.subscriptions.off(d,p)}},yf=class extends Bt{constructor(r,l){super(r.logger),this.presence=r,this.map=Object.create(null),this.syncInProgress=!1,this.residualMembers=null,this.memberKey=l}get(r){return this.map[r]}getClient(r){const l=this.map,d=[];for(const p in l){const f=l[p];f.clientId==r&&f.action!="absent"&&d.push(f)}return d}list(r){const l=this.map,d=r&&r.clientId,p=r&&r.connectionId,f=[];for(const y in l){const E=l[y];E.action!=="absent"&&(d&&d!=E.clientId||p&&p!=E.connectionId||f.push(E))}return f}put(r){(r.action==="enter"||r.action==="update")&&(r=On(r),r.action="present");const l=this.map,d=this.memberKey(r);this.residualMembers&&delete this.residualMembers[d];const p=l[d];return p&&!mf(r,p)?!1:(l[d]=r,!0)}values(){const r=this.map,l=[];for(const d in r){const p=r[d];p.action!="absent"&&l.push(p)}return l}remove(r){const l=this.map,d=this.memberKey(r),p=l[d];return p&&!mf(r,p)?!1:(this.syncInProgress?(r=On(r),r.action="absent",l[d]=r):delete l[d],!0)}startSync(){const r=this.map,l=this.syncInProgress;g.logAction(this.logger,g.LOG_MINOR,"PresenceMap.startSync()","channel = "+this.presence.channel.name+"; syncInProgress = "+l),this.syncInProgress||(this.residualMembers=de(r),this.setInProgress(!0))}endSync(){const r=this.map,l=this.syncInProgress;if(g.logAction(this.logger,g.LOG_MINOR,"PresenceMap.endSync()","channel = "+this.presence.channel.name+"; syncInProgress = "+l),l){for(const d in r)r[d].action==="absent"&&delete r[d];this.presence._synthesizeLeaves(N(this.residualMembers));for(const d in this.residualMembers)delete r[d];this.residualMembers=null,this.setInProgress(!1)}
995this.emit("sync")}waitSync(r){const l=this.syncInProgress;if(g.logAction(this.logger,g.LOG_MINOR,"PresenceMap.waitSync()","channel = "+this.presence.channel.name+"; syncInProgress = "+l),!l){r();return}this.once("sync",r)}clear(){this.map={},this.setInProgress(!1),this.residualMembers=null}setInProgress(r){g.logAction(this.logger,g.LOG_MICRO,"PresenceMap.setInProgress()","inProgress = "+r),this.syncInProgress=r,this.presence.syncComplete=!r}},hE=pE,fE=Kt.WebSocket;function gE(r){return!!r.on}var mE=class extends Si{constructor(r,l,d){super(r,l,d),this.shortName=fE,d.heartbeats=S.Config.useProtocolHeartbeats,this.wsHost=d.host}static isAvailable(){return!!S.Config.WebSocket}createWebSocket(r,l){return this.uri=r+ae(l),new S.Config.WebSocket(this.uri)}toString(){return"WebSocketTransport; uri="+this.uri}connect(){g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.connect()","starting"),Si.prototype.connect.call(this);const r=this,l=this.params,d=l.options,f=(d.tls?"wss://":"ws://")+this.wsHost+":"+Te.getPort(d)+"/";g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.connect()","uri: "+f),Me(this.auth.getAuthParams(),function(y,E){if(r.isDisposed)return;let x="";for(const L in E)x+=" "+L+": "+E[L]+";";if(g.logAction(r.logger,g.LOG_MINOR,"WebSocketTransport.connect()","authParams:"+x+" err: "+y),y){r.disconnect(y);return}const G=l.getConnectParams(E);try{const L=r.wsConnection=r.createWebSocket(f,G);L.binaryType=S.Config.binaryType,L.onopen=function(){r.onWsOpen()},L.onclose=function(z){r.onWsClose(z)},L.onmessage=function(z){r.onWsData(z.data)},L.onerror=function(z){r.onWsError(z)},gE(L)&&L.on("ping",function(){r.onActivity()})}catch(L){g.logAction(r.logger,g.LOG_ERROR,"WebSocketTransport.connect()","Unexpected exception creating websocket: err = "+(L.stack||L.message)),r.disconnect(L)}})}send(r){const l=this.wsConnection;if(!l){g.logAction(this.logger,g.LOG_ERROR,"WebSocketTransport.send()","No socket connection");return}try{l.send(BS(r,this.connectionManager.realtime._MsgPack,this.params.format))}catch(d){const p="Exception from ws connection when trying to send: "+j(d);g.logAction(this.logger,g.LOG_ERROR,"WebSocketTransport.send()",p),this.finish("disconnected",new P(p,5e4,500))}}onWsData(r){g.logAction(this.logger,g.LOG_MICRO,"WebSocketTransport.onWsData()","data received; length = "+r.length+"; type = "+typeof r);try{this.onProtocolMessage(HS(r,this.connectionManager.realtime._MsgPack,this.connectionManager.realtime._RealtimePresence,this.format))}catch(l){g.logAction(this.logger,g.LOG_ERROR,"WebSocketTransport.onWsData()","Unexpected exception handing channel message: "+l.stack)}}onWsOpen(){g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.onWsOpen()","opened WebSocket"),this.emit("preconnect")}onWsClose(r){let l,d;if(typeof r=="object"?(d=r.code,l=r.wasClean||d===1e3):(d=r,l=d==1e3),delete this.wsConnection,l){g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.onWsClose()","Cleanly closed WebSocket");const p=new P("Websocket closed",80003,400);this.finish("disconnected",p)}else{const p="Unclean disconnection of WebSocket ; code = "+d,f=new P(p,80003,400);g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.onWsClose()",p),this.finish("disconnected",f)}
995this.emit("disposed")}onWsError(r){g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.onError()","Error from WebSocket: "+r.message),S.Config.nextTick(()=>{this.disconnect(Error(r.message))})}dispose(){g.logAction(this.logger,g.LOG_MINOR,"WebSocketTransport.dispose()",""),this.isDisposed=!0;const r=this.wsConnection;r&&(r.onmessage=function(){},delete this.wsConnection,S.Config.nextTick(()=>{if(g.logAction(this.logger,g.LOG_MICRO,"WebSocketTransport.dispose()","closing websocket"),!r)throw new Error("WebSocketTransport.dispose(): wsConnection is not defined");r.close()}))}},_f=mE,yE=class{static subscribeFilter(r,l,d){const p=f=>{var y,E,x,G,L,z;const q={name:f.name,refTimeserial:(E=(y=f.extras)==null?void 0:y.ref)==null?void 0:E.timeserial,refType:(G=(x=f.extras)==null?void 0:x.ref)==null?void 0:G.type,isRef:!!((z=(L=f.extras)==null?void 0:L.ref)!=null&&z.timeserial),clientId:f.clientId};Object.entries(l).find(([le,J])=>J!==void 0?q[le]!==J:!1)||d(f)};this.addFilteredSubscription(r,l,d,p),r.subscriptions.on(p)}static addFilteredSubscription(r,l,d,p){var f;if(r.filteredSubscriptions||(r.filteredSubscriptions=new Map),r.filteredSubscriptions.has(d)){const y=r.filteredSubscriptions.get(d);y.set(l,((f=y?.get(l))==null?void 0:f.concat(p))||[p])}else r.filteredSubscriptions.set(d,new Map([[l,[p]]]))}static getAndDeleteFilteredSubscriptions(r,l,d){if(!r.filteredSubscriptions)return[];if(!d&&l)return Array.from(r.filteredSubscriptions.entries()).map(([y,E])=>{var x;let G=E.get(l);return E.delete(l),E.size===0&&((x=r.filteredSubscriptions)==null||x.delete(y)),G}).reduce((y,E)=>E?y.concat(...E):y,[]);if(!d||!r.filteredSubscriptions.has(d))return[];const p=r.filteredSubscriptions.get(d);if(!l){const y=Array.from(p.values()).reduce((E,x)=>E.concat(...x),[]);return r.filteredSubscriptions.delete(d),y}let f=p.get(l);return p.delete(l),f||[]}},Xn=class bp extends cE{constructor(l){var d;const p=bp._MsgPack;if(!p)throw new Error("Expected DefaultRealtime._MsgPack to have been set");super(Te.objectifyOptions(l,!0,"Realtime",g.defaultLogger,w(v({},nf),{Crypto:(d=bp.Crypto)!=null?d:void 0,MsgPack:p,RealtimePresence:{RealtimePresence:hE,presenceMessageFromValues:On,presenceMessagesFromValuesArray:Qh},WebSocketTransport:_f,MessageInteractions:yE})))}static get Crypto(){if(this._Crypto===null)throw new Error("Encryption not enabled; use ably.encryption.js instead");return this._Crypto}static set Crypto(l){this._Crypto=l}};Xn.Utils=W,Xn.ConnectionManager=hf,Xn.ProtocolMessage=cf,Xn._Crypto=null,Xn.Message=sf,Xn.PresenceMessage=of,Xn._MsgPack=null,Xn._Http=yc;var Lc=Xn,Dc=Uint8Array,Eo=Uint32Array,Gc=Math.pow,bf=new Eo(8),vf=[],wo=new Eo(64);function Sf(r){return(r-(r|0))*Gc(2,32)|0}for(var To=2,Co=0;Co<64;){for(Uc=!0,ia=2;ia<=To/2;ia++)To%ia===0&&(Uc=!1);Uc&&(Co<8&&(bf[Co]=Sf(Gc(To,1/2))),vf[Co]=Sf(Gc(To,1/3)),Co++),To++}var Uc,ia,_E=!!new Dc(new Eo([1]).buffer)[0];function Fc(r){return _E?r>>>24|(r>>>16&255)<<8|(r&65280)<<8|r<<24:r}function Un(r,l){return r>>>l|r<<32-l}function Bc(r){var l=bf.slice(),d=r.length,p=d*8,f=512-(p+64)%512-1+p+65,y=new Dc(f/8),E=new Eo(y.buffer);y.set(r,0),y[d]=128,E[E.length-1]=Fc(p);for(var x,G=0;G<f/32;G+=16){var L=l.slice();for(x=0;x<64;x++){var z;if(x<16)z=Fc(E[G+x]);else{var q=wo[x-15],le=wo[x-2];z=wo[x-7]+wo[x-16]+(Un(q,7)^Un(q,18)^q>>>3)+(Un(le,17)^Un(le,19)^le>>>10)}wo[x]=z|=0;for(var J=(Un(L[4],6)^Un(L[4],11)^Un(L[4],25))+(L[4]&L[5]^~L[4]&L[6])+L[7]+z+vf[x],ge=(Un(L[0],2)^Un(L[0],13)^Un(L[0],22))+(L[0]&L[1]^L[2]&(L[0]^L[1])),me=7;me>0;me--)L[me]=L[me-1];L[0]=J+ge|0,L[4]=L[4]+J|0}for(x=0;x<8;x++)l[x]=l[x]+L[x]|0}return new Dc(new Eo(l.map(function(Ce){return Fc(Ce)})).buffer)}function bE(r,l){if(r.length>64&&(r=Bc(r)),r.length<64){const x=new Uint8Array(64);x.set(r,0),r=x}for(var d=new Uint8Array(64),p=new Uint8Array(64),f=0;f<64;f++)d[f]=54^r[f],p[f]=92^r[f];var y=new Uint8Array(l.length+64);y.set(d,0),y.set(l,64);var E=new Uint8Array(96);return E.set(p,0),E.set(Bc(y),64),Bc(E)}var vE=class{constructor(){this.base64CharSet="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",this.hexCharSet="0123456789abcdef"}uint8ViewToBase64(r){let l="";const d=this.base64CharSet,p=r.byteLength,f=p%3,y=p-f;let E,x,G,L,z;for(let q=0;q<y;q=q+3)z=r[q]<<16|r[q+1]<<8|r[q+2],E=(z&16515072)>>18,x=(z&258048)>>12,G=(z&4032)>>6,L=z&63,l+=d[E]+d[x]+d[G]+d[L];return f==1?(z=r[y],E=(z&252)>>2,x=(z&3)<<4,l+=d[E]+d[x]+"=="):f==2&&(z=r[y]<<8|r[y+1],E=(z&64512)>>10,x=(z&1008)>>4,G=(z&15)<<2,l+=d[E]+d[x]+d[G]+"="),l}base64ToArrayBuffer(r){const l=atob?.(r),d=l.length,p=new Uint8Array(d);for(let f=0;f<d;f++){const y=l.charCodeAt(f);p[f]=y}return this.toArrayBuffer(p)}isBuffer(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)}toBuffer(r){if(!ArrayBuffer)throw new Error("Can't convert to Buffer: browser does not support the necessary types");if(r instanceof ArrayBuffer)return new Uint8Array(r);if(ArrayBuffer.isView(r))return new Uint8Array(this.toArrayBuffer(r));throw new Error("BufferUtils.toBuffer expected an ArrayBuffer or a view onto one")}toArrayBuffer(r){if(!ArrayBuffer)throw new Error("Can't convert to ArrayBuffer: browser does not support the necessary types");if(r instanceof ArrayBuffer)return r;if(ArrayBuffer.isView(r))return r.buffer.slice(r.byteOffset,r.byteOffset+r.byteLength);throw new Error("BufferUtils.toArrayBuffer expected an ArrayBuffer or a view onto one")}base64Encode(r){return this.uint8ViewToBase64(this.toBuffer(r))}base64Decode(r){if(ArrayBuffer&&S.Config.atob)return this.base64ToArrayBuffer(r);throw new Error("Expected ArrayBuffer to exist and Platform.Config.atob to be configured")}hexEncode(r){return this.toBuffer(r).reduce((d,p)=>d+p.toString(16).padStart(2,"0"),"")}hexDecode(r){if(r.length%2!==0)throw new Error("Can't create a byte array from a hex string of odd length");const l=new Uint8Array(r.length/2);for(let d=0;d<l.length;d++)l[d]=parseInt(r.slice(2*d,2*(d+1)),16);return this.toArrayBuffer(l)}utf8Encode(r){if(S.Config.TextEncoder){const l=new S.Config.TextEncoder().encode(r);return this.toArrayBuffer(l)}else throw new Error("Expected TextEncoder to be configured")}utf8Decode(r){if(!this.isBuffer(r))throw new Error("Expected input of utf8decode to be an arraybuffer or typed array");if(TextDecoder)return new TextDecoder().decode(r);throw new Error("Expected TextDecoder to be configured")}areBuffersEqual(r,l){if(!r||!l)return!1;const d=this.toArrayBuffer(r),p=this.toArrayBuffer(l);if(d.byteLength!=p.byteLength)return!1;const f=new Uint8Array(d),y=new Uint8Array(p);for(var E=0;E<f.length;E++)if(f[E]!=y[E])return!1;return!0}byteLength(r){return r instanceof ArrayBuffer||ArrayBuffer.isView(r)?r.byteLength:-1}arrayBufferViewToBuffer(r){return this.toArrayBuffer(r)}hmacSha256(r,l){const d=bE(this.toBuffer(l),this.toBuffer(r));return this.toArrayBuffer(d)}},Ef=new vE,SE=function(r,l){var d="aes",p=256,f="cbc",y=16;function E(le){if(le.algorithm==="aes"&&le.mode==="cbc"){if(le.keyLength===128||le.keyLength===256)return;throw new Error("Unsupported key length "+le.keyLength+" for aes-cbc encryption. Encryption key must be 128 or 256 bits (16 or 32 ASCII characters)")}}function x(le){return le.replace("_","/").replace("-","+")}function G(le){return le instanceof L}class L{constructor(J,ge,me,Ce){this.algorithm=J,this.keyLength=ge,this.mode=me,this.key=Ce}}class z{static getDefaultParams(J){var ge;if(!J.key)throw new Error("Crypto.getDefaultParams: a key is required");typeof J.key=="string"?ge=l.toArrayBuffer(l.base64Decode(x(J.key))):J.key instanceof ArrayBuffer?ge=J.key:ge=l.toArrayBuffer(J.key);var me=J.algorithm||d,Ce=ge.byteLength*8,Ke=J.mode||f,Xe=new L(me,Ce,Ke,ge);if(J.keyLength&&J.keyLength!==Xe.keyLength)throw new Error("Crypto.getDefaultParams: a keyLength of "+J.keyLength+" was specified, but the key actually has length "+Xe.keyLength);return E(Xe),Xe}static async generateRandomKey(J){try{return r.getRandomArrayBuffer((J||p)/8)}catch(ge){throw new P("Failed to generate random key: "+ge.message,400,5e4,ge)}}static getCipher(J,ge){var me,Ce=G(J)?J:this.getDefaultParams(J);return{cipherParams:Ce,cipher:new q(Ce,(me=J.iv)!=null?me:null,ge)}}}z.CipherParams=L;class q{constructor(J,ge,me){if(this.logger=me,!crypto.subtle)throw isSecureContext?new Error("Crypto operations are not possible since the browser’s SubtleCrypto class is unavailable (reason unknown)."):new Error("Crypto operations are is not possible since the current environment is a non-secure context and hence the browser’s SubtleCrypto class is not available.");this.algorithm=J.algorithm+"-"+String(J.keyLength)+"-"+J.mode,this.webCryptoAlgorithm=J.algorithm+"-"+J.mode,this.key=l.toArrayBuffer(J.key),this.iv=ge?l.toArrayBuffer(ge):null}concat(J,ge){const me=new ArrayBuffer(J.byteLength+ge.byteLength),Ce=new DataView(me),Ke=new DataView(l.toArrayBuffer(J));for(let nt=0;nt<Ke.byteLength;nt++)Ce.setInt8(nt,Ke.getInt8(nt));const Xe=new DataView(l.toArrayBuffer(ge));for(let nt=0;nt<Xe.byteLength;nt++)Ce.setInt8(Ke.byteLength+nt,Xe.getInt8(nt));return me}async encrypt(J){g.logAction(this.logger,g.LOG_MICRO,"CBCCipher.encrypt()","");const ge=await this.getIv(),me=await crypto.subtle.importKey("raw",this.key,this.webCryptoAlgorithm,!1,["encrypt"]),Ce=await crypto.subtle.encrypt({name:this.webCryptoAlgorithm,iv:ge},me,J);return this.concat(ge,Ce)}async decrypt(J){g.logAction(this.logger,g.LOG_MICRO,"CBCCipher.decrypt()","");const ge=l.toArrayBuffer(J),me=ge.slice(0,y),Ce=ge.slice(y),Ke=await crypto.subtle.importKey("raw",this.key,this.webCryptoAlgorithm,!1,["decrypt"]);
995return crypto.subtle.decrypt({name:this.webCryptoAlgorithm,iv:me},Ke,Ce)}async getIv(){if(this.iv){var J=this.iv;return this.iv=null,J}const ge=await r.getRandomArrayBuffer(y);return l.toArrayBuffer(ge)}}return z},wf=(r=>(r[r.REQ_SEND=0]="REQ_SEND",r[r.REQ_RECV=1]="REQ_RECV",r[r.REQ_RECV_POLL=2]="REQ_RECV_POLL",r[r.REQ_RECV_STREAM=3]="REQ_RECV_STREAM",r))(wf||{}),Jn=wf;function Tf(){return new P("No HTTP request plugin provided. Provide at least one of the FetchRequest or XHRRequest plugins.",400,4e4)}var Ao,Cf=(Ao=class{constructor(r){this.checksInProgress=null,this.checkConnectivity=void 0,this.supportsAuthHeaders=!1,this.supportsLinkHeaders=!1;var l;this.client=r??null;const d=r?.options.connectivityCheckUrl||Te.connectivityCheckUrl,p=(l=r?.options.connectivityCheckParams)!=null?l:null,f=!r?.options.connectivityCheckUrl,y=v(v({},Cf.bundledRequestImplementations),r?._additionalHTTPRequestImplementations),E=y.XHRRequest,x=y.FetchRequest,G=!!(E||x);if(!G)throw Tf();S.Config.xhrSupported&&E?(this.supportsAuthHeaders=!0,this.Request=async function(L,z,q,le,J){return new Promise(ge=>{var me;const Ce=E.createRequest(z,q,le,J,Jn.REQ_SEND,(me=r&&r.options.timeouts)!=null?me:null,this.logger,L);Ce.once("complete",(Ke,Xe,nt,Ae,ln)=>ge({error:Ke,body:Xe,headers:nt,unpacked:Ae,statusCode:ln})),Ce.exec()})},r?.options.disableConnectivityCheck?this.checkConnectivity=async function(){return!0}:this.checkConnectivity=async function(){var L;g.logAction(this.logger,g.LOG_MICRO,"(XHRRequest)Http.checkConnectivity()","Sending; "+d);const z=await this.doUri(at.Get,d,null,null,p);let q=!1;return f?q=!z.error&&((L=z.body)==null?void 0:L.replace(/\n/,""))=="yes":q=!z.error&&z0(z.statusCode),g.logAction(this.logger,g.LOG_MICRO,"(XHRRequest)Http.checkConnectivity()","Result: "+q),q}):S.Config.fetchSupported&&x?(this.supportsAuthHeaders=!0,this.Request=async(L,z,q,le,J)=>x(L,r??null,z,q,le,J),this.checkConnectivity=async function(){var L;g.logAction(this.logger,g.LOG_MICRO,"(Fetch)Http.checkConnectivity()","Sending; "+d);const z=await this.doUri(at.Get,d,null,null,null),q=!z.error&&((L=z.body)==null?void 0:L.replace(/\n/,""))=="yes";return g.logAction(this.logger,g.LOG_MICRO,"(Fetch)Http.checkConnectivity()","Result: "+q),q}):this.Request=async()=>({error:G?new pe("no supported HTTP transports available",null,400):Tf()})}get logger(){var r,l;return(l=(r=this.client)==null?void 0:r.logger)!=null?l:g.defaultLogger}async doUri(r,l,d,p,f){return this.Request?this.Request(r,l,d,f,p):{error:new pe("Request invoked before assigned to",null,500)}}shouldFallback(r){const l=r.statusCode;return l===408&&!r.code||l===400&&!r.code||l>=500&&l<=504}},Ao.methods=[at.Get,at.Delete,at.Post,at.Put,at.Patch],Ao.methodsWithoutBody=[at.Get,at.Delete],Ao.methodsWithBody=[at.Post,at.Put,at.Patch],Ao),Af=Cf,lt=Ot(),EE=typeof EdgeRuntime=="string";function wE(){const r=lt.location;return!lt.WebSocket||!r||!r.origin||r.origin.indexOf("http")>-1}function TE(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}var CE=lt.navigator&&lt.navigator.userAgent.toString(),AE=lt.location&&lt.location.href,RE={agent:"browser",logTimestamps:!0,userAgent:CE,currentUrl:AE,binaryType:"arraybuffer",WebSocket:lt.WebSocket,fetchSupported:!!lt.fetch,xhrSupported:lt.XMLHttpRequest&&"withCredentials"in new XMLHttpRequest,allowComet:wE(),useProtocolHeartbeats:!0,supportsBinary:!!lt.TextDecoder,preferBinary:!1,ArrayBuffer:lt.ArrayBuffer,atob:lt.atob,nextTick:typeof lt.setImmediate<"u"?lt.setImmediate.bind(lt):function(r){setTimeout(r,0)},addEventListener:lt.addEventListener,inspect:JSON.stringify,stringByteSize:function(r){return lt.TextDecoder&&new lt.TextEncoder().encode(r).length||r.length},TextEncoder:lt.TextEncoder,TextDecoder:lt.TextDecoder,getRandomArrayBuffer:async function(r){const l=new Uint8Array(r);return lt.crypto.getRandomValues(l),l.buffer},isWebworker:TE()},Rf=RE;function xE(r){const l=[80015,80017,80030];return r.code?Kn.isTokenErr(r)?!1:l.includes(r.code)?!0:r.code>=4e4&&r.code<5e4:!1}function Hc(r){return xE(r)?[Gn({action:De.ERROR,error:r})]:[Gn({action:De.DISCONNECTED,error:r})]}var IE=class extends Si{constructor(r,l,d){super(r,l,d,!0),this.onAuthUpdated=p=>{this.authParams={access_token:p.token}},this.stream="stream"in d?d.stream:!0,this.sendRequest=null,this.recvRequest=null,this.pendingCallback=null,this.pendingItems=null}connect(){g.logAction(this.logger,g.LOG_MINOR,"CometTransport.connect()","starting"),Si.prototype.connect.call(this);const r=this.params,l=r.options,d=Te.getHost(l,r.host),p=Te.getPort(l),f=l.tls?"https://":"http://";this.baseUri=f+d+":"+p+"/comet/";const y=this.baseUri+"connect";g.logAction(this.logger,g.LOG_MINOR,"CometTransport.connect()","uri: "+y),Me(this.auth.getAuthParams(),(E,x)=>
995{if(E){this.disconnect(E);return}if(this.isDisposed)return;this.authParams=x;const G=this.params.getConnectParams(x);"stream"in G&&(this.stream=G.stream),g.logAction(this.logger,g.LOG_MINOR,"CometTransport.connect()","connectParams:"+ae(G));let L=!1;const z=this.recvRequest=this.createRequest(y,null,G,null,this.stream?Jn.REQ_RECV_STREAM:Jn.REQ_RECV);z.on("data",q=>{this.recvRequest&&(L||(L=!0,this.emit("preconnect")),this.onData(q))}),z.on("complete",q=>{if(this.recvRequest||(q=q||new P("Request cancelled",80003,400)),this.recvRequest=null,!L&&!q&&(L=!0,this.emit("preconnect")),this.onActivity(),q){q.code?this.onData(Hc(q)):this.disconnect(q);return}S.Config.nextTick(()=>{this.recv()})}),z.exec()})}requestClose(){g.logAction(this.logger,g.LOG_MINOR,"CometTransport.requestClose()"),this._requestCloseOrDisconnect(!0)}requestDisconnect(){g.logAction(this.logger,g.LOG_MINOR,"CometTransport.requestDisconnect()"),this._requestCloseOrDisconnect(!1)}_requestCloseOrDisconnect(r){const l=r?this.closeUri:this.disconnectUri;if(l){const d=this.createRequest(l,null,this.authParams,null,Jn.REQ_SEND);d.on("complete",p=>{p&&(g.logAction(this.logger,g.LOG_ERROR,"CometTransport.request"+(r?"Close()":"Disconnect()"),"request returned err = "+j(p)),this.finish("disconnected",p))}),d.exec()}}dispose(){g.logAction(this.logger,g.LOG_MINOR,"CometTransport.dis
995pose()",""),this.isDisposed||(this.isDisposed=!0,this.recvRequest&&(g.logAction(this.logger,g.LOG_MINOR,"CometTransport.dispose()","aborting recv request"),this.recvRequest.abort(),this.recvRequest=null),this.finish("disconnected",ys.disconnected()),S.Config.nextTick(()=>{this.emit("disposed")}))}onConnect(r){var l;if(this.isDisposed)return;const d=(l=r.connectionDetails)==null?void 0:l.connectionKey;Si.prototype.onConnect.call(this,r);const p=this.baseUri+d;g.logAction(this.logger,g.LOG_MICRO,"CometTransport.onConnect()","baseUri = "+p),this.sendUri=p+"/send",this.recvUri=p+"/recv",this.closeUri=p+"/close",this.disconnectUri=p+"/disconnect"}send(r){if(this.sendRequest){this.pendingItems=this.pendingItems||[],this.pendingItems.push(r);return}const l=this.pendingItems||[];l.push(r),this.pendingItems=null,this.sendItems(l)}sendAnyPending(){const r=this.pendingItems;r&&(this.pendingItems=null,this.sendItems(r))}sendItems(r){const l=this.sendRequest=this.createRequest(this.sendUri,null,this.authParams,this.encodeRequest(r),Jn.REQ_SEND);l.on("complete",(d,p)=>{if(d&&g.logAction(this.logger,g.LOG_ERROR,"CometTransport.sendItems()","on complete: err = "+j(d)),this.sendRequest=null,d){d.code?this.onData(Hc(d)):this.disconnect(d);return}p&&this.onData(p),this.pendingItems&&S.Config.nextTick(()=>{this.sendRequest||this.sendAnyPending()})}),l.exec()}recv(){if(this.recvRequest||!this.isConnected)return;const r=this.recvRequest=this.createRequest(this.recvUri,null,this.authParams,null,this.stream?Jn.REQ_RECV_STREAM:Jn.REQ_RECV_POLL);r.on("data",l=>{this.onData(l)}),r.on("complete",l=>{if(this.recvRequest=null,this.onActivity(),l){l.code?this.onData(Hc(l)):this.disconnect(l);return}S.Config.nextTick(()=>{this.recv()})}),r.exec()}onData(r){try{const l=this.decodeResponse(r);if(l&&l.length)for(let d=0;d<l.length;d++)this.onProtocolMessage(Ac(l[d],this.connectionManager.realtime._RealtimePresence))}catch(l){g.logAction(this.logger,g.LOG_ERROR,"CometTransport.onData()","Unexpected exception handing channel event: "+l.stack)}}encodeRequest(r){return JSON.stringify(r)}decodeResponse(r){return typeof r=="string"?JSON.parse(r):r}},OE=IE;function kE(r,l){return Ft(R(l)).includes("x-ably-errorcode")}function ME(r,l){if(kE(r,l))return r.error&&P.fromValues(r.error)}var PE=function(){},NE=0,xf={};function LE(r,l){return r.getResponseHeader&&r.getResponseHeader(l)}function DE(r){return r.getResponseHeader&&(r.getResponseHeader("transfer-encoding")||!r.getResponseHeader("content-length"))}function GE(r){const l=r.getAllResponseHeaders().trim().split(`\r
996`),d={};for(let p=0;p<l.length;p++){const f=l[p].split(":").map(y=>y.trim());d[f[0].toLowerCase()]=f[1]}return d}var UE=class k0 extends Bt{constructor(l,d,p,f,y,E,x,G){super(x),p=p||{},p.rnd=ye(),this.uri=l+ae(p),this.headers=d||{},this.body=f,this.method=G?G.toUpperCase():$e(f)?"GET":"POST",this.requestMode=y,this.timeouts=E,this.timedOut=!1,this.requestComplete=!1,this.id=String(++NE),xf[this.id]=this}static createRequest(l,d,p,f,y,E,x,G){const L=E||Te.TIMEOUTS;return new k0(l,d,de(p),f,y,L,x,G)}complete(l,d,p,f,y){this.requestComplete||(this.requestComplete=!0,!l&&d&&this.emit("data",d),this.emit("complete",l,d,p,f,y),this.dispose())}abort(){this.dispose()}exec(){let l=this.headers;const d=this.requestMode==Jn.REQ_SEND?this.timeouts.httpRequestTimeout:this.timeouts.recvTimeout,p=this.timer=setTimeout(()=>{this.timedOut=!0,y.abort()},d),f=this.method,y=this.xhr=new XMLHttpRequest,E=l.accept;let x=this.body,G="text";E?E.indexOf("application/x-msgpack")===0&&(G="arraybuffer"):l.accept="application/json",x&&(l["content-type"]||(l["content-type"]="application/json")).indexOf("application/json")>-1&&typeof x!="string"&&(x=JSON.stringify(x)),y.open(f,this.uri,!0),y.responseType=G,"authorization"in l&&(y.withCredentials=!0);for(const Ae in l)y.setRequestHeader(Ae,l[Ae]);const L=(Ae,ln,Lt,Oo)=>{var Ti;let Vc=ln+" (event type: "+Ae.type+")";(Ti=this==null?void 0:this.xhr)!=null&&Ti.statusText&&(Vc+=", current statusText is "+this.xhr.statusText),g.logAction(this.logger,g.LOG_ERROR,"Request.on"+Ae.type+"()",Vc),this.complete(new pe(Vc,Lt,Oo))};
996y.onerror=function(Ae){L(Ae,"XHR error occurred",null,400)},y.onabort=Ae=>{this.timedOut?L(Ae,"Request aborted due to request timeout expiring",null,408):L(Ae,"Request cancelled",null,400)},y.ontimeout=function(Ae){L(Ae,"Request timed out",null,408)};let z,q,le,J=0,ge=!1;const me=()=>{if(clearTimeout(p),le=q<400,q==204){this.complete(null,null,null,null,q);return}z=this.requestMode==Jn.REQ_RECV_STREAM&&le&&DE(y)},Ce=()=>{let Ae;try{const Lt=LE(y,"content-type");if(Lt?Lt.indexOf("application/json")>=0:y.responseType=="text"){const Ti=y.responseType==="arraybuffer"?S.BufferUtils.utf8Decode(y.response):String(y.responseText);Ti.length?Ae=JSON.parse(Ti):Ae=Ti,ge=!0}else Ae=y.response;Ae.response!==void 0?(q=Ae.statusCode,le=q<400,l=Ae.headers,Ae=Ae.response):l=GE(y)}catch(Lt){this.complete(new pe("Malformed response body from server: "+Lt.message,null,400));return}if(le||Array.isArray(Ae)){this.complete(null,Ae,l,ge,q);return}let ln=ME(Ae,l);ln||(ln=new pe("Error response received from server: "+q+" body was: "+S.Config.inspect(Ae),null,q)),this.complete(ln,Ae,l,ge,q)};function Ke(){const Ae=y.responseText,ln=Ae.length-1;let Lt,Oo;for(;J<ln&&(Lt=Ae.indexOf(`
997`,J))>-1;)Oo=Ae.slice(J,Lt),J=Lt+1,Xe(Oo)}const Xe=Ae=>{try{Ae=JSON.parse(Ae)}catch(ln){this.complete(new pe("Malformed response body from server: "+ln.message,null,400));return}this.emit("data",Ae)},nt=()=>{Ke(),this.streamComplete=!0,S.Config.nextTick(()=>{this.complete()})};y.onreadystatechange=function(){const Ae=y.readyState;Ae<3||y.status!==0&&(q===void 0&&(q=y.status,me()),Ae==3&&z?Ke():Ae==4&&(z?nt():Ce()))},y.send(x)}dispose(){const l=this.xhr;if(l){l.onreadystatechange=l.onerror=l.onabort=l.ontimeout=PE,this.xhr=null;const d=this.timer;d&&(clearTimeout(d),this.timer=null),this.requestComplete||l.abort()}delete xf[this.id]}},If=UE,Of=Kt.XhrPolling,FE=class extends OE{constructor(r,l,d){super(r,l,d),this.shortName=Of,d.stream=!1,this.shortName=Of}static isAvailable(){return!!(S.Config.xhrSupported&&S.Config.allowComet)}toString(){return"XHRPollingTransport; uri="+this.baseUri+"; isConnected="+this.isConnected}createRequest(r,l,d,p,f){return If.createRequest(r,l,d,p,f,this.timeouts,this.logger)}}
997,BE=FE,HE=["xhr_polling"],$E={order:HE,bundledImplementations:{web_socket:_f,xhr_polling:BE}},WE=$E,Ei="ablyjs-storage-test",wi=typeof dn<"u"?dn:typeof window<"u"?window:self,zE=class{constructor(){try{wi.sessionStorage.setItem(Ei,Ei),wi.sessionStorage.removeItem(Ei),this.sessionSupported=!0}catch{this.sessionSupported=!1}try{wi.localStorage.setItem(Ei,Ei),wi.localStorage.removeItem(Ei),this.localSupported=!0}catch{this.localSupported=!1}}get(r){return this._get(r,!1)}getSession(r){return this._get(r,!0)}remove(r){return this._remove(r,!1)}removeSession(r){return this._remove(r,!0)}set(r,l,d){return this._set(r,l,d,!1)}setSession(r,l,d){return this._set(r,l,d,!0)}_set(r,l,d,p){const f={value:l};return d&&(f.expires=Date.now()+d),this.storageInterface(p).setItem(r,JSON.stringify(f))}_get(r,l){if(l&&!this.sessionSupported)throw new Error("Session Storage not supported");if(!l&&!this.localSupported)throw new Error("Local Storage not supported");const d=this.storageInterface(l).getItem(r);if(!d)return null;const p=JSON.parse(d);return p.expires&&p.expires<Date.now()?(this.storageInterface(l).removeItem(r),null):p.value}_remove(r,l){return this.storageInterface(l).removeItem(r)}storageInterface(r){return r?wi.sessionStorage:wi.localStorage}},VE=new zE,qE={connectivityCheckUrl:"https://internet-up.ably-realtime.com/is-the-internet-up.txt",wsConnectivityUrl:"wss://ws-up.ably-realtime.com",defaultTransports:[Kt.XhrPolling,Kt.WebSocket]},jE=qE;function KE(r){if(r===void 0)return"undefined";let l,d;if(r instanceof ArrayBuffer?(d="ArrayBuffer",l=new DataView(r)):r instanceof DataView&&(d="DataView",l=r),!l)return JSON.stringify(r);const p=[];for(let f=0;f<r.byteLength;f++){if(f>20){p.push("...");break}let y=l.getUint8(f).toString(16);y.length===1&&(y="0"+y),p.push(y)}return"<"+d+" "+p.join(" ")+">"}function Ro(r,l,d){for(let p=0,f=d.length;p<f;p++){const y=d.charCodeAt(p);if(y<128){r.setUint8(l++,y>>>0&127|0);continue}if(y<2048){r.setUint8(l++,y>>>6&31|192),r.setUint8(l++,y>>>0&63|128);continue}if(y<65536){r.setUint8(l++,y>>>12&15|224),r.setUint8(l++,y>>>6&63|128),r.setUint8(l++,y>>>0&63|128);continue}if(y<1114112){r.setUint8(l++,y>>>18&7|240),r.setUint8(l++,y>>>12&63|128),r.setUint8(l++,y>>>6&63|128),r.setUint8(l++,y>>>0&63|128);continue}throw new Error("bad codepoint "+y)}}function kf(r,l,d){let p="";for(let f=l,y=l+d;f<y;f++){const E=r.getUint8(f);if(!(E&128)){p+=String.fromCharCode(E);continue}if((E&224)===192){p+=String.fromCharCode((E&15)<<6|r.getUint8(++f)&63);continue}if((E&240)===224){p+=String.fromCharCode((E&15)<<12|(r.getUint8(++f)&63)<<6|(r.getUint8(++f)&63)<<0);continue}if((E&248)===240){p+=String.fromCharCode((E&7)<<18|(r.getUint8(++f)&63)<<12|(r.getUint8(++f)&63)<<6|(r.getUint8(++f)&63)<<0);continue}throw new Error("Invalid byte "+E.toString(16))}return p}function $c(r){let l=0;for(let d=0,p=r.length;d<p;d++){const f=r.charCodeAt(d);if(f<128){l+=1;continue}if(f<2048){l+=2;continue}if(f<65536){l+=3;continue}if(f<1114112){l+=4;continue}throw new Error("bad codepoint "+f)}return l}function YE(r,l){const d=Io(r,l);if(d===0)return;const p=new ArrayBuffer(d),f=new DataView(p);return xo(r,f,0,l),p}var Wc=65536*65536,Mf=1/Wc;function XE(r,l){return l=l||0,r.getInt32(l)*Wc+r.getUint32(l+4)}function JE(r,l){return l=l||0,r.getUint32(l)*Wc+r.getUint32(l+4)}function QE(r,l,d){d<9223372036854776e3?(r.setInt32(l,Math.floor(d*Mf)),r.setInt32(l+4,d&-1)):(r.setUint32(l,2147483647),r.setUint32(l+4,2147483647))}function ZE(r,l,d){d<18446744073709552e3?(r.setUint32(l,Math.floor(d*Mf)),r.setInt32(l+4,d&-1)):(r.setUint32(l,4294967295),r.setUint32(l+4,4294967295))}var ew=class{constructor(r,l){this.map=d=>{const p={};for(let f=0;f<d;f++){const y=this.parse();p[y]=this.parse()}return p},this.bin=d=>{const p=new ArrayBuffer(d);return new Uint8Array(p).set(new Uint8Array(this.view.buffer,this.offset,d),0),this.offset+=d,p},this.buf=this.bin,this.str=d=>{const p=kf(this.view,this.offset,d);return this.offset+=d,p},this.array=d=>{const p=new Array(d);for(let f=0;f<d;f++)p[f]=this.parse();return p},this.ext=d=>(this.offset+=d,{type:this.view.getInt8(this.offset),data:this.buf(d)}),this.parse=()=>{const d=this.view.getUint8(this.offset);let p,f;if(!(d&128))return this.offset++,d;if((d&240)===128)return f=d&15,this.offset++,this.map(f);if((d&240)===144)return f=d&15,this.offset++,this.array(f);if((d&224)===160)return f=d&31,this.offset++,this.str(f);if((d&224)===224)return p=this.view.getInt8(this.offset),this.offset++,p;switch(d){case 192:return this.offset++,null;case 193:this.offset++;return;case 194:return this.offset++,!1;case 195:return this.offset++,!0;case 196:return f=this.view.getUint8(this.offset+1),this.offset+=2,this.bin(f);case 197:return f=this.view.getUint16(this.offset+1),this.offset+=3,this.bin(f);case 198:return f=this.view.getUint32(this.offset+1),this.offset+=5,this.bin(f);case 199:return f=this.view.getUint8(this.offset+1),this.offset+=2,this.ext(f);case 200:return f=this.view.getUint16(this.offset+1),this.offset+=3,this.ext(f);case 201:return f=this.view.getUint32(this.offset+1),this.offset+=5,this.ext(f);case 202:return p=this.view.getFloat32(this.offset+1),this.offset+=5,p;case 203:return p=this.view.getFloat64(this.offset+1),this.offset+=9,p;case 204:return p=this.view.getUint8(this.offset+1),this.offset+=2,p;case 205:return p=this.view.getUint16(this.offset+1),this.offset+=3,p;case 206:return p=this.view.getUint32(this.offset+1),this.offset+=5,p;case 207:return p=JE(this.view,this.offset+1),this.offset+=9,p;case 208:return p=this.view.getInt8(this.offset+1),this.offset+=2,p;case 209:return p=this.view.getInt16(this.offset+1),this.offset+=3,p;case 210:return p=this.view.getInt32(this.offset+1),this.offset+=5,p;case 211:return p=XE(this.view,this.offset+1),this.offset+=9,p;case 212:return f=1,this.offset++,this.ext(f);case 213:return f=2,this.offset++,this.ext(f);case 214:return f=4,this.offset++,this.ext(f);case 215:return f=8,this.offset++,this.ext(f);case 216:return f=16,this.offset++,this.ext(f);case 217:return f=this.view.getUint8(this.offset+1),this.offset+=2,this.str(f);case 218:return f=this.view.getUint16(this.offset+1),this.offset+=3,this.str(f);case 219:return f=this.view.getUint32(this.offset+1),this.offset+=5,this.str(f);case 220:return f=this.view.getUint16(this.offset+1),this.offset+=3,this.array(f);case 221:return f=this.view.getUint32(this.offset+1),this.offset+=5,this.array(f);case 222:return f=this.view.getUint16(this.offset+1),this.offset+=3,this.map(f);case 223:return f=this.view.getUint32(this.offset+1),this.offset+=5,this.map(f)}throw new Error("Unknown type 0x"+d.toString(16))},this.offset=l||0,this.view=r}};function tw(r){const l=new DataView(r),d=new ew(l),p=d.parse();if(d.offset!==r.byteLength)throw new Error(r.byteLength-d.offset+" trailing bytes");return p}function Pf(r,l){return Object.keys(r).filter(function(d){const p=r[d],f=typeof p;return(!l||p!=null)&&(f!=="function"||!!p.toJSON)})}function xo(r,l,d,p){const f=typeof r;if(typeof r=="string"){const y=$c(r);if(y<32)return l.setUint8(d,y|160),Ro(l,d+1,r),1+y;if(y<256)return l.setUint8(d,217),l.setUint8(d+1,y),Ro(l,d+2,r),2+y;if(y<65536)return l.setUint8(d,218),l.setUint16(d+1,y),Ro(l,d+3,r),3+y;if(y<4294967296)return l.setUint8(d,219),l.setUint32(d+1,y),Ro(l,d+5,r),5+y}if(ArrayBuffer.isView&&ArrayBuffer.isView(r)&&(r=r.buffer),r instanceof ArrayBuffer){const y=r.byteLength;if(y<256)return l.setUint8(d,196),l.setUint8(d+1,y),new Uint8Array(l.buffer).set(new Uint8Array(r),d+2),2+y;if(y<65536)return l.setUint8(d,197),l.setUint16(d+1,y),new Uint8Array(l.buffer).set(new Uint8Array(r),d+3),3+y;if(y<4294967296)return l.setUint8(d,198),l.setUint32(d+1,y),new Uint8Array(l.buffer).set(new Uint8Array(r),d+5),5+y}
997if(typeof r=="number"){if(Math.floor(r)!==r)return l.setUint8(d,203),l.setFloat64(d+1,r),9;if(r>=0){if(r<128)return l.setUint8(d,r),1;if(r<256)return l.setUint8(d,204),l.setUint8(d+1,r),2;if(r<65536)return l.setUint8(d,205),l.setUint16(d+1,r),3;if(r<4294967296)return l.setUint8(d,206),l.setUint32(d+1,r),5;if(r<18446744073709552e3)return l.setUint8(d,207),ZE(l,d+1,r),9;throw new Error("Number too big 0x"+r.toString(16))}if(r>=-32)return l.setInt8(d,r),1;if(r>=-128)return l.setUint8(d,208),l.setInt8(d+1,r),2;if(r>=-32768)return l.setUint8(d,209),l.setInt16(d+1,r),3;if(r>=-2147483648)return l.setUint8(d,210),l.setInt32(d+1,r),5;if(r>=-9223372036854776e3)return l.setUint8(d,211),QE(l,d+1,r),9;throw new Error("Number too small -0x"+(-r).toString(16).substr(1))}if(f==="undefined")return p?0:(l.setUint8(d,212),l.setUint8(d+1,0),l.setUint8(d+2,0),3);if(r===null)return p?0:(l.setUint8(d,192),1);if(f==="boolean")return l.setUint8(d,r?195:194),1;if(typeof r.toJSON=="function")return xo(r.toJSON(),l,d,p);if(f==="object"){let y,E=0,x;const G=Array.isArray(r);if(G?y=r.length:(x=Pf(r,p),y=x.length),y<16?(l.setUint8(d,y|(G?144:128)),E=1):y<65536?(l.setUint8(d,G?220:222),l.setUint16(d+1,y),E=3):y<4294967296&&(l.setUint8(d,G?221:223),l.setUint32(d+1,y),E=5),G)for(let L=0;L<y;L++)E+=xo(r[L],l,d+E,p);else if(x)for(let L=0;L<y;L++){const z=x[L];E+=xo(z,l,d+E),E+=xo(r[z],l,d+E,p)}return E}if(f==="function")return 0;throw new Error("Unknown type "+f)}function Io(r,l){const d=typeof r;if(d==="string"){const p=$c(r);if(p<32)return 1+p;if(p<256)return 2+p;if(p<65536)return 3+p;if(p<4294967296)return 5+p}if(ArrayBuffer.isView&&ArrayBuffer.isView(r)&&(r=r.buffer),r instanceof ArrayBuffer){const p=r.byteLength;if(p<256)return 2+p;if(p<65536)return 3+p;if(p<4294967296)return 5+p}if(typeof r=="number"){if(Math.floor(r)!==r)return 9;if(r>=0){if(r<128)return 1;if(r<256)return 2;if(r<65536)return 3;if(r<4294967296)return 5;if(r<18446744073709552e3)return 9;throw new Error("Number too big 0x"+r.toString(16))}if(r>=-32)return 1;if(r>=-128)return 2;if(r>=-32768)return 3;if(r>=-2147483648)return 5;if(r>=-9223372036854776e3)return 9;throw new Error("Number too small -0x"+r.toString(16).substr(1))}if(d==="boolean")return 1;if(r===null)return l?0:1;if(r===void 0)return l?0:3;if(typeof r.toJSON=="function")return Io(r.toJSON(),l);if(d==="object"){let p,f=0;if(Array.isArray(r)){p=r.length;for(let y=0;y<p;y++)f+=Io(r[y],l)}else{const y=Pf(r,l);p=y.length;for(let E=0;E<p;E++){const x=y[E];f+=Io(x)+Io(r[x],l)}}if(p<16)return 1+f;if(p<65536)return 3+f;if(p<4294967296)return 5+f;throw new Error("Array or object too long 0x"+p.toString(16))}if(d==="function")return 0;throw new Error("Unknown type "+d)}var zc={encode:YE,decode:tw,inspect:KE,utf8Write:Ro,utf8Read:kf,utf8ByteCount:$c};function nw(r,l){return!!l.get("x-ably-errorcode")}function sw(r,l){if(nw(r,l))return r.error&&P.fromValues(r.error)}function iw(r){const l={};return r.forEach((d,p)=>{l[p]=d}),l}async function ow(r,l,d,p,f,y){const E=new Headers(p||{}),x=r?r.toUpperCase():$e(y)?"GET":"POST",G=new AbortController;let L;const z=new Promise(J=>{L=setTimeout(()=>{G.abort(),J({error:new pe("Request timed out",null,408)})},l?l.options.timeouts.httpRequestTimeout:Te.TIMEOUTS.httpRequestTimeout)}),q={method:x,headers:E,body:y,signal:G.signal};S.Config.isWebworker||(q.credentials=E.has("authorization")?"include":"same-origin");const le=(async()=>{try{const J=await Ot().fetch(d+"?"+new URLSearchParams(f||{}),q);if(clearTimeout(L),J.status==204)return{error:null,statusCode:J.status};const ge=J.headers.get("Content-Type");let me;ge&&ge.indexOf("application/x-msgpack")>-1?me=await J.arrayBuffer():ge&&ge.indexOf("application/json")>-1?me=await J.json():me=await J.text();const Ce=!!ge&&ge.indexOf("application/x-msgpack")===-1,Ke=iw(J.headers);return J.ok?{error:null,body:me,headers:Ke,unpacked:Ce,statusCode:J.status}:{error:sw(me,J.headers)||new pe("Error response received from server: "+J.status+" body was: "+S.Config.inspect(me),null,J.status),body:me,headers:Ke,unpacked:Ce,statusCode:J.status}}catch(J){return clearTimeout(L),{error:J}}})();return Promise.race([z,le])}var rw={XHRRequest:If,FetchRequest:ow}
997,Nf=SE(Rf,Ef);S.Crypto=Nf,S.BufferUtils=Ef,S.Http=Af,S.Config=Rf,S.Transports=WE,S.WebStorage=VE;for(const r of[Tc,Lc])r.Crypto=Nf,r._MsgPack=zc;Af.bundledRequestImplementations=rw,g.initLogHandlers(),S.Defaults=$0(jE),S.Config.agent&&(S.Defaults.agent+=" "+S.Config.agent);var aw={ErrorInfo:P,Rest:Tc,Realtime:Lc,msgpack:zc};if(typeof s.exports=="object"&&typeof n=="object"){var lw=(r,l,d,p)=>{if(l&&typeof l=="object"||typeof l=="function")for(let f of Object.getOwnPropertyNames(l))!Object.prototype.hasOwnProperty.call(r,f)&&f!==d&&Object.defineProperty(r,f,{get:()=>l[f],enumerable:!(p=Object.getOwnPropertyDescriptor(l,f))||p.enumerable});return r};s.exports=lw(s.exports,n)}return s.exports})})(C0);var QP=C0.exports;const ZP=av(QP);function Ld(e){const t=e?.$state?.authInfo?.memberRole;return t===0||t===1}async function e1(){try{window.sessionStorage?.removeItem("account_access_session")}catch{}ee("Customer revoked SendX support access. Signing you out…",{theme:"auto",type:"warning",autoClose:3e3,transition:"slide"});try{const e=Ie();typeof e?.signOut=="function"&&await e.signOut()}catch(e){console.warn("account-access self-revoke: signOut failed:",e)}try{typeof Le=="function"?await Le("/login"):typeof window<"u"&&(window.location.href="/login")}catch{typeof window<"u"&&(window.location.href="/login")}}async function t1(){const e=Ie();if(!e.$state.authInfo)throw sh({statusCode:404,statusMessage:"Auth Info not setup"});const t=e.$state?.authInfo?.teamAuthToken??"",n={};t&&(n.Authorization=`Bearer ${t}`);const s=await $fetch(K()+"team/ably/token-request",{method:"GET",headers:n});return s}const U6=zR(e=>{let t=null;function n(){const i=Ie();let o=i.$state?.authInfo?.team?.id,a=t.channels.get("message-"+o);a.unsubscribe(),a.subscribe(({data:c})=>
997{switch(c.type,c.data&&typeof c.data=="string"&&c.data.length>0&&(c.data=JSON.parse(c.data)),c.type){case 0:{i.ablyAuthInfoUpdate({data:c.authInfo});break}case 1:{i.ablyAccountUpdate({data:c.account});break}case 2:{i.ablyTeamUpdate({data:c.team});break}case 3:{i.ablyMemberUpdate({data:c.member});break}case 4:{i.ablyMemberRoleUpdate({memberRole:c.memberRole,member:c.member});break}case 81:{const u=c.data,h=i.$state?.authInfo?.member?.id;u&&Number(u.memberId)===Number(h)&&i.ablyTablePreferencesUpdate(u.tablePreferences);break}case 5:{c?.data?.length!==0&&ee(c.data,{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 6:{c?.data?.length!==0&&ee(c.data,{theme:"auto",type:"error",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 7:{c.data,c?.data?.length!==0&&ee(DO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 8:{c.data.name,c?.data?.length!==0&&ee(GO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 9:{c.data.name,c?.data?.length!==0&&ee(UO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 10:{c.data.name,c?.data?.length!==0&&ee(FO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 11:{c.data.name,c?.data?.length!==0&&ee(BO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 12:{c.data.name,c?.data?.length!==0&&ee(HO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 13:{c.data.name,c?.data?.length!==0&&(c.data.name,c.data,ee($O(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"}));break}case 14:{c.data.name,c?.data?.length!==0&&ee(WO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 15:{c.data.name,c?.data?.length!==0&&ee(zO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 16:{c.data.name,c?.data?.length!==0&&ee(VO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 17:{c.data.name,c?.data?.length!==0&&ee(qO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 18:{c.data.name,c?.data?.length!==0&&ee(jO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 19:{c.data.name,c?.data?.length!==0&&ee(KO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 20:{c.data.name,c?.data?.length!==0&&ee(YO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 21:{c.data.name,c?.data?.length!==0&&ee(XO(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 26:{i.setNotificationAlert(!0);break}case 27:{i.ablyTransferOwnerShip({data:c.data});break}case 28:{c.data,c?.data?.length!==0&&ee(JO(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 29:{c.data,c?.data?.length!==0&&ee(QO(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 30:{c.data,c?.data?.length!==0&&ee(ZO(),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 33:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="str
997ing"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(Kg(u?.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"})}catch{ee(Kg(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"})}break}case 34:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="string"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(Yg(u?.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}catch{ee(Yg(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}break}case 35:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="string"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(Xg(u?.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}catch{ee(Xg(),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}break}case 37:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="str
997ing"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(em(u?.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}catch{ee(em(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}break}case 38:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="string"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(tm(u?.name),{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}catch{ee(tm(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}break}case 39:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="string"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(Jg(u?.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"})}catch{ee(Jg(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"})}break}case 40:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="str
997ing"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(Qg(u?.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}catch{ee(Qg(),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}break}case 41:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="string"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(Zg(u?.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}catch{ee(Zg(),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"})}break}case 44:{c.data,c?.data?.name&&ee(ek(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 45:{c.data,c?.data?.name&&ee(tk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 46:{c.data,c?.data?.name&&ee(nk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 47:{c.data,c?.data?.name&&ee(sk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 48:{c.data,c?.data?.name&&ee(ik(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 49:{c.data,c?.data?.name&&ee(ok(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 50:{c.data,c?.data?.name&&ee(rk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 51:{c.data,c?.data?.name&&ee(ak(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 52:{c.data,c?.data?.name&&ee(lk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:3e3,transition:"slide"});break}case 53:{c.data,i.setNotificationAlert(!0),c?.data?.campaignId!==void 0&&dy().patchCampaignStatus({campaignId:c.data.campaignId,status:qe.Quarantined}),c?.data?.name&&ee(ck(c.data.name),{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 54:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(dk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 55:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(uk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 56:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(pk(c.data.name),{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 57:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(hk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 58:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(fk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 59:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(gk(c.data.name),{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 60:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(mk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 61:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(yk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 62:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(_k(c.data.name),{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 63:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(bk(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 64:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(vk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 65:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(Sk(c.data.name),{theme:"auto",type:"warning",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 66:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(Ek(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 67:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(wk(c.data.name),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 68:{c.data,i.setNotificationAlert(!0);break}case 69:{c.data,i.setNotificationAlert(!0);break}case 70:{c.data,i.setNotificationAlert(!0);break}case 71:{if(c.data,i.setNotificationAlert(!0),c?.data&&(typeof c.data=="object"||typeof c.data=="str
997ing"&&c.data.length>0))try{const u=typeof c.data=="string"?JSON.parse(c.data):c.data;ee(nm(u?.domain,u?.reason),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:8e3,transition:"slide"})}catch{ee(nm("",""),{theme:"auto",type:"error",hideProgressBar:!1,autoClose:8e3,transition:"slide"})}break}case 78:{if(c.data,!Ld(i))break;i.setNotificationAlert(!0),ee("SendX support is requesting access to your account. Approve from Settings → Account access.",{theme:"auto",type:"info",hideProgressBar:!1,autoClose:8e3,transition:"slide"});break}case 79:{if(c.data,!Ld(i))break;i.setNotificationAlert(!0),ee("SendX support access is now active for 7 days. You can revoke any time from Settings → Account access.",{theme:"auto",type:"success",hideProgressBar:!1,autoClose:6e3,transition:"slide"});break}case 80:{if(c.data,typeof window<"u"&&window.sessionStorage?.getItem("account_access_session")==="1"){e1();break}if(!Ld(i))break;i.setNotificationAlert(!0),ee("SendX support access has been revoked.",{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 82:{c.data,i.setNotificationAlert(!0),c?.data?.name&&ee(LO(c.data.name),{theme:"auto",type:"success",hideProgressBar:!1,autoClose:5e3,transition:"slide"});break}case 83:{c.data,c?.data?.campaignId!==void 0&&c?.data?.status!==void 0&&dy().patchCampaignStatus({campaignId:c.data.campaignId,status:c.data.status,sentCount:c.data.sentCount});break}}})}(()=>{const i=Ie();try{t=new ZP.Realtime({authCallback:async(o,a)=>{if(i.$state.authInfo!==null)try{const c=await t1();a(null,c),await t.connection.once("connected"),n()}catch(c){a(c,null)}},disconnectedRetryTimeout:2e3}),e.provide("ably",t)}catch(o){console.error("Error initializing Ably Realtime client:",o)}})()});export{l1 as $,xe as A,WT as B,Lp as C,Kp as D,pt as E,Xa as F,Rt as G,BT as H,$r as I,NC as J,H_ as K,jp as L,kp as M,Wr as N,Wy as O,eC as P,sC as Q,ht as R,l_ as S,IC as T,IT as U,Is as V,OT as W,Yp as X,qn as Y,Ap as Z,pT as _,gi as a,T1 as a$,a1 as a0,CR as a1,d1 as a2,Ir as a3,E1 as a4,w1 as a5,yn as a6,gu as a7,nc as a8,RR as a9,K as aA,dt as aB,H1 as aC,Ie as aD,cd as aE,RN as aF,xN as aG,LN as aH,DN as aI,PN as aJ,NN as aK,kN as aL,MN as aM,ve as aN,Be as aO,R6 as aP,Ab as aQ,x1 as aR,JR as aS,no as aT,c1 as aU,u1 as aV,D1 as aW,y1 as aX,v1 as aY,P1 as aZ,S1 as a_,hb as aa,zR as ab,Ui as ac,sh as ad,Yt as ae,O1 as af,k1 as ag,fx as ah,zp as ai,Wp as aj,wC as ak,Le as al,st as am,Tb as an,p1 as ao,A1 as ap,R1 as aq,ic as ar,hO as as,fO as at,uO as au,pO as av,cO as aw,dO as ax,ct as ay,Y as az,In as b,dy as b$,F1 as b0,sc as b1,$T as b2,N1 as b3,Eb as b4,M1 as b5,ST as b6,ET as b7,wT as b8,KA as b9,FT as bA,eh as bB,X_ as bC,fR as bD,cu as bE,Fg as bF,L1 as bG,g1 as bH,Se as bI,D$ as bJ,L$ as bK,vN as bL,v0 as bM,al as bN,$1 as bO,kT as bP,c4 as bQ,P$ as bR,O$ as bS,t5 as bT,n4 as bU,v2 as bV,tN as bW,jN as bX,Nn as bY,iC as bZ,zT as b_,L_ as ba,db as bb,Pd as bc,U1 as bd,G1 as be,fn as bf,ni as bg,nv as bh,ee as bi,U6 as bj,ex as bk,C1 as bl,f1 as bm,PT as bn,Zp as bo,h1 as bp,PC as bq,s_ as br,I1 as bs,YA as bt,_1 as bu,b1 as bv,m1 as bw,EN as bx,qA as by,X1 as bz,zr as c,g5 as c$,W1 as c0,z1 as c1,GN as c2,Xt as c3,ON as c4,IN as c5,dr as c6,Qs as c7,yr as c8,br as c9,wH as cA,TH as cB,l4 as cC,A2 as cD,nH as cE,tH as cF,r1 as cG,YP as cH,G6 as cI,j1 as cJ,K1 as cK,H5 as cL,rF as cM,$5 as cN,w2 as cO,o$ as cP,$3 as cQ,W3 as cR,GU as cS,kB as cT,t$ as cU,$G as cV,WG as cW,h5 as cX,XU as cY,YU as cZ,KU as c_,ry as ca,PP as cb,Dl as cc,rO as cd,ah as ce,qe as cf,iv as cg,ov as ch,aO as ci,NP as cj,fN as ck,aN as cl,_r as cm,oN as cn,nb as co,th as cp,JO as cq,HL as cr,aL as cs,ld as ct,eN as cu,e4 as cv,I$ as cw,SN as cx,JH as cy,EH as cz,yi as d,G$ as d$,OB as d0,rL as d1,z3 as d2,oF as d3,_4 as d4,YN as d5,C6 as d6,$D as d7,J3 as d8,vH as d9,zU as dA,MB as dB,g2 as dC,K3 as dD,cF as dE,LU as dF,DU as dG,X3 as dH,dF as dI,ZH as dJ,s5 as dK,NB as dL,QH as dM,p5 as dN,AB as dO,RB as dP,v4 as dQ,r6 as dR,c6 as dS,pF as dT,b4 as dU,uF as dV,oL as dW,F$ as dX,B$ as dY,eH as dZ,TN as d_,hF as da,SH as db,WD as dc,zD as dd,r5 as de,A6 as df,a5 as dg,S4 as dh,Q3 as di,c2 as dj,wF as dk,h6 as dl,m6 as dm,g6 as dn,f6 as dp,n$ as dq,c5 as dr,d5 as ds,BU as dt,i5 as du,l5 as dv,FU as dw,c$ as dx,HU as dy,e$ as dz,dn as e,z$ as e$,U$ as e0,lL as e1,NL as e2,LL as e3,DL as e4,fH as e5,gH as e6,t4 as e7,mH as e8,O as e9,uH as eA,C4 as eB,mF as eC,d2 as eD,lF as eE,dH as eF,aF as eG,jU as eH,jG as eI,pD as eJ,hD as eK,fD as eL,qG as eM,gD as eN,yD as eO,ZG as eP,eU as eQ,tU as eR,T4 as eS,yF as eT,w4 as eU,a6 as eV,gF as eW,E4 as eX,fF as eY,HT as eZ,W$ as e_,pN as ea,dN as eb,uN as ec,SO as ed,hN as ee,GL as ef,KN as eg,k$ as eh,j3 as ei,yH as ej,IB as ek,hH as el,f2 as em,R4 as en,l6 as eo,bF as ep,A4 as eq,_F as er,j$ as es,K$ as et,pH as eu,xB as ev,p2 as ew,h2 as ex,V$ as ey,q$ as ez,BL as f,wL as f$,t2 as f0,q3 as f1,u2 as f2,H$ as f3,$$ as f4,O5 as f5,P5 as f6,yN as f7,N5 as f8,L5 as f9,yG as fA,_G as fB,bG as fC,EG as fD,wG as fE,SG as fF,vG as fG,A5 as fH,T5 as fI,tB as fJ,i2 as fK,C5 as fL,oG as fM,o2 as fN,xL as fO,RL as fP,I5 as fQ,Q1 as fR,gL as fS,s4 as fT,EL as fU,yL as fV,TL as fW,SL as fX,bL as fY,mL as fZ,AL as f_,D5 as fa,G5 as fb,_N as fc,U5 as fd,F5 as fe,B5 as ff,u4 as fg,L2 as fh,Q5 as fi,rB as fj,J$ as fk,pG as fl,oB as fm,k5 as fn,gG as fo,mG as fp,mN as fq,M5 as fr,aB as fs,dG as ft,uG as fu,hG as fv,fG as fw,IU as fx,d4 as fy,h$ as fz,av as g,M4 as g$,_L as g0,CL as g1,CN as g2,FF as g3,x5 as g4,wO as g5,w0 as g6,D6 as g7,R5 as g8,vL as g9,nB as gA,fL as gB,a2 as gC,r2 as gD,X$ as gE,sB as gF,lG as gG,cG as gH,rG as gI,aG as gJ,YD as gK,jD as gL,KD as gM,r3 as gN,a3 as gO,ZF as gP,S2 as gQ,o5 as gR,zF as gS,F4 as gT,m3 as gU,Z2 as gV,KP as gW,WF as gX,Y2 as gY,L4 as gZ,P4 as g_,iB as ga,R2 as gb,aU as gc,f$ as gd,g$ as ge,f5 as gf,KG as gg,zP as gh,Th as gi,wh as gj,I6 as gk,x6 as gl,O6 as gm,MU as gn,OL as go,kL as gp,ML as gq,PL as gr,S$ as gs,E$ as gt,w$ as gu,x2 as gv,JF as gw,o3 as gx,eB as gy,s2 as gz,Fi as h,tL as h$,c3 as h0,U2 as h1,VU as h2,EO as h3,qU as h4,U4 as h5,J5 as h6,g4 as h7,G4 as h8,$F as h9,Q$ as hA,H2 as hB,u3 as hC,iG as hD,sG as hE,HF as hF,D4 as hG,tG as hH,nG as hI,VF as hJ,K4 as hK,qF as hL,Y4 as hM,$4 as hN,W4 as hO,P6 as hP,Q2 as hQ,V5 as hR,q5 as hS,z4 as hT,j5 as hU,Z1 as hV,V3 as hW,M$ as hX,VD as hY,qD as hZ,J2 as h_,BF as ha,IL as hb,sL as hc,RU as hd,AU as he,B4 as hf,H4 as hg,h3 as hh,d6 as hi,$2 as hj,u6 as hk,p6 as hl,g3 as hm,K2 as hn,KF as ho,Z4 as hp,jF as hq,X4 as hr,N4 as hs,EF as ht,y4 as hu,AN as hv,iL as hw,J4 as hx,Q4 as hy,p3 as hz,Xi as i,QF as i$,q4 as i0,j4 as i1,K5 as i2,V4 as i3,i4,Y$ as i5,XD as i6,o4 as i7,T2 as i8,eG as i9,G3 as iA,f4 as iB,o6 as iC,B2 as iD,h4 as iE,F2 as iF,j2 as iG,q2 as iH,k2 as iI,O2 as iJ,mU as iK,U3 as iL,uU as iM,pU as iN,fU as iO,gU as iP,VB as iQ,D3 as iR,kH as iS,MH as iT,LH as iU,DH as iV,Vw as iW,we as iX,nN as iY,sN as iZ,L6 as i_,ZD as ia,JD as ib,QD as ic,Z5 as id,QU as ie,ZU as ig,CH as ih,AH as ii,l3 as ij,X5 as ik,N6 as il,rN as im,u5 as io,eL as ip,PH as iq,NH as ir,z2 as is,W2 as it,M6 as iu,k6 as iv,M2 as iw,f3 as ix,e3 as iy,V2 as iz,_n as j,n5 as j$,XF as j0,t3 as j1,m5 as 
997j2,YF as j3,ZN as j4,m4 as j5,X2 as j6,G2 as j7,nL as j8,i3 as j9,v3 as jA,aH as jB,v$ as jC,_3 as jD,XN as jE,QN as jF,JN as jG,VN as jH,$N as jI,TG as jJ,CG as jK,N$ as jL,mD as jM,_D as jN,oU as jO,rU as jP,qN as jQ,mO as jR,BN as jS,zN as jT,UN as jU,JU as jV,Z3 as jW,hB as jX,S3 as jY,b3 as jZ,e5 as j_,s3 as ja,Y5 as jb,n3 as jc,e6 as jd,t6 as je,r4 as jf,Z$ as jg,i6 as jh,d3 as ji,a4 as jj,C2 as jk,s6 as jl,n6 as jm,iU as jn,nU as jo,sU as jp,V1 as jq,gN as jr,gB as js,w3 as jt,EB as ju,l2 as jv,wB as jw,TB as jx,CB as jy,uB as jz,ky as k,yU as k$,k3 as k0,PU as k1,OU as k2,kU as k3,y3 as k4,eF as k5,lB as k6,tF as k7,dB as k8,pB as k9,yB as kA,mB as kB,T3 as kC,YL as kD,$L as kE,WL as kF,tO as kG,VL as kH,KL as kI,zL as kJ,tD as kK,nD as kL,dD as kM,uD as kN,sD as kO,iD as kP,oD as kQ,rD as kR,aD as kS,lD as kT,cD as kU,$B as kV,N3 as kW,hU as kX,dU as kY,lU as kZ,cU as k_,I2 as ka,v5 as kb,WN as kc,HN as kd,gO as ke,FN as kf,NU as kg,q1 as kh,fB as ki,E3 as kj,LB as kk,cB as kl,P3 as km,pL as kn,R3 as ko,M3 as kp,bB as kq,_B as kr,C3 as ks,hL as kt,I3 as ku,x3 as kv,SB as kw,A3 as kx,vB as ky,cL as kz,Br as l,WU as l$,lN as l0,uL as l1,zB as l2,WB as l3,L3 as l4,eD as l5,JL as l6,ZL as l7,ED as l8,SD as l9,UF as lA,E5 as lB,O3 as lC,bN as lD,qB as lE,m$ as lF,KB as lG,_$ as lH,jB as lI,y$ as lJ,JB as lK,T$ as lL,I4 as lM,SF as lN,r$ as lO,s$ as lP,i$ as lQ,P2 as lR,UU as lS,lH as lT,iF as lU,$U as lV,WH as lW,UB as lX,GH as lY,wN as lZ,_5 as l_,bD as la,vD as lb,qL as lc,jL as ld,QL as le,XL as lf,y6 as lg,_6 as lh,ur as li,ib as lj,YB as lk,b$ as ll,l$ as lm,b5 as ln,JG as lo,QG as lp,a$ as lq,YG as lr,XG as ls,xU as lt,O4 as lu,k4 as lv,CF as lw,PB as lx,TF as ly,w5 as lz,Hl as m,DG as m$,oH as m0,cH as m1,rH as m2,iH as m3,FB as m4,UH as m5,HB as m6,sH as m7,BH as m8,HH as m9,v6 as mA,S6 as mB,E6 as mC,Y1 as mD,C$ as mE,A$ as mF,QB as mG,R$ as mH,b2 as mI,_2 as mJ,m2 as mK,y2 as mL,S5 as mM,Y3 as mN,p4 as mO,D2 as mP,IF as mQ,u$ as mR,PF as mS,NF as mT,LF as mU,kF as mV,MF as mW,OF as mX,p$ as mY,xF as mZ,d$ as m_,y5 as ma,N2 as mb,BB as mc,FH as md,XH as me,$H as mf,ZB as mg,x$ as mh,GB as mi,bH as mj,RH as mk,xH as ml,IH as mm,OH as mn,DB as mo,_H as mp,x4 as mq,vF as mr,GF as ms,n2 as mt,DF as mu,XB as mv,E2 as mw,T6 as mx,w6 as my,b6 as mz,cs as n,EU as n$,GG as n0,OG as n1,kG as n2,NG as n3,LG as n4,FG as n5,BG as n6,HG as n7,UG as n8,xG as n9,BD as nA,UD as nB,bA as nC,iN as nD,wD as nE,TD as nF,AF as nG,sF as nH,nF as nI,RF as nJ,F3 as nK,B3 as nL,e2 as nM,MD as nN,J1 as nO,TU as nP,CU as nQ,wU as nR,zG as nS,VG as nT,UL as nU,FL as nV,Jp as nW,GA as nX,rv as nY,_U as nZ,bU as n_,IG as na,AG as nb,RG as nc,dL as nd,MG as ne,PG as nf,CD as ng,AD as nh,RD as ni,xD as nj,OD as nk,ID as nl,kD as nm,H3 as nn,zH as no,VH as np,qH as nq,jH as nr,KH as ns,YH as nt,GD as nu,DD as nv,z5 as nw,FD as nx,HD as ny,W5 as nz,Fp as o,vU as o0,SU as o1,LD as o2,PD as o3,ND as o4,Rp as o5,cN as o6,B1 as o7,Ds as p,Gl as q,It as r,Iy as s,My as t,yo as u,ZT as v,Gs as w,mi as x,OC as y,Zl as z};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.