@syntrologie/runtime-sdk 2.18.0 → 2.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
- var Lf=Object.defineProperty;var Ff=r=>{throw TypeError(r)};var Q0=(r,e,t)=>e in r?Lf(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var ex=(r,e)=>{for(var t in e)Lf(r,t,{get:e[t],enumerable:!0})};var we=(r,e,t)=>Q0(r,typeof e!="symbol"?e+"":e,t),Ic=(r,e,t)=>e.has(r)||Ff("Cannot "+t);var q=(r,e,t)=>(Ic(r,e,"read from private field"),t?t.call(r):e.get(r)),ve=(r,e,t)=>e.has(r)?Ff("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),oe=(r,e,t,n)=>(Ic(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),xe=(r,e,t)=>(Ic(r,e,"access private method"),t);var $c=(r,e,t,n)=>({set _(i){oe(r,e,i,t)},get _(){return q(r,e,n)}});function tx(r,e,t,n){let i=n?.maxRetries??3,s=n?.debounceMs??50,o=r.parentElement??e.parentElement;if(!o)return()=>{};let a=0,l=null,c=!1,u=new MutationObserver(p=>{if(!c){for(let h of p)for(let f of h.removedNodes)if(f===r){if(a>=i){u.disconnect(),c=!0;return}l&&clearTimeout(l),l=setTimeout(()=>{if(!c){if(!e.isConnected){u.disconnect(),c=!0;return}a++;try{t()}catch{u.disconnect(),c=!0}}},s);return}}});return u.observe(o,{childList:!0,subtree:!0}),()=>{c=!0,u.disconnect(),l&&clearTimeout(l)}}var rx=new Set(["b","strong","i","em","u","span","div","p","br","ul","ol","li","code","pre","small","sup","sub","a","button","svg","path","circle","line","polyline","polygon","rect","g"]);function Df(r){if(typeof window.Sanitizer=="function")try{let l=new window.Sanitizer({}).sanitizeToFragment(r),c=document.createElement("div");return c.append(l),c.innerHTML}catch{}let t=document.createElement("template");t.innerHTML=r;let n=t.content,i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,null),s=[];for(;i.nextNode();){let a=i.currentNode,l=a.tagName.toLowerCase();if(!rx.has(l)){s.push(a);continue}for(let c of Array.from(a.attributes)){let u=c.name.toLowerCase(),p=c.value.trim().toLowerCase(),h=u.startsWith("on"),v=(u==="href"||u==="src"||u==="formaction")&&(p.startsWith("javascript:")||p.startsWith("vbscript:")||p.startsWith("data:text/html"));(h||v)&&a.removeAttribute(c.name)}}let o=Array.from(n.querySelectorAll("svg"));for(let a of o)s.some(l=>a.contains(l)&&l.tagName.toLowerCase()==="script")&&s.push(a);for(let a of s){for(;a.firstChild;)a.parentNode?.insertBefore(a.firstChild,a);a.remove()}return t.innerHTML}var Hf=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=Df(r.html),i="data-syntro-insert-label",s=r.label;if(s){let p=CSS.escape(s),f=(t.parentElement??t).querySelector(`[${i}="${p}"]`);f&&f.remove()}let o=document.createElement("div");o.setAttribute("data-syntro-action-id",e.generateId()),s&&o.setAttribute(i,s),o.innerHTML=n;let a=null;switch(r.position){case"before":t.insertAdjacentElement("beforebegin",o);break;case"after":t.insertAdjacentElement("afterend",o);break;case"prepend":t.insertBefore(o,t.firstChild);break;case"append":t.appendChild(o);break;case"replace":a=t.innerHTML,t.replaceWith(o);break}let l=null;if(r.deepLink){let{tileId:p,itemId:h}=r.deepLink;l=()=>{let f=window.SynOS?.handle;f&&(f.open(),f.runtime?.events?.publish("notification.deep_link",{tileId:p,itemId:h}))},o.style.cursor="pointer",o.addEventListener("click",l)}e.publishEvent("action.applied",{id:e.generateId(),kind:"content:insertHtml",anchorId:r.anchorId,position:r.position});let u=tx(o,t,()=>{switch(r.position){case"before":t.insertAdjacentElement("beforebegin",o);break;case"after":t.insertAdjacentElement("afterend",o);break;case"prepend":t.insertBefore(o,t.firstChild);break;case"append":t.appendChild(o);break;case"replace":break}});return{cleanup:()=>{if(l&&o.removeEventListener("click",l),u(),!!o.isConnected)try{if(r.position==="replace"&&a!==null){let p=document.createElement(t.tagName);p.innerHTML=a,Array.from(t.attributes).forEach(h=>{p.setAttribute(h.name,h.value)}),o.replaceWith(p)}else o.remove()}catch{}},updateFn:p=>{"html"in p&&typeof p.html=="string"&&(o.innerHTML=Df(p.html))}}};function Bf(r){if(r.children.length===0)return r;let e=Array.from(r.children).filter(t=>t.textContent?.trim());if(e.length===1){let t=e[0];if(t.textContent?.trim()===r.textContent?.trim())return Bf(t)}return r}var Vf=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=Bf(t),i=n.textContent??"";return n.textContent=r.text,e.publishEvent("action.applied",{id:e.generateId(),kind:"content:setText",anchorId:r.anchorId}),{cleanup:()=>{t.isConnected&&(n.textContent=i)},updateFn:s=>{"text"in s&&typeof s.text=="string"&&(n.textContent=s.text)}}},jf=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=r.attr.toLowerCase();if(n.startsWith("on"))throw new Error(`Dangerous attribute not allowed: ${r.attr}`);if(n==="href"||n==="src"||n==="formaction"){let a=r.value.trim().toLowerCase();if(a.startsWith("javascript:")||a.startsWith("vbscript:")||a.startsWith("data:text/html"))throw new Error(`Dangerous URL not allowed in ${r.attr}: ${r.value}`)}let s=t.getAttribute(r.attr),o=t.hasAttribute(r.attr);return t.setAttribute(r.attr,r.value),e.publishEvent("action.applied",{id:e.generateId(),kind:"content:setAttr",anchorId:r.anchorId,attr:r.attr}),{cleanup:()=>{t.isConnected&&(o&&s!==null?t.setAttribute(r.attr,s):t.removeAttribute(r.attr))},updateFn:a=>{"value"in a&&typeof a.value=="string"&&t.setAttribute(r.attr,a.value)}}},Uf=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=t.classList.contains(r.className);return t.classList.add(r.className),e.publishEvent("action.applied",{id:e.generateId(),kind:"content:addClass",anchorId:r.anchorId,className:r.className}),{cleanup:()=>{t.isConnected&&(n||t.classList.remove(r.className))}}},Wf=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=t.classList.contains(r.className);return t.classList.remove(r.className),e.publishEvent("action.applied",{id:e.generateId(),kind:"content:removeClass",anchorId:r.anchorId,className:r.className}),{cleanup:()=>{t.isConnected&&n&&t.classList.add(r.className)}}},zf=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=new Map;for(let i of Object.keys(r.styles)){let s=t.style.getPropertyValue(i);n.set(i,s)}for(let[i,s]of Object.entries(r.styles))t.style.setProperty(i,s);return e.publishEvent("action.applied",{id:e.generateId(),kind:"content:setStyle",anchorId:r.anchorId,styles:Object.keys(r.styles)}),{cleanup:()=>{if(t.isConnected)for(let[i,s]of n)s?t.style.setProperty(i,s):t.style.removeProperty(i)},updateFn:i=>{if("styles"in i&&typeof i.styles=="object"&&i.styles)for(let[s,o]of Object.entries(i.styles))t.style.setProperty(s,o)}}},Mc=[{kind:"content:insertHtml",executor:Hf},{kind:"content:setText",executor:Vf},{kind:"content:setAttr",executor:jf},{kind:"content:addClass",executor:Uf},{kind:"content:removeClass",executor:Wf},{kind:"content:setStyle",executor:zf}],Oc={id:"adaptive-content",version:"1.0.0",name:"Content",description:"DOM manipulation for text, attributes, and styles",executors:Mc};var qf=r=>{throw TypeError(r)},Zf=(r,e,t)=>e.has(r)||qf("Cannot "+t),Ue=(r,e,t)=>(Zf(r,e,"read from private field"),t?t.call(r):e.get(r)),Lr=(r,e,t)=>e.has(r)?qf("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),ur=(r,e,t,n)=>(Zf(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var Yf=["top","right","bottom","left"];var Fr=Math.min,dr=Math.max,Xi=Math.round,Ji=Math.floor,Ot=r=>({x:r,y:r}),nx={left:"right",right:"left",bottom:"top",top:"bottom"},ix={start:"end",end:"start"};function aa(r,e,t){return dr(r,Fr(e,t))}function un(r,e){return typeof r=="function"?r(e):r}function Dr(r){return r.split("-")[0]}function ri(r){return r.split("-")[1]}function Pc(r){return r==="x"?"y":"x"}function la(r){return r==="y"?"height":"width"}var sx=new Set(["top","bottom"]);function pr(r){return sx.has(Dr(r))?"y":"x"}function ca(r){return Pc(pr(r))}function Xf(r,e,t){t===void 0&&(t=!1);let n=ri(r),i=ca(r),s=la(i),o=i==="x"?n===(t?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=Yi(o)),[o,Yi(o)]}function Jf(r){let e=Yi(r);return[oa(r),e,oa(e)]}function oa(r){return r.replace(/start|end/g,e=>ix[e])}var Gf=["left","right"],Kf=["right","left"],ox=["top","bottom"],ax=["bottom","top"];function lx(r,e,t){switch(r){case"top":case"bottom":return t?e?Kf:Gf:e?Gf:Kf;case"left":case"right":return e?ox:ax;default:return[]}}function Qf(r,e,t,n){let i=ri(r),s=lx(Dr(r),t==="start",n);return i&&(s=s.map(o=>o+"-"+i),e&&(s=s.concat(s.map(oa)))),s}function Yi(r){return r.replace(/left|right|bottom|top/g,e=>nx[e])}function cx(r){return{top:0,right:0,bottom:0,left:0,...r}}function Nc(r){return typeof r!="number"?cx(r):{top:r,right:r,bottom:r,left:r}}function dn(r){let{x:e,y:t,width:n,height:i}=r;return{width:n,height:i,top:t,left:e,right:e+n,bottom:t+i,x:e,y:t}}function eg(r,e,t){let{reference:n,floating:i}=r,s=pr(e),o=ca(e),a=la(o),l=Dr(e),c=s==="y",u=n.x+n.width/2-i.width/2,p=n.y+n.height/2-i.height/2,h=n[a]/2-i[a]/2,f;switch(l){case"top":f={x:u,y:n.y-i.height};break;case"bottom":f={x:u,y:n.y+n.height};break;case"right":f={x:n.x+n.width,y:p};break;case"left":f={x:n.x-i.width,y:p};break;default:f={x:n.x,y:n.y}}switch(ri(e)){case"start":f[o]-=h*(t&&c?-1:1);break;case"end":f[o]+=h*(t&&c?-1:1);break}return f}async function ng(r,e){var t;e===void 0&&(e={});let{x:n,y:i,platform:s,rects:o,elements:a,strategy:l}=r,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:p="floating",altBoundary:h=!1,padding:f=0}=un(e,r),v=Nc(f),m=a[h?p==="floating"?"reference":"floating":p],y=dn(await s.getClippingRect({element:(t=await(s.isElement==null?void 0:s.isElement(m)))==null||t?m:m.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:l})),x=p==="floating"?{x:n,y:i,width:o.floating.width,height:o.floating.height}:o.reference,S=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),b=await(s.isElement==null?void 0:s.isElement(S))?await(s.getScale==null?void 0:s.getScale(S))||{x:1,y:1}:{x:1,y:1},w=dn(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:x,offsetParent:S,strategy:l}):x);return{top:(y.top-w.top+v.top)/b.y,bottom:(w.bottom-y.bottom+v.bottom)/b.y,left:(y.left-w.left+v.left)/b.x,right:(w.right-y.right+v.right)/b.x}}var ig=async(r,e,t)=>{let{placement:n="bottom",strategy:i="absolute",middleware:s=[],platform:o}=t,a=s.filter(Boolean),l=await(o.isRTL==null?void 0:o.isRTL(e)),c=await o.getElementRects({reference:r,floating:e,strategy:i}),{x:u,y:p}=eg(c,n,l),h=n,f={},v=0;for(let m=0;m<a.length;m++){var g;let{name:y,fn:x}=a[m],{x:S,y:b,data:w,reset:C}=await x({x:u,y:p,initialPlacement:n,placement:h,strategy:i,middlewareData:f,rects:c,platform:{...o,detectOverflow:(g=o.detectOverflow)!=null?g:ng},elements:{reference:r,floating:e}});u=S??u,p=b??p,f={...f,[y]:{...f[y],...w}},C&&v<=50&&(v++,typeof C=="object"&&(C.placement&&(h=C.placement),C.rects&&(c=C.rects===!0?await o.getElementRects({reference:r,floating:e,strategy:i}):C.rects),{x:u,y:p}=eg(c,h,l)),m=-1)}return{x:u,y:p,placement:h,strategy:i,middlewareData:f}},sg=r=>({name:"arrow",options:r,async fn(e){let{x:t,y:n,placement:i,rects:s,platform:o,elements:a,middlewareData:l}=e,{element:c,padding:u=0}=un(r,e)||{};if(c==null)return{};let p=Nc(u),h={x:t,y:n},f=ca(i),v=la(f),g=await o.getDimensions(c),m=f==="y",y=m?"top":"left",x=m?"bottom":"right",S=m?"clientHeight":"clientWidth",b=s.reference[v]+s.reference[f]-h[f]-s.floating[v],w=h[f]-s.reference[f],C=await(o.getOffsetParent==null?void 0:o.getOffsetParent(c)),_=C?C[S]:0;(!_||!await(o.isElement==null?void 0:o.isElement(C)))&&(_=a.floating[S]||s.floating[v]);let A=b/2-w/2,$=_/2-g[v]/2-1,T=Fr(p[y],$),O=Fr(p[x],$),Y=T,F=_-g[v]-O,N=_/2-g[v]/2+A,G=aa(Y,N,F),K=!l.arrow&&ri(i)!=null&&N!==G&&s.reference[v]/2-(N<Y?T:O)-g[v]/2<0,le=K?N<Y?N-Y:N-F:0;return{[f]:h[f]+le,data:{[f]:G,centerOffset:N-G-le,...K&&{alignmentOffset:le}},reset:K}}});var og=function(r){return r===void 0&&(r={}),{name:"flip",options:r,async fn(e){var t,n;let{placement:i,middlewareData:s,rects:o,initialPlacement:a,platform:l,elements:c}=e,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:h,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:g=!0,...m}=un(r,e);if((t=s.arrow)!=null&&t.alignmentOffset)return{};let y=Dr(i),x=pr(a),S=Dr(a)===a,b=await(l.isRTL==null?void 0:l.isRTL(c.floating)),w=h||(S||!g?[Yi(a)]:Jf(a)),C=v!=="none";!h&&C&&w.push(...Qf(a,g,v,b));let _=[a,...w],A=await l.detectOverflow(e,m),$=[],T=((n=s.flip)==null?void 0:n.overflows)||[];if(u&&$.push(A[y]),p){let N=Xf(i,o,b);$.push(A[N[0]],A[N[1]])}if(T=[...T,{placement:i,overflows:$}],!$.every(N=>N<=0)){var O,Y;let N=(((O=s.flip)==null?void 0:O.index)||0)+1,G=_[N];if(G&&(!(p==="alignment"?x!==pr(G):!1)||T.every(U=>pr(U.placement)===x?U.overflows[0]>0:!0)))return{data:{index:N,overflows:T},reset:{placement:G}};let K=(Y=T.filter(le=>le.overflows[0]<=0).sort((le,U)=>le.overflows[1]-U.overflows[1])[0])==null?void 0:Y.placement;if(!K)switch(f){case"bestFit":{var F;let le=(F=T.filter(U=>{if(C){let Q=pr(U.placement);return Q===x||Q==="y"}return!0}).map(U=>[U.placement,U.overflows.filter(Q=>Q>0).reduce((Q,De)=>Q+De,0)]).sort((U,Q)=>U[1]-Q[1])[0])==null?void 0:F[0];le&&(K=le);break}case"initialPlacement":K=a;break}if(i!==K)return{reset:{placement:K}}}return{}}}};function tg(r,e){return{top:r.top-e.height,right:r.right-e.width,bottom:r.bottom-e.height,left:r.left-e.width}}function rg(r){return Yf.some(e=>r[e]>=0)}var ag=function(r){return r===void 0&&(r={}),{name:"hide",options:r,async fn(e){let{rects:t,platform:n}=e,{strategy:i="referenceHidden",...s}=un(r,e);switch(i){case"referenceHidden":{let o=await n.detectOverflow(e,{...s,elementContext:"reference"}),a=tg(o,t.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:rg(a)}}}case"escaped":{let o=await n.detectOverflow(e,{...s,altBoundary:!0}),a=tg(o,t.floating);return{data:{escapedOffsets:a,escaped:rg(a)}}}default:return{}}}}};var ux=new Set(["left","top"]);async function dx(r,e){let{placement:t,platform:n,elements:i}=r,s=await(n.isRTL==null?void 0:n.isRTL(i.floating)),o=Dr(t),a=ri(t),l=pr(t)==="y",c=ux.has(o)?-1:1,u=s&&l?-1:1,p=un(e,r),{mainAxis:h,crossAxis:f,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return a&&typeof v=="number"&&(f=a==="end"?v*-1:v),l?{x:f*u,y:h*c}:{x:h*c,y:f*u}}var lg=function(r){return r===void 0&&(r=0),{name:"offset",options:r,async fn(e){var t,n;let{x:i,y:s,placement:o,middlewareData:a}=e,l=await dx(e,r);return o===((t=a.offset)==null?void 0:t.placement)&&(n=a.arrow)!=null&&n.alignmentOffset?{}:{x:i+l.x,y:s+l.y,data:{...l,placement:o}}}}},cg=function(r){return r===void 0&&(r={}),{name:"shift",options:r,async fn(e){let{x:t,y:n,placement:i,platform:s}=e,{mainAxis:o=!0,crossAxis:a=!1,limiter:l={fn:y=>{let{x,y:S}=y;return{x,y:S}}},...c}=un(r,e),u={x:t,y:n},p=await s.detectOverflow(e,c),h=pr(Dr(i)),f=Pc(h),v=u[f],g=u[h];if(o){let y=f==="y"?"top":"left",x=f==="y"?"bottom":"right",S=v+p[y],b=v-p[x];v=aa(S,v,b)}if(a){let y=h==="y"?"top":"left",x=h==="y"?"bottom":"right",S=g+p[y],b=g-p[x];g=aa(S,g,b)}let m=l.fn({...e,[f]:v,[h]:g});return{...m,data:{x:m.x-t,y:m.y-n,enabled:{[f]:o,[h]:a}}}}}};function ua(){return typeof window<"u"}function pn(r){return dg(r)?(r.nodeName||"").toLowerCase():"#document"}function pt(r){var e;return(r==null||(e=r.ownerDocument)==null?void 0:e.defaultView)||window}function Pt(r){var e;return(e=(dg(r)?r.ownerDocument:r.document)||window.document)==null?void 0:e.documentElement}function dg(r){return ua()?r instanceof Node||r instanceof pt(r).Node:!1}function St(r){return ua()?r instanceof Element||r instanceof pt(r).Element:!1}function Nt(r){return ua()?r instanceof HTMLElement||r instanceof pt(r).HTMLElement:!1}function ug(r){return!ua()||typeof ShadowRoot>"u"?!1:r instanceof ShadowRoot||r instanceof pt(r).ShadowRoot}var px=new Set(["inline","contents"]);function ii(r){let{overflow:e,overflowX:t,overflowY:n,display:i}=kt(r);return/auto|scroll|overlay|hidden|clip/.test(e+n+t)&&!px.has(i)}var hx=new Set(["table","td","th"]);function pg(r){return hx.has(pn(r))}var fx=[":popover-open",":modal"];function Qi(r){return fx.some(e=>{try{return r.matches(e)}catch{return!1}})}var gx=["transform","translate","scale","rotate","perspective"],mx=["transform","translate","scale","rotate","perspective","filter"],vx=["paint","layout","strict","content"];function da(r){let e=pa(),t=St(r)?kt(r):r;return gx.some(n=>t[n]?t[n]!=="none":!1)||(t.containerType?t.containerType!=="normal":!1)||!e&&(t.backdropFilter?t.backdropFilter!=="none":!1)||!e&&(t.filter?t.filter!=="none":!1)||mx.some(n=>(t.willChange||"").includes(n))||vx.some(n=>(t.contain||"").includes(n))}function hg(r){let e=hr(r);for(;Nt(e)&&!hn(e);){if(da(e))return e;if(Qi(e))return null;e=hr(e)}return null}function pa(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}var yx=new Set(["html","body","#document"]);function hn(r){return yx.has(pn(r))}function kt(r){return pt(r).getComputedStyle(r)}function es(r){return St(r)?{scrollLeft:r.scrollLeft,scrollTop:r.scrollTop}:{scrollLeft:r.scrollX,scrollTop:r.scrollY}}function hr(r){if(pn(r)==="html")return r;let e=r.assignedSlot||r.parentNode||ug(r)&&r.host||Pt(r);return ug(e)?e.host:e}function fg(r){let e=hr(r);return hn(e)?r.ownerDocument?r.ownerDocument.body:r.body:Nt(e)&&ii(e)?e:fg(e)}function ni(r,e,t){var n;e===void 0&&(e=[]),t===void 0&&(t=!0);let i=fg(r),s=i===((n=r.ownerDocument)==null?void 0:n.body),o=pt(i);if(s){let a=ha(o);return e.concat(o,o.visualViewport||[],ii(i)?i:[],a&&t?ni(a):[])}return e.concat(i,ni(i,[],t))}function ha(r){return r.parent&&Object.getPrototypeOf(r.parent)?r.frameElement:null}function yg(r){let e=kt(r),t=parseFloat(e.width)||0,n=parseFloat(e.height)||0,i=Nt(r),s=i?r.offsetWidth:t,o=i?r.offsetHeight:n,a=Xi(t)!==s||Xi(n)!==o;return a&&(t=s,n=o),{width:t,height:n,$:a}}function Fc(r){return St(r)?r:r.contextElement}function si(r){let e=Fc(r);if(!Nt(e))return Ot(1);let t=e.getBoundingClientRect(),{width:n,height:i,$:s}=yg(e),o=(s?Xi(t.width):t.width)/n,a=(s?Xi(t.height):t.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}var bx=Ot(0);function bg(r){let e=pt(r);return!pa()||!e.visualViewport?bx:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function _x(r,e,t){return e===void 0&&(e=!1),!t||e&&t!==pt(r)?!1:e}function fn(r,e,t,n){e===void 0&&(e=!1),t===void 0&&(t=!1);let i=r.getBoundingClientRect(),s=Fc(r),o=Ot(1);e&&(n?St(n)&&(o=si(n)):o=si(r));let a=_x(s,t,n)?bg(s):Ot(0),l=(i.left+a.x)/o.x,c=(i.top+a.y)/o.y,u=i.width/o.x,p=i.height/o.y;if(s){let h=pt(s),f=n&&St(n)?pt(n):n,v=h,g=ha(v);for(;g&&n&&f!==v;){let m=si(g),y=g.getBoundingClientRect(),x=kt(g),S=y.left+(g.clientLeft+parseFloat(x.paddingLeft))*m.x,b=y.top+(g.clientTop+parseFloat(x.paddingTop))*m.y;l*=m.x,c*=m.y,u*=m.x,p*=m.y,l+=S,c+=b,v=pt(g),g=ha(v)}}return dn({width:u,height:p,x:l,y:c})}function fa(r,e){let t=es(r).scrollLeft;return e?e.left+t:fn(Pt(r)).left+t}function _g(r,e){let t=r.getBoundingClientRect(),n=t.left+e.scrollLeft-fa(r,t),i=t.top+e.scrollTop;return{x:n,y:i}}function xx(r){let{elements:e,rect:t,offsetParent:n,strategy:i}=r,s=i==="fixed",o=Pt(n),a=e?Qi(e.floating):!1;if(n===o||a&&s)return t;let l={scrollLeft:0,scrollTop:0},c=Ot(1),u=Ot(0),p=Nt(n);if((p||!p&&!s)&&((pn(n)!=="body"||ii(o))&&(l=es(n)),Nt(n))){let f=fn(n);c=si(n),u.x=f.x+n.clientLeft,u.y=f.y+n.clientTop}let h=o&&!p&&!s?_g(o,l):Ot(0);return{width:t.width*c.x,height:t.height*c.y,x:t.x*c.x-l.scrollLeft*c.x+u.x+h.x,y:t.y*c.y-l.scrollTop*c.y+u.y+h.y}}function wx(r){return Array.from(r.getClientRects())}function Sx(r){let e=Pt(r),t=es(r),n=r.ownerDocument.body,i=dr(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),s=dr(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),o=-t.scrollLeft+fa(r),a=-t.scrollTop;return kt(n).direction==="rtl"&&(o+=dr(e.clientWidth,n.clientWidth)-i),{width:i,height:s,x:o,y:a}}var gg=25;function kx(r,e){let t=pt(r),n=Pt(r),i=t.visualViewport,s=n.clientWidth,o=n.clientHeight,a=0,l=0;if(i){s=i.width,o=i.height;let u=pa();(!u||u&&e==="fixed")&&(a=i.offsetLeft,l=i.offsetTop)}let c=fa(n);if(c<=0){let u=n.ownerDocument,p=u.body,h=getComputedStyle(p),f=u.compatMode==="CSS1Compat"&&parseFloat(h.marginLeft)+parseFloat(h.marginRight)||0,v=Math.abs(n.clientWidth-p.clientWidth-f);v<=gg&&(s-=v)}else c<=gg&&(s+=c);return{width:s,height:o,x:a,y:l}}var Ex=new Set(["absolute","fixed"]);function Cx(r,e){let t=fn(r,!0,e==="fixed"),n=t.top+r.clientTop,i=t.left+r.clientLeft,s=Nt(r)?si(r):Ot(1),o=r.clientWidth*s.x,a=r.clientHeight*s.y,l=i*s.x,c=n*s.y;return{width:o,height:a,x:l,y:c}}function mg(r,e,t){let n;if(e==="viewport")n=kx(r,t);else if(e==="document")n=Sx(Pt(r));else if(St(e))n=Cx(e,t);else{let i=bg(r);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return dn(n)}function xg(r,e){let t=hr(r);return t===e||!St(t)||hn(t)?!1:kt(t).position==="fixed"||xg(t,e)}function Ax(r,e){let t=e.get(r);if(t)return t;let n=ni(r,[],!1).filter(a=>St(a)&&pn(a)!=="body"),i=null,s=kt(r).position==="fixed",o=s?hr(r):r;for(;St(o)&&!hn(o);){let a=kt(o),l=da(o);!l&&a.position==="fixed"&&(i=null),(s?!l&&!i:!l&&a.position==="static"&&!!i&&Ex.has(i.position)||ii(o)&&!l&&xg(r,o))?n=n.filter(u=>u!==o):i=a,o=hr(o)}return e.set(r,n),n}function Rx(r){let{element:e,boundary:t,rootBoundary:n,strategy:i}=r,o=[...t==="clippingAncestors"?Qi(e)?[]:Ax(e,this._c):[].concat(t),n],a=o[0],l=o.reduce((c,u)=>{let p=mg(e,u,i);return c.top=dr(p.top,c.top),c.right=Fr(p.right,c.right),c.bottom=Fr(p.bottom,c.bottom),c.left=dr(p.left,c.left),c},mg(e,a,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function Tx(r){let{width:e,height:t}=yg(r);return{width:e,height:t}}function Ix(r,e,t){let n=Nt(e),i=Pt(e),s=t==="fixed",o=fn(r,!0,s,e),a={scrollLeft:0,scrollTop:0},l=Ot(0);function c(){l.x=fa(i)}if(n||!n&&!s)if((pn(e)!=="body"||ii(i))&&(a=es(e)),n){let f=fn(e,!0,s,e);l.x=f.x+e.clientLeft,l.y=f.y+e.clientTop}else i&&c();s&&!n&&i&&c();let u=i&&!n&&!s?_g(i,a):Ot(0),p=o.left+a.scrollLeft-l.x-u.x,h=o.top+a.scrollTop-l.y-u.y;return{x:p,y:h,width:o.width,height:o.height}}function Lc(r){return kt(r).position==="static"}function vg(r,e){if(!Nt(r)||kt(r).position==="fixed")return null;if(e)return e(r);let t=r.offsetParent;return Pt(r)===t&&(t=t.ownerDocument.body),t}function wg(r,e){let t=pt(r);if(Qi(r))return t;if(!Nt(r)){let i=hr(r);for(;i&&!hn(i);){if(St(i)&&!Lc(i))return i;i=hr(i)}return t}let n=vg(r,e);for(;n&&pg(n)&&Lc(n);)n=vg(n,e);return n&&hn(n)&&Lc(n)&&!da(n)?t:n||hg(r)||t}var $x=async function(r){let e=this.getOffsetParent||wg,t=this.getDimensions,n=await t(r.floating);return{reference:Ix(r.reference,await e(r.floating),r.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function Mx(r){return kt(r).direction==="rtl"}var Ox={convertOffsetParentRelativeRectToViewportRelativeRect:xx,getDocumentElement:Pt,getClippingRect:Rx,getOffsetParent:wg,getElementRects:$x,getClientRects:wx,getDimensions:Tx,getScale:si,isElement:St,isRTL:Mx};function Sg(r,e){return r.x===e.x&&r.y===e.y&&r.width===e.width&&r.height===e.height}function Px(r,e){let t=null,n,i=Pt(r);function s(){var a;clearTimeout(n),(a=t)==null||a.disconnect(),t=null}function o(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),s();let c=r.getBoundingClientRect(),{left:u,top:p,width:h,height:f}=c;if(a||e(),!h||!f)return;let v=Ji(p),g=Ji(i.clientWidth-(u+h)),m=Ji(i.clientHeight-(p+f)),y=Ji(u),S={rootMargin:-v+"px "+-g+"px "+-m+"px "+-y+"px",threshold:dr(0,Fr(1,l))||1},b=!0;function w(C){let _=C[0].intersectionRatio;if(_!==l){if(!b)return o();_?o(!1,_):n=setTimeout(()=>{o(!1,1e-7)},1e3)}_===1&&!Sg(c,r.getBoundingClientRect())&&o(),b=!1}try{t=new IntersectionObserver(w,{...S,root:i.ownerDocument})}catch{t=new IntersectionObserver(w,S)}t.observe(r)}return o(!0),s}function ga(r,e,t,n){n===void 0&&(n={});let{ancestorScroll:i=!0,ancestorResize:s=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=n,c=Fc(r),u=i||s?[...c?ni(c):[],...ni(e)]:[];u.forEach(y=>{i&&y.addEventListener("scroll",t,{passive:!0}),s&&y.addEventListener("resize",t)});let p=c&&a?Px(c,t):null,h=-1,f=null;o&&(f=new ResizeObserver(y=>{let[x]=y;x&&x.target===c&&f&&(f.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var S;(S=f)==null||S.observe(e)})),t()}),c&&!l&&f.observe(c),f.observe(e));let v,g=l?fn(r):null;l&&m();function m(){let y=fn(r);g&&!Sg(g,y)&&t(),g=y,v=requestAnimationFrame(m)}return t(),()=>{var y;u.forEach(x=>{i&&x.removeEventListener("scroll",t),s&&x.removeEventListener("resize",t)}),p?.(),(y=f)==null||y.disconnect(),f=null,l&&cancelAnimationFrame(v)}}var ma=lg;var va=cg,ya=og;var kg=ag,Eg=sg;var ba=(r,e,t)=>{let n=new Map,i={platform:Ox,...t},s={...i.platform,_c:n};return ig(r,e,{...i,platform:s})};var _a=globalThis,xa=_a.ShadowRoot&&(_a.ShadyCSS===void 0||_a.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Dc=Symbol(),Cg=new WeakMap,ts=class{constructor(e,t,n){if(this._$cssResult$=!0,n!==Dc)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(xa&&e===void 0){let n=t!==void 0&&t.length===1;n&&(e=Cg.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&Cg.set(t,e))}return e}toString(){return this.cssText}},Ag=r=>new ts(typeof r=="string"?r:r+"",void 0,Dc),gn=(r,...e)=>{let t=r.length===1?r[0]:e.reduce((n,i,s)=>n+(o=>{if(o._$cssResult$===!0)return o.cssText;if(typeof o=="number")return o;throw Error("Value passed to 'css' function must be a 'css' function result: "+o+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+r[s+1],r[0]);return new ts(t,r,Dc)},Rg=(r,e)=>{if(xa)r.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let n=document.createElement("style"),i=_a.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=t.cssText,r.appendChild(n)}},Hc=xa?r=>r:r=>r instanceof CSSStyleSheet?(e=>{let t="";for(let n of e.cssRules)t+=n.cssText;return Ag(t)})(r):r;var{is:Nx,defineProperty:Lx,getOwnPropertyDescriptor:Fx,getOwnPropertyNames:Dx,getOwnPropertySymbols:Hx,getPrototypeOf:Bx}=Object,Hr=globalThis,Tg=Hr.trustedTypes,Vx=Tg?Tg.emptyScript:"",jx=Hr.reactiveElementPolyfillSupport,rs=(r,e)=>r,Bc={toAttribute(r,e){switch(e){case Boolean:r=r?Vx:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,e){let t=r;switch(e){case Boolean:t=r!==null;break;case Number:t=r===null?null:Number(r);break;case Object:case Array:try{t=JSON.parse(r)}catch{t=null}}return t}},$g=(r,e)=>!Nx(r,e),Ig={attribute:!0,type:String,converter:Bc,reflect:!1,useDefault:!1,hasChanged:$g};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Hr.litPropertyMetadata??(Hr.litPropertyMetadata=new WeakMap);var fr=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??(this.l=[])).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=Ig){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let n=Symbol(),i=this.getPropertyDescriptor(e,n,t);i!==void 0&&Lx(this.prototype,e,i)}}static getPropertyDescriptor(e,t,n){let{get:i,set:s}=Fx(this.prototype,e)??{get(){return this[t]},set(o){this[t]=o}};return{get:i,set(o){let a=i?.call(this);s?.call(this,o),this.requestUpdate(e,a,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??Ig}static _$Ei(){if(this.hasOwnProperty(rs("elementProperties")))return;let e=Bx(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(rs("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(rs("properties"))){let t=this.properties,n=[...Dx(t),...Hx(t)];for(let i of n)this.createProperty(i,t[i])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[n,i]of t)this.elementProperties.set(n,i)}this._$Eh=new Map;for(let[t,n]of this.elementProperties){let i=this._$Eu(t,n);i!==void 0&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let n=new Set(e.flat(1/0).reverse());for(let i of n)t.unshift(Hc(i))}else e!==void 0&&t.push(Hc(e));return t}static _$Eu(e,t){let n=t.attribute;return n===!1?void 0:typeof n=="string"?n:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??(this._$EO=new Set)).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let n of t.keys())this.hasOwnProperty(n)&&(e.set(n,this[n]),delete this[n]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return Rg(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,n){this._$AK(e,n)}_$ET(e,t){let n=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,n);if(i!==void 0&&n.reflect===!0){let s=(n.converter?.toAttribute!==void 0?n.converter:Bc).toAttribute(t,n.type);this._$Em=e,s==null?this.removeAttribute(i):this.setAttribute(i,s),this._$Em=null}}_$AK(e,t){let n=this.constructor,i=n._$Eh.get(e);if(i!==void 0&&this._$Em!==i){let s=n.getPropertyOptions(i),o=typeof s.converter=="function"?{fromAttribute:s.converter}:s.converter?.fromAttribute!==void 0?s.converter:Bc;this._$Em=i;let a=o.fromAttribute(t,s.type);this[i]=a??this._$Ej?.get(i)??a,this._$Em=null}}requestUpdate(e,t,n,i=!1,s){if(e!==void 0){let o=this.constructor;if(i===!1&&(s=this[e]),n??(n=o.getPropertyOptions(e)),!((n.hasChanged??$g)(s,t)||n.useDefault&&n.reflect&&s===this._$Ej?.get(e)&&!this.hasAttribute(o._$Eu(e,n))))return;this.C(e,t,n)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:n,reflect:i,wrapped:s},o){n&&!(this._$Ej??(this._$Ej=new Map)).has(e)&&(this._$Ej.set(e,o??t??this[e]),s!==!0||o!==void 0)||(this._$AL.has(e)||(this.hasUpdated||n||(t=void 0),this._$AL.set(e,t)),i===!0&&this._$Em!==e&&(this._$Eq??(this._$Eq=new Set)).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(let[i,s]of this._$Ep)this[i]=s;this._$Ep=void 0}let n=this.constructor.elementProperties;if(n.size>0)for(let[i,s]of n){let{wrapped:o}=s,a=this[i];o!==!0||this._$AL.has(i)||a===void 0||this.C(i,void 0,s,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(t)):this._$EM()}catch(n){throw e=!1,this._$EM(),n}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&(this._$Eq=this._$Eq.forEach(t=>this._$ET(t,this[t]))),this._$EM()}updated(e){}firstUpdated(e){}};fr.elementStyles=[],fr.shadowRootOptions={mode:"open"},fr[rs("elementProperties")]=new Map,fr[rs("finalized")]=new Map,jx?.({ReactiveElement:fr}),(Hr.reactiveElementVersions??(Hr.reactiveElementVersions=[])).push("2.1.2");var is=globalThis,Mg=r=>r,wa=is.trustedTypes,Og=wa?wa.createPolicy("lit-html",{createHTML:r=>r}):void 0,Hg="$lit$",Br=`lit$${Math.random().toFixed(9).slice(2)}$`,Bg="?"+Br,Ux=`<${Bg}>`,yn=document,ss=()=>yn.createComment(""),os=r=>r===null||typeof r!="object"&&typeof r!="function",Zc=Array.isArray,Wx=r=>Zc(r)||typeof r?.[Symbol.iterator]=="function",Vc=`[
2
- \f\r]`,ns=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Pg=/-->/g,Ng=/>/g,mn=RegExp(`>|${Vc}(?:([^\\s"'>=/]+)(${Vc}*=${Vc}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),Lg=/'/g,Fg=/"/g,Vg=/^(?:script|style|textarea|title)$/i,Gc=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),L=Gc(1),TR=Gc(2),IR=Gc(3),Lt=Symbol.for("lit-noChange"),J=Symbol.for("lit-nothing"),Dg=new WeakMap,vn=yn.createTreeWalker(yn,129);function jg(r,e){if(!Zc(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return Og!==void 0?Og.createHTML(e):e}var zx=(r,e)=>{let t=r.length-1,n=[],i,s=e===2?"<svg>":e===3?"<math>":"",o=ns;for(let a=0;a<t;a++){let l=r[a],c,u,p=-1,h=0;for(;h<l.length&&(o.lastIndex=h,u=o.exec(l),u!==null);)h=o.lastIndex,o===ns?u[1]==="!--"?o=Pg:u[1]!==void 0?o=Ng:u[2]!==void 0?(Vg.test(u[2])&&(i=RegExp("</"+u[2],"g")),o=mn):u[3]!==void 0&&(o=mn):o===mn?u[0]===">"?(o=i??ns,p=-1):u[1]===void 0?p=-2:(p=o.lastIndex-u[2].length,c=u[1],o=u[3]===void 0?mn:u[3]==='"'?Fg:Lg):o===Fg||o===Lg?o=mn:o===Pg||o===Ng?o=ns:(o=mn,i=void 0);let f=o===mn&&r[a+1].startsWith("/>")?" ":"";s+=o===ns?l+Ux:p>=0?(n.push(c),l.slice(0,p)+Hg+l.slice(p)+Br+f):l+Br+(p===-2?a:f)}return[jg(r,s+(r[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),n]},as=class r{constructor({strings:e,_$litType$:t},n){let i;this.parts=[];let s=0,o=0,a=e.length-1,l=this.parts,[c,u]=zx(e,t);if(this.el=r.createElement(c,n),vn.currentNode=this.el.content,t===2||t===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(i=vn.nextNode())!==null&&l.length<a;){if(i.nodeType===1){if(i.hasAttributes())for(let p of i.getAttributeNames())if(p.endsWith(Hg)){let h=u[o++],f=i.getAttribute(p).split(Br),v=/([.?@])?(.*)/.exec(h);l.push({type:1,index:s,name:v[2],strings:f,ctor:v[1]==="."?Uc:v[1]==="?"?Wc:v[1]==="@"?zc:ai}),i.removeAttribute(p)}else p.startsWith(Br)&&(l.push({type:6,index:s}),i.removeAttribute(p));if(Vg.test(i.tagName)){let p=i.textContent.split(Br),h=p.length-1;if(h>0){i.textContent=wa?wa.emptyScript:"";for(let f=0;f<h;f++)i.append(p[f],ss()),vn.nextNode(),l.push({type:2,index:++s});i.append(p[h],ss())}}}else if(i.nodeType===8)if(i.data===Bg)l.push({type:2,index:s});else{let p=-1;for(;(p=i.data.indexOf(Br,p+1))!==-1;)l.push({type:7,index:s}),p+=Br.length-1}s++}}static createElement(e,t){let n=yn.createElement("template");return n.innerHTML=e,n}};function oi(r,e,t=r,n){if(e===Lt)return e;let i=n!==void 0?t._$Co?.[n]:t._$Cl,s=os(e)?void 0:e._$litDirective$;return i?.constructor!==s&&(i?._$AO?.(!1),s===void 0?i=void 0:(i=new s(r),i._$AT(r,t,n)),n!==void 0?(t._$Co??(t._$Co=[]))[n]=i:t._$Cl=i),i!==void 0&&(e=oi(r,i._$AS(r,e.values),i,n)),e}var jc=class{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){let{el:{content:t},parts:n}=this._$AD,i=(e?.creationScope??yn).importNode(t,!0);vn.currentNode=i;let s=vn.nextNode(),o=0,a=0,l=n[0];for(;l!==void 0;){if(o===l.index){let c;l.type===2?c=new ls(s,s.nextSibling,this,e):l.type===1?c=new l.ctor(s,l.name,l.strings,this,e):l.type===6&&(c=new qc(s,this,e)),this._$AV.push(c),l=n[++a]}o!==l?.index&&(s=vn.nextNode(),o++)}return vn.currentNode=yn,i}p(e){let t=0;for(let n of this._$AV)n!==void 0&&(n.strings!==void 0?(n._$AI(e,n,t),t+=n.strings.length-2):n._$AI(e[t])),t++}},ls=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,n,i){this.type=2,this._$AH=J,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=n,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode,t=this._$AM;return t!==void 0&&e?.nodeType===11&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=oi(this,e,t),os(e)?e===J||e==null||e===""?(this._$AH!==J&&this._$AR(),this._$AH=J):e!==this._$AH&&e!==Lt&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):Wx(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==J&&os(this._$AH)?this._$AA.nextSibling.data=e:this.T(yn.createTextNode(e)),this._$AH=e}$(e){let{values:t,_$litType$:n}=e,i=typeof n=="number"?this._$AC(e):(n.el===void 0&&(n.el=as.createElement(jg(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(t);else{let s=new jc(i,this),o=s.u(this.options);s.p(t),this.T(o),this._$AH=s}}_$AC(e){let t=Dg.get(e.strings);return t===void 0&&Dg.set(e.strings,t=new as(e)),t}k(e){Zc(this._$AH)||(this._$AH=[],this._$AR());let t=this._$AH,n,i=0;for(let s of e)i===t.length?t.push(n=new r(this.O(ss()),this.O(ss()),this,this.options)):n=t[i],n._$AI(s),i++;i<t.length&&(this._$AR(n&&n._$AB.nextSibling,i),t.length=i)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){let n=Mg(e).nextSibling;Mg(e).remove(),e=n}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}},ai=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,n,i,s){this.type=1,this._$AH=J,this._$AN=void 0,this.element=e,this.name=t,this._$AM=i,this.options=s,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=J}_$AI(e,t=this,n,i){let s=this.strings,o=!1;if(s===void 0)e=oi(this,e,t,0),o=!os(e)||e!==this._$AH&&e!==Lt,o&&(this._$AH=e);else{let a=e,l,c;for(e=s[0],l=0;l<s.length-1;l++)c=oi(this,a[n+l],t,l),c===Lt&&(c=this._$AH[l]),o||(o=!os(c)||c!==this._$AH[l]),c===J?e=J:e!==J&&(e+=(c??"")+s[l+1]),this._$AH[l]=c}o&&!i&&this.j(e)}j(e){e===J?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},Uc=class extends ai{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===J?void 0:e}},Wc=class extends ai{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==J)}},zc=class extends ai{constructor(e,t,n,i,s){super(e,t,n,i,s),this.type=5}_$AI(e,t=this){if((e=oi(this,e,t,0)??J)===Lt)return;let n=this._$AH,i=e===J&&n!==J||e.capture!==n.capture||e.once!==n.once||e.passive!==n.passive,s=e!==J&&(n===J||i);i&&this.element.removeEventListener(this.name,this,n),s&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}},qc=class{constructor(e,t,n){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(e){oi(this,e)}};var qx=is.litHtmlPolyfillSupport;qx?.(as,ls),(is.litHtmlVersions??(is.litHtmlVersions=[])).push("3.3.2");var Ug=(r,e,t)=>{let n=t?.renderBefore??e,i=n._$litPart$;if(i===void 0){let s=t?.renderBefore??null;n._$litPart$=i=new ls(e.insertBefore(ss(),s),s,void 0,t??{})}return i._$AI(r),i};var cs=globalThis,ye=class extends fr{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t;let e=super.createRenderRoot();return(t=this.renderOptions).renderBefore??(t.renderBefore=e.firstChild),e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=Ug(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Lt}};ye._$litElement$=!0,ye.finalized=!0,cs.litElementHydrateSupport?.({LitElement:ye});var Zx=cs.litElementPolyfillSupport;Zx?.({LitElement:ye});(cs.litElementVersions??(cs.litElementVersions=[])).push("4.2.2");var Sa={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ka=r=>(...e)=>({_$litDirective$:r,values:e}),li=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,n){this._$Ct=e,this._$AM=t,this._$Ci=n}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var Wg="important",Gx=" !"+Wg,R=ka(class extends li{constructor(r){if(super(r),r.type!==Sa.ATTRIBUTE||r.name!=="style"||r.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(r){return Object.keys(r).reduce((e,t)=>{let n=r[t];return n==null?e:e+`${t=t.includes("-")?t:t.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${n};`},"")}update(r,[e]){let{style:t}=r.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(e)),this.render(e);for(let n of this.ft)e[n]==null&&(this.ft.delete(n),n.includes("-")?t.removeProperty(n):t[n]=null);for(let n in e){let i=e[n];if(i!=null){this.ft.add(n);let s=typeof i=="string"&&i.endsWith(Gx);n.includes("-")||s?t.setProperty(n,s?i.slice(0,-11):i,s?Wg:""):t[n]=i}}return Lt}});var Kx={light:50,medium:100,heavy:200},Yx=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"],Xx={init(r,e,t){let n=Kx[t.intensity],i=t.colors.length>0?t.colors:Yx,s=[];for(let o=0;o<n;o++)s.push({x:Math.random()*r,y:Math.random()*-e*.3,vx:(Math.random()-.5)*4,vy:Math.random()*2+1,rotation:Math.random()*Math.PI*2,rotationSpeed:(Math.random()-.5)*.2,size:Math.random()*6+4,color:i[Math.floor(Math.random()*i.length)],opacity:1,shape:Math.random()>.5?"rect":"circle"});return s},update(r,e,t){let n=!1;for(let i of r)i.vy+=.15,i.vx*=.99,i.x+=i.vx,i.y+=i.vy,i.rotation+=i.rotationSpeed,i.y>0&&i.opacity>0&&i.y>500&&(i.opacity-=.02,i.opacity<0&&(i.opacity=0)),i.opacity>.01&&(n=!0);return n},render(r,e){for(let t of e)t.opacity<.01||(r.save(),r.globalAlpha=t.opacity,r.fillStyle=t.color,r.translate(t.x,t.y),r.rotate(t.rotation),t.shape==="circle"?(r.beginPath(),r.arc(0,0,t.size/2,0,Math.PI*2),r.fill()):r.fillRect(-t.size/2,-t.size/2,t.size,t.size*.6),r.restore())}},Jx={light:20,medium:40,heavy:80},Qx="\u{1F389}",ew={init(r,e,t){let n=Jx[t.intensity],i=typeof t.props?.emoji=="string"?t.props.emoji:Qx,s=[];for(let o=0;o<n;o++)s.push({x:Math.random()*r,y:Math.random()*-200,vx:0,vy:Math.random()*1.5+1,rotation:0,rotationSpeed:0,size:Math.random()*12+16,color:"#000000",opacity:1,shape:"emoji",emoji:i,data:{wobblePhase:Math.random()*Math.PI*2,wobbleAmp:Math.random()*1.5+.5,originX:0}});for(let o of s)o.data&&(o.data.originX=o.x);return s},update(r,e,t){let n=!1;for(let i of r){i.y+=i.vy;let s=i.data?.wobblePhase??0,o=i.data?.wobbleAmp??1,a=i.data?.originX??i.x;i.x=a+Math.sin(t*.003+s)*o*20,i.y>600&&(i.opacity-=.02,i.opacity<0&&(i.opacity=0)),i.opacity>.01&&(n=!0)}return n},render(r,e){for(let t of e)t.opacity<.01||!t.emoji||(r.save(),r.globalAlpha=t.opacity,r.font=`${t.size}px serif`,r.textAlign="center",r.textBaseline="middle",r.fillText(t.emoji,t.x,t.y),r.restore())}},tw={light:20,medium:40,heavy:80},rw={light:3,medium:4,heavy:5},nw={init(r,e,t){let n=tw[t.intensity],i=rw[t.intensity],s=t.colors.length>0?t.colors:["#ff4444","#44ff44","#4444ff"],o=[];for(let a=0;a<i;a++){let l=Math.random()*r*.8+r*.1,c=Math.random()*e*.6,u=s[Math.floor(Math.random()*s.length)];for(let p=0;p<n;p++){let h=Math.PI*2*p/n+(Math.random()-.5)*.3,f=Math.random()*3+2;o.push({x:l,y:c,vx:Math.cos(h)*f,vy:Math.sin(h)*f,rotation:0,rotationSpeed:0,size:Math.random()*3+2,color:u,opacity:1,shape:"circle",data:{centerX:l,centerY:c}})}}return o},update(r,e,t){let n=!1;for(let i of r)i.vx*=.97,i.vy*=.97,i.vy+=.03,i.x+=i.vx,i.y+=i.vy,i.opacity-=.008,i.opacity<0&&(i.opacity=0),i.opacity>.01&&(n=!0);return n},render(r,e){for(let t of e)t.opacity<.01||(r.save(),r.globalAlpha=t.opacity,r.fillStyle=t.color,r.shadowBlur=12,r.shadowColor=t.color,r.beginPath(),r.arc(t.x,t.y,t.size,0,Math.PI*2),r.fill(),r.restore())}},iw={light:30,medium:60,heavy:120},sw={init(r,e,t){let n=iw[t.intensity],i=t.colors.length>0?t.colors:["#ffd700","#ffffff","#fffacd"],s=[];for(let o=0;o<n;o++)s.push({x:Math.random()*r,y:Math.random()*e,vx:(Math.random()-.5)*.3,vy:-(Math.random()*.5+.2),rotation:Math.random()*Math.PI*2,rotationSpeed:(Math.random()-.5)*.1,size:Math.random()*4+2,color:i[Math.floor(Math.random()*i.length)],opacity:Math.random()*.5+.5,shape:"circle",data:{phase:Math.random()*Math.PI*2,baseOpacity:Math.random()*.5+.5}});return s},update(r,e,t){let n=!1;for(let i of r){i.x+=i.vx,i.y+=i.vy,i.rotation+=i.rotationSpeed,i.data&&(i.data.baseOpacity=(i.data.baseOpacity??1)-.001,i.data.baseOpacity<0&&(i.data.baseOpacity=0));let s=i.data?.phase??0,o=i.data?.baseOpacity??1;if(o<=.01)i.opacity=0;else{let a=Math.sin(t*.005+s)*.4+.6;i.opacity=o*a}i.opacity>.01&&(n=!0)}return n},render(r,e){for(let t of e){if(t.opacity<.01)continue;r.save(),r.globalAlpha=t.opacity,r.fillStyle=t.color,r.translate(t.x,t.y),r.rotate(t.rotation);let n=t.size;r.beginPath(),r.moveTo(0,-n),r.lineTo(n*.3,-n*.3),r.lineTo(n,0),r.lineTo(n*.3,n*.3),r.lineTo(0,n),r.lineTo(-n*.3,n*.3),r.lineTo(-n,0),r.lineTo(-n*.3,-n*.3),r.closePath(),r.fill(),r.restore()}}},ow=class{constructor(){this.canvas=null,this.ctx=null,this.rafId=null,this.particles=[],this.startTime=0,this.lastFrame=0,this.duration=0,this.effect=null,this.container=null}start(r,e,t){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;this.container=r,this.effect=e,this.duration=t.duration;let i=document.createElement("canvas");i.setAttribute("data-syntro-celebrate",""),Object.assign(i.style,{position:"fixed",inset:"0",pointerEvents:"none",zIndex:"2147483646"});let s=window.devicePixelRatio||1,o=window.innerWidth,a=window.innerHeight;i.width=o*s,i.height=a*s,i.style.width=`${o}px`,i.style.height=`${a}px`;let l=i.getContext("2d");l&&(l.scale(s,s),this.canvas=i,this.ctx=l,r.appendChild(i),this.particles=e.init(o,a,t),this.startTime=performance.now(),this.lastFrame=this.startTime,this.tick=this.tick.bind(this),this.rafId=requestAnimationFrame(this.tick))}stop(){this.rafId!==null&&(cancelAnimationFrame(this.rafId),this.rafId=null),this.canvas&&this.container&&(this.canvas.remove(),this.canvas=null),this.ctx=null,this.effect=null,this.container=null,this.particles=[]}tick(r){if(!this.ctx||!this.canvas||!this.effect)return;let e=r-this.startTime,t=r-this.lastFrame;if(this.lastFrame=r,e>=this.duration){this.stop();return}let n=this.canvas.width/(window.devicePixelRatio||1),i=this.canvas.height/(window.devicePixelRatio||1);if(this.ctx.clearRect(0,0,n,i),!this.effect.update(this.particles,t,e)){this.stop();return}this.effect.render(this.ctx,this.particles),this.rafId=requestAnimationFrame(this.tick)}},aw=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"];function lw(r,e){return[r,e,`${r}cc`,`${e}cc`,"#ffffff",`${r}80`]}function cw(r){try{let e=getComputedStyle(r),t=e.getPropertyValue("--sc-color-primary")?.trim(),n=e.getPropertyValue("--sc-color-primary-hover")?.trim();if(t?.startsWith("#")&&t.length>=7)return lw(t,n||t)}catch{}return null}var zg=new Map([["confetti",Xx],["fireworks",nw],["sparkles",sw],["emoji-rain",ew]]),uw=async(r,e)=>{let t=zg.get(r.effect);if(!t)return console.warn(`[adaptive-overlays] Unknown celebration effect: "${r.effect}". Available: ${[...zg.keys()].join(", ")}`),{cleanup:()=>{}};let n=r.colors??cw(e.overlayRoot)??aw,i={duration:r.duration??3e3,intensity:r.intensity??"medium",colors:n,props:r.props},s=new ow;return s.start(e.overlayRoot,t,i),e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:celebrate",effect:r.effect}),{cleanup:()=>{s.stop()}}},Xc="syntro_active_tour",Ea=new Map;function dw(r){try{let e=localStorage.getItem(Xc);if(!e)return null;let t=JSON.parse(e);return t.tourId!==r?null:t}catch{return null}}function Kc(r){try{localStorage.setItem(Xc,JSON.stringify(r))}catch{}}function pw(){try{localStorage.removeItem(Xc)}catch{}}function hs(){return window.location.pathname}function hw(r){if(!r.route)return!0;let e=hs();return r.route.includes("*")?new RegExp(`^${r.route.replace(/\*/g,".*")}$`).test(e):e===r.route}var Yg=async(r,e)=>{let{tourId:t,steps:n,startStep:i,autoStart:s=!0}=r;if(n.length===0)throw new Error(`Tour "${t}" has no steps`);if(Ea.has(t))return{cleanup:async()=>{let S=Ea.get(t);S&&await S.cleanup()}};if(!e.applyAction)throw new Error("Tour executor requires applyAction in context");let o=dw(t),a=!!o;if(!a&&!s)return{cleanup:()=>{}};o||(o={tourId:t,currentStepId:i||n[0].id,startedAt:Date.now()},Kc(o));let l=n.findIndex(S=>S.id===o.currentStepId);if(l===-1){let S=i||n[0].id;l=n.findIndex(b=>b.id===S),l===-1&&(l=0),o.currentStepId=n[l].id,Kc(o)}let c=n[l];if(!hw(c))return e.publishEvent("tour.waiting_for_route",{tourId:t,stepId:c.id,expectedRoute:c.route,currentRoute:hs()}),{cleanup:()=>{}};let u=!1,p=null,h=null,f=null,v=async()=>{h&&(h(),h=null),p?.isApplied()&&(await p.revert(),p=null)},g=async S=>{if(u)return;if(await v(),S==="end"){pw(),e.publishEvent("tour.completed",{tourId:t,totalSteps:n.length}),u=!0;return}let b=n.find(w=>w.id===S);if(!b){console.error(`[Tour] Step "${S}" not found`);return}if(o.currentStepId=S,Kc(o),e.publishEvent("tour.step_changed",{tourId:t,previousStepId:c.id,nextStepId:S}),b.route&&b.route!==hs()){e.publishEvent("tour.awaiting_navigation",{tourId:t,stepId:S,targetRoute:b.route});return}await m(b)},m=async S=>{if(!u){e.publishEvent("tour.step_started",{tourId:t,stepId:S.id,stepIndex:n.findIndex(b=>b.id===S.id),totalSteps:n.length});try{p=await e.applyAction(S.action)}catch(b){console.error(`[Tour] Failed to execute step "${S.id}":`,b),e.publishEvent("tour.step_failed",{tourId:t,stepId:S.id,error:String(b)});return}if(S.onAction&&e.subscribeEvent){h=e.subscribeEvent("action.modal_cta_clicked",C=>{let _=C?.actionId;if(_&&S.onAction){let A=S.onAction[_];A&&g(A)}});let b=e.subscribeEvent("action.tooltip_cta_clicked",C=>{let _=C?.actionId;if(_&&S.onAction){let A=S.onAction[_];A&&g(A)}}),w=h;h=()=>{w(),b()}}}};f=(()=>{let S=hs(),b=()=>{let _=hs();_!==S&&(S=_,e.publishEvent("tour.route_changed",{tourId:t,newRoute:_}))};if(e.subscribeNavigation)return e.subscribeNavigation(()=>b());window.addEventListener("popstate",b);let w=history.pushState.bind(history),C=history.replaceState.bind(history);return history.pushState=(..._)=>{w(..._),queueMicrotask(b)},history.replaceState=(..._)=>{C(..._),queueMicrotask(b)},()=>{window.removeEventListener("popstate",b),history.pushState=w,history.replaceState=C}})(),a?e.publishEvent("tour.resumed",{tourId:t,stepId:o.currentStepId}):e.publishEvent("tour.started",{tourId:t,totalSteps:n.length,startStepId:o.currentStepId}),await m(c);let x=async()=>{u=!0,Ea.delete(t),await v(),f&&f(),e.publishEvent("tour.paused",{tourId:t,stepId:o.currentStepId})};return Ea.set(t,{cleanup:x}),{cleanup:x}},Zt={white:"#ffffff",black:"#000000"},ht={0:"#2c0b0a",1:"#5b1715",2:"#89221f",3:"#b72e2a",4:"#d44844",5:"#dd6d69",6:"#e5918f",7:"#eeb6b4",8:"#f6dada",9:"#faebea"},P={0:"#07080a",1:"#0f1318",2:"#0e1114",3:"#1c222a",4:"#2b333f",5:"#394454",6:"#475569",7:"#677384",8:"#87919f",9:"#a8afba",10:"#cbd0d7",11:"#e8eaee",12:"#f6f7f9"},He={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Gt={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},st={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},_n={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},us={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},ds={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},ps={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"},XR={primary:P[10],secondary:P[9],tertiary:P[8]},JR={primary:P[2],secondary:P[0]},QR={primary:P[4],secondary:P[3]},eT={primary:{text:Zt.white,icon:Zt.white,border:ht[3],backgroundDefault:ht[3],backgroundHover:ht[2]},neutral:{text:P[10],textHover:Zt.white,icon:P[10],iconHover:Zt.white,border:P[4],background:P[2]},link:{text:Zt.white,icon:Zt.white,hover:ht[5]},error:{text:st[5],hover:st[6]},success:{text:He[5],hover:He[6]}},tT={slateGrey:{content:P[10],pillOutline:P[10],borderPrimary:P[5],borderSecondary:P[5],background:P[3]},brand:{content:ht[9],pillOutline:ht[9],borderPrimary:ht[6],borderSecondary:ht[6],background:ht[0]},red:{content:st[8],pillOutline:st[4],borderPrimary:st[2],borderSecondary:st[2],background:st[0]},yellow:{content:Gt[8],pillOutline:Gt[4],borderPrimary:Gt[2],borderSecondary:Gt[2],background:Gt[0]},green:{content:He[8],pillOutline:He[4],borderPrimary:He[2],borderSecondary:He[2],background:He[0]},purple:{content:ds[8],pillOutline:ds[4],borderPrimary:ds[2],borderSecondary:ds[2],background:ds[0]},blue:{content:_n[8],pillOutline:_n[4],borderPrimary:_n[2],borderSecondary:_n[2],background:_n[0]},orange:{content:us[8],pillOutline:us[4],borderPrimary:us[2],borderSecondary:us[2],background:us[0]},pink:{content:ps[8],pillOutline:ps[4],borderPrimary:ps[2],borderSecondary:ps[2],background:ps[0]}},rT={green:{content:He[8],border:He[2],background:He[0]},yellow:{content:Gt[8],border:Gt[2],background:Gt[0]},red:{content:st[8],border:st[2],background:st[0]}},nT={green:{content:He[1],background:He[9]},yellow:{content:Gt[1],background:Gt[9]},red:{content:st[1],background:st[9]}},iT={content:P[10],border:P[4],background:P[3]},sT={backgroundDefault:P[2],backgroundHover:P[1],selected:P[3]},oT={background:P[2],icon:P[10],borderDefault:P[4],borderSelected:ht[3],textLabel:P[9],textPlaceholder:P[8],textHint:P[8]},aT={backgroundDefault:P[2],backgroundDisabled:P[0],textLabel:P[9],textPlaceholder:P[8],textHint:P[8],textError:st[5],iconDefault:P[9],iconPlaceholder:P[10],iconError:st[5],borderDefault:P[4],borderSelected:ht[3],borderError:st[5]},lT={handleDefault:Zt.white,handleDisabled:P[10],off:{backgroundDefault:P[4],backgroundHover:P[5],backgroundDisabled:P[4]},on:{backgroundDefault:He[3],backgroundHover:He[2],backgroundDisabled:P[4]}},cT={off:{backgroundDefault:"#00000000",backgroundHover:P[5],backgroundDisabled:P[2],border:P[6]},on:{backgroundDefault:He[0],backgroundHover:He[1],backgroundDisabled:P[2],border:He[3]}},uT={content:P[10],background:P[4]},dT={background:P[4],active:He[3]},pT={background:P[1],content:P[9],border:P[4]},hT={backgroundDefault:P[1],backgroundHover:P[3],backgroundActive:P[4],border:P[4],contentPrimary:P[10],contentSecondary:P[9],contentTertiary:P[8]},fT={background:P[1],content:P[9],border:P[4]},gT={activeBackground:P[3],activeContent:ht[5],inactiveContent:P[9],border:P[4]},mT={header:{textDefault:P[9],textHover:P[8],backgroundDefault:P[1]},border:P[4],cell:{textPrimary:P[10],textSecondary:P[9],backgroundDefault:P[2],backgroundHover:P[1]}},vT={textPrimaryDefault:P[10],textPrimaryHover:P[10],textSecondaryDefault:P[8],textSecondaryHover:P[9],iconPrimary:P[10],iconSecondary:P[8]},yT={background:He[1],active:He[5]},bT={textDefault:P[10],textSelected:Zt.white,textDisabled:P[7],backgroundDefault:P[2],backgroundMiddle:P[3],backgroundSelected:ht[3],border:P[4]},_T=P[9],xT={size:56,inset:12,background:Zt.black,color:Zt.white,border:`2px solid ${ht[3]}`,shadowOpen:"0 4px 24px rgba(0,0,0,0.6), 0 0 0 2px rgba(255,255,255,0.08)",shadowClosed:"0 4px 24px rgba(0,0,0,0.6)"},qg=typeof CSS<"u"&&CSS.supports?.("clip-path","path('M0 0 H1 V1 Z')");function fw(r,e,t){let n=t?.paddingPx??12,i=t?.radiusPx??12,s=Math.min(Math.max(t?.scrimOpacity??.55,0),1),o=t?.ringColor??`var(--syntro-ring, ${_n[5]})`,a=t?.blocking??!1,l=t?.onClickOutside??!0,c=t?.onEsc??!0,u=getComputedStyle(document.documentElement),p=u.getPropertyValue("--syntro-spotlight-backdrop").trim(),h=u.getPropertyValue("--syntro-ring").trim(),f=document.createElement("div");f.className="syntro-spotlight-scrim";let v=a||l;Object.assign(f.style,{position:"fixed",inset:"0",zIndex:"2147483646",pointerEvents:v?"auto":"none",background:p||`rgba(2, 6, 23, ${s})`,transition:"opacity 220ms ease",opacity:"0"}),e.appendChild(f),requestAnimationFrame(()=>f.style.opacity="1");let g=document.createElement("div");g.className="syntro-spotlight-ring",Object.assign(g.style,{position:"fixed",pointerEvents:"none",borderRadius:`${i}px`,border:`2px solid ${o||h||_n[5]}`,boxShadow:"0 0 0 4px rgba(255,255,255,0.35)",zIndex:"2147483647",transition:"all 220ms cubic-bezier(0.16,1,0.3,1)"}),e.appendChild(g);let m=[];if(!qg)for(let $=0;$<4;$++){let T=document.createElement("div");T.style.position="fixed",T.style.background="inherit",m.push(T),f.appendChild(T)}let y=$=>{f.style.clipPath=$,f.style.webkitClipPath=$},x=()=>{if(!r.isConnected){A.destroy();return}let $=r.getBoundingClientRect(),T=$.left-n,O=$.top-n,Y=$.width+n*2,F=$.height+n*2;if(Object.assign(g.style,{left:`${T}px`,top:`${O}px`,width:`${Y}px`,height:`${F}px`}),qg){let N=window.innerWidth,G=window.innerHeight,K=Math.min(i,Y/2,F/2),le=`M 0 0 L ${N} 0 L ${N} ${G} L 0 ${G} Z`,U=`M ${T+K} ${O} A ${K} ${K} 0 0 0 ${T} ${O+K} L ${T} ${O+F-K} A ${K} ${K} 0 0 0 ${T+K} ${O+F} L ${T+Y-K} ${O+F} A ${K} ${K} 0 0 0 ${T+Y} ${O+F-K} L ${T+Y} ${O+K} A ${K} ${K} 0 0 0 ${T+Y-K} ${O} L ${T+K} ${O} Z`;y(`path('${le} ${U}')`)}else{let[N,G,K,le]=m;Object.assign(N.style,{left:"0px",top:"0px",width:"100vw",height:`${O}px`}),Object.assign(K.style,{left:"0px",top:`${O+F}px`,width:"100vw",height:`${Math.max(0,window.innerHeight-(O+F))}px`}),Object.assign(le.style,{left:"0px",top:`${O}px`,width:`${T}px`,height:`${F}px`}),Object.assign(G.style,{left:`${T+Y}px`,top:`${O}px`,width:`${Math.max(0,window.innerWidth-(T+Y))}px`,height:`${F}px`})}},S=new ResizeObserver(()=>requestAnimationFrame(x));S.observe(r);let b=()=>requestAnimationFrame(x),w=()=>requestAnimationFrame(x);window.addEventListener("scroll",b,!0),window.addEventListener("resize",w);let C=$=>{$.key==="Escape"&&c&&(t?.onDismiss?.(),A.destroy())};c&&window.addEventListener("keydown",C);let _=$=>{a?($.preventDefault(),$.stopPropagation()):l&&(t?.onDismiss?.(),A.destroy())};f.addEventListener("click",_);let A={destroy(){S.disconnect(),window.removeEventListener("scroll",b,!0),window.removeEventListener("resize",w),c&&window.removeEventListener("keydown",C),f.removeEventListener("click",_),f.style.pointerEvents="none",f.style.opacity="0",setTimeout(()=>{try{f.remove()}catch{}try{g.remove()}catch{}},220)}};return x(),A}var gw=new Set(["b","strong","i","em","u","span","div","p","br","ul","ol","li","code","pre","small","sup","sub","a","button","svg","path","circle","line","polyline","polygon","rect","g"]);function Kt(r){if(typeof window.Sanitizer=="function")try{let a=new window.Sanitizer({}).sanitizeToFragment(r),l=document.createElement("div");return l.append(a),l.innerHTML}catch{}let t=document.createElement("template");t.innerHTML=r;let n=t.content,i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,null),s=[];for(;i.nextNode();){let o=i.currentNode,a=o.tagName.toLowerCase();if(!gw.has(a)){s.push(o);continue}for(let l of Array.from(o.attributes)){let c=l.name.toLowerCase(),u=l.value.trim().toLowerCase(),p=c.startsWith("on"),h=(c==="href"||c==="src")&&u.startsWith("javascript:");(p||h)&&o.removeAttribute(l.name)}}for(let o of s){for(;o.firstChild;)o.parentNode?.insertBefore(o.firstChild,o);o.remove()}return t.innerHTML}var bn={bg:"var(--sc-overlay-background, #ffffff)",title:"var(--sc-overlay-title-color, var(--sc-overlay-text-color, #111827))",text:"var(--sc-overlay-text-color, #4b5563)",accent:"var(--sc-color-primary, #4f46e5)",radius:"var(--sc-border-radius, 12px)"},Xg=async(r,e)=>{let{content:t,size:n="md",blocking:i=!1,scrim:s,dismiss:o,ctaButtons:a}=r,l=document.createElement("div");l.className="syntro-modal-scrim",l.style.cssText=`
1
+ var lg=Object.defineProperty;var cg=r=>{throw TypeError(r)};var jx=(r,e,t)=>e in r?lg(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var Wx=(r,e)=>{for(var t in e)lg(r,t,{get:e[t],enumerable:!0})};var pe=(r,e,t)=>jx(r,typeof e!="symbol"?e+"":e,t),Bc=(r,e,t)=>e.has(r)||cg("Cannot "+t);var q=(r,e,t)=>(Bc(r,e,"read from private field"),t?t.call(r):e.get(r)),ye=(r,e,t)=>e.has(r)?cg("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),oe=(r,e,t,n)=>(Bc(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),we=(r,e,t)=>(Bc(r,e,"access private method"),t);var Vc=(r,e,t,n)=>({set _(i){oe(r,e,i,t)},get _(){return q(r,e,n)}});function zx(r,e,t,n){let i=n?.maxRetries??3,s=n?.debounceMs??50,o=r.parentElement??e.parentElement;if(!o)return()=>{};let a=0,l=null,c=!1,u=new MutationObserver(p=>{if(!c){for(let h of p)for(let f of h.removedNodes)if(f===r){if(a>=i){u.disconnect(),c=!0;return}l&&clearTimeout(l),l=setTimeout(()=>{if(!c){if(!e.isConnected){u.disconnect(),c=!0;return}a++;try{t()}catch{u.disconnect(),c=!0}}},s);return}}});return u.observe(o,{childList:!0,subtree:!0}),()=>{c=!0,u.disconnect(),l&&clearTimeout(l)}}var qx=new Set(["b","strong","i","em","u","span","div","p","br","ul","ol","li","code","pre","small","sup","sub","a","button","svg","path","circle","line","polyline","polygon","rect","g"]);function ug(r){if(typeof window.Sanitizer=="function")try{let l=new window.Sanitizer({}).sanitizeToFragment(r),c=document.createElement("div");return c.append(l),c.innerHTML}catch{}let t=document.createElement("template");t.innerHTML=r;let n=t.content,i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,null),s=[];for(;i.nextNode();){let a=i.currentNode,l=a.tagName.toLowerCase();if(!qx.has(l)){s.push(a);continue}for(let c of Array.from(a.attributes)){let u=c.name.toLowerCase(),p=c.value.trim().toLowerCase(),h=u.startsWith("on"),v=(u==="href"||u==="src"||u==="formaction")&&(p.startsWith("javascript:")||p.startsWith("vbscript:")||p.startsWith("data:text/html"));(h||v)&&a.removeAttribute(c.name)}}let o=Array.from(n.querySelectorAll("svg"));for(let a of o)s.some(l=>a.contains(l)&&l.tagName.toLowerCase()==="script")&&s.push(a);for(let a of s){for(;a.firstChild;)a.parentNode?.insertBefore(a.firstChild,a);a.remove()}return t.innerHTML}var dg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=ug(r.html),i="data-syntro-insert-label",s=r.label;if(s){let p=CSS.escape(s),f=(t.parentElement??t).querySelector(`[${i}="${p}"]`);f&&f.remove()}let o=document.createElement("div");o.setAttribute("data-syntro-action-id",e.generateId()),s&&o.setAttribute(i,s),o.innerHTML=n;let a=null;switch(r.position){case"before":t.insertAdjacentElement("beforebegin",o);break;case"after":t.insertAdjacentElement("afterend",o);break;case"prepend":t.insertBefore(o,t.firstChild);break;case"append":t.appendChild(o);break;case"replace":a=t.innerHTML,t.replaceWith(o);break}let l=null;if(r.deepLink){let{tileId:p,itemId:h}=r.deepLink;l=()=>{let f=window.SynOS?.handle;f&&(f.open(),f.runtime?.events?.publish("notification.deep_link",{tileId:p,itemId:h}))},o.style.cursor="pointer",o.addEventListener("click",l)}e.publishEvent("action.applied",{id:e.generateId(),kind:"content:insertHtml",anchorId:r.anchorId,position:r.position});let u=zx(o,t,()=>{switch(r.position){case"before":t.insertAdjacentElement("beforebegin",o);break;case"after":t.insertAdjacentElement("afterend",o);break;case"prepend":t.insertBefore(o,t.firstChild);break;case"append":t.appendChild(o);break;case"replace":break}});return{cleanup:()=>{if(l&&o.removeEventListener("click",l),u(),!!o.isConnected)try{if(r.position==="replace"&&a!==null){let p=document.createElement(t.tagName);p.innerHTML=a,Array.from(t.attributes).forEach(h=>{p.setAttribute(h.name,h.value)}),o.replaceWith(p)}else o.remove()}catch{}},updateFn:p=>{"html"in p&&typeof p.html=="string"&&(o.innerHTML=ug(p.html))}}};function pg(r){if(r.children.length===0)return r;let e=Array.from(r.children).filter(t=>t.textContent?.trim());if(e.length===1){let t=e[0];if(t.textContent?.trim()===r.textContent?.trim())return pg(t)}return r}var hg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=pg(t),i=n.textContent??"";return n.textContent=r.text,e.publishEvent("action.applied",{id:e.generateId(),kind:"content:setText",anchorId:r.anchorId}),{cleanup:()=>{t.isConnected&&(n.textContent=i)},updateFn:s=>{"text"in s&&typeof s.text=="string"&&(n.textContent=s.text)}}},fg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=r.attr.toLowerCase();if(n.startsWith("on"))throw new Error(`Dangerous attribute not allowed: ${r.attr}`);if(n==="href"||n==="src"||n==="formaction"){let a=r.value.trim().toLowerCase();if(a.startsWith("javascript:")||a.startsWith("vbscript:")||a.startsWith("data:text/html"))throw new Error(`Dangerous URL not allowed in ${r.attr}: ${r.value}`)}let s=t.getAttribute(r.attr),o=t.hasAttribute(r.attr);return t.setAttribute(r.attr,r.value),e.publishEvent("action.applied",{id:e.generateId(),kind:"content:setAttr",anchorId:r.anchorId,attr:r.attr}),{cleanup:()=>{t.isConnected&&(o&&s!==null?t.setAttribute(r.attr,s):t.removeAttribute(r.attr))},updateFn:a=>{"value"in a&&typeof a.value=="string"&&t.setAttribute(r.attr,a.value)}}},gg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=t.classList.contains(r.className);return t.classList.add(r.className),e.publishEvent("action.applied",{id:e.generateId(),kind:"content:addClass",anchorId:r.anchorId,className:r.className}),{cleanup:()=>{t.isConnected&&(n||t.classList.remove(r.className))}}},mg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=t.classList.contains(r.className);return t.classList.remove(r.className),e.publishEvent("action.applied",{id:e.generateId(),kind:"content:removeClass",anchorId:r.anchorId,className:r.className}),{cleanup:()=>{t.isConnected&&n&&t.classList.add(r.className)}}},vg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=new Map;for(let i of Object.keys(r.styles)){let s=t.style.getPropertyValue(i);n.set(i,s)}for(let[i,s]of Object.entries(r.styles))t.style.setProperty(i,s);return e.publishEvent("action.applied",{id:e.generateId(),kind:"content:setStyle",anchorId:r.anchorId,styles:Object.keys(r.styles)}),{cleanup:()=>{if(t.isConnected)for(let[i,s]of n)s?t.style.setProperty(i,s):t.style.removeProperty(i)},updateFn:i=>{if("styles"in i&&typeof i.styles=="object"&&i.styles)for(let[s,o]of Object.entries(i.styles))t.style.setProperty(s,o)}}},Uc=[{kind:"content:insertHtml",executor:dg},{kind:"content:setText",executor:hg},{kind:"content:setAttr",executor:fg},{kind:"content:addClass",executor:gg},{kind:"content:removeClass",executor:mg},{kind:"content:setStyle",executor:vg}],jc={id:"adaptive-content",version:"1.0.0",name:"Content",description:"DOM manipulation for text, attributes, and styles",executors:Uc};var yg=r=>{throw TypeError(r)},bg=(r,e,t)=>e.has(r)||yg("Cannot "+t),je=(r,e,t)=>(bg(r,e,"read from private field"),t?t.call(r):e.get(r)),Dr=(r,e,t)=>e.has(r)?yg("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),pr=(r,e,t,n)=>(bg(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var wg=["top","right","bottom","left"];var Hr=Math.min,hr=Math.max,ts=Math.round,rs=Math.floor,Pt=r=>({x:r,y:r}),Zx={left:"right",right:"left",bottom:"top",top:"bottom"},Gx={start:"end",end:"start"};function ha(r,e,t){return hr(r,Hr(e,t))}function pn(r,e){return typeof r=="function"?r(e):r}function Br(r){return r.split("-")[0]}function ii(r){return r.split("-")[1]}function Wc(r){return r==="x"?"y":"x"}function fa(r){return r==="y"?"height":"width"}var Kx=new Set(["top","bottom"]);function fr(r){return Kx.has(Br(r))?"y":"x"}function ga(r){return Wc(fr(r))}function Sg(r,e,t){t===void 0&&(t=!1);let n=ii(r),i=ga(r),s=fa(i),o=i==="x"?n===(t?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=es(o)),[o,es(o)]}function kg(r){let e=es(r);return[pa(r),e,pa(e)]}function pa(r){return r.replace(/start|end/g,e=>Gx[e])}var _g=["left","right"],xg=["right","left"],Yx=["top","bottom"],Xx=["bottom","top"];function Jx(r,e,t){switch(r){case"top":case"bottom":return t?e?xg:_g:e?_g:xg;case"left":case"right":return e?Yx:Xx;default:return[]}}function Eg(r,e,t,n){let i=ii(r),s=Jx(Br(r),t==="start",n);return i&&(s=s.map(o=>o+"-"+i),e&&(s=s.concat(s.map(pa)))),s}function es(r){return r.replace(/left|right|bottom|top/g,e=>Zx[e])}function Qx(r){return{top:0,right:0,bottom:0,left:0,...r}}function zc(r){return typeof r!="number"?Qx(r):{top:r,right:r,bottom:r,left:r}}function hn(r){let{x:e,y:t,width:n,height:i}=r;return{width:n,height:i,top:t,left:e,right:e+n,bottom:t+i,x:e,y:t}}function Cg(r,e,t){let{reference:n,floating:i}=r,s=fr(e),o=ga(e),a=fa(o),l=Br(e),c=s==="y",u=n.x+n.width/2-i.width/2,p=n.y+n.height/2-i.height/2,h=n[a]/2-i[a]/2,f;switch(l){case"top":f={x:u,y:n.y-i.height};break;case"bottom":f={x:u,y:n.y+n.height};break;case"right":f={x:n.x+n.width,y:p};break;case"left":f={x:n.x-i.width,y:p};break;default:f={x:n.x,y:n.y}}switch(ii(e)){case"start":f[o]-=h*(t&&c?-1:1);break;case"end":f[o]+=h*(t&&c?-1:1);break}return f}async function Rg(r,e){var t;e===void 0&&(e={});let{x:n,y:i,platform:s,rects:o,elements:a,strategy:l}=r,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:p="floating",altBoundary:h=!1,padding:f=0}=pn(e,r),v=zc(f),m=a[h?p==="floating"?"reference":"floating":p],y=hn(await s.getClippingRect({element:(t=await(s.isElement==null?void 0:s.isElement(m)))==null||t?m:m.contextElement||await(s.getDocumentElement==null?void 0:s.getDocumentElement(a.floating)),boundary:c,rootBoundary:u,strategy:l})),x=p==="floating"?{x:n,y:i,width:o.floating.width,height:o.floating.height}:o.reference,S=await(s.getOffsetParent==null?void 0:s.getOffsetParent(a.floating)),b=await(s.isElement==null?void 0:s.isElement(S))?await(s.getScale==null?void 0:s.getScale(S))||{x:1,y:1}:{x:1,y:1},w=hn(s.convertOffsetParentRelativeRectToViewportRelativeRect?await s.convertOffsetParentRelativeRectToViewportRelativeRect({elements:a,rect:x,offsetParent:S,strategy:l}):x);return{top:(y.top-w.top+v.top)/b.y,bottom:(w.bottom-y.bottom+v.bottom)/b.y,left:(y.left-w.left+v.left)/b.x,right:(w.right-y.right+v.right)/b.x}}var Ig=async(r,e,t)=>{let{placement:n="bottom",strategy:i="absolute",middleware:s=[],platform:o}=t,a=s.filter(Boolean),l=await(o.isRTL==null?void 0:o.isRTL(e)),c=await o.getElementRects({reference:r,floating:e,strategy:i}),{x:u,y:p}=Cg(c,n,l),h=n,f={},v=0;for(let m=0;m<a.length;m++){var g;let{name:y,fn:x}=a[m],{x:S,y:b,data:w,reset:A}=await x({x:u,y:p,initialPlacement:n,placement:h,strategy:i,middlewareData:f,rects:c,platform:{...o,detectOverflow:(g=o.detectOverflow)!=null?g:Rg},elements:{reference:r,floating:e}});u=S??u,p=b??p,f={...f,[y]:{...f[y],...w}},A&&v<=50&&(v++,typeof A=="object"&&(A.placement&&(h=A.placement),A.rects&&(c=A.rects===!0?await o.getElementRects({reference:r,floating:e,strategy:i}):A.rects),{x:u,y:p}=Cg(c,h,l)),m=-1)}return{x:u,y:p,placement:h,strategy:i,middlewareData:f}},$g=r=>({name:"arrow",options:r,async fn(e){let{x:t,y:n,placement:i,rects:s,platform:o,elements:a,middlewareData:l}=e,{element:c,padding:u=0}=pn(r,e)||{};if(c==null)return{};let p=zc(u),h={x:t,y:n},f=ga(i),v=fa(f),g=await o.getDimensions(c),m=f==="y",y=m?"top":"left",x=m?"bottom":"right",S=m?"clientHeight":"clientWidth",b=s.reference[v]+s.reference[f]-h[f]-s.floating[v],w=h[f]-s.reference[f],A=await(o.getOffsetParent==null?void 0:o.getOffsetParent(c)),_=A?A[S]:0;(!_||!await(o.isElement==null?void 0:o.isElement(A)))&&(_=a.floating[S]||s.floating[v]);let C=b/2-w/2,I=_/2-g[v]/2-1,R=Hr(p[y],I),P=Hr(p[x],I),Y=R,F=_-g[v]-P,L=_/2-g[v]/2+C,G=ha(Y,L,F),K=!l.arrow&&ii(i)!=null&&L!==G&&s.reference[v]/2-(L<Y?R:P)-g[v]/2<0,le=K?L<Y?L-Y:L-F:0;return{[f]:h[f]+le,data:{[f]:G,centerOffset:L-G-le,...K&&{alignmentOffset:le}},reset:K}}});var Mg=function(r){return r===void 0&&(r={}),{name:"flip",options:r,async fn(e){var t,n;let{placement:i,middlewareData:s,rects:o,initialPlacement:a,platform:l,elements:c}=e,{mainAxis:u=!0,crossAxis:p=!0,fallbackPlacements:h,fallbackStrategy:f="bestFit",fallbackAxisSideDirection:v="none",flipAlignment:g=!0,...m}=pn(r,e);if((t=s.arrow)!=null&&t.alignmentOffset)return{};let y=Br(i),x=fr(a),S=Br(a)===a,b=await(l.isRTL==null?void 0:l.isRTL(c.floating)),w=h||(S||!g?[es(a)]:kg(a)),A=v!=="none";!h&&A&&w.push(...Eg(a,g,v,b));let _=[a,...w],C=await l.detectOverflow(e,m),I=[],R=((n=s.flip)==null?void 0:n.overflows)||[];if(u&&I.push(C[y]),p){let L=Sg(i,o,b);I.push(C[L[0]],C[L[1]])}if(R=[...R,{placement:i,overflows:I}],!I.every(L=>L<=0)){var P,Y;let L=(((P=s.flip)==null?void 0:P.index)||0)+1,G=_[L];if(G&&(!(p==="alignment"?x!==fr(G):!1)||R.every(j=>fr(j.placement)===x?j.overflows[0]>0:!0)))return{data:{index:L,overflows:R},reset:{placement:G}};let K=(Y=R.filter(le=>le.overflows[0]<=0).sort((le,j)=>le.overflows[1]-j.overflows[1])[0])==null?void 0:Y.placement;if(!K)switch(f){case"bestFit":{var F;let le=(F=R.filter(j=>{if(A){let te=fr(j.placement);return te===x||te==="y"}return!0}).map(j=>[j.placement,j.overflows.filter(te=>te>0).reduce((te,De)=>te+De,0)]).sort((j,te)=>j[1]-te[1])[0])==null?void 0:F[0];le&&(K=le);break}case"initialPlacement":K=a;break}if(i!==K)return{reset:{placement:K}}}return{}}}};function Ag(r,e){return{top:r.top-e.height,right:r.right-e.width,bottom:r.bottom-e.height,left:r.left-e.width}}function Tg(r){return wg.some(e=>r[e]>=0)}var Pg=function(r){return r===void 0&&(r={}),{name:"hide",options:r,async fn(e){let{rects:t,platform:n}=e,{strategy:i="referenceHidden",...s}=pn(r,e);switch(i){case"referenceHidden":{let o=await n.detectOverflow(e,{...s,elementContext:"reference"}),a=Ag(o,t.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Tg(a)}}}case"escaped":{let o=await n.detectOverflow(e,{...s,altBoundary:!0}),a=Ag(o,t.floating);return{data:{escapedOffsets:a,escaped:Tg(a)}}}default:return{}}}}};var ew=new Set(["left","top"]);async function tw(r,e){let{placement:t,platform:n,elements:i}=r,s=await(n.isRTL==null?void 0:n.isRTL(i.floating)),o=Br(t),a=ii(t),l=fr(t)==="y",c=ew.has(o)?-1:1,u=s&&l?-1:1,p=pn(e,r),{mainAxis:h,crossAxis:f,alignmentAxis:v}=typeof p=="number"?{mainAxis:p,crossAxis:0,alignmentAxis:null}:{mainAxis:p.mainAxis||0,crossAxis:p.crossAxis||0,alignmentAxis:p.alignmentAxis};return a&&typeof v=="number"&&(f=a==="end"?v*-1:v),l?{x:f*u,y:h*c}:{x:h*c,y:f*u}}var Og=function(r){return r===void 0&&(r=0),{name:"offset",options:r,async fn(e){var t,n;let{x:i,y:s,placement:o,middlewareData:a}=e,l=await tw(e,r);return o===((t=a.offset)==null?void 0:t.placement)&&(n=a.arrow)!=null&&n.alignmentOffset?{}:{x:i+l.x,y:s+l.y,data:{...l,placement:o}}}}},Lg=function(r){return r===void 0&&(r={}),{name:"shift",options:r,async fn(e){let{x:t,y:n,placement:i,platform:s}=e,{mainAxis:o=!0,crossAxis:a=!1,limiter:l={fn:y=>{let{x,y:S}=y;return{x,y:S}}},...c}=pn(r,e),u={x:t,y:n},p=await s.detectOverflow(e,c),h=fr(Br(i)),f=Wc(h),v=u[f],g=u[h];if(o){let y=f==="y"?"top":"left",x=f==="y"?"bottom":"right",S=v+p[y],b=v-p[x];v=ha(S,v,b)}if(a){let y=h==="y"?"top":"left",x=h==="y"?"bottom":"right",S=g+p[y],b=g-p[x];g=ha(S,g,b)}let m=l.fn({...e,[f]:v,[h]:g});return{...m,data:{x:m.x-t,y:m.y-n,enabled:{[f]:o,[h]:a}}}}}};function ma(){return typeof window<"u"}function fn(r){return Fg(r)?(r.nodeName||"").toLowerCase():"#document"}function pt(r){var e;return(r==null||(e=r.ownerDocument)==null?void 0:e.defaultView)||window}function Ot(r){var e;return(e=(Fg(r)?r.ownerDocument:r.document)||window.document)==null?void 0:e.documentElement}function Fg(r){return ma()?r instanceof Node||r instanceof pt(r).Node:!1}function St(r){return ma()?r instanceof Element||r instanceof pt(r).Element:!1}function Lt(r){return ma()?r instanceof HTMLElement||r instanceof pt(r).HTMLElement:!1}function Ng(r){return!ma()||typeof ShadowRoot>"u"?!1:r instanceof ShadowRoot||r instanceof pt(r).ShadowRoot}var rw=new Set(["inline","contents"]);function oi(r){let{overflow:e,overflowX:t,overflowY:n,display:i}=kt(r);return/auto|scroll|overlay|hidden|clip/.test(e+n+t)&&!rw.has(i)}var nw=new Set(["table","td","th"]);function Dg(r){return nw.has(fn(r))}var iw=[":popover-open",":modal"];function ns(r){return iw.some(e=>{try{return r.matches(e)}catch{return!1}})}var sw=["transform","translate","scale","rotate","perspective"],ow=["transform","translate","scale","rotate","perspective","filter"],aw=["paint","layout","strict","content"];function va(r){let e=ya(),t=St(r)?kt(r):r;return sw.some(n=>t[n]?t[n]!=="none":!1)||(t.containerType?t.containerType!=="normal":!1)||!e&&(t.backdropFilter?t.backdropFilter!=="none":!1)||!e&&(t.filter?t.filter!=="none":!1)||ow.some(n=>(t.willChange||"").includes(n))||aw.some(n=>(t.contain||"").includes(n))}function Hg(r){let e=gr(r);for(;Lt(e)&&!gn(e);){if(va(e))return e;if(ns(e))return null;e=gr(e)}return null}function ya(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}var lw=new Set(["html","body","#document"]);function gn(r){return lw.has(fn(r))}function kt(r){return pt(r).getComputedStyle(r)}function is(r){return St(r)?{scrollLeft:r.scrollLeft,scrollTop:r.scrollTop}:{scrollLeft:r.scrollX,scrollTop:r.scrollY}}function gr(r){if(fn(r)==="html")return r;let e=r.assignedSlot||r.parentNode||Ng(r)&&r.host||Ot(r);return Ng(e)?e.host:e}function Bg(r){let e=gr(r);return gn(e)?r.ownerDocument?r.ownerDocument.body:r.body:Lt(e)&&oi(e)?e:Bg(e)}function si(r,e,t){var n;e===void 0&&(e=[]),t===void 0&&(t=!0);let i=Bg(r),s=i===((n=r.ownerDocument)==null?void 0:n.body),o=pt(i);if(s){let a=ba(o);return e.concat(o,o.visualViewport||[],oi(i)?i:[],a&&t?si(a):[])}return e.concat(i,si(i,[],t))}function ba(r){return r.parent&&Object.getPrototypeOf(r.parent)?r.frameElement:null}function Wg(r){let e=kt(r),t=parseFloat(e.width)||0,n=parseFloat(e.height)||0,i=Lt(r),s=i?r.offsetWidth:t,o=i?r.offsetHeight:n,a=ts(t)!==s||ts(n)!==o;return a&&(t=s,n=o),{width:t,height:n,$:a}}function Zc(r){return St(r)?r:r.contextElement}function ai(r){let e=Zc(r);if(!Lt(e))return Pt(1);let t=e.getBoundingClientRect(),{width:n,height:i,$:s}=Wg(e),o=(s?ts(t.width):t.width)/n,a=(s?ts(t.height):t.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}var cw=Pt(0);function zg(r){let e=pt(r);return!ya()||!e.visualViewport?cw:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function uw(r,e,t){return e===void 0&&(e=!1),!t||e&&t!==pt(r)?!1:e}function mn(r,e,t,n){e===void 0&&(e=!1),t===void 0&&(t=!1);let i=r.getBoundingClientRect(),s=Zc(r),o=Pt(1);e&&(n?St(n)&&(o=ai(n)):o=ai(r));let a=uw(s,t,n)?zg(s):Pt(0),l=(i.left+a.x)/o.x,c=(i.top+a.y)/o.y,u=i.width/o.x,p=i.height/o.y;if(s){let h=pt(s),f=n&&St(n)?pt(n):n,v=h,g=ba(v);for(;g&&n&&f!==v;){let m=ai(g),y=g.getBoundingClientRect(),x=kt(g),S=y.left+(g.clientLeft+parseFloat(x.paddingLeft))*m.x,b=y.top+(g.clientTop+parseFloat(x.paddingTop))*m.y;l*=m.x,c*=m.y,u*=m.x,p*=m.y,l+=S,c+=b,v=pt(g),g=ba(v)}}return hn({width:u,height:p,x:l,y:c})}function _a(r,e){let t=is(r).scrollLeft;return e?e.left+t:mn(Ot(r)).left+t}function qg(r,e){let t=r.getBoundingClientRect(),n=t.left+e.scrollLeft-_a(r,t),i=t.top+e.scrollTop;return{x:n,y:i}}function dw(r){let{elements:e,rect:t,offsetParent:n,strategy:i}=r,s=i==="fixed",o=Ot(n),a=e?ns(e.floating):!1;if(n===o||a&&s)return t;let l={scrollLeft:0,scrollTop:0},c=Pt(1),u=Pt(0),p=Lt(n);if((p||!p&&!s)&&((fn(n)!=="body"||oi(o))&&(l=is(n)),Lt(n))){let f=mn(n);c=ai(n),u.x=f.x+n.clientLeft,u.y=f.y+n.clientTop}let h=o&&!p&&!s?qg(o,l):Pt(0);return{width:t.width*c.x,height:t.height*c.y,x:t.x*c.x-l.scrollLeft*c.x+u.x+h.x,y:t.y*c.y-l.scrollTop*c.y+u.y+h.y}}function pw(r){return Array.from(r.getClientRects())}function hw(r){let e=Ot(r),t=is(r),n=r.ownerDocument.body,i=hr(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),s=hr(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),o=-t.scrollLeft+_a(r),a=-t.scrollTop;return kt(n).direction==="rtl"&&(o+=hr(e.clientWidth,n.clientWidth)-i),{width:i,height:s,x:o,y:a}}var Vg=25;function fw(r,e){let t=pt(r),n=Ot(r),i=t.visualViewport,s=n.clientWidth,o=n.clientHeight,a=0,l=0;if(i){s=i.width,o=i.height;let u=ya();(!u||u&&e==="fixed")&&(a=i.offsetLeft,l=i.offsetTop)}let c=_a(n);if(c<=0){let u=n.ownerDocument,p=u.body,h=getComputedStyle(p),f=u.compatMode==="CSS1Compat"&&parseFloat(h.marginLeft)+parseFloat(h.marginRight)||0,v=Math.abs(n.clientWidth-p.clientWidth-f);v<=Vg&&(s-=v)}else c<=Vg&&(s+=c);return{width:s,height:o,x:a,y:l}}var gw=new Set(["absolute","fixed"]);function mw(r,e){let t=mn(r,!0,e==="fixed"),n=t.top+r.clientTop,i=t.left+r.clientLeft,s=Lt(r)?ai(r):Pt(1),o=r.clientWidth*s.x,a=r.clientHeight*s.y,l=i*s.x,c=n*s.y;return{width:o,height:a,x:l,y:c}}function Ug(r,e,t){let n;if(e==="viewport")n=fw(r,t);else if(e==="document")n=hw(Ot(r));else if(St(e))n=mw(e,t);else{let i=zg(r);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return hn(n)}function Zg(r,e){let t=gr(r);return t===e||!St(t)||gn(t)?!1:kt(t).position==="fixed"||Zg(t,e)}function vw(r,e){let t=e.get(r);if(t)return t;let n=si(r,[],!1).filter(a=>St(a)&&fn(a)!=="body"),i=null,s=kt(r).position==="fixed",o=s?gr(r):r;for(;St(o)&&!gn(o);){let a=kt(o),l=va(o);!l&&a.position==="fixed"&&(i=null),(s?!l&&!i:!l&&a.position==="static"&&!!i&&gw.has(i.position)||oi(o)&&!l&&Zg(r,o))?n=n.filter(u=>u!==o):i=a,o=gr(o)}return e.set(r,n),n}function yw(r){let{element:e,boundary:t,rootBoundary:n,strategy:i}=r,o=[...t==="clippingAncestors"?ns(e)?[]:vw(e,this._c):[].concat(t),n],a=o[0],l=o.reduce((c,u)=>{let p=Ug(e,u,i);return c.top=hr(p.top,c.top),c.right=Hr(p.right,c.right),c.bottom=Hr(p.bottom,c.bottom),c.left=hr(p.left,c.left),c},Ug(e,a,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function bw(r){let{width:e,height:t}=Wg(r);return{width:e,height:t}}function _w(r,e,t){let n=Lt(e),i=Ot(e),s=t==="fixed",o=mn(r,!0,s,e),a={scrollLeft:0,scrollTop:0},l=Pt(0);function c(){l.x=_a(i)}if(n||!n&&!s)if((fn(e)!=="body"||oi(i))&&(a=is(e)),n){let f=mn(e,!0,s,e);l.x=f.x+e.clientLeft,l.y=f.y+e.clientTop}else i&&c();s&&!n&&i&&c();let u=i&&!n&&!s?qg(i,a):Pt(0),p=o.left+a.scrollLeft-l.x-u.x,h=o.top+a.scrollTop-l.y-u.y;return{x:p,y:h,width:o.width,height:o.height}}function qc(r){return kt(r).position==="static"}function jg(r,e){if(!Lt(r)||kt(r).position==="fixed")return null;if(e)return e(r);let t=r.offsetParent;return Ot(r)===t&&(t=t.ownerDocument.body),t}function Gg(r,e){let t=pt(r);if(ns(r))return t;if(!Lt(r)){let i=gr(r);for(;i&&!gn(i);){if(St(i)&&!qc(i))return i;i=gr(i)}return t}let n=jg(r,e);for(;n&&Dg(n)&&qc(n);)n=jg(n,e);return n&&gn(n)&&qc(n)&&!va(n)?t:n||Hg(r)||t}var xw=async function(r){let e=this.getOffsetParent||Gg,t=this.getDimensions,n=await t(r.floating);return{reference:_w(r.reference,await e(r.floating),r.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function ww(r){return kt(r).direction==="rtl"}var Sw={convertOffsetParentRelativeRectToViewportRelativeRect:dw,getDocumentElement:Ot,getClippingRect:yw,getOffsetParent:Gg,getElementRects:xw,getClientRects:pw,getDimensions:bw,getScale:ai,isElement:St,isRTL:ww};function Kg(r,e){return r.x===e.x&&r.y===e.y&&r.width===e.width&&r.height===e.height}function kw(r,e){let t=null,n,i=Ot(r);function s(){var a;clearTimeout(n),(a=t)==null||a.disconnect(),t=null}function o(a,l){a===void 0&&(a=!1),l===void 0&&(l=1),s();let c=r.getBoundingClientRect(),{left:u,top:p,width:h,height:f}=c;if(a||e(),!h||!f)return;let v=rs(p),g=rs(i.clientWidth-(u+h)),m=rs(i.clientHeight-(p+f)),y=rs(u),S={rootMargin:-v+"px "+-g+"px "+-m+"px "+-y+"px",threshold:hr(0,Hr(1,l))||1},b=!0;function w(A){let _=A[0].intersectionRatio;if(_!==l){if(!b)return o();_?o(!1,_):n=setTimeout(()=>{o(!1,1e-7)},1e3)}_===1&&!Kg(c,r.getBoundingClientRect())&&o(),b=!1}try{t=new IntersectionObserver(w,{...S,root:i.ownerDocument})}catch{t=new IntersectionObserver(w,S)}t.observe(r)}return o(!0),s}function xa(r,e,t,n){n===void 0&&(n={});let{ancestorScroll:i=!0,ancestorResize:s=!0,elementResize:o=typeof ResizeObserver=="function",layoutShift:a=typeof IntersectionObserver=="function",animationFrame:l=!1}=n,c=Zc(r),u=i||s?[...c?si(c):[],...si(e)]:[];u.forEach(y=>{i&&y.addEventListener("scroll",t,{passive:!0}),s&&y.addEventListener("resize",t)});let p=c&&a?kw(c,t):null,h=-1,f=null;o&&(f=new ResizeObserver(y=>{let[x]=y;x&&x.target===c&&f&&(f.unobserve(e),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var S;(S=f)==null||S.observe(e)})),t()}),c&&!l&&f.observe(c),f.observe(e));let v,g=l?mn(r):null;l&&m();function m(){let y=mn(r);g&&!Kg(g,y)&&t(),g=y,v=requestAnimationFrame(m)}return t(),()=>{var y;u.forEach(x=>{i&&x.removeEventListener("scroll",t),s&&x.removeEventListener("resize",t)}),p?.(),(y=f)==null||y.disconnect(),f=null,l&&cancelAnimationFrame(v)}}var wa=Og;var Sa=Lg,ka=Mg;var Yg=Pg,Xg=$g;var Ea=(r,e,t)=>{let n=new Map,i={platform:Sw,...t},s={...i.platform,_c:n};return Ig(r,e,{...i,platform:s})};var Ca=globalThis,Aa=Ca.ShadowRoot&&(Ca.ShadyCSS===void 0||Ca.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Gc=Symbol(),Jg=new WeakMap,ss=class{constructor(e,t,n){if(this._$cssResult$=!0,n!==Gc)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=e,this.t=t}get styleSheet(){let e=this.o,t=this.t;if(Aa&&e===void 0){let n=t!==void 0&&t.length===1;n&&(e=Jg.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&Jg.set(t,e))}return e}toString(){return this.cssText}},Qg=r=>new ss(typeof r=="string"?r:r+"",void 0,Gc),vn=(r,...e)=>{let t=r.length===1?r[0]:e.reduce((n,i,s)=>n+(o=>{if(o._$cssResult$===!0)return o.cssText;if(typeof o=="number")return o;throw Error("Value passed to 'css' function must be a 'css' function result: "+o+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(i)+r[s+1],r[0]);return new ss(t,r,Gc)},em=(r,e)=>{if(Aa)r.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let n=document.createElement("style"),i=Ca.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=t.cssText,r.appendChild(n)}},Kc=Aa?r=>r:r=>r instanceof CSSStyleSheet?(e=>{let t="";for(let n of e.cssRules)t+=n.cssText;return Qg(t)})(r):r;var{is:Ew,defineProperty:Cw,getOwnPropertyDescriptor:Aw,getOwnPropertyNames:Tw,getOwnPropertySymbols:Rw,getPrototypeOf:Iw}=Object,Vr=globalThis,tm=Vr.trustedTypes,$w=tm?tm.emptyScript:"",Mw=Vr.reactiveElementPolyfillSupport,os=(r,e)=>r,Yc={toAttribute(r,e){switch(e){case Boolean:r=r?$w:null;break;case Object:case Array:r=r==null?r:JSON.stringify(r)}return r},fromAttribute(r,e){let t=r;switch(e){case Boolean:t=r!==null;break;case Number:t=r===null?null:Number(r);break;case Object:case Array:try{t=JSON.parse(r)}catch{t=null}}return t}},nm=(r,e)=>!Ew(r,e),rm={attribute:!0,type:String,converter:Yc,reflect:!1,useDefault:!1,hasChanged:nm};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Vr.litPropertyMetadata??(Vr.litPropertyMetadata=new WeakMap);var mr=class extends HTMLElement{static addInitializer(e){this._$Ei(),(this.l??(this.l=[])).push(e)}static get observedAttributes(){return this.finalize(),this._$Eh&&[...this._$Eh.keys()]}static createProperty(e,t=rm){if(t.state&&(t.attribute=!1),this._$Ei(),this.prototype.hasOwnProperty(e)&&((t=Object.create(t)).wrapped=!0),this.elementProperties.set(e,t),!t.noAccessor){let n=Symbol(),i=this.getPropertyDescriptor(e,n,t);i!==void 0&&Cw(this.prototype,e,i)}}static getPropertyDescriptor(e,t,n){let{get:i,set:s}=Aw(this.prototype,e)??{get(){return this[t]},set(o){this[t]=o}};return{get:i,set(o){let a=i?.call(this);s?.call(this,o),this.requestUpdate(e,a,n)},configurable:!0,enumerable:!0}}static getPropertyOptions(e){return this.elementProperties.get(e)??rm}static _$Ei(){if(this.hasOwnProperty(os("elementProperties")))return;let e=Iw(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(os("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(os("properties"))){let t=this.properties,n=[...Tw(t),...Rw(t)];for(let i of n)this.createProperty(i,t[i])}let e=this[Symbol.metadata];if(e!==null){let t=litPropertyMetadata.get(e);if(t!==void 0)for(let[n,i]of t)this.elementProperties.set(n,i)}this._$Eh=new Map;for(let[t,n]of this.elementProperties){let i=this._$Eu(t,n);i!==void 0&&this._$Eh.set(i,t)}this.elementStyles=this.finalizeStyles(this.styles)}static finalizeStyles(e){let t=[];if(Array.isArray(e)){let n=new Set(e.flat(1/0).reverse());for(let i of n)t.unshift(Kc(i))}else e!==void 0&&t.push(Kc(e));return t}static _$Eu(e,t){let n=t.attribute;return n===!1?void 0:typeof n=="string"?n:typeof e=="string"?e.toLowerCase():void 0}constructor(){super(),this._$Ep=void 0,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Em=null,this._$Ev()}_$Ev(){this._$ES=new Promise(e=>this.enableUpdating=e),this._$AL=new Map,this._$E_(),this.requestUpdate(),this.constructor.l?.forEach(e=>e(this))}addController(e){(this._$EO??(this._$EO=new Set)).add(e),this.renderRoot!==void 0&&this.isConnected&&e.hostConnected?.()}removeController(e){this._$EO?.delete(e)}_$E_(){let e=new Map,t=this.constructor.elementProperties;for(let n of t.keys())this.hasOwnProperty(n)&&(e.set(n,this[n]),delete this[n]);e.size>0&&(this._$Ep=e)}createRenderRoot(){let e=this.shadowRoot??this.attachShadow(this.constructor.shadowRootOptions);return em(e,this.constructor.elementStyles),e}connectedCallback(){this.renderRoot??(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),this._$EO?.forEach(e=>e.hostConnected?.())}enableUpdating(e){}disconnectedCallback(){this._$EO?.forEach(e=>e.hostDisconnected?.())}attributeChangedCallback(e,t,n){this._$AK(e,n)}_$ET(e,t){let n=this.constructor.elementProperties.get(e),i=this.constructor._$Eu(e,n);if(i!==void 0&&n.reflect===!0){let s=(n.converter?.toAttribute!==void 0?n.converter:Yc).toAttribute(t,n.type);this._$Em=e,s==null?this.removeAttribute(i):this.setAttribute(i,s),this._$Em=null}}_$AK(e,t){let n=this.constructor,i=n._$Eh.get(e);if(i!==void 0&&this._$Em!==i){let s=n.getPropertyOptions(i),o=typeof s.converter=="function"?{fromAttribute:s.converter}:s.converter?.fromAttribute!==void 0?s.converter:Yc;this._$Em=i;let a=o.fromAttribute(t,s.type);this[i]=a??this._$Ej?.get(i)??a,this._$Em=null}}requestUpdate(e,t,n,i=!1,s){if(e!==void 0){let o=this.constructor;if(i===!1&&(s=this[e]),n??(n=o.getPropertyOptions(e)),!((n.hasChanged??nm)(s,t)||n.useDefault&&n.reflect&&s===this._$Ej?.get(e)&&!this.hasAttribute(o._$Eu(e,n))))return;this.C(e,t,n)}this.isUpdatePending===!1&&(this._$ES=this._$EP())}C(e,t,{useDefault:n,reflect:i,wrapped:s},o){n&&!(this._$Ej??(this._$Ej=new Map)).has(e)&&(this._$Ej.set(e,o??t??this[e]),s!==!0||o!==void 0)||(this._$AL.has(e)||(this.hasUpdated||n||(t=void 0),this._$AL.set(e,t)),i===!0&&this._$Em!==e&&(this._$Eq??(this._$Eq=new Set)).add(e))}async _$EP(){this.isUpdatePending=!0;try{await this._$ES}catch(t){Promise.reject(t)}let e=this.scheduleUpdate();return e!=null&&await e,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){if(!this.isUpdatePending)return;if(!this.hasUpdated){if(this.renderRoot??(this.renderRoot=this.createRenderRoot()),this._$Ep){for(let[i,s]of this._$Ep)this[i]=s;this._$Ep=void 0}let n=this.constructor.elementProperties;if(n.size>0)for(let[i,s]of n){let{wrapped:o}=s,a=this[i];o!==!0||this._$AL.has(i)||a===void 0||this.C(i,void 0,s,a)}}let e=!1,t=this._$AL;try{e=this.shouldUpdate(t),e?(this.willUpdate(t),this._$EO?.forEach(n=>n.hostUpdate?.()),this.update(t)):this._$EM()}catch(n){throw e=!1,this._$EM(),n}e&&this._$AE(t)}willUpdate(e){}_$AE(e){this._$EO?.forEach(t=>t.hostUpdated?.()),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(e)),this.updated(e)}_$EM(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$ES}shouldUpdate(e){return!0}update(e){this._$Eq&&(this._$Eq=this._$Eq.forEach(t=>this._$ET(t,this[t]))),this._$EM()}updated(e){}firstUpdated(e){}};mr.elementStyles=[],mr.shadowRootOptions={mode:"open"},mr[os("elementProperties")]=new Map,mr[os("finalized")]=new Map,Mw?.({ReactiveElement:mr}),(Vr.reactiveElementVersions??(Vr.reactiveElementVersions=[])).push("2.1.2");var ls=globalThis,im=r=>r,Ta=ls.trustedTypes,sm=Ta?Ta.createPolicy("lit-html",{createHTML:r=>r}):void 0,dm="$lit$",Ur=`lit$${Math.random().toFixed(9).slice(2)}$`,pm="?"+Ur,Pw=`<${pm}>`,_n=document,cs=()=>_n.createComment(""),us=r=>r===null||typeof r!="object"&&typeof r!="function",nu=Array.isArray,Ow=r=>nu(r)||typeof r?.[Symbol.iterator]=="function",Xc=`[
2
+ \f\r]`,as=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,om=/-->/g,am=/>/g,yn=RegExp(`>|${Xc}(?:([^\\s"'>=/]+)(${Xc}*=${Xc}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),lm=/'/g,cm=/"/g,hm=/^(?:script|style|textarea|title)$/i,iu=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),N=iu(1),CR=iu(2),AR=iu(3),Nt=Symbol.for("lit-noChange"),ee=Symbol.for("lit-nothing"),um=new WeakMap,bn=_n.createTreeWalker(_n,129);function fm(r,e){if(!nu(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return sm!==void 0?sm.createHTML(e):e}var Lw=(r,e)=>{let t=r.length-1,n=[],i,s=e===2?"<svg>":e===3?"<math>":"",o=as;for(let a=0;a<t;a++){let l=r[a],c,u,p=-1,h=0;for(;h<l.length&&(o.lastIndex=h,u=o.exec(l),u!==null);)h=o.lastIndex,o===as?u[1]==="!--"?o=om:u[1]!==void 0?o=am:u[2]!==void 0?(hm.test(u[2])&&(i=RegExp("</"+u[2],"g")),o=yn):u[3]!==void 0&&(o=yn):o===yn?u[0]===">"?(o=i??as,p=-1):u[1]===void 0?p=-2:(p=o.lastIndex-u[2].length,c=u[1],o=u[3]===void 0?yn:u[3]==='"'?cm:lm):o===cm||o===lm?o=yn:o===om||o===am?o=as:(o=yn,i=void 0);let f=o===yn&&r[a+1].startsWith("/>")?" ":"";s+=o===as?l+Pw:p>=0?(n.push(c),l.slice(0,p)+dm+l.slice(p)+Ur+f):l+Ur+(p===-2?a:f)}return[fm(r,s+(r[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),n]},ds=class r{constructor({strings:e,_$litType$:t},n){let i;this.parts=[];let s=0,o=0,a=e.length-1,l=this.parts,[c,u]=Lw(e,t);if(this.el=r.createElement(c,n),bn.currentNode=this.el.content,t===2||t===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(i=bn.nextNode())!==null&&l.length<a;){if(i.nodeType===1){if(i.hasAttributes())for(let p of i.getAttributeNames())if(p.endsWith(dm)){let h=u[o++],f=i.getAttribute(p).split(Ur),v=/([.?@])?(.*)/.exec(h);l.push({type:1,index:s,name:v[2],strings:f,ctor:v[1]==="."?Qc:v[1]==="?"?eu:v[1]==="@"?tu:ci}),i.removeAttribute(p)}else p.startsWith(Ur)&&(l.push({type:6,index:s}),i.removeAttribute(p));if(hm.test(i.tagName)){let p=i.textContent.split(Ur),h=p.length-1;if(h>0){i.textContent=Ta?Ta.emptyScript:"";for(let f=0;f<h;f++)i.append(p[f],cs()),bn.nextNode(),l.push({type:2,index:++s});i.append(p[h],cs())}}}else if(i.nodeType===8)if(i.data===pm)l.push({type:2,index:s});else{let p=-1;for(;(p=i.data.indexOf(Ur,p+1))!==-1;)l.push({type:7,index:s}),p+=Ur.length-1}s++}}static createElement(e,t){let n=_n.createElement("template");return n.innerHTML=e,n}};function li(r,e,t=r,n){if(e===Nt)return e;let i=n!==void 0?t._$Co?.[n]:t._$Cl,s=us(e)?void 0:e._$litDirective$;return i?.constructor!==s&&(i?._$AO?.(!1),s===void 0?i=void 0:(i=new s(r),i._$AT(r,t,n)),n!==void 0?(t._$Co??(t._$Co=[]))[n]=i:t._$Cl=i),i!==void 0&&(e=li(r,i._$AS(r,e.values),i,n)),e}var Jc=class{constructor(e,t){this._$AV=[],this._$AN=void 0,this._$AD=e,this._$AM=t}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(e){let{el:{content:t},parts:n}=this._$AD,i=(e?.creationScope??_n).importNode(t,!0);bn.currentNode=i;let s=bn.nextNode(),o=0,a=0,l=n[0];for(;l!==void 0;){if(o===l.index){let c;l.type===2?c=new ps(s,s.nextSibling,this,e):l.type===1?c=new l.ctor(s,l.name,l.strings,this,e):l.type===6&&(c=new ru(s,this,e)),this._$AV.push(c),l=n[++a]}o!==l?.index&&(s=bn.nextNode(),o++)}return bn.currentNode=_n,i}p(e){let t=0;for(let n of this._$AV)n!==void 0&&(n.strings!==void 0?(n._$AI(e,n,t),t+=n.strings.length-2):n._$AI(e[t])),t++}},ps=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,n,i){this.type=2,this._$AH=ee,this._$AN=void 0,this._$AA=e,this._$AB=t,this._$AM=n,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let e=this._$AA.parentNode,t=this._$AM;return t!==void 0&&e?.nodeType===11&&(e=t.parentNode),e}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(e,t=this){e=li(this,e,t),us(e)?e===ee||e==null||e===""?(this._$AH!==ee&&this._$AR(),this._$AH=ee):e!==this._$AH&&e!==Nt&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):Ow(e)?this.k(e):this._(e)}O(e){return this._$AA.parentNode.insertBefore(e,this._$AB)}T(e){this._$AH!==e&&(this._$AR(),this._$AH=this.O(e))}_(e){this._$AH!==ee&&us(this._$AH)?this._$AA.nextSibling.data=e:this.T(_n.createTextNode(e)),this._$AH=e}$(e){let{values:t,_$litType$:n}=e,i=typeof n=="number"?this._$AC(e):(n.el===void 0&&(n.el=ds.createElement(fm(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(t);else{let s=new Jc(i,this),o=s.u(this.options);s.p(t),this.T(o),this._$AH=s}}_$AC(e){let t=um.get(e.strings);return t===void 0&&um.set(e.strings,t=new ds(e)),t}k(e){nu(this._$AH)||(this._$AH=[],this._$AR());let t=this._$AH,n,i=0;for(let s of e)i===t.length?t.push(n=new r(this.O(cs()),this.O(cs()),this,this.options)):n=t[i],n._$AI(s),i++;i<t.length&&(this._$AR(n&&n._$AB.nextSibling,i),t.length=i)}_$AR(e=this._$AA.nextSibling,t){for(this._$AP?.(!1,!0,t);e!==this._$AB;){let n=im(e).nextSibling;im(e).remove(),e=n}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}},ci=class{get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}constructor(e,t,n,i,s){this.type=1,this._$AH=ee,this._$AN=void 0,this.element=e,this.name=t,this._$AM=i,this.options=s,n.length>2||n[0]!==""||n[1]!==""?(this._$AH=Array(n.length-1).fill(new String),this.strings=n):this._$AH=ee}_$AI(e,t=this,n,i){let s=this.strings,o=!1;if(s===void 0)e=li(this,e,t,0),o=!us(e)||e!==this._$AH&&e!==Nt,o&&(this._$AH=e);else{let a=e,l,c;for(e=s[0],l=0;l<s.length-1;l++)c=li(this,a[n+l],t,l),c===Nt&&(c=this._$AH[l]),o||(o=!us(c)||c!==this._$AH[l]),c===ee?e=ee:e!==ee&&(e+=(c??"")+s[l+1]),this._$AH[l]=c}o&&!i&&this.j(e)}j(e){e===ee?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},Qc=class extends ci{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===ee?void 0:e}},eu=class extends ci{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==ee)}},tu=class extends ci{constructor(e,t,n,i,s){super(e,t,n,i,s),this.type=5}_$AI(e,t=this){if((e=li(this,e,t,0)??ee)===Nt)return;let n=this._$AH,i=e===ee&&n!==ee||e.capture!==n.capture||e.once!==n.once||e.passive!==n.passive,s=e!==ee&&(n===ee||i);i&&this.element.removeEventListener(this.name,this,n),s&&this.element.addEventListener(this.name,this,e),this._$AH=e}handleEvent(e){typeof this._$AH=="function"?this._$AH.call(this.options?.host??this.element,e):this._$AH.handleEvent(e)}},ru=class{constructor(e,t,n){this.element=e,this.type=6,this._$AN=void 0,this._$AM=t,this.options=n}get _$AU(){return this._$AM._$AU}_$AI(e){li(this,e)}};var Nw=ls.litHtmlPolyfillSupport;Nw?.(ds,ps),(ls.litHtmlVersions??(ls.litHtmlVersions=[])).push("3.3.2");var gm=(r,e,t)=>{let n=t?.renderBefore??e,i=n._$litPart$;if(i===void 0){let s=t?.renderBefore??null;n._$litPart$=i=new ps(e.insertBefore(cs(),s),s,void 0,t??{})}return i._$AI(r),i};var hs=globalThis,be=class extends mr{constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var t;let e=super.createRenderRoot();return(t=this.renderOptions).renderBefore??(t.renderBefore=e.firstChild),e}update(e){let t=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(e),this._$Do=gm(t,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return Nt}};be._$litElement$=!0,be.finalized=!0,hs.litElementHydrateSupport?.({LitElement:be});var Fw=hs.litElementPolyfillSupport;Fw?.({LitElement:be});(hs.litElementVersions??(hs.litElementVersions=[])).push("4.2.2");var Ra={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Ia=r=>(...e)=>({_$litDirective$:r,values:e}),ui=class{constructor(e){}get _$AU(){return this._$AM._$AU}_$AT(e,t,n){this._$Ct=e,this._$AM=t,this._$Ci=n}_$AS(e,t){return this.update(e,t)}update(e,t){return this.render(...t)}};var mm="important",Dw=" !"+mm,T=Ia(class extends ui{constructor(r){if(super(r),r.type!==Ra.ATTRIBUTE||r.name!=="style"||r.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(r){return Object.keys(r).reduce((e,t)=>{let n=r[t];return n==null?e:e+`${t=t.includes("-")?t:t.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${n};`},"")}update(r,[e]){let{style:t}=r.element;if(this.ft===void 0)return this.ft=new Set(Object.keys(e)),this.render(e);for(let n of this.ft)e[n]==null&&(this.ft.delete(n),n.includes("-")?t.removeProperty(n):t[n]=null);for(let n in e){let i=e[n];if(i!=null){this.ft.add(n);let s=typeof i=="string"&&i.endsWith(Dw);n.includes("-")||s?t.setProperty(n,s?i.slice(0,-11):i,s?mm:""):t[n]=i}}return Nt}});var Hw={light:50,medium:100,heavy:200},Bw=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"],Vw={init(r,e,t){let n=Hw[t.intensity],i=t.colors.length>0?t.colors:Bw,s=[];for(let o=0;o<n;o++)s.push({x:Math.random()*r,y:Math.random()*-e*.3,vx:(Math.random()-.5)*4,vy:Math.random()*2+1,rotation:Math.random()*Math.PI*2,rotationSpeed:(Math.random()-.5)*.2,size:Math.random()*6+4,color:i[Math.floor(Math.random()*i.length)],opacity:1,shape:Math.random()>.5?"rect":"circle"});return s},update(r,e,t){let n=!1;for(let i of r)i.vy+=.15,i.vx*=.99,i.x+=i.vx,i.y+=i.vy,i.rotation+=i.rotationSpeed,i.y>0&&i.opacity>0&&i.y>500&&(i.opacity-=.02,i.opacity<0&&(i.opacity=0)),i.opacity>.01&&(n=!0);return n},render(r,e){for(let t of e)t.opacity<.01||(r.save(),r.globalAlpha=t.opacity,r.fillStyle=t.color,r.translate(t.x,t.y),r.rotate(t.rotation),t.shape==="circle"?(r.beginPath(),r.arc(0,0,t.size/2,0,Math.PI*2),r.fill()):r.fillRect(-t.size/2,-t.size/2,t.size,t.size*.6),r.restore())}},Uw={light:20,medium:40,heavy:80},jw="\u{1F389}",Ww={init(r,e,t){let n=Uw[t.intensity],i=typeof t.props?.emoji=="string"?t.props.emoji:jw,s=[];for(let o=0;o<n;o++)s.push({x:Math.random()*r,y:Math.random()*-200,vx:0,vy:Math.random()*1.5+1,rotation:0,rotationSpeed:0,size:Math.random()*12+16,color:"#000000",opacity:1,shape:"emoji",emoji:i,data:{wobblePhase:Math.random()*Math.PI*2,wobbleAmp:Math.random()*1.5+.5,originX:0}});for(let o of s)o.data&&(o.data.originX=o.x);return s},update(r,e,t){let n=!1;for(let i of r){i.y+=i.vy;let s=i.data?.wobblePhase??0,o=i.data?.wobbleAmp??1,a=i.data?.originX??i.x;i.x=a+Math.sin(t*.003+s)*o*20,i.y>600&&(i.opacity-=.02,i.opacity<0&&(i.opacity=0)),i.opacity>.01&&(n=!0)}return n},render(r,e){for(let t of e)t.opacity<.01||!t.emoji||(r.save(),r.globalAlpha=t.opacity,r.font=`${t.size}px serif`,r.textAlign="center",r.textBaseline="middle",r.fillText(t.emoji,t.x,t.y),r.restore())}},zw={light:20,medium:40,heavy:80},qw={light:3,medium:4,heavy:5},Zw={init(r,e,t){let n=zw[t.intensity],i=qw[t.intensity],s=t.colors.length>0?t.colors:["#ff4444","#44ff44","#4444ff"],o=[];for(let a=0;a<i;a++){let l=Math.random()*r*.8+r*.1,c=Math.random()*e*.6,u=s[Math.floor(Math.random()*s.length)];for(let p=0;p<n;p++){let h=Math.PI*2*p/n+(Math.random()-.5)*.3,f=Math.random()*3+2;o.push({x:l,y:c,vx:Math.cos(h)*f,vy:Math.sin(h)*f,rotation:0,rotationSpeed:0,size:Math.random()*3+2,color:u,opacity:1,shape:"circle",data:{centerX:l,centerY:c}})}}return o},update(r,e,t){let n=!1;for(let i of r)i.vx*=.97,i.vy*=.97,i.vy+=.03,i.x+=i.vx,i.y+=i.vy,i.opacity-=.008,i.opacity<0&&(i.opacity=0),i.opacity>.01&&(n=!0);return n},render(r,e){for(let t of e)t.opacity<.01||(r.save(),r.globalAlpha=t.opacity,r.fillStyle=t.color,r.shadowBlur=12,r.shadowColor=t.color,r.beginPath(),r.arc(t.x,t.y,t.size,0,Math.PI*2),r.fill(),r.restore())}},Gw={light:30,medium:60,heavy:120},Kw={init(r,e,t){let n=Gw[t.intensity],i=t.colors.length>0?t.colors:["#ffd700","#ffffff","#fffacd"],s=[];for(let o=0;o<n;o++)s.push({x:Math.random()*r,y:Math.random()*e,vx:(Math.random()-.5)*.3,vy:-(Math.random()*.5+.2),rotation:Math.random()*Math.PI*2,rotationSpeed:(Math.random()-.5)*.1,size:Math.random()*4+2,color:i[Math.floor(Math.random()*i.length)],opacity:Math.random()*.5+.5,shape:"circle",data:{phase:Math.random()*Math.PI*2,baseOpacity:Math.random()*.5+.5}});return s},update(r,e,t){let n=!1;for(let i of r){i.x+=i.vx,i.y+=i.vy,i.rotation+=i.rotationSpeed,i.data&&(i.data.baseOpacity=(i.data.baseOpacity??1)-.001,i.data.baseOpacity<0&&(i.data.baseOpacity=0));let s=i.data?.phase??0,o=i.data?.baseOpacity??1;if(o<=.01)i.opacity=0;else{let a=Math.sin(t*.005+s)*.4+.6;i.opacity=o*a}i.opacity>.01&&(n=!0)}return n},render(r,e){for(let t of e){if(t.opacity<.01)continue;r.save(),r.globalAlpha=t.opacity,r.fillStyle=t.color,r.translate(t.x,t.y),r.rotate(t.rotation);let n=t.size;r.beginPath(),r.moveTo(0,-n),r.lineTo(n*.3,-n*.3),r.lineTo(n,0),r.lineTo(n*.3,n*.3),r.lineTo(0,n),r.lineTo(-n*.3,n*.3),r.lineTo(-n,0),r.lineTo(-n*.3,-n*.3),r.closePath(),r.fill(),r.restore()}}},Yw=class{constructor(){this.canvas=null,this.ctx=null,this.rafId=null,this.particles=[],this.startTime=0,this.lastFrame=0,this.duration=0,this.effect=null,this.container=null}start(r,e,t){if(window.matchMedia("(prefers-reduced-motion: reduce)").matches)return;this.container=r,this.effect=e,this.duration=t.duration;let i=document.createElement("canvas");i.setAttribute("data-syntro-celebrate",""),Object.assign(i.style,{position:"fixed",inset:"0",pointerEvents:"none",zIndex:"2147483646"});let s=window.devicePixelRatio||1,o=window.innerWidth,a=window.innerHeight;i.width=o*s,i.height=a*s,i.style.width=`${o}px`,i.style.height=`${a}px`;let l=i.getContext("2d");l&&(l.scale(s,s),this.canvas=i,this.ctx=l,r.appendChild(i),this.particles=e.init(o,a,t),this.startTime=performance.now(),this.lastFrame=this.startTime,this.tick=this.tick.bind(this),this.rafId=requestAnimationFrame(this.tick))}stop(){this.rafId!==null&&(cancelAnimationFrame(this.rafId),this.rafId=null),this.canvas&&this.container&&(this.canvas.remove(),this.canvas=null),this.ctx=null,this.effect=null,this.container=null,this.particles=[]}tick(r){if(!this.ctx||!this.canvas||!this.effect)return;let e=r-this.startTime,t=r-this.lastFrame;if(this.lastFrame=r,e>=this.duration){this.stop();return}let n=this.canvas.width/(window.devicePixelRatio||1),i=this.canvas.height/(window.devicePixelRatio||1);if(this.ctx.clearRect(0,0,n,i),!this.effect.update(this.particles,t,e)){this.stop();return}this.effect.render(this.ctx,this.particles),this.rafId=requestAnimationFrame(this.tick)}},Xw=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"];function Jw(r,e){return[r,e,`${r}cc`,`${e}cc`,"#ffffff",`${r}80`]}function Qw(r){try{let e=getComputedStyle(r),t=e.getPropertyValue("--sc-color-primary")?.trim(),n=e.getPropertyValue("--sc-color-primary-hover")?.trim();if(t?.startsWith("#")&&t.length>=7)return Jw(t,n||t)}catch{}return null}var vm=new Map([["confetti",Vw],["fireworks",Zw],["sparkles",Kw],["emoji-rain",Ww]]),e1=async(r,e)=>{let t=vm.get(r.effect);if(!t)return console.warn(`[adaptive-overlays] Unknown celebration effect: "${r.effect}". Available: ${[...vm.keys()].join(", ")}`),{cleanup:()=>{}};let n=r.colors??Qw(e.overlayRoot)??Xw,i={duration:r.duration??3e3,intensity:r.intensity??"medium",colors:n,props:r.props},s=new Yw;return s.start(e.overlayRoot,t,i),e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:celebrate",effect:r.effect}),{cleanup:()=>{s.stop()}}},t1=new Set(["http:","https:","mailto:","tel:"]);function r1(r){if(typeof r!="string"||r.trim().length===0)return!1;let e;try{e=new URL(r,"https://syntro.local/")}catch{return!1}return t1.has(e.protocol)}function wm(r){if(r.actionId==="dismiss"||!r.href||!r1(r.href))return!1;let e=r.href;return r.target==="_blank"?window.open(e,"_blank","noopener,noreferrer"):window.location.assign(e),!0}var au="syntro_active_tour",$a=new Map;function n1(r){try{let e=localStorage.getItem(au);if(!e)return null;let t=JSON.parse(e);return t.tourId!==r?null:t}catch{return null}}function su(r){try{localStorage.setItem(au,JSON.stringify(r))}catch{}}function i1(){try{localStorage.removeItem(au)}catch{}}function vs(){return window.location.pathname}function s1(r){if(!r.route)return!0;let e=vs();return r.route.includes("*")?new RegExp(`^${r.route.replace(/\*/g,".*")}$`).test(e):e===r.route}var Sm=async(r,e)=>{let{tourId:t,steps:n,startStep:i,autoStart:s=!0}=r;if(n.length===0)throw new Error(`Tour "${t}" has no steps`);if($a.has(t))return{cleanup:async()=>{let S=$a.get(t);S&&await S.cleanup()}};if(!e.applyAction)throw new Error("Tour executor requires applyAction in context");let o=n1(t),a=!!o;if(!a&&!s)return{cleanup:()=>{}};o||(o={tourId:t,currentStepId:i||n[0].id,startedAt:Date.now()},su(o));let l=n.findIndex(S=>S.id===o.currentStepId);if(l===-1){let S=i||n[0].id;l=n.findIndex(b=>b.id===S),l===-1&&(l=0),o.currentStepId=n[l].id,su(o)}let c=n[l];if(!s1(c))return e.publishEvent("tour.waiting_for_route",{tourId:t,stepId:c.id,expectedRoute:c.route,currentRoute:vs()}),{cleanup:()=>{}};let u=!1,p=null,h=null,f=null,v=async()=>{h&&(h(),h=null),p?.isApplied()&&(await p.revert(),p=null)},g=async S=>{if(u)return;if(await v(),S==="end"){i1(),e.publishEvent("tour.completed",{tourId:t,totalSteps:n.length}),u=!0;return}let b=n.find(w=>w.id===S);if(!b){console.error(`[Tour] Step "${S}" not found`);return}if(o.currentStepId=S,su(o),e.publishEvent("tour.step_changed",{tourId:t,previousStepId:c.id,nextStepId:S}),b.route&&b.route!==vs()){e.publishEvent("tour.awaiting_navigation",{tourId:t,stepId:S,targetRoute:b.route});return}await m(b)},m=async S=>{if(!u){e.publishEvent("tour.step_started",{tourId:t,stepId:S.id,stepIndex:n.findIndex(b=>b.id===S.id),totalSteps:n.length});try{p=await e.applyAction(S.action)}catch(b){console.error(`[Tour] Failed to execute step "${S.id}":`,b),e.publishEvent("tour.step_failed",{tourId:t,stepId:S.id,error:String(b)});return}if(S.onAction&&e.subscribeEvent){h=e.subscribeEvent("action.modal_cta_clicked",A=>{let _=A?.actionId;if(_&&S.onAction){let C=S.onAction[_];C&&g(C)}});let b=e.subscribeEvent("action.tooltip_cta_clicked",A=>{let _=A?.actionId;if(_&&S.onAction){let C=S.onAction[_];C&&g(C)}}),w=h;h=()=>{w(),b()}}}};f=(()=>{let S=vs(),b=()=>{let _=vs();_!==S&&(S=_,e.publishEvent("tour.route_changed",{tourId:t,newRoute:_}))};if(e.subscribeNavigation)return e.subscribeNavigation(()=>b());window.addEventListener("popstate",b);let w=history.pushState.bind(history),A=history.replaceState.bind(history);return history.pushState=(..._)=>{w(..._),queueMicrotask(b)},history.replaceState=(..._)=>{A(..._),queueMicrotask(b)},()=>{window.removeEventListener("popstate",b),history.pushState=w,history.replaceState=A}})(),a?e.publishEvent("tour.resumed",{tourId:t,stepId:o.currentStepId}):e.publishEvent("tour.started",{tourId:t,totalSteps:n.length,startStepId:o.currentStepId}),await m(c);let x=async()=>{u=!0,$a.delete(t),await v(),f&&f(),e.publishEvent("tour.paused",{tourId:t,stepId:o.currentStepId})};return $a.set(t,{cleanup:x}),{cleanup:x}},Zt={white:"#ffffff",black:"#000000"},ht={0:"#2c0b0a",1:"#5b1715",2:"#89221f",3:"#b72e2a",4:"#d44844",5:"#dd6d69",6:"#e5918f",7:"#eeb6b4",8:"#f6dada",9:"#faebea"},O={0:"#07080a",1:"#0f1318",2:"#0e1114",3:"#1c222a",4:"#2b333f",5:"#394454",6:"#475569",7:"#677384",8:"#87919f",9:"#a8afba",10:"#cbd0d7",11:"#e8eaee",12:"#f6f7f9"},He={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Gt={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},st={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},wn={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},fs={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},gs={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},ms={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"},GR={primary:O[10],secondary:O[9],tertiary:O[8]},KR={primary:O[2],secondary:O[0]},YR={primary:O[4],secondary:O[3]},XR={primary:{text:Zt.white,icon:Zt.white,border:ht[3],backgroundDefault:ht[3],backgroundHover:ht[2]},neutral:{text:O[10],textHover:Zt.white,icon:O[10],iconHover:Zt.white,border:O[4],background:O[2]},link:{text:Zt.white,icon:Zt.white,hover:ht[5]},error:{text:st[5],hover:st[6]},success:{text:He[5],hover:He[6]}},JR={slateGrey:{content:O[10],pillOutline:O[10],borderPrimary:O[5],borderSecondary:O[5],background:O[3]},brand:{content:ht[9],pillOutline:ht[9],borderPrimary:ht[6],borderSecondary:ht[6],background:ht[0]},red:{content:st[8],pillOutline:st[4],borderPrimary:st[2],borderSecondary:st[2],background:st[0]},yellow:{content:Gt[8],pillOutline:Gt[4],borderPrimary:Gt[2],borderSecondary:Gt[2],background:Gt[0]},green:{content:He[8],pillOutline:He[4],borderPrimary:He[2],borderSecondary:He[2],background:He[0]},purple:{content:gs[8],pillOutline:gs[4],borderPrimary:gs[2],borderSecondary:gs[2],background:gs[0]},blue:{content:wn[8],pillOutline:wn[4],borderPrimary:wn[2],borderSecondary:wn[2],background:wn[0]},orange:{content:fs[8],pillOutline:fs[4],borderPrimary:fs[2],borderSecondary:fs[2],background:fs[0]},pink:{content:ms[8],pillOutline:ms[4],borderPrimary:ms[2],borderSecondary:ms[2],background:ms[0]}},QR={green:{content:He[8],border:He[2],background:He[0]},yellow:{content:Gt[8],border:Gt[2],background:Gt[0]},red:{content:st[8],border:st[2],background:st[0]}},eI={green:{content:He[1],background:He[9]},yellow:{content:Gt[1],background:Gt[9]},red:{content:st[1],background:st[9]}},tI={content:O[10],border:O[4],background:O[3]},rI={backgroundDefault:O[2],backgroundHover:O[1],selected:O[3]},nI={background:O[2],icon:O[10],borderDefault:O[4],borderSelected:ht[3],textLabel:O[9],textPlaceholder:O[8],textHint:O[8]},iI={backgroundDefault:O[2],backgroundDisabled:O[0],textLabel:O[9],textPlaceholder:O[8],textHint:O[8],textError:st[5],iconDefault:O[9],iconPlaceholder:O[10],iconError:st[5],borderDefault:O[4],borderSelected:ht[3],borderError:st[5]},sI={handleDefault:Zt.white,handleDisabled:O[10],off:{backgroundDefault:O[4],backgroundHover:O[5],backgroundDisabled:O[4]},on:{backgroundDefault:He[3],backgroundHover:He[2],backgroundDisabled:O[4]}},oI={off:{backgroundDefault:"#00000000",backgroundHover:O[5],backgroundDisabled:O[2],border:O[6]},on:{backgroundDefault:He[0],backgroundHover:He[1],backgroundDisabled:O[2],border:He[3]}},aI={content:O[10],background:O[4]},lI={background:O[4],active:He[3]},cI={background:O[1],content:O[9],border:O[4]},uI={backgroundDefault:O[1],backgroundHover:O[3],backgroundActive:O[4],border:O[4],contentPrimary:O[10],contentSecondary:O[9],contentTertiary:O[8]},dI={background:O[1],content:O[9],border:O[4]},pI={activeBackground:O[3],activeContent:ht[5],inactiveContent:O[9],border:O[4]},hI={header:{textDefault:O[9],textHover:O[8],backgroundDefault:O[1]},border:O[4],cell:{textPrimary:O[10],textSecondary:O[9],backgroundDefault:O[2],backgroundHover:O[1]}},fI={textPrimaryDefault:O[10],textPrimaryHover:O[10],textSecondaryDefault:O[8],textSecondaryHover:O[9],iconPrimary:O[10],iconSecondary:O[8]},gI={background:He[1],active:He[5]},mI={textDefault:O[10],textSelected:Zt.white,textDisabled:O[7],backgroundDefault:O[2],backgroundMiddle:O[3],backgroundSelected:ht[3],border:O[4]},vI=O[9],yI={size:56,inset:12,background:Zt.black,color:Zt.white,border:`2px solid ${ht[3]}`,shadowOpen:"0 4px 24px rgba(0,0,0,0.6), 0 0 0 2px rgba(255,255,255,0.08)",shadowClosed:"0 4px 24px rgba(0,0,0,0.6)"},ym=typeof CSS<"u"&&CSS.supports?.("clip-path","path('M0 0 H1 V1 Z')");function o1(r,e,t){let n=t?.paddingPx??12,i=t?.radiusPx??12,s=Math.min(Math.max(t?.scrimOpacity??.55,0),1),o=t?.ringColor??`var(--syntro-ring, ${wn[5]})`,a=t?.blocking??!1,l=t?.onClickOutside??!0,c=t?.onEsc??!0,u=getComputedStyle(document.documentElement),p=u.getPropertyValue("--syntro-spotlight-backdrop").trim(),h=u.getPropertyValue("--syntro-ring").trim(),f=document.createElement("div");f.className="syntro-spotlight-scrim";let v=a||l;Object.assign(f.style,{position:"fixed",inset:"0",zIndex:"2147483646",pointerEvents:v?"auto":"none",background:p||`rgba(2, 6, 23, ${s})`,transition:"opacity 220ms ease",opacity:"0"}),e.appendChild(f),requestAnimationFrame(()=>f.style.opacity="1");let g=document.createElement("div");g.className="syntro-spotlight-ring",Object.assign(g.style,{position:"fixed",pointerEvents:"none",borderRadius:`${i}px`,border:`2px solid ${o||h||wn[5]}`,boxShadow:"0 0 0 4px rgba(255,255,255,0.35)",zIndex:"2147483647",transition:"all 220ms cubic-bezier(0.16,1,0.3,1)"}),e.appendChild(g);let m=[];if(!ym)for(let I=0;I<4;I++){let R=document.createElement("div");R.style.position="fixed",R.style.background="inherit",m.push(R),f.appendChild(R)}let y=I=>{f.style.clipPath=I,f.style.webkitClipPath=I},x=()=>{if(!r.isConnected){C.destroy();return}let I=r.getBoundingClientRect(),R=I.left-n,P=I.top-n,Y=I.width+n*2,F=I.height+n*2;if(Object.assign(g.style,{left:`${R}px`,top:`${P}px`,width:`${Y}px`,height:`${F}px`}),ym){let L=window.innerWidth,G=window.innerHeight,K=Math.min(i,Y/2,F/2),le=`M 0 0 L ${L} 0 L ${L} ${G} L 0 ${G} Z`,j=`M ${R+K} ${P} A ${K} ${K} 0 0 0 ${R} ${P+K} L ${R} ${P+F-K} A ${K} ${K} 0 0 0 ${R+K} ${P+F} L ${R+Y-K} ${P+F} A ${K} ${K} 0 0 0 ${R+Y} ${P+F-K} L ${R+Y} ${P+K} A ${K} ${K} 0 0 0 ${R+Y-K} ${P} L ${R+K} ${P} Z`;y(`path('${le} ${j}')`)}else{let[L,G,K,le]=m;Object.assign(L.style,{left:"0px",top:"0px",width:"100vw",height:`${P}px`}),Object.assign(K.style,{left:"0px",top:`${P+F}px`,width:"100vw",height:`${Math.max(0,window.innerHeight-(P+F))}px`}),Object.assign(le.style,{left:"0px",top:`${P}px`,width:`${R}px`,height:`${F}px`}),Object.assign(G.style,{left:`${R+Y}px`,top:`${P}px`,width:`${Math.max(0,window.innerWidth-(R+Y))}px`,height:`${F}px`})}},S=new ResizeObserver(()=>requestAnimationFrame(x));S.observe(r);let b=()=>requestAnimationFrame(x),w=()=>requestAnimationFrame(x);window.addEventListener("scroll",b,!0),window.addEventListener("resize",w);let A=I=>{I.key==="Escape"&&c&&(t?.onDismiss?.(),C.destroy())};c&&window.addEventListener("keydown",A);let _=I=>{a?(I.preventDefault(),I.stopPropagation()):l&&(t?.onDismiss?.(),C.destroy())};f.addEventListener("click",_);let C={destroy(){S.disconnect(),window.removeEventListener("scroll",b,!0),window.removeEventListener("resize",w),c&&window.removeEventListener("keydown",A),f.removeEventListener("click",_),f.style.pointerEvents="none",f.style.opacity="0",setTimeout(()=>{try{f.remove()}catch{}try{g.remove()}catch{}},220)}};return x(),C}var a1=new Set(["b","strong","i","em","u","span","div","p","br","ul","ol","li","code","pre","small","sup","sub","a","button","svg","path","circle","line","polyline","polygon","rect","g"]);function Kt(r){if(typeof window.Sanitizer=="function")try{let a=new window.Sanitizer({}).sanitizeToFragment(r),l=document.createElement("div");return l.append(a),l.innerHTML}catch{}let t=document.createElement("template");t.innerHTML=r;let n=t.content,i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,null),s=[];for(;i.nextNode();){let o=i.currentNode,a=o.tagName.toLowerCase();if(!a1.has(a)){s.push(o);continue}for(let l of Array.from(o.attributes)){let c=l.name.toLowerCase(),u=l.value.trim().toLowerCase(),p=c.startsWith("on"),h=(c==="href"||c==="src")&&u.startsWith("javascript:");(p||h)&&o.removeAttribute(l.name)}}for(let o of s){for(;o.firstChild;)o.parentNode?.insertBefore(o.firstChild,o);o.remove()}return t.innerHTML}var xn={bg:"var(--sc-overlay-background, #ffffff)",title:"var(--sc-overlay-title-color, var(--sc-overlay-text-color, #111827))",text:"var(--sc-overlay-text-color, #4b5563)",accent:"var(--sc-color-primary, #4f46e5)",radius:"var(--sc-border-radius, 12px)"},km=async(r,e)=>{let{content:t,size:n="md",blocking:i=!1,scrim:s,dismiss:o,ctaButtons:a}=r,l=document.createElement("div");l.className="syntro-modal-scrim",l.style.cssText=`
4
4
  position: fixed;
5
5
  inset: 0;
6
6
  background: rgba(0, 0, 0, ${s?.opacity??.6});
@@ -14,14 +14,14 @@ var Lf=Object.defineProperty;var Ff=r=>{throw TypeError(r)};var Q0=(r,e,t)=>e in
14
14
  transform: translate(-50%, -50%) scale(0.95);
15
15
  max-width: ${u[n]};
16
16
  width: 90%;
17
- background: ${bn.bg};
18
- border-radius: ${bn.radius};
17
+ background: ${xn.bg};
18
+ border-radius: ${xn.radius};
19
19
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
20
20
  z-index: 2147483646;
21
21
  opacity: 0;
22
22
  transition: opacity 200ms ease-out, transform 200ms ease-out;
23
23
  padding: 24px;
24
- `;let p="";if(t.title&&(p+=`<h2 class="syntro-modal-title" style="margin: 0 0 12px 0; font-size: 18px; font-weight: 600; color: ${bn.title};">${Kt(t.title)}</h2>`),p+=`<div class="syntro-modal-body" style="color: ${bn.text}; line-height: 1.5;">${Kt(t.body)}</div>`,o?.closeButton!==!1&&(p+=`
24
+ `;let p="";if(t.title&&(p+=`<h2 class="syntro-modal-title" style="margin: 0 0 12px 0; font-size: 18px; font-weight: 600; color: ${xn.title};">${Kt(t.title)}</h2>`),p+=`<div class="syntro-modal-body" style="color: ${xn.text}; line-height: 1.5;">${Kt(t.body)}</div>`,o?.closeButton!==!1&&(p+=`
25
25
  <button class="syntro-modal-close" data-syntro-action="dismiss" style="
26
26
  position: absolute;
27
27
  top: 16px;
@@ -30,16 +30,16 @@ var Lf=Object.defineProperty;var Ff=r=>{throw TypeError(r)};var Q0=(r,e,t)=>e in
30
30
  border: none;
31
31
  cursor: pointer;
32
32
  padding: 4px;
33
- color: ${bn.text};
33
+ color: ${xn.text};
34
34
  opacity: 0.6;
35
35
  " aria-label="Close">
36
36
  <svg width="20" height="20" viewBox="0 0 20 20" fill="currentColor">
37
37
  <path fill-rule="evenodd" d="M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z" clip-rule="evenodd"/>
38
38
  </svg>
39
39
  </button>
40
- `),a&&a.length>0){p+='<div class="syntro-modal-actions" style="display: flex; gap: 12px; margin-top: 24px; justify-content: flex-end;">';for(let w of a){let C=w.primary??!1;p+=`
40
+ `),a&&a.length>0){p+='<div class="syntro-modal-actions" style="display: flex; gap: 12px; margin-top: 24px; justify-content: flex-end;">';for(let w of a){let A=w.primary??!1;p+=`
41
41
  <button
42
- class="syntro-modal-btn ${C?"syntro-modal-btn-primary":""}"
42
+ class="syntro-modal-btn ${A?"syntro-modal-btn-primary":""}"
43
43
  data-syntro-action="${Kt(w.actionId)}"
44
44
  style="
45
45
  padding: 10px 20px;
@@ -48,67 +48,67 @@ var Lf=Object.defineProperty;var Ff=r=>{throw TypeError(r)};var Q0=(r,e,t)=>e in
48
48
  font-weight: 500;
49
49
  cursor: pointer;
50
50
  transition: background 150ms ease;
51
- ${C?`background: ${bn.accent}; color: white; border: none;`:`background: transparent; color: ${bn.accent}; border: 1px solid currentColor; opacity: 0.7;`}
51
+ ${A?`background: ${xn.accent}; color: white; border: none;`:`background: transparent; color: ${xn.accent}; border: 1px solid currentColor; opacity: 0.7;`}
52
52
  "
53
53
  >
54
54
  ${Kt(w.label)}
55
55
  </button>
56
- `}p+="</div>"}c.innerHTML=p,e.overlayRoot.appendChild(c);let h=null,f=c.querySelectorAll("[data-syntro-action]"),v=w=>{let _=w.currentTarget.getAttribute("data-syntro-action");_&&(h=_,e.publishEvent("action.modal_cta_clicked",{actionId:_}),b.destroy())};f.forEach(w=>w.addEventListener("click",v));let g=w=>{w.key==="Escape"&&o?.onEsc!==!1&&b.destroy()};window.addEventListener("keydown",g);let m=()=>{i||b.destroy()};l.addEventListener("click",m);let y=[];i&&Array.from(document.body.children).forEach(w=>{w!==e.overlayRoot&&w.getAttribute("inert")===null&&!w.querySelector("[data-syntro-editor-panel]")&&!w.hasAttribute("data-syntro-editor-panel")&&(w.setAttribute("inert",""),y.push(w))});let x;o?.timeoutMs&&(x=setTimeout(()=>{b.destroy()},o.timeoutMs));let S=c.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');S.length>0&&requestAnimationFrame(()=>S[0].focus()),requestAnimationFrame(()=>{l.style.opacity="1",c.style.opacity="1",c.style.transform="translate(-50%, -50%) scale(1)"}),e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:modal",size:n,blocking:i});let b={destroy(){x&&clearTimeout(x),window.removeEventListener("keydown",g),l.removeEventListener("click",m),f.forEach(w=>w.removeEventListener("click",v)),y.forEach(w=>w.removeAttribute("inert")),c.style.pointerEvents="none",l.style.pointerEvents="none",c.style.opacity="0",c.style.transform="translate(-50%, -50%) scale(0.95)",l.style.opacity="0",setTimeout(()=>{try{c.remove()}catch{}try{l.remove()}catch{}},200),e.publishEvent("action.modal_dismissed",{actionClicked:h})}};return{cleanup:()=>{b.destroy()}}};function mw(r){let e=r.getBoundingClientRect(),t=window.innerWidth,n=window.innerHeight;if(!(e.width>t*.8||e.height>n*.8))return r;let s=Math.max(e.left,0),o=Math.max(e.top,0),a=Math.min(e.right,t),l=Math.min(e.bottom,n),c=(s+a)/2,u=(o+l)/2;return{getBoundingClientRect(){return{width:0,height:0,x:c,y:u,top:u,left:c,right:c,bottom:u}}}}function vw(r,e,t){if(!t.trigger||t.trigger==="immediate"){let g=r.getBoundingClientRect();g.width>window.innerWidth*.8||g.height>window.innerHeight*.8||r.scrollIntoView({behavior:"smooth",block:"center",inline:"center"})}let n=document.createElement("div");if(n.className="syntro-tooltip",n.setAttribute("role","tooltip"),n.innerHTML=Kt(t.html),!t.trigger||t.trigger==="immediate"){let g=document.createElement("button");g.className="syntro-tooltip-close",g.setAttribute("aria-label","Close"),g.textContent="\xD7",Object.assign(g.style,{position:"absolute",top:"4px",right:"4px",background:"none",border:"none",color:"inherit",fontSize:"16px",lineHeight:"1",cursor:"pointer",opacity:"0.6",padding:"2px 4px"}),g.addEventListener("mouseenter",()=>{g.style.opacity="1"}),g.addEventListener("mouseleave",()=>{g.style.opacity="0.6"}),g.addEventListener("click",()=>v.destroy()),n.style.position="relative",n.appendChild(g)}let i=n.querySelectorAll("[data-syntro-action]"),s=g=>{let y=g.currentTarget.getAttribute("data-syntro-action");y&&t.onAction&&t.onAction(y)};i.forEach(g=>g.addEventListener("click",s));let o=document.createElement("div");o.className="syntro-tooltip-arrow",n.appendChild(o),e.appendChild(n);let a=[ma(t.offsetPx??8),ya(),va({padding:8}),kg(),Eg({element:o})],l=t.placement&&t.placement!=="auto"?t.placement:"top",c=ga(r,n,async()=>{if(!r.isConnected){v.destroy();return}let g=mw(r),m=await ba(g,n,{placement:l,strategy:"fixed",middleware:a}),{x:y,y:x,strategy:S,middlewareData:b,placement:w}=m;if(Object.assign(n.style,{left:`${y}px`,top:`${x}px`,position:S}),b.arrow){let{x:C,y:_}=b.arrow,A=w.split("-")[0],$={top:"bottom",right:"left",bottom:"top",left:"right"};Object.assign(o.style,{left:C!=null?`${C}px`:"",top:_!=null?`${_}px`:"",right:"",bottom:"",[$[A]]:"-4px"});let T={top:"0deg",right:"90deg",bottom:"180deg",left:"270deg"};o.style.transform=`rotate(${T[A]||"0deg"})`}}),u=g=>{g.key==="Escape"&&v.destroy()};window.addEventListener("keydown",u);let p=[];if(t.blocking){Array.from(document.body.children).forEach(m=>{m!==e&&m.getAttribute("inert")===null&&(m.setAttribute("inert",""),p.push(m.id||m.tagName))});let g=Array.from(n.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'));if(g.length>0){let m=g[0],y=g[g.length-1],x=S=>{S.key==="Tab"&&(S.shiftKey?document.activeElement===m&&(y.focus(),S.preventDefault()):document.activeElement===y&&(m.focus(),S.preventDefault()))};n.addEventListener("keydown",x),requestAnimationFrame(()=>m.focus())}}let f=(()=>{if(t.trigger==="hover"){let g=null,m=()=>{g&&(clearTimeout(g),g=null),n.style.visibility="visible",n.style.opacity="1"},y=()=>{g=setTimeout(()=>{n.style.visibility="hidden",n.style.opacity="0",g=null},100)};return n.style.visibility="hidden",n.style.opacity="0",n.style.transition="opacity 200ms ease, visibility 200ms",r.addEventListener("mouseenter",m),r.addEventListener("mouseleave",y),n.addEventListener("mouseenter",m),n.addEventListener("mouseleave",y),r.addEventListener("focus",m),r.addEventListener("blur",y),()=>{g&&clearTimeout(g),r.removeEventListener("mouseenter",m),r.removeEventListener("mouseleave",y),n.removeEventListener("mouseenter",m),n.removeEventListener("mouseleave",y),r.removeEventListener("focus",m),r.removeEventListener("blur",y)}}if(t.trigger==="click"){let g=()=>{n.style.visibility==="visible"?v.destroy():(n.style.visibility="visible",n.style.opacity="1")};return n.style.visibility="hidden",n.style.opacity="0",n.style.transition="opacity 200ms ease, visibility 200ms",r.addEventListener("click",g),()=>r.removeEventListener("click",g)}return n.style.opacity="0",n.style.transition="opacity 200ms ease",requestAnimationFrame(()=>{n.style.opacity="1"}),()=>{}})(),v={el:n,destroy(){c(),f(),window.removeEventListener("keydown",u),i.forEach(g=>g.removeEventListener("click",s)),t.blocking&&Array.from(document.body.children).forEach(g=>{g!==e&&g.removeAttribute("inert")}),n.style.pointerEvents="none",n.style.opacity="0",setTimeout(()=>{try{n.remove()}catch{}},200)}};return v}var Zg="#1969fe",yw="#24ad32",bw="#0e1114",Yc="#677384",_w="#a8afba",Gg="#f6f7f9",xw="#ffffff";function Kg(r){let e=document.createElement("div");e.setAttribute("data-testid","workflow-toast"),Object.assign(e.style,{position:"fixed",bottom:"16px",right:"16px",zIndex:"2147483646",padding:"12px 16px",borderRadius:"8px",backgroundColor:`var(--se-color-bg-surface, ${xw})`,color:`var(--se-color-text-primary, ${bw})`,boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",maxWidth:"320px",fontFamily:"var(--se-font-family, system-ui, sans-serif)",fontSize:"14px",lineHeight:"1.4",transition:"opacity 0.3s ease"});let t=document.createElement("div");if(t.style.fontWeight="600",t.textContent=r.title,e.appendChild(t),r.body){let s=document.createElement("div");s.style.marginTop="4px",s.style.fontSize="13px",s.style.color="var(--se-color-text-secondary, #666)",s.textContent=r.body,e.appendChild(s)}document.body.appendChild(e);let n,i=setTimeout(()=>{e.style.opacity="0",n=setTimeout(()=>{e.remove()},300)},4e3);return()=>{clearTimeout(i),clearTimeout(n),e.remove()}}function ww(r){let e=new Map;for(let t of r){let n=t.action;if(n.kind==="overlays:tour"&&n.workflow&&n.tourId){let i=n.workflow,o=(n.steps||[]).map(a=>({id:a.id,title:i.stepTitles?.[a.id]||a.id}));e.set(n.tourId,{meta:i,steps:o})}}return e}var di="syntro-workflow-tracker",fs,gs,ci,gr,ms,Ca,ui,Jc=class extends ye{constructor(){super(...arguments),this.runtimeRef=null,this._workflowEntries=[],this._actionVersion=0,Lr(this,fs,null),Lr(this,gs,null),Lr(this,ci,[]),Lr(this,gr,new Set),Lr(this,ms,{}),Lr(this,Ca,!1),Lr(this,ui,new Map)}createRenderRoot(){return this}get _stateNs(){return this.runtimeRef?.state?.user?.ns?.("workflows")??null}_rescanWorkflows(){let r=this.runtimeRef?.actions?.getActive?.()??[],e=ww(r);if(ur(this,ui,e),e.size===0)return;let t=this._stateNs,n=t?.get("dismissed")??[],i=t?.get("completed")??{};this._workflowEntries=(()=>{let s=new Set(this._workflowEntries.map(a=>a.tourId)),o=[];for(let[a,{meta:l,steps:c}]of e){if(s.has(a))continue;let u="active";n.includes(a)?u="dismissed":i[a]&&(u="completed"),o.push({tourId:a,meta:l,steps:c,currentStepId:null,completedSteps:[],status:u,completedAt:i[a]||void 0})}return o.length>0?[...this._workflowEntries,...o]:this._workflowEntries})();for(let[s,{meta:o}]of e){let a=t?.get("dismissed")??[],l=t?.get("completed")??{};if(!Ue(this,gr).has(s)&&o.notification&&!a.includes(s)&&!l[s]){Ue(this,gr).add(s),t?.set("notified",[...Ue(this,gr)]);let c=Kg(o.notification);Ue(this,ci).push(c)}}}connectedCallback(){super.connectedCallback(),this._initSubscriptions()}disconnectedCallback(){super.disconnectedCallback(),this._teardownSubscriptions();for(let r of Ue(this,ci))r();ur(this,ci,[])}updated(r){r.has("runtimeRef")&&(this._teardownSubscriptions(),this._initSubscriptions()),r.has("_actionVersion")&&this._rescanWorkflows()}_initSubscriptions(){if(this.runtimeRef?.events?.subscribe){if(!Ue(this,Ca)&&this._stateNs){let r=this._stateNs.get("notified")??[];for(let t of r)Ue(this,gr).add(t);let e=this._stateNs.get("completed")??{};ur(this,ms,{...e}),ur(this,Ca,!0)}ur(this,fs,this.runtimeRef.events.subscribe({names:["tour.started","tour.resumed"]},()=>{this._actionVersion+=1})),ur(this,gs,this.runtimeRef.events.subscribe({patterns:["^tour\\."]},r=>{this._handleTourEvent(r)})),this._rescanWorkflows()}}_teardownSubscriptions(){var r,e;(r=Ue(this,fs))==null||r.call(this),ur(this,fs,null),(e=Ue(this,gs))==null||e.call(this),ur(this,gs,null)}_handleTourEvent(r){let e=r.props?.tourId;if(!e)return;if(!Ue(this,ui).has(e)&&r.name==="tour.started"){this._actionVersion+=1;return}if(!Ue(this,ui).has(e))return;let t=this._stateNs;this._workflowEntries=this._workflowEntries.map(n=>{if(n.tourId!==e)return n;switch(r.name){case"tour.started":{let i=r.props?.startStepId||n.steps[0]?.id||null;if(!Ue(this,gr).has(e)){Ue(this,gr).add(e),t?.set("notified",[...Ue(this,gr)]);let o=Ue(this,ui).get(e);if(o?.meta.notification){let a=Kg(o.meta.notification);Ue(this,ci).push(a)}}let s=this._workflowEntries.filter(o=>o.status==="active"||o.tourId===e).map(o=>o.tourId);return s.includes(e)||s.push(e),t?.set("active",[...new Set(s)]),{...n,status:"active",currentStepId:i,completedSteps:n.status==="active"?n.completedSteps:[]}}case"tour.step_started":{let i=r.props?.stepId;return{...n,currentStepId:i||n.currentStepId}}case"tour.step_changed":{let i=r.props?.previousStepId,s=r.props?.nextStepId,o=i&&!n.completedSteps.includes(i)?[...n.completedSteps,i]:n.completedSteps;return{...n,currentStepId:s||n.currentStepId,completedSteps:o}}case"tour.completed":{let i=Date.now();return Ue(this,ms)[e]=i,t?.set("completed",{...Ue(this,ms)}),{...n,status:"completed",currentStepId:null,completedSteps:n.steps.map(s=>s.id),completedAt:i}}case"tour.paused":return n;default:return n}})}_handleStepClick(r,e){this.runtimeRef?.events?.publish("workflow:jump_to_step",{tourId:r,stepId:e}),this.dispatchEvent(new CustomEvent("workflow-step-click",{bubbles:!0,detail:{tourId:r,stepId:e}}))}_handleDismiss(r){this._workflowEntries=this._workflowEntries.map(t=>t.tourId===r?{...t,status:"dismissed"}:t);let e=this._workflowEntries.filter(t=>t.status==="dismissed").map(t=>t.tourId);this._stateNs?.set("dismissed",e),this.dispatchEvent(new CustomEvent("workflow-dismissed",{bubbles:!0,detail:{tourId:r}}))}_renderProgressBar(r,e){let t=e>0?Math.round(r/e*100):0,n={width:"100%",height:"6px",borderRadius:"9999px",background:"rgba(255,255,255,0.08)",overflow:"hidden"},i={height:"100%",borderRadius:"9999px",background:`var(--se-color-primary, ${Zg})`,transition:"width 0.3s ease",width:`${t}%`};return L`
57
- <div style=${R(n)}>
56
+ `}p+="</div>"}c.innerHTML=p,e.overlayRoot.appendChild(c);let h=null,f=c.querySelectorAll("[data-syntro-action]"),v=w=>{let _=w.currentTarget.getAttribute("data-syntro-action");if(_){h=_;let C=a?.find(R=>R.actionId===_),I=C?.href;e.publishEvent("action.modal_cta_clicked",{actionId:_,...I?{href:I}:{}}),b.destroy(),C&&wm(C)}};f.forEach(w=>w.addEventListener("click",v));let g=w=>{w.key==="Escape"&&o?.onEsc!==!1&&b.destroy()};window.addEventListener("keydown",g);let m=()=>{i||b.destroy()};l.addEventListener("click",m);let y=[];i&&Array.from(document.body.children).forEach(w=>{w!==e.overlayRoot&&w.getAttribute("inert")===null&&!w.querySelector("[data-syntro-editor-panel]")&&!w.hasAttribute("data-syntro-editor-panel")&&(w.setAttribute("inert",""),y.push(w))});let x;o?.timeoutMs&&(x=setTimeout(()=>{b.destroy()},o.timeoutMs));let S=c.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');S.length>0&&requestAnimationFrame(()=>S[0].focus()),requestAnimationFrame(()=>{l.style.opacity="1",c.style.opacity="1",c.style.transform="translate(-50%, -50%) scale(1)"}),e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:modal",size:n,blocking:i});let b={destroy(){x&&clearTimeout(x),window.removeEventListener("keydown",g),l.removeEventListener("click",m),f.forEach(w=>w.removeEventListener("click",v)),y.forEach(w=>w.removeAttribute("inert")),c.style.pointerEvents="none",l.style.pointerEvents="none",c.style.opacity="0",c.style.transform="translate(-50%, -50%) scale(0.95)",l.style.opacity="0",setTimeout(()=>{try{c.remove()}catch{}try{l.remove()}catch{}},200),e.publishEvent("action.modal_dismissed",{actionClicked:h})}};return{cleanup:()=>{b.destroy()}}};function l1(r){let e=r.getBoundingClientRect(),t=window.innerWidth,n=window.innerHeight;if(!(e.width>t*.8||e.height>n*.8))return r;let s=Math.max(e.left,0),o=Math.max(e.top,0),a=Math.min(e.right,t),l=Math.min(e.bottom,n),c=(s+a)/2,u=(o+l)/2;return{getBoundingClientRect(){return{width:0,height:0,x:c,y:u,top:u,left:c,right:c,bottom:u}}}}function c1(r,e,t){if(!t.trigger||t.trigger==="immediate"){let g=r.getBoundingClientRect();g.width>window.innerWidth*.8||g.height>window.innerHeight*.8||r.scrollIntoView({behavior:"smooth",block:"center",inline:"center"})}let n=document.createElement("div");if(n.className="syntro-tooltip",n.setAttribute("role","tooltip"),n.innerHTML=Kt(t.html),!t.trigger||t.trigger==="immediate"){let g=document.createElement("button");g.className="syntro-tooltip-close",g.setAttribute("aria-label","Close"),g.textContent="\xD7",Object.assign(g.style,{position:"absolute",top:"4px",right:"4px",background:"none",border:"none",color:"inherit",fontSize:"16px",lineHeight:"1",cursor:"pointer",opacity:"0.6",padding:"2px 4px"}),g.addEventListener("mouseenter",()=>{g.style.opacity="1"}),g.addEventListener("mouseleave",()=>{g.style.opacity="0.6"}),g.addEventListener("click",()=>v.destroy()),n.style.position="relative",n.appendChild(g)}let i=n.querySelectorAll("[data-syntro-action]"),s=g=>{let y=g.currentTarget.getAttribute("data-syntro-action");y&&t.onAction&&t.onAction(y)};i.forEach(g=>g.addEventListener("click",s));let o=document.createElement("div");o.className="syntro-tooltip-arrow",n.appendChild(o),e.appendChild(n);let a=[wa(t.offsetPx??8),ka(),Sa({padding:8}),Yg(),Xg({element:o})],l=t.placement&&t.placement!=="auto"?t.placement:"top",c=xa(r,n,async()=>{if(!r.isConnected){v.destroy();return}let g=l1(r),m=await Ea(g,n,{placement:l,strategy:"fixed",middleware:a}),{x:y,y:x,strategy:S,middlewareData:b,placement:w}=m;if(Object.assign(n.style,{left:`${y}px`,top:`${x}px`,position:S}),b.arrow){let{x:A,y:_}=b.arrow,C=w.split("-")[0],I={top:"bottom",right:"left",bottom:"top",left:"right"};Object.assign(o.style,{left:A!=null?`${A}px`:"",top:_!=null?`${_}px`:"",right:"",bottom:"",[I[C]]:"-4px"});let R={top:"0deg",right:"90deg",bottom:"180deg",left:"270deg"};o.style.transform=`rotate(${R[C]||"0deg"})`}}),u=g=>{g.key==="Escape"&&v.destroy()};window.addEventListener("keydown",u);let p=[];if(t.blocking){Array.from(document.body.children).forEach(m=>{m!==e&&m.getAttribute("inert")===null&&(m.setAttribute("inert",""),p.push(m.id||m.tagName))});let g=Array.from(n.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'));if(g.length>0){let m=g[0],y=g[g.length-1],x=S=>{S.key==="Tab"&&(S.shiftKey?document.activeElement===m&&(y.focus(),S.preventDefault()):document.activeElement===y&&(m.focus(),S.preventDefault()))};n.addEventListener("keydown",x),requestAnimationFrame(()=>m.focus())}}let f=(()=>{if(t.trigger==="hover"){let g=null,m=()=>{g&&(clearTimeout(g),g=null),n.style.visibility="visible",n.style.opacity="1"},y=()=>{g=setTimeout(()=>{n.style.visibility="hidden",n.style.opacity="0",g=null},100)};return n.style.visibility="hidden",n.style.opacity="0",n.style.transition="opacity 200ms ease, visibility 200ms",r.addEventListener("mouseenter",m),r.addEventListener("mouseleave",y),n.addEventListener("mouseenter",m),n.addEventListener("mouseleave",y),r.addEventListener("focus",m),r.addEventListener("blur",y),()=>{g&&clearTimeout(g),r.removeEventListener("mouseenter",m),r.removeEventListener("mouseleave",y),n.removeEventListener("mouseenter",m),n.removeEventListener("mouseleave",y),r.removeEventListener("focus",m),r.removeEventListener("blur",y)}}if(t.trigger==="click"){let g=()=>{n.style.visibility==="visible"?v.destroy():(n.style.visibility="visible",n.style.opacity="1")};return n.style.visibility="hidden",n.style.opacity="0",n.style.transition="opacity 200ms ease, visibility 200ms",r.addEventListener("click",g),()=>r.removeEventListener("click",g)}return n.style.opacity="0",n.style.transition="opacity 200ms ease",requestAnimationFrame(()=>{n.style.opacity="1"}),()=>{}})(),v={el:n,destroy(){c(),f(),window.removeEventListener("keydown",u),i.forEach(g=>g.removeEventListener("click",s)),t.blocking&&Array.from(document.body.children).forEach(g=>{g!==e&&g.removeAttribute("inert")}),n.style.pointerEvents="none",n.style.opacity="0",setTimeout(()=>{try{n.remove()}catch{}},200)}};return v}var bm="#1969fe",u1="#24ad32",d1="#0e1114",ou="#677384",p1="#a8afba",_m="#f6f7f9",h1="#ffffff";function xm(r){let e=document.createElement("div");e.setAttribute("data-testid","workflow-toast"),Object.assign(e.style,{position:"fixed",bottom:"16px",right:"16px",zIndex:"2147483646",padding:"12px 16px",borderRadius:"8px",backgroundColor:`var(--se-color-bg-surface, ${h1})`,color:`var(--se-color-text-primary, ${d1})`,boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)",maxWidth:"320px",fontFamily:"var(--se-font-family, system-ui, sans-serif)",fontSize:"14px",lineHeight:"1.4",transition:"opacity 0.3s ease"});let t=document.createElement("div");if(t.style.fontWeight="600",t.textContent=r.title,e.appendChild(t),r.body){let s=document.createElement("div");s.style.marginTop="4px",s.style.fontSize="13px",s.style.color="var(--se-color-text-secondary, #666)",s.textContent=r.body,e.appendChild(s)}document.body.appendChild(e);let n,i=setTimeout(()=>{e.style.opacity="0",n=setTimeout(()=>{e.remove()},300)},4e3);return()=>{clearTimeout(i),clearTimeout(n),e.remove()}}function f1(r){let e=new Map;for(let t of r){let n=t.action;if(n.kind==="overlays:tour"&&n.workflow&&n.tourId){let i=n.workflow,o=(n.steps||[]).map(a=>({id:a.id,title:i.stepTitles?.[a.id]||a.id}));e.set(n.tourId,{meta:i,steps:o})}}return e}var hi="syntro-workflow-tracker",ys,bs,di,vr,_s,Ma,pi,lu=class extends be{constructor(){super(...arguments),this.runtimeRef=null,this._workflowEntries=[],this._actionVersion=0,Dr(this,ys,null),Dr(this,bs,null),Dr(this,di,[]),Dr(this,vr,new Set),Dr(this,_s,{}),Dr(this,Ma,!1),Dr(this,pi,new Map)}createRenderRoot(){return this}get _stateNs(){return this.runtimeRef?.state?.user?.ns?.("workflows")??null}_rescanWorkflows(){let r=this.runtimeRef?.actions?.getActive?.()??[],e=f1(r);if(pr(this,pi,e),e.size===0)return;let t=this._stateNs,n=t?.get("dismissed")??[],i=t?.get("completed")??{};this._workflowEntries=(()=>{let s=new Set(this._workflowEntries.map(a=>a.tourId)),o=[];for(let[a,{meta:l,steps:c}]of e){if(s.has(a))continue;let u="active";n.includes(a)?u="dismissed":i[a]&&(u="completed"),o.push({tourId:a,meta:l,steps:c,currentStepId:null,completedSteps:[],status:u,completedAt:i[a]||void 0})}return o.length>0?[...this._workflowEntries,...o]:this._workflowEntries})();for(let[s,{meta:o}]of e){let a=t?.get("dismissed")??[],l=t?.get("completed")??{};if(!je(this,vr).has(s)&&o.notification&&!a.includes(s)&&!l[s]){je(this,vr).add(s),t?.set("notified",[...je(this,vr)]);let c=xm(o.notification);je(this,di).push(c)}}}connectedCallback(){super.connectedCallback(),this._initSubscriptions()}disconnectedCallback(){super.disconnectedCallback(),this._teardownSubscriptions();for(let r of je(this,di))r();pr(this,di,[])}updated(r){r.has("runtimeRef")&&(this._teardownSubscriptions(),this._initSubscriptions()),r.has("_actionVersion")&&this._rescanWorkflows()}_initSubscriptions(){if(this.runtimeRef?.events?.subscribe){if(!je(this,Ma)&&this._stateNs){let r=this._stateNs.get("notified")??[];for(let t of r)je(this,vr).add(t);let e=this._stateNs.get("completed")??{};pr(this,_s,{...e}),pr(this,Ma,!0)}pr(this,ys,this.runtimeRef.events.subscribe({names:["tour.started","tour.resumed"]},()=>{this._actionVersion+=1})),pr(this,bs,this.runtimeRef.events.subscribe({patterns:["^tour\\."]},r=>{this._handleTourEvent(r)})),this._rescanWorkflows()}}_teardownSubscriptions(){var r,e;(r=je(this,ys))==null||r.call(this),pr(this,ys,null),(e=je(this,bs))==null||e.call(this),pr(this,bs,null)}_handleTourEvent(r){let e=r.props?.tourId;if(!e)return;if(!je(this,pi).has(e)&&r.name==="tour.started"){this._actionVersion+=1;return}if(!je(this,pi).has(e))return;let t=this._stateNs;this._workflowEntries=this._workflowEntries.map(n=>{if(n.tourId!==e)return n;switch(r.name){case"tour.started":{let i=r.props?.startStepId||n.steps[0]?.id||null;if(!je(this,vr).has(e)){je(this,vr).add(e),t?.set("notified",[...je(this,vr)]);let o=je(this,pi).get(e);if(o?.meta.notification){let a=xm(o.meta.notification);je(this,di).push(a)}}let s=this._workflowEntries.filter(o=>o.status==="active"||o.tourId===e).map(o=>o.tourId);return s.includes(e)||s.push(e),t?.set("active",[...new Set(s)]),{...n,status:"active",currentStepId:i,completedSteps:n.status==="active"?n.completedSteps:[]}}case"tour.step_started":{let i=r.props?.stepId;return{...n,currentStepId:i||n.currentStepId}}case"tour.step_changed":{let i=r.props?.previousStepId,s=r.props?.nextStepId,o=i&&!n.completedSteps.includes(i)?[...n.completedSteps,i]:n.completedSteps;return{...n,currentStepId:s||n.currentStepId,completedSteps:o}}case"tour.completed":{let i=Date.now();return je(this,_s)[e]=i,t?.set("completed",{...je(this,_s)}),{...n,status:"completed",currentStepId:null,completedSteps:n.steps.map(s=>s.id),completedAt:i}}case"tour.paused":return n;default:return n}})}_handleStepClick(r,e){this.runtimeRef?.events?.publish("workflow:jump_to_step",{tourId:r,stepId:e}),this.dispatchEvent(new CustomEvent("workflow-step-click",{bubbles:!0,detail:{tourId:r,stepId:e}}))}_handleDismiss(r){this._workflowEntries=this._workflowEntries.map(t=>t.tourId===r?{...t,status:"dismissed"}:t);let e=this._workflowEntries.filter(t=>t.status==="dismissed").map(t=>t.tourId);this._stateNs?.set("dismissed",e),this.dispatchEvent(new CustomEvent("workflow-dismissed",{bubbles:!0,detail:{tourId:r}}))}_renderProgressBar(r,e){let t=e>0?Math.round(r/e*100):0,n={width:"100%",height:"6px",borderRadius:"9999px",background:"rgba(255,255,255,0.08)",overflow:"hidden"},i={height:"100%",borderRadius:"9999px",background:`var(--se-color-primary, ${bm})`,transition:"width 0.3s ease",width:`${t}%`};return N`
57
+ <div style=${T(n)}>
58
58
  <div
59
59
  role="progressbar"
60
60
  aria-valuenow=${t}
61
61
  aria-valuemin="0"
62
62
  aria-valuemax="100"
63
- style=${R(i)}
63
+ style=${T(i)}
64
64
  ></div>
65
65
  </div>
66
- `}_renderStepItem(r,e,t,n){let i={display:"flex",alignItems:"center",gap:"8px",width:"100%",padding:"6px 8px",borderRadius:"4px",border:"none",background:"transparent",cursor:"pointer",textAlign:"left",fontSize:"12px",lineHeight:"1.4",color:t?`var(--se-color-text-primary, ${Gg})`:`var(--se-color-text-secondary, ${_w})`,fontWeight:t?"600":"400"},s={flexShrink:"0",width:"16px",textAlign:"center"},o={display:"inline-block",width:"6px",height:"6px",borderRadius:"50%",background:t?`var(--se-color-primary, ${Zg})`:"rgba(255,255,255,0.12)"},a={color:`var(--se-color-success, ${yw})`},l={flex:"1",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},c=e?L`<span role="img" aria-label="completed" style=${R(a)}>&#10003;</span>`:t?L`<span style=${R(o)}></span>`:L`<span style=${R(o)}></span>`;return L`
66
+ `}_renderStepItem(r,e,t,n){let i={display:"flex",alignItems:"center",gap:"8px",width:"100%",padding:"6px 8px",borderRadius:"4px",border:"none",background:"transparent",cursor:"pointer",textAlign:"left",fontSize:"12px",lineHeight:"1.4",color:t?`var(--se-color-text-primary, ${_m})`:`var(--se-color-text-secondary, ${p1})`,fontWeight:t?"600":"400"},s={flexShrink:"0",width:"16px",textAlign:"center"},o={display:"inline-block",width:"6px",height:"6px",borderRadius:"50%",background:t?`var(--se-color-primary, ${bm})`:"rgba(255,255,255,0.12)"},a={color:`var(--se-color-success, ${u1})`},l={flex:"1",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},c=e?N`<span role="img" aria-label="completed" style=${T(a)}>&#10003;</span>`:t?N`<span style=${T(o)}></span>`:N`<span style=${T(o)}></span>`;return N`
67
67
  <button
68
68
  type="button"
69
69
  data-testid=${`step-${r.id}`}
70
- data-current=${t?"true":J}
71
- data-completed=${e?"true":J}
72
- aria-current=${t?"step":J}
73
- style=${R(i)}
70
+ data-current=${t?"true":ee}
71
+ data-completed=${e?"true":ee}
72
+ aria-current=${t?"step":ee}
73
+ style=${T(i)}
74
74
  @click=${()=>this._handleStepClick(n,r.id)}
75
75
  >
76
- <span style=${R(s)}>${c}</span>
77
- <span style=${R(l)}>${r.title}</span>
76
+ <span style=${T(s)}>${c}</span>
77
+ <span style=${T(l)}>${r.title}</span>
78
78
  </button>
79
- `}_renderWorkflowCard(r){let e=r.completedSteps.length,t=r.steps.length,n={padding:"12px",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.08)",background:"rgba(255,255,255,0.02)"},i={display:"flex",alignItems:"center",gap:"8px",marginBottom:"8px"},s={flex:"1",fontSize:"13px",fontWeight:"600",color:`var(--se-color-text-primary, ${Gg})`,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},o={flexShrink:"0",padding:"2px 6px",border:"none",borderRadius:"4px",background:"transparent",color:`var(--se-color-text-tertiary, ${Yc})`,fontSize:"12px",cursor:"pointer",lineHeight:"1"},a={marginBottom:"8px"},l={fontSize:"10px",color:`var(--se-color-text-tertiary, ${Yc})`,marginTop:"4px"},c={display:"flex",flexDirection:"column"};return L`
80
- <div style=${R(n)}>
79
+ `}_renderWorkflowCard(r){let e=r.completedSteps.length,t=r.steps.length,n={padding:"12px",borderRadius:"8px",border:"1px solid rgba(255,255,255,0.08)",background:"rgba(255,255,255,0.02)"},i={display:"flex",alignItems:"center",gap:"8px",marginBottom:"8px"},s={flex:"1",fontSize:"13px",fontWeight:"600",color:`var(--se-color-text-primary, ${_m})`,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},o={flexShrink:"0",padding:"2px 6px",border:"none",borderRadius:"4px",background:"transparent",color:`var(--se-color-text-tertiary, ${ou})`,fontSize:"12px",cursor:"pointer",lineHeight:"1"},a={marginBottom:"8px"},l={fontSize:"10px",color:`var(--se-color-text-tertiary, ${ou})`,marginTop:"4px"},c={display:"flex",flexDirection:"column"};return N`
80
+ <div style=${T(n)}>
81
81
  <!-- Header: icon + title + dismiss -->
82
- <div style=${R(i)}>
83
- ${r.meta.icon?L`<span data-testid="workflow-icon" style="flex-shrink:0;font-size:14px">${r.meta.icon}</span>`:J}
84
- <span style=${R(s)}>${r.meta.title}</span>
82
+ <div style=${T(i)}>
83
+ ${r.meta.icon?N`<span data-testid="workflow-icon" style="flex-shrink:0;font-size:14px">${r.meta.icon}</span>`:ee}
84
+ <span style=${T(s)}>${r.meta.title}</span>
85
85
  <button
86
86
  type="button"
87
87
  data-testid=${`dismiss-${r.tourId}`}
88
- style=${R(o)}
88
+ style=${T(o)}
89
89
  aria-label=${`Dismiss ${r.meta.title}`}
90
90
  @click=${()=>this._handleDismiss(r.tourId)}
91
91
  >&#10005;</button>
92
92
  </div>
93
93
 
94
94
  <!-- Progress bar + label -->
95
- <div style=${R(a)}>
95
+ <div style=${T(a)}>
96
96
  ${this._renderProgressBar(e,t)}
97
- <div style=${R(l)}>
97
+ <div style=${T(l)}>
98
98
  ${e} of ${t} steps
99
99
  </div>
100
100
  </div>
101
101
 
102
102
  <!-- Step list -->
103
- <div style=${R(c)}>
103
+ <div style=${T(c)}>
104
104
  ${r.steps.map(u=>this._renderStepItem(u,r.completedSteps.includes(u.id),r.currentStepId===u.id,r.tourId))}
105
105
  </div>
106
106
  </div>
107
- `}render(){let r=this._workflowEntries.filter(t=>t.status==="active");if(r.length===0){let t={display:"flex",alignItems:"center",justifyContent:"center",padding:"24px 0",fontSize:"12px",color:`var(--se-color-text-tertiary, ${Yc})`};return L`<div style=${R(t)}>No active workflows</div>`}return L`
108
- <div style=${R({display:"flex",flexDirection:"column",gap:"8px"})}>
107
+ `}render(){let r=this._workflowEntries.filter(t=>t.status==="active");if(r.length===0){let t={display:"flex",alignItems:"center",justifyContent:"center",padding:"24px 0",fontSize:"12px",color:`var(--se-color-text-tertiary, ${ou})`};return N`<div style=${T(t)}>No active workflows</div>`}return N`
108
+ <div style=${T({display:"flex",flexDirection:"column",gap:"8px"})}>
109
109
  ${r.map(t=>this._renderWorkflowCard(t))}
110
110
  </div>
111
- `}};fs=new WeakMap;gs=new WeakMap;ci=new WeakMap;gr=new WeakMap;ms=new WeakMap;Ca=new WeakMap;ui=new WeakMap;Jc.properties={runtimeRef:{attribute:!1},_workflowEntries:{state:!0},_actionVersion:{state:!0}};typeof window<"u"&&!customElements.get(di)&&customElements.define(di,Jc);var Sw={mount(r,e){let t=e?.runtime??null;typeof window<"u"&&!customElements.get(di)&&customElements.define(di,Jc);let n=document.createElement(di);return n.runtimeRef=t,r.appendChild(n),()=>{n.remove()}},update(r,e){let t=r.querySelector(di);if(!t)return;let n=e?.runtime??null;t.runtimeRef=n}},Jg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};if(t.getAttribute("data-syntro-highlight-dismissed"))return{cleanup:()=>{}};t.getAttribute("data-syntro-highlight")&&e.overlayRoot.querySelectorAll(".syntro-spotlight-scrim, .syntro-spotlight-ring").forEach(a=>a.remove()),t.setAttribute("data-syntro-highlight","true");let i=r.style?.color;if(!i)try{let o=getComputedStyle(e.overlayRoot).getPropertyValue("--sc-color-primary")?.trim();o&&(i=o)}catch{}let s=fw(t,e.overlayRoot,{paddingPx:r.style?.paddingPx??12,radiusPx:r.style?.radiusPx??12,scrimOpacity:r.style?.scrimOpacity??.55,ringColor:i,blocking:r.blocking??!1,onClickOutside:r.onClickOutside??!0,onEsc:r.onEsc??!0,onDismiss:()=>{t.setAttribute("data-syntro-highlight-dismissed","true")}});return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:highlight",anchorId:r.anchorId}),{cleanup:()=>{s.destroy(),t.removeAttribute("data-syntro-highlight"),t.removeAttribute("data-syntro-highlight-dismissed")}}},Qg=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=r.duration??4e3;await new Promise(g=>requestAnimationFrame(g));let i=g=>({r:parseInt(g.slice(1,3),16),g:parseInt(g.slice(3,5),16),b:parseInt(g.slice(5,7),16)}),o={r:79,g:70,b:229},a=null;try{let g=getComputedStyle(e.overlayRoot),m=g.getPropertyValue("--sc-color-primary")?.trim(),y=g.getPropertyValue("--sc-color-primary-hover")?.trim();m?.startsWith("#")&&m.length>=7&&(o=i(m)),y?.startsWith("#")&&y.length>=7&&(a=i(y))}catch{}let l=document.querySelector("[data-syntro-pulse-styles]");l&&l.remove();let c=document.createElement("style");c.setAttribute("data-syntro-pulse-styles","");let{r:u,g:p,b:h}=o;if(a){let{r:g,g:m,b:y}=a;c.textContent=`
111
+ `}};ys=new WeakMap;bs=new WeakMap;di=new WeakMap;vr=new WeakMap;_s=new WeakMap;Ma=new WeakMap;pi=new WeakMap;lu.properties={runtimeRef:{attribute:!1},_workflowEntries:{state:!0},_actionVersion:{state:!0}};typeof window<"u"&&!customElements.get(hi)&&customElements.define(hi,lu);var g1={mount(r,e){let t=e?.runtime??null;typeof window<"u"&&!customElements.get(hi)&&customElements.define(hi,lu);let n=document.createElement(hi);return n.runtimeRef=t,r.appendChild(n),()=>{n.remove()}},update(r,e){let t=r.querySelector(hi);if(!t)return;let n=e?.runtime??null;t.runtimeRef=n}},Em=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};if(t.getAttribute("data-syntro-highlight-dismissed"))return{cleanup:()=>{}};t.getAttribute("data-syntro-highlight")&&e.overlayRoot.querySelectorAll(".syntro-spotlight-scrim, .syntro-spotlight-ring").forEach(a=>a.remove()),t.setAttribute("data-syntro-highlight","true");let i=r.style?.color;if(!i)try{let o=getComputedStyle(e.overlayRoot).getPropertyValue("--sc-color-primary")?.trim();o&&(i=o)}catch{}let s=o1(t,e.overlayRoot,{paddingPx:r.style?.paddingPx??12,radiusPx:r.style?.radiusPx??12,scrimOpacity:r.style?.scrimOpacity??.55,ringColor:i,blocking:r.blocking??!1,onClickOutside:r.onClickOutside??!0,onEsc:r.onEsc??!0,onDismiss:()=>{t.setAttribute("data-syntro-highlight-dismissed","true")}});return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:highlight",anchorId:r.anchorId}),{cleanup:()=>{s.destroy(),t.removeAttribute("data-syntro-highlight"),t.removeAttribute("data-syntro-highlight-dismissed")}}},Cm=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=r.duration??4e3;await new Promise(g=>requestAnimationFrame(g));let i=g=>({r:parseInt(g.slice(1,3),16),g:parseInt(g.slice(3,5),16),b:parseInt(g.slice(5,7),16)}),o={r:79,g:70,b:229},a=null;try{let g=getComputedStyle(e.overlayRoot),m=g.getPropertyValue("--sc-color-primary")?.trim(),y=g.getPropertyValue("--sc-color-primary-hover")?.trim();m?.startsWith("#")&&m.length>=7&&(o=i(m)),y?.startsWith("#")&&y.length>=7&&(a=i(y))}catch{}let l=document.querySelector("[data-syntro-pulse-styles]");l&&l.remove();let c=document.createElement("style");c.setAttribute("data-syntro-pulse-styles","");let{r:u,g:p,b:h}=o;if(a){let{r:g,g:m,b:y}=a;c.textContent=`
112
112
  @keyframes syntro-pulse-anim {
113
113
  0%, 100% {
114
114
  box-shadow: 0 0 0 0 rgba(${u}, ${p}, ${h}, 0.35);
@@ -132,7 +132,7 @@ var Lf=Object.defineProperty;var Ff=r=>{throw TypeError(r)};var Q0=(r,e,t)=>e in
132
132
  box-shadow: 0 0 0 12px rgba(${u}, ${p}, ${h}, 0);
133
133
  }
134
134
  }
135
- `;document.head.appendChild(c);let f=t.style.animation;t.style.animation="syntro-pulse-anim 2.5s cubic-bezier(0.4, 0, 0.6, 1) infinite",t.setAttribute("data-syntro-pulse","true");let v=setTimeout(()=>{t.style.animation=f,t.removeAttribute("data-syntro-pulse")},n);return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:pulse",anchorId:r.anchorId,duration:n}),{cleanup:()=>{clearTimeout(v),t.isConnected&&(t.style.animation=f,t.removeAttribute("data-syntro-pulse"))}}},em=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n="#4f46e5";try{let a=getComputedStyle(e.overlayRoot).getPropertyValue("--sc-color-primary")?.trim();a?.startsWith("#")&&a.length>=7&&(n=a)}catch{}let i=document.createElement("div");i.textContent=r.content,i.setAttribute("data-syntro-badge",r.anchorId.selector),Object.assign(i.style,{position:"absolute",padding:"2px 6px",fontSize:"12px",fontWeight:"600",lineHeight:"1",color:"white",background:n,borderRadius:"9999px",pointerEvents:"none",zIndex:"2147483646",whiteSpace:"nowrap"});let s=r.position??"top-right",o=t.style.position;switch(getComputedStyle(t).position==="static"&&(t.style.position="relative"),t.appendChild(i),s){case"top-left":Object.assign(i.style,{top:"-8px",left:"-8px"});break;case"top-right":Object.assign(i.style,{top:"-8px",right:"-8px"});break;case"bottom-left":Object.assign(i.style,{bottom:"-8px",left:"-8px"});break;case"bottom-right":Object.assign(i.style,{bottom:"-8px",right:"-8px"});break}return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:badge",anchorId:r.anchorId,content:r.content,position:s}),{cleanup:()=>{try{i.remove()}catch{}t.isConnected&&o!==void 0&&(t.style.position=o)},updateFn:a=>{"content"in a&&typeof a.content=="string"&&(i.textContent=a.content)}}},tm=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let{content:n}=r,i="";if(n.title&&(i+=`<div class="syntro-tt-title">${Kt(n.title)}</div>`),i+=`<div class="syntro-tt-body">${Kt(n.body)}</div>`,n.ctaButtons&&n.ctaButtons.length>0){i+='<div class="syntro-tt-actions">';for(let o of n.ctaButtons){let a=o.primary??!1;i+=`
135
+ `;document.head.appendChild(c);let f=t.style.animation;t.style.animation="syntro-pulse-anim 2.5s cubic-bezier(0.4, 0, 0.6, 1) infinite",t.setAttribute("data-syntro-pulse","true");let v=setTimeout(()=>{t.style.animation=f,t.removeAttribute("data-syntro-pulse")},n);return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:pulse",anchorId:r.anchorId,duration:n}),{cleanup:()=>{clearTimeout(v),t.isConnected&&(t.style.animation=f,t.removeAttribute("data-syntro-pulse"))}}},Am=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n="#4f46e5";try{let a=getComputedStyle(e.overlayRoot).getPropertyValue("--sc-color-primary")?.trim();a?.startsWith("#")&&a.length>=7&&(n=a)}catch{}let i=document.createElement("div");i.textContent=r.content,i.setAttribute("data-syntro-badge",r.anchorId.selector),Object.assign(i.style,{position:"absolute",padding:"2px 6px",fontSize:"12px",fontWeight:"600",lineHeight:"1",color:"white",background:n,borderRadius:"9999px",pointerEvents:"none",zIndex:"2147483646",whiteSpace:"nowrap"});let s=r.position??"top-right",o=t.style.position;switch(getComputedStyle(t).position==="static"&&(t.style.position="relative"),t.appendChild(i),s){case"top-left":Object.assign(i.style,{top:"-8px",left:"-8px"});break;case"top-right":Object.assign(i.style,{top:"-8px",right:"-8px"});break;case"bottom-left":Object.assign(i.style,{bottom:"-8px",left:"-8px"});break;case"bottom-right":Object.assign(i.style,{bottom:"-8px",right:"-8px"});break}return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:badge",anchorId:r.anchorId,content:r.content,position:s}),{cleanup:()=>{try{i.remove()}catch{}t.isConnected&&o!==void 0&&(t.style.position=o)},updateFn:a=>{"content"in a&&typeof a.content=="string"&&(i.textContent=a.content)}}},Tm=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);if(!t&&e.waitForAnchor&&(t=await e.waitForAnchor(r.anchorId,3e3)),!t)return console.warn(`[adaptive-overlays] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let{content:n}=r,i="";if(n.title&&(i+=`<div class="syntro-tt-title">${Kt(n.title)}</div>`),i+=`<div class="syntro-tt-body">${Kt(n.body)}</div>`,n.ctaButtons&&n.ctaButtons.length>0){i+='<div class="syntro-tt-actions">';for(let o of n.ctaButtons){let a=o.primary??!1;i+=`
136
136
  <button
137
137
  class="syntro-tt-btn ${a?"syntro-tt-btn-primary":""}"
138
138
  data-syntro-action="${Kt(o.actionId)}"
@@ -143,12 +143,12 @@ var Lf=Object.defineProperty;var Ff=r=>{throw TypeError(r)};var Q0=(r,e,t)=>e in
143
143
  <button class="syntro-tt-btn syntro-tt-btn-primary" data-syntro-action="cta">
144
144
  ${Kt(n.cta.label)}
145
145
  </button>
146
- </div>`);let s=vw(t,e.overlayRoot,{html:i,placement:r.placement??"top",trigger:r.trigger??"immediate",onAction:o=>{if(o==="dismiss"){s.destroy();return}if(o==="cta"&&n.cta)e.publishEvent("action.cta_clicked",{anchorId:r.anchorId,ctaLabel:n.cta.label});else if(n.ctaButtons){let a=n.ctaButtons.find(l=>l.actionId===o);a&&e.publishEvent("action.tooltip_cta_clicked",{anchorId:r.anchorId,actionId:o,label:a.label})}s.destroy()}});return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:tooltip",anchorId:r.anchorId,trigger:r.trigger??"immediate"}),{cleanup:()=>{s.destroy()}}},Qc=[{kind:"overlays:highlight",executor:Jg},{kind:"overlays:pulse",executor:Qg},{kind:"overlays:badge",executor:em},{kind:"overlays:tooltip",executor:tm},{kind:"overlays:modal",executor:Xg},{kind:"overlays:tour",executor:Yg},{kind:"overlays:celebrate",executor:uw}],eu={id:"adaptive-overlays",version:"1.0.0",name:"Overlays",description:"Tooltips, highlights, badges, modals, celebrations, visual overlays, and workflow tracking",executors:Qc,widgets:[{id:"adaptive-overlays:workflow-tracker",component:Sw,metadata:{name:"Workflow Tracker",icon:"\u{1F4CB}",description:"Tracks multi-step workflow progress across tours"}}]};function tu(r){let{appId:e,runtime:t,isBuiltIn:n=!1}=r,i=`app:${e}:`,s=[],o=[],a=t.state.ns(`app:${e}`);return{appId:e,state:{get:c=>a.get(c),set:(c,u)=>a.set(c,u),remove:c=>a.remove(c)},telemetry:t.telemetry?{emit:(c,u)=>{t.events.publish(c,{...u,_appId:e})},getSessionId:()=>t.telemetry?.getSessionId?.()}:void 0,surfaces:{mount:(c,u,p)=>{let h=t.surfaces.mount(c,u,{...p,adaptiveId:e});return{unmount:()=>h.unmount(),update:f=>h.update(f)}},canMount:(c,u)=>t.surfaces.canMount(c,u)},events:{subscribe:c=>t.events.subscribe(u=>{c(u)}),publish:(c,u)=>{t.events.publish(c,{...u,_appId:e})}},registerAction:c=>{t.executors.register(c.kind,c.executor,c.schema,e,n),s.push(c.kind)},registerWidget:c=>{t.widgets.register(c.id,c.component,e,c.metadata),o.push(c.id)}}}function ru(r,e){e.executors.unregisterBySource(r),e.widgets.unregisterBySource(r)}var kw=new Set(["overlays:highlight","overlays:pulse","overlays:badge","overlays:tooltip","overlays:modal","content:insertHtml","content:setText","content:setAttr","content:addClass","content:removeClass","content:setStyle","core:mountWidget","core:wait","core:sequence","core:parallel","overlays:tour"]),Ew=new Set(["adaptive-content","adaptive-faq","adaptive-nav","adaptive-overlays"]),Cw={faq:"adaptive-faq",nav:"adaptive-nav",gamification:"adaptive-gamification",overlays:"adaptive-overlays",content:"adaptive-content","adaptive-viz":"adaptive-viz"};function rm(r){return Cw[r]??r}function nm(r){return kw.has(r)}function im(r){if(nm(r))return null;let e=r.indexOf(":");return e===-1?null:rm(r.slice(0,e))}function nu(r){let e=r.indexOf(":");return e===-1?null:rm(r.slice(0,e))}function iu(r){let{cdnBase:e,registry:t,timeout:n=1e4,onLoadStart:i,onLoadEnd:s}=r,o=new Map,a=new Set,l=new Map;function c(g){return`${e}/adaptives/${g}/index.js`}async function u(g){if(t.has(g))return{appId:g,success:!0,manifest:t.get(g)?.manifest};if(l.has(g))return l.get(g);if(o.has(g))return o.get(g);let m=(async()=>{i?.(g);try{let y=c(g);if(a.has(y)){let w=t.get(g);if(w)return s?.(g,!0),{appId:g,success:!0,manifest:w.manifest}}let x=new Promise((w,C)=>{setTimeout(()=>C(new Error(`Timeout loading app: ${g}`)),n)}),S=p(y,g);await Promise.race([S,x]),a.add(y);let b=t.get(g);if(!b)throw new Error(`App ${g} did not register after loading`);return s?.(g,!0),{appId:g,success:!0,manifest:b.manifest}}catch(y){let x=y instanceof Error?y.message:String(y);s?.(g,!1,x);let S={appId:g,success:!1,error:x};return l.set(g,S),S}finally{o.delete(g)}})();return o.set(g,m),m}async function p(g,m){if(typeof window<"u"){try{let y=await import(g);y.manifest?t.register(y.manifest):y.default?.manifest?t.register(y.default.manifest):y.default&&t.register(y.default);return}catch{}return new Promise((y,x)=>{let S=document.createElement("script");S.src=g,S.async=!0,S.onload=()=>{t.get(m)?y():x(new Error(`App ${m} did not self-register`))},S.onerror=()=>{x(new Error(`Failed to load app script: ${g}`))},document.head.appendChild(S)})}throw new Error("Dynamic app loading not supported in SSR")}function h(g){let m=new Set;if(g.apps)for(let y of g.apps)m.add(y);if(g.actions)for(let y of g.actions){let x=im(y.kind);if(x&&m.add(x),y.kind==="core:mountWidget"){let S=y.widget?.widgetId;if(S){let b=nu(S);b&&m.add(b)}}}if(g.tiles){for(let y of g.tiles)if(y.widget){let x=nu(y.widget);x&&m.add(x)}}for(let y of Ew)m.delete(y);return Array.from(m)}async function f(g){let m=h(g);return m.length===0?[]:await Promise.all(m.map(x=>u(x)))}async function v(g){return Promise.all(g.map(m=>u(m)))}return{loadApp:u,loadAppsForConfig:f,preloadApps:v,getRequiredApps:h,getAppUrl:c}}var vs=class{constructor(){this.apps=new Map;this.eventListeners=new Set;this.runtime=null}bind(e){this.runtime=e}async unbind(){for(let[e,t]of this.apps)t.state==="active"&&await this.deactivate(e);this.runtime=null}register(e){if(!e.id||typeof e.id!="string")throw new Error("App manifest must have an 'id' property");if(!e.version||typeof e.version!="string")throw new Error("App manifest must have a 'version' property");if(!e.name||typeof e.name!="string")throw new Error("App manifest must have a 'name' property");if(this.apps.has(e.id)){if(this.apps.get(e.id).state==="active")throw new Error(`Cannot re-register active app: ${e.id}`);console.warn(`[AppRegistry] Overriding existing app registration: ${e.id}`)}let t={manifest:e,state:"registered",registeredAt:Date.now()};return this.apps.set(e.id,t),this.emit({type:"app:registered",appId:e.id,manifest:e}),t}async activate(e){let t=this.apps.get(e);if(!t)throw new Error(`App not registered: ${e}`);if(t.state==="active"||t.state==="activating"){console.warn(`[AppRegistry] App already ${t.state}: ${e}`);return}if(!this.runtime)throw new Error("AppRegistry not bound to a runtime. Call bind() first.");if(t.manifest.dependencies)for(let n of t.manifest.dependencies){let i=this.apps.get(n);if(!i||i.state!=="active")throw new Error(`App ${e} depends on ${n}, which is not active`)}t.state="activating";try{let n=t.manifest.metadata?.isBuiltIn===!0,i=tu({appId:e,runtime:this.runtime,isBuiltIn:n}),{runtime:s}=t.manifest,o=[];if(s){if(s.actions)for(let a of s.actions)i.registerAction(a);if(s.widgets)for(let a of s.widgets)i.registerWidget(a);if(s.events)for(let a of s.events){let l=this.runtime.events.subscribe(c=>{if(a.names.includes(c.name)){let u={appId:e,state:i.state,telemetry:i.telemetry,surfaces:i.surfaces};try{a.handler(c,u)}catch(p){console.error(`[AppRegistry] Event handler error in ${e}:`,p)}}});o.push(l)}}t.cleanup=async()=>{for(let a of o)try{await a()}catch(l){console.error(`[AppRegistry] Cleanup error in ${e}:`,l)}ru(e,this.runtime)},t.state="active",t.activatedAt=Date.now(),this.emit({type:"app:activated",appId:e})}catch(n){throw t.state="error",t.error=String(n),this.emit({type:"app:error",appId:e,error:String(n)}),n}}async deactivate(e){let t=this.apps.get(e);if(!t)throw new Error(`App not registered: ${e}`);if(t.state!=="active"){console.warn(`[AppRegistry] App not active: ${e}`);return}for(let[n,i]of this.apps)if(i.state==="active"&&i.manifest.dependencies?.includes(e))throw new Error(`Cannot deactivate ${e}: app ${n} depends on it`);t.state="deactivating";try{t.cleanup&&(await t.cleanup(),t.cleanup=void 0),t.state="inactive",this.emit({type:"app:deactivated",appId:e})}catch(n){throw t.state="error",t.error=String(n),this.emit({type:"app:error",appId:e,error:String(n)}),n}}async unregister(e){let t=this.apps.get(e);t&&(t.state==="active"&&await this.deactivate(e),this.apps.delete(e),this.emit({type:"app:unregistered",appId:e}))}get(e){return this.apps.get(e)}has(e){return this.apps.has(e)}isActive(e){return this.apps.get(e)?.state==="active"}list(){return Array.from(this.apps.values())}listActive(){return Array.from(this.apps.values()).filter(e=>e.state==="active")}listEditable(){return Array.from(this.apps.values()).filter(e=>e.manifest.editor!==void 0)}subscribe(e){return this.eventListeners.add(e),()=>{this.eventListeners.delete(e)}}emit(e){for(let t of this.eventListeners)try{t(e)}catch(n){console.error("[AppRegistry] Event listener error:",n)}}async destroy(){await this.unbind(),this.apps.clear(),this.eventListeners.clear()}},ys=new vs;var Yt={white:"#ffffff",black:"#000000"},ft={0:"#2c0b0a",1:"#5b1715",2:"#89221f",3:"#b72e2a",4:"#d44844",5:"#dd6d69",6:"#e5918f",7:"#eeb6b4",8:"#f6dada",9:"#faebea"},M={0:"#07080a",1:"#0f1318",2:"#0e1114",3:"#1c222a",4:"#2b333f",5:"#394454",6:"#475569",7:"#677384",8:"#87919f",9:"#a8afba",10:"#cbd0d7",11:"#e8eaee",12:"#f6f7f9"},Be={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Xt={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},ot={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},bs={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},_s={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},Ft={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},xs={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"};var DT={primary:M[10],secondary:M[9],tertiary:M[8]},HT={primary:M[2],secondary:M[0]},BT={primary:M[4],secondary:M[3]},VT={primary:{text:Yt.white,icon:Yt.white,border:ft[3],backgroundDefault:ft[3],backgroundHover:ft[2]},neutral:{text:M[10],textHover:Yt.white,icon:M[10],iconHover:Yt.white,border:M[4],background:M[2]},link:{text:Yt.white,icon:Yt.white,hover:ft[5]},error:{text:ot[5],hover:ot[6]},success:{text:Be[5],hover:Be[6]}},jT={slateGrey:{content:M[10],pillOutline:M[10],borderPrimary:M[5],borderSecondary:M[5],background:M[3]},brand:{content:ft[9],pillOutline:ft[9],borderPrimary:ft[6],borderSecondary:ft[6],background:ft[0]},red:{content:ot[8],pillOutline:ot[4],borderPrimary:ot[2],borderSecondary:ot[2],background:ot[0]},yellow:{content:Xt[8],pillOutline:Xt[4],borderPrimary:Xt[2],borderSecondary:Xt[2],background:Xt[0]},green:{content:Be[8],pillOutline:Be[4],borderPrimary:Be[2],borderSecondary:Be[2],background:Be[0]},purple:{content:Ft[8],pillOutline:Ft[4],borderPrimary:Ft[2],borderSecondary:Ft[2],background:Ft[0]},blue:{content:bs[8],pillOutline:bs[4],borderPrimary:bs[2],borderSecondary:bs[2],background:bs[0]},orange:{content:_s[8],pillOutline:_s[4],borderPrimary:_s[2],borderSecondary:_s[2],background:_s[0]},pink:{content:xs[8],pillOutline:xs[4],borderPrimary:xs[2],borderSecondary:xs[2],background:xs[0]}},UT={green:{content:Be[8],border:Be[2],background:Be[0]},yellow:{content:Xt[8],border:Xt[2],background:Xt[0]},red:{content:ot[8],border:ot[2],background:ot[0]}},WT={green:{content:Be[1],background:Be[9]},yellow:{content:Xt[1],background:Xt[9]},red:{content:ot[1],background:ot[9]}},zT={content:M[10],border:M[4],background:M[3]},qT={backgroundDefault:M[2],backgroundHover:M[1],selected:M[3]},ZT={background:M[2],icon:M[10],borderDefault:M[4],borderSelected:ft[3],textLabel:M[9],textPlaceholder:M[8],textHint:M[8]},GT={backgroundDefault:M[2],backgroundDisabled:M[0],textLabel:M[9],textPlaceholder:M[8],textHint:M[8],textError:ot[5],iconDefault:M[9],iconPlaceholder:M[10],iconError:ot[5],borderDefault:M[4],borderSelected:ft[3],borderError:ot[5]},KT={handleDefault:Yt.white,handleDisabled:M[10],off:{backgroundDefault:M[4],backgroundHover:M[5],backgroundDisabled:M[4]},on:{backgroundDefault:Be[3],backgroundHover:Be[2],backgroundDisabled:M[4]}},YT={off:{backgroundDefault:"#00000000",backgroundHover:M[5],backgroundDisabled:M[2],border:M[6]},on:{backgroundDefault:Be[0],backgroundHover:Be[1],backgroundDisabled:M[2],border:Be[3]}},XT={content:M[10],background:M[4]},JT={background:M[4],active:Be[3]},QT={background:M[1],content:M[9],border:M[4]},eI={backgroundDefault:M[1],backgroundHover:M[3],backgroundActive:M[4],border:M[4],contentPrimary:M[10],contentSecondary:M[9],contentTertiary:M[8]},tI={background:M[1],content:M[9],border:M[4]},rI={activeBackground:M[3],activeContent:ft[5],inactiveContent:M[9],border:M[4]},nI={header:{textDefault:M[9],textHover:M[8],backgroundDefault:M[1]},border:M[4],cell:{textPrimary:M[10],textSecondary:M[9],backgroundDefault:M[2],backgroundHover:M[1]}},iI={textPrimaryDefault:M[10],textPrimaryHover:M[10],textSecondaryDefault:M[8],textSecondaryHover:M[9],iconPrimary:M[10],iconSecondary:M[8]},sI={background:Be[1],active:Be[5]},oI={textDefault:M[10],textSelected:Yt.white,textDisabled:M[7],backgroundDefault:M[2],backgroundMiddle:M[3],backgroundSelected:ft[3],border:M[4]},aI=M[9];var lI={size:56,inset:12,background:Yt.black,color:Yt.white,border:`2px solid ${ft[3]}`,shadowOpen:"0 4px 24px rgba(0,0,0,0.6), 0 0 0 2px rgba(255,255,255,0.08)",shadowClosed:"0 4px 24px rgba(0,0,0,0.6)"};var ws=class extends li{constructor(e){if(super(e),this.it=J,e.type!==Sa.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===J||e==null)return this._t=void 0,this.it=e;if(e===Lt)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};ws.directiveName="unsafeHTML",ws.resultType=1;var Aa=ka(ws);function lu(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var Sn=lu();function dm(r){Sn=r}var xn={exec:()=>null};function me(r,e=""){let t=typeof r=="string"?r:r.source,n={replace:(i,s)=>{let o=typeof s=="string"?s:s.source;return o=o.replace(at.caret,"$1"),t=t.replace(i,o),n},getRegex:()=>new RegExp(t,e)};return n}var Aw=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),at={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:r=>new RegExp(`^( {0,3}${r})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}#`),htmlBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}>`)},Rw=/^(?:[ \t]*(?:\n|$))+/,Tw=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Iw=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Cs=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,$w=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,cu=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,pm=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,hm=me(pm).replace(/bull/g,cu).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Mw=me(pm).replace(/bull/g,cu).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),uu=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Ow=/^[^\n]+/,du=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Pw=me(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",du).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Nw=me(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,cu).getRegex(),Oa="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",pu=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Lw=me("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",pu).replace("tag",Oa).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),fm=me(uu).replace("hr",Cs).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Oa).getRegex(),Fw=me(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",fm).getRegex(),hu={blockquote:Fw,code:Tw,def:Pw,fences:Iw,heading:$w,hr:Cs,html:Lw,lheading:hm,list:Nw,newline:Rw,paragraph:fm,table:xn,text:Ow},sm=me("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Cs).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Oa).getRegex(),Dw={...hu,lheading:Mw,table:sm,paragraph:me(uu).replace("hr",Cs).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",sm).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Oa).getRegex()},Hw={...hu,html:me(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",pu).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:xn,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:me(uu).replace("hr",Cs).replace("heading",` *#{1,6} *[^
147
- ]`).replace("lheading",hm).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Bw=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Vw=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,gm=/^( {2,}|\\)\n(?!\s*$)/,jw=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Pa=/[\p{P}\p{S}]/u,fu=/[\s\p{P}\p{S}]/u,mm=/[^\s\p{P}\p{S}]/u,Uw=me(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,fu).getRegex(),vm=/(?!~)[\p{P}\p{S}]/u,Ww=/(?!~)[\s\p{P}\p{S}]/u,zw=/(?:[^\s\p{P}\p{S}]|~)/u,ym=/(?![*_])[\p{P}\p{S}]/u,qw=/(?![*_])[\s\p{P}\p{S}]/u,Zw=/(?:[^\s\p{P}\p{S}]|[*_])/u,Gw=me(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Aw?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),bm=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,Kw=me(bm,"u").replace(/punct/g,Pa).getRegex(),Yw=me(bm,"u").replace(/punct/g,vm).getRegex(),_m="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Xw=me(_m,"gu").replace(/notPunctSpace/g,mm).replace(/punctSpace/g,fu).replace(/punct/g,Pa).getRegex(),Jw=me(_m,"gu").replace(/notPunctSpace/g,zw).replace(/punctSpace/g,Ww).replace(/punct/g,vm).getRegex(),Qw=me("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,mm).replace(/punctSpace/g,fu).replace(/punct/g,Pa).getRegex(),e1=me(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,ym).getRegex(),t1="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",r1=me(t1,"gu").replace(/notPunctSpace/g,Zw).replace(/punctSpace/g,qw).replace(/punct/g,ym).getRegex(),n1=me(/\\(punct)/,"gu").replace(/punct/g,Pa).getRegex(),i1=me(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),s1=me(pu).replace("(?:-->|$)","-->").getRegex(),o1=me("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",s1).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Ia=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,a1=me(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Ia).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),xm=me(/^!?\[(label)\]\[(ref)\]/).replace("label",Ia).replace("ref",du).getRegex(),wm=me(/^!?\[(ref)\](?:\[\])?/).replace("ref",du).getRegex(),l1=me("reflink|nolink(?!\\()","g").replace("reflink",xm).replace("nolink",wm).getRegex(),om=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,gu={_backpedal:xn,anyPunctuation:n1,autolink:i1,blockSkip:Gw,br:gm,code:Vw,del:xn,delLDelim:xn,delRDelim:xn,emStrongLDelim:Kw,emStrongRDelimAst:Xw,emStrongRDelimUnd:Qw,escape:Bw,link:a1,nolink:wm,punctuation:Uw,reflink:xm,reflinkSearch:l1,tag:o1,text:jw,url:xn},c1={...gu,link:me(/^!?\[(label)\]\((.*?)\)/).replace("label",Ia).getRegex(),reflink:me(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Ia).getRegex()},su={...gu,emStrongRDelimAst:Jw,emStrongLDelim:Yw,delLDelim:e1,delRDelim:r1,url:me(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",om).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:me(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",om).getRegex()},u1={...su,br:me(gm).replace("{2,}","*").getRegex(),text:me(su.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Ra={normal:hu,gfm:Dw,pedantic:Hw},Ss={normal:gu,gfm:su,breaks:u1,pedantic:c1},d1={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},am=r=>d1[r];function Jt(r,e){if(e){if(at.escapeTest.test(r))return r.replace(at.escapeReplace,am)}else if(at.escapeTestNoEncode.test(r))return r.replace(at.escapeReplaceNoEncode,am);return r}function lm(r){try{r=encodeURI(r).replace(at.percentDecode,"%")}catch{return null}return r}function cm(r,e){let t=r.replace(at.findPipe,(s,o,a)=>{let l=!1,c=o;for(;--c>=0&&a[c]==="\\";)l=!l;return l?"|":" |"}),n=t.split(at.splitPipe),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length<e;)n.push("");for(;i<n.length;i++)n[i]=n[i].trim().replace(at.slashPipe,"|");return n}function ks(r,e,t){let n=r.length;if(n===0)return"";let i=0;for(;i<n;){let s=r.charAt(n-i-1);if(s===e&&!t)i++;else if(s!==e&&t)i++;else break}return r.slice(0,n-i)}function p1(r,e){if(r.indexOf(e[1])===-1)return-1;let t=0;for(let n=0;n<r.length;n++)if(r[n]==="\\")n++;else if(r[n]===e[0])t++;else if(r[n]===e[1]&&(t--,t<0))return n;return t>0?-2:-1}function h1(r,e=0){let t=e,n="";for(let i of r)if(i===" "){let s=4-t%4;n+=" ".repeat(s),t+=s}else n+=i,t++;return n}function um(r,e,t,n,i){let s=e.href,o=e.title||null,a=r[1].replace(i.other.outputLinkReplace,"$1");n.state.inLink=!0;let l={type:r[0].charAt(0)==="!"?"image":"link",raw:t,href:s,title:o,text:a,tokens:n.inlineTokens(a)};return n.state.inLink=!1,l}function f1(r,e,t){let n=r.match(t.other.indentCodeCompensation);if(n===null)return e;let i=n[1];return e.split(`
146
+ </div>`);let s=c1(t,e.overlayRoot,{html:i,placement:r.placement??"top",trigger:r.trigger??"immediate",onAction:o=>{if(o==="dismiss"){s.destroy();return}if(o==="cta"&&n.cta)e.publishEvent("action.cta_clicked",{anchorId:r.anchorId,ctaLabel:n.cta.label});else if(n.ctaButtons){let a=n.ctaButtons.find(l=>l.actionId===o);if(a){e.publishEvent("action.tooltip_cta_clicked",{anchorId:r.anchorId,actionId:o,label:a.label,...a.href?{href:a.href}:{}}),s.destroy(),wm(a);return}}s.destroy()}});return e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:tooltip",anchorId:r.anchorId,trigger:r.trigger??"immediate"}),{cleanup:()=>{s.destroy()}}},cu=[{kind:"overlays:highlight",executor:Em},{kind:"overlays:pulse",executor:Cm},{kind:"overlays:badge",executor:Am},{kind:"overlays:tooltip",executor:Tm},{kind:"overlays:modal",executor:km},{kind:"overlays:tour",executor:Sm},{kind:"overlays:celebrate",executor:e1}],uu={id:"adaptive-overlays",version:"1.0.0",name:"Overlays",description:"Tooltips, highlights, badges, modals, celebrations, visual overlays, and workflow tracking",executors:cu,widgets:[{id:"adaptive-overlays:workflow-tracker",component:g1,metadata:{name:"Workflow Tracker",icon:"\u{1F4CB}",description:"Tracks multi-step workflow progress across tours"}}]};function du(r){let{appId:e,runtime:t,isBuiltIn:n=!1}=r,i=`app:${e}:`,s=[],o=[],a=t.state.ns(`app:${e}`);return{appId:e,state:{get:c=>a.get(c),set:(c,u)=>a.set(c,u),remove:c=>a.remove(c)},telemetry:t.telemetry?{emit:(c,u)=>{t.events.publish(c,{...u,_appId:e})},getSessionId:()=>t.telemetry?.getSessionId?.()}:void 0,surfaces:{mount:(c,u,p)=>{let h=t.surfaces.mount(c,u,{...p,adaptiveId:e});return{unmount:()=>h.unmount(),update:f=>h.update(f)}},canMount:(c,u)=>t.surfaces.canMount(c,u)},events:{subscribe:c=>t.events.subscribe(u=>{c(u)}),publish:(c,u)=>{t.events.publish(c,{...u,_appId:e})}},registerAction:c=>{t.executors.register(c.kind,c.executor,c.schema,e,n),s.push(c.kind)},registerWidget:c=>{t.widgets.register(c.id,c.component,e,c.metadata),o.push(c.id)}}}function pu(r,e){e.executors.unregisterBySource(r),e.widgets.unregisterBySource(r)}var m1=new Set(["overlays:highlight","overlays:pulse","overlays:badge","overlays:tooltip","overlays:modal","content:insertHtml","content:setText","content:setAttr","content:addClass","content:removeClass","content:setStyle","core:mountWidget","core:wait","core:sequence","core:parallel","overlays:tour"]),v1=new Set(["adaptive-content","adaptive-faq","adaptive-nav","adaptive-overlays"]),y1={faq:"adaptive-faq",nav:"adaptive-nav",gamification:"adaptive-gamification",overlays:"adaptive-overlays",content:"adaptive-content","adaptive-viz":"adaptive-viz"};function Rm(r){return y1[r]??r}function Im(r){return m1.has(r)}function $m(r){if(Im(r))return null;let e=r.indexOf(":");return e===-1?null:Rm(r.slice(0,e))}function hu(r){let e=r.indexOf(":");return e===-1?null:Rm(r.slice(0,e))}function fu(r){let{cdnBase:e,registry:t,timeout:n=1e4,onLoadStart:i,onLoadEnd:s}=r,o=new Map,a=new Set,l=new Map;function c(g){return`${e}/adaptives/${g}/index.js`}async function u(g){if(t.has(g))return{appId:g,success:!0,manifest:t.get(g)?.manifest};if(l.has(g))return l.get(g);if(o.has(g))return o.get(g);let m=(async()=>{i?.(g);try{let y=c(g);if(a.has(y)){let w=t.get(g);if(w)return s?.(g,!0),{appId:g,success:!0,manifest:w.manifest}}let x=new Promise((w,A)=>{setTimeout(()=>A(new Error(`Timeout loading app: ${g}`)),n)}),S=p(y,g);await Promise.race([S,x]),a.add(y);let b=t.get(g);if(!b)throw new Error(`App ${g} did not register after loading`);return s?.(g,!0),{appId:g,success:!0,manifest:b.manifest}}catch(y){let x=y instanceof Error?y.message:String(y);s?.(g,!1,x);let S={appId:g,success:!1,error:x};return l.set(g,S),S}finally{o.delete(g)}})();return o.set(g,m),m}async function p(g,m){if(typeof window<"u"){try{let y=await import(g);y.manifest?t.register(y.manifest):y.default?.manifest?t.register(y.default.manifest):y.default&&t.register(y.default);return}catch{}return new Promise((y,x)=>{let S=document.createElement("script");S.src=g,S.async=!0,S.onload=()=>{t.get(m)?y():x(new Error(`App ${m} did not self-register`))},S.onerror=()=>{x(new Error(`Failed to load app script: ${g}`))},document.head.appendChild(S)})}throw new Error("Dynamic app loading not supported in SSR")}function h(g){let m=new Set;if(g.apps)for(let y of g.apps)m.add(y);if(g.actions)for(let y of g.actions){let x=$m(y.kind);if(x&&m.add(x),y.kind==="core:mountWidget"){let S=y.widget?.widgetId;if(S){let b=hu(S);b&&m.add(b)}}}if(g.tiles){for(let y of g.tiles)if(y.widget){let x=hu(y.widget);x&&m.add(x)}}for(let y of v1)m.delete(y);return Array.from(m)}async function f(g){let m=h(g);return m.length===0?[]:await Promise.all(m.map(x=>u(x)))}async function v(g){return Promise.all(g.map(m=>u(m)))}return{loadApp:u,loadAppsForConfig:f,preloadApps:v,getRequiredApps:h,getAppUrl:c}}var xs=class{constructor(){this.apps=new Map;this.eventListeners=new Set;this.runtime=null}bind(e){this.runtime=e}async unbind(){for(let[e,t]of this.apps)t.state==="active"&&await this.deactivate(e);this.runtime=null}register(e){if(!e.id||typeof e.id!="string")throw new Error("App manifest must have an 'id' property");if(!e.version||typeof e.version!="string")throw new Error("App manifest must have a 'version' property");if(!e.name||typeof e.name!="string")throw new Error("App manifest must have a 'name' property");if(this.apps.has(e.id)){if(this.apps.get(e.id).state==="active")throw new Error(`Cannot re-register active app: ${e.id}`);console.warn(`[AppRegistry] Overriding existing app registration: ${e.id}`)}let t={manifest:e,state:"registered",registeredAt:Date.now()};return this.apps.set(e.id,t),this.emit({type:"app:registered",appId:e.id,manifest:e}),t}async activate(e){let t=this.apps.get(e);if(!t)throw new Error(`App not registered: ${e}`);if(t.state==="active"||t.state==="activating"){console.warn(`[AppRegistry] App already ${t.state}: ${e}`);return}if(!this.runtime)throw new Error("AppRegistry not bound to a runtime. Call bind() first.");if(t.manifest.dependencies)for(let n of t.manifest.dependencies){let i=this.apps.get(n);if(!i||i.state!=="active")throw new Error(`App ${e} depends on ${n}, which is not active`)}t.state="activating";try{let n=t.manifest.metadata?.isBuiltIn===!0,i=du({appId:e,runtime:this.runtime,isBuiltIn:n}),{runtime:s}=t.manifest,o=[];if(s){if(s.actions)for(let a of s.actions)i.registerAction(a);if(s.widgets)for(let a of s.widgets)i.registerWidget(a);if(s.events)for(let a of s.events){let l=this.runtime.events.subscribe(c=>{if(a.names.includes(c.name)){let u={appId:e,state:i.state,telemetry:i.telemetry,surfaces:i.surfaces};try{a.handler(c,u)}catch(p){console.error(`[AppRegistry] Event handler error in ${e}:`,p)}}});o.push(l)}}t.cleanup=async()=>{for(let a of o)try{await a()}catch(l){console.error(`[AppRegistry] Cleanup error in ${e}:`,l)}pu(e,this.runtime)},t.state="active",t.activatedAt=Date.now(),this.emit({type:"app:activated",appId:e})}catch(n){throw t.state="error",t.error=String(n),this.emit({type:"app:error",appId:e,error:String(n)}),n}}async deactivate(e){let t=this.apps.get(e);if(!t)throw new Error(`App not registered: ${e}`);if(t.state!=="active"){console.warn(`[AppRegistry] App not active: ${e}`);return}for(let[n,i]of this.apps)if(i.state==="active"&&i.manifest.dependencies?.includes(e))throw new Error(`Cannot deactivate ${e}: app ${n} depends on it`);t.state="deactivating";try{t.cleanup&&(await t.cleanup(),t.cleanup=void 0),t.state="inactive",this.emit({type:"app:deactivated",appId:e})}catch(n){throw t.state="error",t.error=String(n),this.emit({type:"app:error",appId:e,error:String(n)}),n}}async unregister(e){let t=this.apps.get(e);t&&(t.state==="active"&&await this.deactivate(e),this.apps.delete(e),this.emit({type:"app:unregistered",appId:e}))}get(e){return this.apps.get(e)}has(e){return this.apps.has(e)}isActive(e){return this.apps.get(e)?.state==="active"}list(){return Array.from(this.apps.values())}listActive(){return Array.from(this.apps.values()).filter(e=>e.state==="active")}listEditable(){return Array.from(this.apps.values()).filter(e=>e.manifest.editor!==void 0)}subscribe(e){return this.eventListeners.add(e),()=>{this.eventListeners.delete(e)}}emit(e){for(let t of this.eventListeners)try{t(e)}catch(n){console.error("[AppRegistry] Event listener error:",n)}}async destroy(){await this.unbind(),this.apps.clear(),this.eventListeners.clear()}},ws=new xs;var Yt={white:"#ffffff",black:"#000000"},ft={0:"#2c0b0a",1:"#5b1715",2:"#89221f",3:"#b72e2a",4:"#d44844",5:"#dd6d69",6:"#e5918f",7:"#eeb6b4",8:"#f6dada",9:"#faebea"},M={0:"#07080a",1:"#0f1318",2:"#0e1114",3:"#1c222a",4:"#2b333f",5:"#394454",6:"#475569",7:"#677384",8:"#87919f",9:"#a8afba",10:"#cbd0d7",11:"#e8eaee",12:"#f6f7f9"},Be={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Xt={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},ot={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},Ss={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},ks={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},Ft={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},Es={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"};var LI={primary:M[10],secondary:M[9],tertiary:M[8]},NI={primary:M[2],secondary:M[0]},FI={primary:M[4],secondary:M[3]},DI={primary:{text:Yt.white,icon:Yt.white,border:ft[3],backgroundDefault:ft[3],backgroundHover:ft[2]},neutral:{text:M[10],textHover:Yt.white,icon:M[10],iconHover:Yt.white,border:M[4],background:M[2]},link:{text:Yt.white,icon:Yt.white,hover:ft[5]},error:{text:ot[5],hover:ot[6]},success:{text:Be[5],hover:Be[6]}},HI={slateGrey:{content:M[10],pillOutline:M[10],borderPrimary:M[5],borderSecondary:M[5],background:M[3]},brand:{content:ft[9],pillOutline:ft[9],borderPrimary:ft[6],borderSecondary:ft[6],background:ft[0]},red:{content:ot[8],pillOutline:ot[4],borderPrimary:ot[2],borderSecondary:ot[2],background:ot[0]},yellow:{content:Xt[8],pillOutline:Xt[4],borderPrimary:Xt[2],borderSecondary:Xt[2],background:Xt[0]},green:{content:Be[8],pillOutline:Be[4],borderPrimary:Be[2],borderSecondary:Be[2],background:Be[0]},purple:{content:Ft[8],pillOutline:Ft[4],borderPrimary:Ft[2],borderSecondary:Ft[2],background:Ft[0]},blue:{content:Ss[8],pillOutline:Ss[4],borderPrimary:Ss[2],borderSecondary:Ss[2],background:Ss[0]},orange:{content:ks[8],pillOutline:ks[4],borderPrimary:ks[2],borderSecondary:ks[2],background:ks[0]},pink:{content:Es[8],pillOutline:Es[4],borderPrimary:Es[2],borderSecondary:Es[2],background:Es[0]}},BI={green:{content:Be[8],border:Be[2],background:Be[0]},yellow:{content:Xt[8],border:Xt[2],background:Xt[0]},red:{content:ot[8],border:ot[2],background:ot[0]}},VI={green:{content:Be[1],background:Be[9]},yellow:{content:Xt[1],background:Xt[9]},red:{content:ot[1],background:ot[9]}},UI={content:M[10],border:M[4],background:M[3]},jI={backgroundDefault:M[2],backgroundHover:M[1],selected:M[3]},WI={background:M[2],icon:M[10],borderDefault:M[4],borderSelected:ft[3],textLabel:M[9],textPlaceholder:M[8],textHint:M[8]},zI={backgroundDefault:M[2],backgroundDisabled:M[0],textLabel:M[9],textPlaceholder:M[8],textHint:M[8],textError:ot[5],iconDefault:M[9],iconPlaceholder:M[10],iconError:ot[5],borderDefault:M[4],borderSelected:ft[3],borderError:ot[5]},qI={handleDefault:Yt.white,handleDisabled:M[10],off:{backgroundDefault:M[4],backgroundHover:M[5],backgroundDisabled:M[4]},on:{backgroundDefault:Be[3],backgroundHover:Be[2],backgroundDisabled:M[4]}},ZI={off:{backgroundDefault:"#00000000",backgroundHover:M[5],backgroundDisabled:M[2],border:M[6]},on:{backgroundDefault:Be[0],backgroundHover:Be[1],backgroundDisabled:M[2],border:Be[3]}},GI={content:M[10],background:M[4]},KI={background:M[4],active:Be[3]},YI={background:M[1],content:M[9],border:M[4]},XI={backgroundDefault:M[1],backgroundHover:M[3],backgroundActive:M[4],border:M[4],contentPrimary:M[10],contentSecondary:M[9],contentTertiary:M[8]},JI={background:M[1],content:M[9],border:M[4]},QI={activeBackground:M[3],activeContent:ft[5],inactiveContent:M[9],border:M[4]},e$={header:{textDefault:M[9],textHover:M[8],backgroundDefault:M[1]},border:M[4],cell:{textPrimary:M[10],textSecondary:M[9],backgroundDefault:M[2],backgroundHover:M[1]}},t$={textPrimaryDefault:M[10],textPrimaryHover:M[10],textSecondaryDefault:M[8],textSecondaryHover:M[9],iconPrimary:M[10],iconSecondary:M[8]},r$={background:Be[1],active:Be[5]},n$={textDefault:M[10],textSelected:Yt.white,textDisabled:M[7],backgroundDefault:M[2],backgroundMiddle:M[3],backgroundSelected:ft[3],border:M[4]},i$=M[9];var s$={size:56,inset:12,background:Yt.black,color:Yt.white,border:`2px solid ${ft[3]}`,shadowOpen:"0 4px 24px rgba(0,0,0,0.6), 0 0 0 2px rgba(255,255,255,0.08)",shadowClosed:"0 4px 24px rgba(0,0,0,0.6)"};var Cs=class extends ui{constructor(e){if(super(e),this.it=ee,e.type!==Ra.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===ee||e==null)return this._t=void 0,this.it=e;if(e===Nt)return e;if(typeof e!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(e===this.it)return this._t;this.it=e;let t=[e];return t.raw=t,this._t={_$litType$:this.constructor.resultType,strings:t,values:[]}}};Cs.directiveName="unsafeHTML",Cs.resultType=1;var Pa=Ia(Cs);function yu(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var En=yu();function Dm(r){En=r}var Sn={exec:()=>null};function ve(r,e=""){let t=typeof r=="string"?r:r.source,n={replace:(i,s)=>{let o=typeof s=="string"?s:s.source;return o=o.replace(at.caret,"$1"),t=t.replace(i,o),n},getRegex:()=>new RegExp(t,e)};return n}var b1=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),at={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:r=>new RegExp(`^( {0,3}${r})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`),hrRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`),fencesBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}(?:\`\`\`|~~~)`),headingBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}#`),htmlBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}<(?:[a-z].*>|!--)`,"i"),blockquoteBeginRegex:r=>new RegExp(`^ {0,${Math.min(3,r-1)}}>`)},_1=/^(?:[ \t]*(?:\n|$))+/,x1=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,w1=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Is=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,S1=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,bu=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Hm=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Bm=ve(Hm).replace(/bull/g,bu).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),k1=ve(Hm).replace(/bull/g,bu).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),_u=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,E1=/^[^\n]+/,xu=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,C1=ve(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",xu).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),A1=ve(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,bu).getRegex(),Ha="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",wu=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,T1=ve("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|<![A-Z][\\s\\S]*?(?:>\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",wu).replace("tag",Ha).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Vm=ve(_u).replace("hr",Is).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ha).getRegex(),R1=ve(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Vm).getRegex(),Su={blockquote:R1,code:x1,def:C1,fences:w1,heading:S1,hr:Is,html:T1,lheading:Bm,list:A1,newline:_1,paragraph:Vm,table:Sn,text:E1},Mm=ve("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Is).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ha).getRegex(),I1={...Su,lheading:k1,table:Mm,paragraph:ve(_u).replace("hr",Is).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Mm).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html","</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Ha).getRegex()},$1={...Su,html:ve(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",wu).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:Sn,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:ve(_u).replace("hr",Is).replace("heading",` *#{1,6} *[^
147
+ ]`).replace("lheading",Bm).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},M1=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,P1=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Um=/^( {2,}|\\)\n(?!\s*$)/,O1=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,Ba=/[\p{P}\p{S}]/u,ku=/[\s\p{P}\p{S}]/u,jm=/[^\s\p{P}\p{S}]/u,L1=ve(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,ku).getRegex(),Wm=/(?!~)[\p{P}\p{S}]/u,N1=/(?!~)[\s\p{P}\p{S}]/u,F1=/(?:[^\s\p{P}\p{S}]|~)/u,zm=/(?![*_])[\p{P}\p{S}]/u,D1=/(?![*_])[\s\p{P}\p{S}]/u,H1=/(?:[^\s\p{P}\p{S}]|[*_])/u,B1=ve(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",b1?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),qm=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,V1=ve(qm,"u").replace(/punct/g,Ba).getRegex(),U1=ve(qm,"u").replace(/punct/g,Wm).getRegex(),Zm="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",j1=ve(Zm,"gu").replace(/notPunctSpace/g,jm).replace(/punctSpace/g,ku).replace(/punct/g,Ba).getRegex(),W1=ve(Zm,"gu").replace(/notPunctSpace/g,F1).replace(/punctSpace/g,N1).replace(/punct/g,Wm).getRegex(),z1=ve("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,jm).replace(/punctSpace/g,ku).replace(/punct/g,Ba).getRegex(),q1=ve(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,zm).getRegex(),Z1="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",G1=ve(Z1,"gu").replace(/notPunctSpace/g,H1).replace(/punctSpace/g,D1).replace(/punct/g,zm).getRegex(),K1=ve(/\\(punct)/,"gu").replace(/punct/g,Ba).getRegex(),Y1=ve(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),X1=ve(wu).replace("(?:-->|$)","-->").getRegex(),J1=ve("^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment",X1).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Na=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,Q1=ve(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Na).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Gm=ve(/^!?\[(label)\]\[(ref)\]/).replace("label",Na).replace("ref",xu).getRegex(),Km=ve(/^!?\[(ref)\](?:\[\])?/).replace("ref",xu).getRegex(),eS=ve("reflink|nolink(?!\\()","g").replace("reflink",Gm).replace("nolink",Km).getRegex(),Pm=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Eu={_backpedal:Sn,anyPunctuation:K1,autolink:Y1,blockSkip:B1,br:Um,code:P1,del:Sn,delLDelim:Sn,delRDelim:Sn,emStrongLDelim:V1,emStrongRDelimAst:j1,emStrongRDelimUnd:z1,escape:M1,link:Q1,nolink:Km,punctuation:L1,reflink:Gm,reflinkSearch:eS,tag:J1,text:O1,url:Sn},tS={...Eu,link:ve(/^!?\[(label)\]\((.*?)\)/).replace("label",Na).getRegex(),reflink:ve(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Na).getRegex()},gu={...Eu,emStrongRDelimAst:W1,emStrongLDelim:U1,delLDelim:q1,delRDelim:G1,url:ve(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Pm).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:ve(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace("protocol",Pm).getRegex()},rS={...gu,br:ve(Um).replace("{2,}","*").getRegex(),text:ve(gu.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Oa={normal:Su,gfm:I1,pedantic:$1},As={normal:Eu,gfm:gu,breaks:rS,pedantic:tS},nS={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Om=r=>nS[r];function Jt(r,e){if(e){if(at.escapeTest.test(r))return r.replace(at.escapeReplace,Om)}else if(at.escapeTestNoEncode.test(r))return r.replace(at.escapeReplaceNoEncode,Om);return r}function Lm(r){try{r=encodeURI(r).replace(at.percentDecode,"%")}catch{return null}return r}function Nm(r,e){let t=r.replace(at.findPipe,(s,o,a)=>{let l=!1,c=o;for(;--c>=0&&a[c]==="\\";)l=!l;return l?"|":" |"}),n=t.split(at.splitPipe),i=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length<e;)n.push("");for(;i<n.length;i++)n[i]=n[i].trim().replace(at.slashPipe,"|");return n}function Ts(r,e,t){let n=r.length;if(n===0)return"";let i=0;for(;i<n;){let s=r.charAt(n-i-1);if(s===e&&!t)i++;else if(s!==e&&t)i++;else break}return r.slice(0,n-i)}function iS(r,e){if(r.indexOf(e[1])===-1)return-1;let t=0;for(let n=0;n<r.length;n++)if(r[n]==="\\")n++;else if(r[n]===e[0])t++;else if(r[n]===e[1]&&(t--,t<0))return n;return t>0?-2:-1}function sS(r,e=0){let t=e,n="";for(let i of r)if(i===" "){let s=4-t%4;n+=" ".repeat(s),t+=s}else n+=i,t++;return n}function Fm(r,e,t,n,i){let s=e.href,o=e.title||null,a=r[1].replace(i.other.outputLinkReplace,"$1");n.state.inLink=!0;let l={type:r[0].charAt(0)==="!"?"image":"link",raw:t,href:s,title:o,text:a,tokens:n.inlineTokens(a)};return n.state.inLink=!1,l}function oS(r,e,t){let n=r.match(t.other.indentCodeCompensation);if(n===null)return e;let i=n[1];return e.split(`
148
148
  `).map(s=>{let o=s.match(t.other.beginningSpace);if(o===null)return s;let[a]=o;return a.length>=i.length?s.slice(i.length):s}).join(`
149
- `)}var $a=class{constructor(r){we(this,"options");we(this,"rules");we(this,"lexer");this.options=r||Sn}space(r){let e=this.rules.block.newline.exec(r);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(r){let e=this.rules.block.code.exec(r);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:ks(t,`
150
- `)}}}fences(r){let e=this.rules.block.fences.exec(r);if(e){let t=e[0],n=f1(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:n}}}heading(r){let e=this.rules.block.heading.exec(r);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let n=ks(t,"#");(this.options.pedantic||!n||this.rules.other.endingSpaceChar.test(n))&&(t=n.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(r){let e=this.rules.block.hr.exec(r);if(e)return{type:"hr",raw:ks(e[0],`
151
- `)}}blockquote(r){let e=this.rules.block.blockquote.exec(r);if(e){let t=ks(e[0],`
149
+ `)}var Fa=class{constructor(r){pe(this,"options");pe(this,"rules");pe(this,"lexer");this.options=r||En}space(r){let e=this.rules.block.newline.exec(r);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(r){let e=this.rules.block.code.exec(r);if(e){let t=e[0].replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:e[0],codeBlockStyle:"indented",text:this.options.pedantic?t:Ts(t,`
150
+ `)}}}fences(r){let e=this.rules.block.fences.exec(r);if(e){let t=e[0],n=oS(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:n}}}heading(r){let e=this.rules.block.heading.exec(r);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let n=Ts(t,"#");(this.options.pedantic||!n||this.rules.other.endingSpaceChar.test(n))&&(t=n.trim())}return{type:"heading",raw:e[0],depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(r){let e=this.rules.block.hr.exec(r);if(e)return{type:"hr",raw:Ts(e[0],`
151
+ `)}}blockquote(r){let e=this.rules.block.blockquote.exec(r);if(e){let t=Ts(e[0],`
152
152
  `).split(`
153
153
  `),n="",i="",s=[];for(;t.length>0;){let o=!1,a=[],l;for(l=0;l<t.length;l++)if(this.rules.other.blockquoteStart.test(t[l]))a.push(t[l]),o=!0;else if(!o)a.push(t[l]);else break;t=t.slice(l);let c=a.join(`
154
154
  `),u=c.replace(this.rules.other.blockquoteSetextReplace,`
@@ -159,16 +159,16 @@ ${u}`:u;let p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTo
159
159
  `),g=this.blockquote(v);s[s.length-1]=g,n=n.substring(0,n.length-f.raw.length)+g.raw,i=i.substring(0,i.length-f.text.length)+g.text;break}else if(h?.type==="list"){let f=h,v=f.raw+`
160
160
  `+t.join(`
161
161
  `),g=this.list(v);s[s.length-1]=g,n=n.substring(0,n.length-h.raw.length)+g.raw,i=i.substring(0,i.length-f.raw.length)+g.raw,t=v.substring(s.at(-1).raw.length).split(`
162
- `);continue}}return{type:"blockquote",raw:n,tokens:s,text:i}}}list(r){let e=this.rules.block.list.exec(r);if(e){let t=e[1].trim(),n=t.length>1,i={type:"list",raw:"",ordered:n,start:n?+t.slice(0,-1):"",loose:!1,items:[]};t=n?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=n?t:"[*+-]");let s=this.rules.other.listItemRegex(t),o=!1;for(;r;){let l=!1,c="",u="";if(!(e=s.exec(r))||this.rules.block.hr.test(r))break;c=e[0],r=r.substring(c.length);let p=h1(e[2].split(`
162
+ `);continue}}return{type:"blockquote",raw:n,tokens:s,text:i}}}list(r){let e=this.rules.block.list.exec(r);if(e){let t=e[1].trim(),n=t.length>1,i={type:"list",raw:"",ordered:n,start:n?+t.slice(0,-1):"",loose:!1,items:[]};t=n?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=n?t:"[*+-]");let s=this.rules.other.listItemRegex(t),o=!1;for(;r;){let l=!1,c="",u="";if(!(e=s.exec(r))||this.rules.block.hr.test(r))break;c=e[0],r=r.substring(c.length);let p=sS(e[2].split(`
163
163
  `,1)[0],e[1].length),h=r.split(`
164
164
  `,1)[0],f=!p.trim(),v=0;if(this.options.pedantic?(v=2,u=p.trimStart()):f?v=e[1].length+1:(v=p.search(this.rules.other.nonSpaceChar),v=v>4?1:v,u=p.slice(v),v+=e[1].length),f&&this.rules.other.blankLine.test(h)&&(c+=h+`
165
165
  `,r=r.substring(h.length+1),l=!0),!l){let g=this.rules.other.nextBulletRegex(v),m=this.rules.other.hrRegex(v),y=this.rules.other.fencesBeginRegex(v),x=this.rules.other.headingBeginRegex(v),S=this.rules.other.htmlBeginRegex(v),b=this.rules.other.blockquoteBeginRegex(v);for(;r;){let w=r.split(`
166
- `,1)[0],C;if(h=w,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting," "),C=h):C=h.replace(this.rules.other.tabCharGlobal," "),y.test(h)||x.test(h)||S.test(h)||b.test(h)||g.test(h)||m.test(h))break;if(C.search(this.rules.other.nonSpaceChar)>=v||!h.trim())u+=`
167
- `+C.slice(v);else{if(f||p.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||y.test(p)||x.test(p)||m.test(p))break;u+=`
166
+ `,1)[0],A;if(h=w,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting," "),A=h):A=h.replace(this.rules.other.tabCharGlobal," "),y.test(h)||x.test(h)||S.test(h)||b.test(h)||g.test(h)||m.test(h))break;if(A.search(this.rules.other.nonSpaceChar)>=v||!h.trim())u+=`
167
+ `+A.slice(v);else{if(f||p.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||y.test(p)||x.test(p)||m.test(p))break;u+=`
168
168
  `+h}f=!h.trim(),c+=w+`
169
- `,r=r.substring(w.length+1),p=C.slice(v)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0)),i.items.push({type:"list_item",raw:c,task:!!this.options.gfm&&this.rules.other.listIsTask.test(u),loose:!1,text:u,tokens:[]}),i.raw+=c}let a=i.items.at(-1);if(a)a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let l of i.items){if(this.lexer.state.top=!1,l.tokens=this.lexer.blockTokens(l.text,[]),l.task){if(l.text=l.text.replace(this.rules.other.listReplaceTask,""),l.tokens[0]?.type==="text"||l.tokens[0]?.type==="paragraph"){l.tokens[0].raw=l.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),l.tokens[0].text=l.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let u=this.lexer.inlineQueue.length-1;u>=0;u--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[u].src)){this.lexer.inlineQueue[u].src=this.lexer.inlineQueue[u].src.replace(this.rules.other.listReplaceTask,"");break}}let c=this.rules.other.listTaskCheckbox.exec(l.raw);if(c){let u={type:"checkbox",raw:c[0]+" ",checked:c[0]!=="[ ]"};l.checked=u.checked,i.loose?l.tokens[0]&&["paragraph","text"].includes(l.tokens[0].type)&&"tokens"in l.tokens[0]&&l.tokens[0].tokens?(l.tokens[0].raw=u.raw+l.tokens[0].raw,l.tokens[0].text=u.raw+l.tokens[0].text,l.tokens[0].tokens.unshift(u)):l.tokens.unshift({type:"paragraph",raw:u.raw,text:u.raw,tokens:[u]}):l.tokens.unshift(u)}}if(!i.loose){let c=l.tokens.filter(p=>p.type==="space"),u=c.length>0&&c.some(p=>this.rules.other.anyLine.test(p.raw));i.loose=u}}if(i.loose)for(let l of i.items){l.loose=!0;for(let c of l.tokens)c.type==="text"&&(c.type="paragraph")}return i}}html(r){let e=this.rules.block.html.exec(r);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(r){let e=this.rules.block.def.exec(r);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:n,title:i}}}table(r){let e=this.rules.block.table.exec(r);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=cm(e[1]),n=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
170
- `):[],s={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===n.length){for(let o of n)this.rules.other.tableAlignRight.test(o)?s.align.push("right"):this.rules.other.tableAlignCenter.test(o)?s.align.push("center"):this.rules.other.tableAlignLeft.test(o)?s.align.push("left"):s.align.push(null);for(let o=0;o<t.length;o++)s.header.push({text:t[o],tokens:this.lexer.inline(t[o]),header:!0,align:s.align[o]});for(let o of i)s.rows.push(cm(o,s.header.length).map((a,l)=>({text:a,tokens:this.lexer.inline(a),header:!1,align:s.align[l]})));return s}}lheading(r){let e=this.rules.block.lheading.exec(r);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(r){let e=this.rules.block.paragraph.exec(r);if(e){let t=e[1].charAt(e[1].length-1)===`
171
- `?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(r){let e=this.rules.block.text.exec(r);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(r){let e=this.rules.inline.escape.exec(r);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(r){let e=this.rules.inline.tag.exec(r);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(r){let e=this.rules.inline.link.exec(r);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let s=ks(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=p1(e[2],"()");if(s===-2)return;if(s>-1){let o=(e[0].indexOf("!")===0?5:4)+e[1].length+s;e[2]=e[2].substring(0,s),e[0]=e[0].substring(0,o).trim(),e[3]=""}}let n=e[2],i="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(n);s&&(n=s[1],i=s[3])}else i=e[3]?e[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?n=n.slice(1):n=n.slice(1,-1)),um(e,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(r,e){let t;if((t=this.rules.inline.reflink.exec(r))||(t=this.rules.inline.nolink.exec(r))){let n=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[n.toLowerCase()];if(!i){let s=t[0].charAt(0);return{type:"text",raw:s,text:s}}return um(t,i,t[0],this.lexer,this.rules)}}emStrong(r,e,t=""){let n=this.rules.inline.emStrongLDelim.exec(r);if(!(!n||n[3]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(n[1]||n[2])||!t||this.rules.inline.punctuation.exec(t))){let i=[...n[0]].length-1,s,o,a=i,l=0,c=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,e=e.slice(-1*r.length+i);(n=c.exec(e))!=null;){if(s=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!s)continue;if(o=[...s].length,n[3]||n[4]){a+=o;continue}else if((n[5]||n[6])&&i%3&&!((i+o)%3)){l+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a+l);let u=[...n[0]][0].length,p=r.slice(0,i+n.index+u+o);if(Math.min(i,o)%2){let f=p.slice(1,-1);return{type:"em",raw:p,text:f,tokens:this.lexer.inlineTokens(f)}}let h=p.slice(2,-2);return{type:"strong",raw:p,text:h,tokens:this.lexer.inlineTokens(h)}}}}codespan(r){let e=this.rules.inline.code.exec(r);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return n&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(r){let e=this.rules.inline.br.exec(r);if(e)return{type:"br",raw:e[0]}}del(r,e,t=""){let n=this.rules.inline.delLDelim.exec(r);if(n&&(!n[1]||!t||this.rules.inline.punctuation.exec(t))){let i=[...n[0]].length-1,s,o,a=i,l=this.rules.inline.delRDelim;for(l.lastIndex=0,e=e.slice(-1*r.length+i);(n=l.exec(e))!=null;){if(s=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!s||(o=[...s].length,o!==i))continue;if(n[3]||n[4]){a+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a);let c=[...n[0]][0].length,u=r.slice(0,i+n.index+c+o),p=u.slice(i,-i);return{type:"del",raw:u,text:p,tokens:this.lexer.inlineTokens(p)}}}}autolink(r){let e=this.rules.inline.autolink.exec(r);if(e){let t,n;return e[2]==="@"?(t=e[1],n="mailto:"+t):(t=e[1],n=t),{type:"link",raw:e[0],text:t,href:n,tokens:[{type:"text",raw:t,text:t}]}}}url(r){let e;if(e=this.rules.inline.url.exec(r)){let t,n;if(e[2]==="@")t=e[0],n="mailto:"+t;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);t=e[0],e[1]==="www."?n="http://"+e[0]:n=e[0]}return{type:"link",raw:e[0],text:t,href:n,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(r){let e=this.rules.inline.text.exec(r);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},Dt=class ou{constructor(e){we(this,"tokens");we(this,"options");we(this,"state");we(this,"inlineQueue");we(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||Sn,this.options.tokenizer=this.options.tokenizer||new $a,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:at,block:Ra.normal,inline:Ss.normal};this.options.pedantic?(t.block=Ra.pedantic,t.inline=Ss.pedantic):this.options.gfm&&(t.block=Ra.gfm,this.options.breaks?t.inline=Ss.breaks:t.inline=Ss.gfm),this.tokenizer.rules=t}static get rules(){return{block:Ra,inline:Ss}}static lex(e,t){return new ou(t).lex(e)}static lexInline(e,t){return new ou(t).inlineTokens(e)}lex(e){e=e.replace(at.carriageReturn,`
169
+ `,r=r.substring(w.length+1),p=A.slice(v)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(c)&&(o=!0)),i.items.push({type:"list_item",raw:c,task:!!this.options.gfm&&this.rules.other.listIsTask.test(u),loose:!1,text:u,tokens:[]}),i.raw+=c}let a=i.items.at(-1);if(a)a.raw=a.raw.trimEnd(),a.text=a.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let l of i.items){if(this.lexer.state.top=!1,l.tokens=this.lexer.blockTokens(l.text,[]),l.task){if(l.text=l.text.replace(this.rules.other.listReplaceTask,""),l.tokens[0]?.type==="text"||l.tokens[0]?.type==="paragraph"){l.tokens[0].raw=l.tokens[0].raw.replace(this.rules.other.listReplaceTask,""),l.tokens[0].text=l.tokens[0].text.replace(this.rules.other.listReplaceTask,"");for(let u=this.lexer.inlineQueue.length-1;u>=0;u--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[u].src)){this.lexer.inlineQueue[u].src=this.lexer.inlineQueue[u].src.replace(this.rules.other.listReplaceTask,"");break}}let c=this.rules.other.listTaskCheckbox.exec(l.raw);if(c){let u={type:"checkbox",raw:c[0]+" ",checked:c[0]!=="[ ]"};l.checked=u.checked,i.loose?l.tokens[0]&&["paragraph","text"].includes(l.tokens[0].type)&&"tokens"in l.tokens[0]&&l.tokens[0].tokens?(l.tokens[0].raw=u.raw+l.tokens[0].raw,l.tokens[0].text=u.raw+l.tokens[0].text,l.tokens[0].tokens.unshift(u)):l.tokens.unshift({type:"paragraph",raw:u.raw,text:u.raw,tokens:[u]}):l.tokens.unshift(u)}}if(!i.loose){let c=l.tokens.filter(p=>p.type==="space"),u=c.length>0&&c.some(p=>this.rules.other.anyLine.test(p.raw));i.loose=u}}if(i.loose)for(let l of i.items){l.loose=!0;for(let c of l.tokens)c.type==="text"&&(c.type="paragraph")}return i}}html(r){let e=this.rules.block.html.exec(r);if(e)return{type:"html",block:!0,raw:e[0],pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:e[0]}}def(r){let e=this.rules.block.def.exec(r);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),n=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:e[0],href:n,title:i}}}table(r){let e=this.rules.block.table.exec(r);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=Nm(e[1]),n=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=e[3]?.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(`
170
+ `):[],s={type:"table",raw:e[0],header:[],align:[],rows:[]};if(t.length===n.length){for(let o of n)this.rules.other.tableAlignRight.test(o)?s.align.push("right"):this.rules.other.tableAlignCenter.test(o)?s.align.push("center"):this.rules.other.tableAlignLeft.test(o)?s.align.push("left"):s.align.push(null);for(let o=0;o<t.length;o++)s.header.push({text:t[o],tokens:this.lexer.inline(t[o]),header:!0,align:s.align[o]});for(let o of i)s.rows.push(Nm(o,s.header.length).map((a,l)=>({text:a,tokens:this.lexer.inline(a),header:!1,align:s.align[l]})));return s}}lheading(r){let e=this.rules.block.lheading.exec(r);if(e)return{type:"heading",raw:e[0],depth:e[2].charAt(0)==="="?1:2,text:e[1],tokens:this.lexer.inline(e[1])}}paragraph(r){let e=this.rules.block.paragraph.exec(r);if(e){let t=e[1].charAt(e[1].length-1)===`
171
+ `?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(r){let e=this.rules.block.text.exec(r);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(r){let e=this.rules.inline.escape.exec(r);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(r){let e=this.rules.inline.tag.exec(r);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(r){let e=this.rules.inline.link.exec(r);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let s=Ts(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=iS(e[2],"()");if(s===-2)return;if(s>-1){let o=(e[0].indexOf("!")===0?5:4)+e[1].length+s;e[2]=e[2].substring(0,s),e[0]=e[0].substring(0,o).trim(),e[3]=""}}let n=e[2],i="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(n);s&&(n=s[1],i=s[3])}else i=e[3]?e[3].slice(1,-1):"";return n=n.trim(),this.rules.other.startAngleBracket.test(n)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?n=n.slice(1):n=n.slice(1,-1)),Fm(e,{href:n&&n.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(r,e){let t;if((t=this.rules.inline.reflink.exec(r))||(t=this.rules.inline.nolink.exec(r))){let n=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[n.toLowerCase()];if(!i){let s=t[0].charAt(0);return{type:"text",raw:s,text:s}}return Fm(t,i,t[0],this.lexer,this.rules)}}emStrong(r,e,t=""){let n=this.rules.inline.emStrongLDelim.exec(r);if(!(!n||n[3]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(n[1]||n[2])||!t||this.rules.inline.punctuation.exec(t))){let i=[...n[0]].length-1,s,o,a=i,l=0,c=n[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,e=e.slice(-1*r.length+i);(n=c.exec(e))!=null;){if(s=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!s)continue;if(o=[...s].length,n[3]||n[4]){a+=o;continue}else if((n[5]||n[6])&&i%3&&!((i+o)%3)){l+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a+l);let u=[...n[0]][0].length,p=r.slice(0,i+n.index+u+o);if(Math.min(i,o)%2){let f=p.slice(1,-1);return{type:"em",raw:p,text:f,tokens:this.lexer.inlineTokens(f)}}let h=p.slice(2,-2);return{type:"strong",raw:p,text:h,tokens:this.lexer.inlineTokens(h)}}}}codespan(r){let e=this.rules.inline.code.exec(r);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),n=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return n&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(r){let e=this.rules.inline.br.exec(r);if(e)return{type:"br",raw:e[0]}}del(r,e,t=""){let n=this.rules.inline.delLDelim.exec(r);if(n&&(!n[1]||!t||this.rules.inline.punctuation.exec(t))){let i=[...n[0]].length-1,s,o,a=i,l=this.rules.inline.delRDelim;for(l.lastIndex=0,e=e.slice(-1*r.length+i);(n=l.exec(e))!=null;){if(s=n[1]||n[2]||n[3]||n[4]||n[5]||n[6],!s||(o=[...s].length,o!==i))continue;if(n[3]||n[4]){a+=o;continue}if(a-=o,a>0)continue;o=Math.min(o,o+a);let c=[...n[0]][0].length,u=r.slice(0,i+n.index+c+o),p=u.slice(i,-i);return{type:"del",raw:u,text:p,tokens:this.lexer.inlineTokens(p)}}}}autolink(r){let e=this.rules.inline.autolink.exec(r);if(e){let t,n;return e[2]==="@"?(t=e[1],n="mailto:"+t):(t=e[1],n=t),{type:"link",raw:e[0],text:t,href:n,tokens:[{type:"text",raw:t,text:t}]}}}url(r){let e;if(e=this.rules.inline.url.exec(r)){let t,n;if(e[2]==="@")t=e[0],n="mailto:"+t;else{let i;do i=e[0],e[0]=this.rules.inline._backpedal.exec(e[0])?.[0]??"";while(i!==e[0]);t=e[0],e[1]==="www."?n="http://"+e[0]:n=e[0]}return{type:"link",raw:e[0],text:t,href:n,tokens:[{type:"text",raw:t,text:t}]}}}inlineText(r){let e=this.rules.inline.text.exec(r);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},Dt=class mu{constructor(e){pe(this,"tokens");pe(this,"options");pe(this,"state");pe(this,"inlineQueue");pe(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||En,this.options.tokenizer=this.options.tokenizer||new Fa,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:at,block:Oa.normal,inline:As.normal};this.options.pedantic?(t.block=Oa.pedantic,t.inline=As.pedantic):this.options.gfm&&(t.block=Oa.gfm,this.options.breaks?t.inline=As.breaks:t.inline=As.gfm),this.tokenizer.rules=t}static get rules(){return{block:Oa,inline:As}}static lex(e,t){return new mu(t).lex(e)}static lexInline(e,t){return new mu(t).inlineTokens(e)}lex(e){e=e.replace(at.carriageReturn,`
172
172
  `),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let n=this.inlineQueue[t];this.inlineTokens(n.src,n.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){for(this.options.pedantic&&(e=e.replace(at.tabCharGlobal," ").replace(at.spaceLine,""));e;){let i;if(this.options.extensions?.block?.some(o=>(i=o.call({lexer:this},e,t))?(e=e.substring(i.raw.length),t.push(i),!0):!1))continue;if(i=this.tokenizer.space(e)){e=e.substring(i.raw.length);let o=t.at(-1);i.raw.length===1&&o!==void 0?o.raw+=`
173
173
  `:t.push(i);continue}if(i=this.tokenizer.code(e)){e=e.substring(i.raw.length);let o=t.at(-1);o?.type==="paragraph"||o?.type==="text"?(o.raw+=(o.raw.endsWith(`
174
174
  `)?"":`
@@ -182,7 +182,7 @@ ${u}`:u;let p=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTo
182
182
  `+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(i),n=s.length!==e.length,e=e.substring(i.raw.length);continue}if(i=this.tokenizer.text(e)){e=e.substring(i.raw.length);let o=t.at(-1);o?.type==="text"?(o.raw+=(o.raw.endsWith(`
183
183
  `)?"":`
184
184
  `)+i.raw,o.text+=`
185
- `+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(i);continue}if(e){let o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n=e,i=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)l.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,i.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let s;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)s=i[2]?i[2].length:0,n=n.slice(0,i.index+s)+"["+"a".repeat(i[0].length-s-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let o=!1,a="";for(;e;){o||(a=""),o=!1;let l;if(this.options.extensions?.inline?.some(u=>(l=u.call({lexer:this},e,t))?(e=e.substring(l.raw.length),t.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let u=t.at(-1);l.type==="text"&&u?.type==="text"?(u.raw+=l.raw,u.text+=l.text):t.push(l);continue}if(l=this.tokenizer.emStrong(e,n,a)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.del(e,n,a)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),t.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),t.push(l);continue}let c=e;if(this.options.extensions?.startInline){let u=1/0,p=e.slice(1),h;this.options.extensions.startInline.forEach(f=>{h=f.call({lexer:this},p),typeof h=="number"&&h>=0&&(u=Math.min(u,h))}),u<1/0&&u>=0&&(c=e.substring(0,u+1))}if(l=this.tokenizer.inlineText(c)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(a=l.raw.slice(-1)),o=!0;let u=t.at(-1);u?.type==="text"?(u.raw+=l.raw,u.text+=l.text):t.push(l);continue}if(e){let u="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(u);break}else throw new Error(u)}}return t}},Ma=class{constructor(r){we(this,"options");we(this,"parser");this.options=r||Sn}space(r){return""}code({text:r,lang:e,escaped:t}){let n=(e||"").match(at.notSpaceStart)?.[0],i=r.replace(at.endingNewline,"")+`
185
+ `+i.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=o.text):t.push(i);continue}if(e){let o="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(o);break}else throw new Error(o)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n=e,i=null;if(this.tokens.links){let l=Object.keys(this.tokens.links);if(l.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)l.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(n=n.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,i.index)+"++"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let s;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)s=i[2]?i[2].length:0,n=n.slice(0,i.index+s)+"["+"a".repeat(i[0].length-s-2)+"]"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let o=!1,a="";for(;e;){o||(a=""),o=!1;let l;if(this.options.extensions?.inline?.some(u=>(l=u.call({lexer:this},e,t))?(e=e.substring(l.raw.length),t.push(l),!0):!1))continue;if(l=this.tokenizer.escape(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.tag(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.link(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(l.raw.length);let u=t.at(-1);l.type==="text"&&u?.type==="text"?(u.raw+=l.raw,u.text+=l.text):t.push(l);continue}if(l=this.tokenizer.emStrong(e,n,a)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.codespan(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.br(e)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.del(e,n,a)){e=e.substring(l.raw.length),t.push(l);continue}if(l=this.tokenizer.autolink(e)){e=e.substring(l.raw.length),t.push(l);continue}if(!this.state.inLink&&(l=this.tokenizer.url(e))){e=e.substring(l.raw.length),t.push(l);continue}let c=e;if(this.options.extensions?.startInline){let u=1/0,p=e.slice(1),h;this.options.extensions.startInline.forEach(f=>{h=f.call({lexer:this},p),typeof h=="number"&&h>=0&&(u=Math.min(u,h))}),u<1/0&&u>=0&&(c=e.substring(0,u+1))}if(l=this.tokenizer.inlineText(c)){e=e.substring(l.raw.length),l.raw.slice(-1)!=="_"&&(a=l.raw.slice(-1)),o=!0;let u=t.at(-1);u?.type==="text"?(u.raw+=l.raw,u.text+=l.text):t.push(l);continue}if(e){let u="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(u);break}else throw new Error(u)}}return t}},Da=class{constructor(r){pe(this,"options");pe(this,"parser");this.options=r||En}space(r){return""}code({text:r,lang:e,escaped:t}){let n=(e||"").match(at.notSpaceStart)?.[0],i=r.replace(at.endingNewline,"")+`
186
186
  `;return n?'<pre><code class="language-'+Jt(n)+'">'+(t?i:Jt(i,!0))+`</code></pre>
187
187
  `:"<pre><code>"+(t?i:Jt(i,!0))+`</code></pre>
188
188
  `}blockquote({tokens:r}){return`<blockquote>
@@ -200,67 +200,67 @@ ${this.parser.parse(r)}</blockquote>
200
200
  `}tablerow({text:r}){return`<tr>
201
201
  ${r}</tr>
202
202
  `}tablecell(r){let e=this.parser.parseInline(r.tokens),t=r.header?"th":"td";return(r.align?`<${t} align="${r.align}">`:`<${t}>`)+e+`</${t}>
203
- `}strong({tokens:r}){return`<strong>${this.parser.parseInline(r)}</strong>`}em({tokens:r}){return`<em>${this.parser.parseInline(r)}</em>`}codespan({text:r}){return`<code>${Jt(r,!0)}</code>`}br(r){return"<br>"}del({tokens:r}){return`<del>${this.parser.parseInline(r)}</del>`}link({href:r,title:e,tokens:t}){let n=this.parser.parseInline(t),i=lm(r);if(i===null)return n;r=i;let s='<a href="'+r+'"';return e&&(s+=' title="'+Jt(e)+'"'),s+=">"+n+"</a>",s}image({href:r,title:e,text:t,tokens:n}){n&&(t=this.parser.parseInline(n,this.parser.textRenderer));let i=lm(r);if(i===null)return Jt(t);r=i;let s=`<img src="${r}" alt="${Jt(t)}"`;return e&&(s+=` title="${Jt(e)}"`),s+=">",s}text(r){return"tokens"in r&&r.tokens?this.parser.parseInline(r.tokens):"escaped"in r&&r.escaped?r.text:Jt(r.text)}},mu=class{strong({text:r}){return r}em({text:r}){return r}codespan({text:r}){return r}del({text:r}){return r}html({text:r}){return r}text({text:r}){return r}link({text:r}){return""+r}image({text:r}){return""+r}br(){return""}checkbox({raw:r}){return r}},Ht=class au{constructor(e){we(this,"options");we(this,"renderer");we(this,"textRenderer");this.options=e||Sn,this.options.renderer=this.options.renderer||new Ma,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new mu}static parse(e,t){return new au(t).parse(e)}static parseInline(e,t){return new au(t).parseInline(e)}parse(e){let t="";for(let n=0;n<e.length;n++){let i=e[n];if(this.options.extensions?.renderers?.[i.type]){let o=i,a=this.options.extensions.renderers[o.type].call({parser:this},o);if(a!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(o.type)){t+=a||"";continue}}let s=i;switch(s.type){case"space":{t+=this.renderer.space(s);break}case"hr":{t+=this.renderer.hr(s);break}case"heading":{t+=this.renderer.heading(s);break}case"code":{t+=this.renderer.code(s);break}case"table":{t+=this.renderer.table(s);break}case"blockquote":{t+=this.renderer.blockquote(s);break}case"list":{t+=this.renderer.list(s);break}case"checkbox":{t+=this.renderer.checkbox(s);break}case"html":{t+=this.renderer.html(s);break}case"def":{t+=this.renderer.def(s);break}case"paragraph":{t+=this.renderer.paragraph(s);break}case"text":{t+=this.renderer.text(s);break}default:{let o='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return t}parseInline(e,t=this.renderer){let n="";for(let i=0;i<e.length;i++){let s=e[i];if(this.options.extensions?.renderers?.[s.type]){let a=this.options.extensions.renderers[s.type].call({parser:this},s);if(a!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){n+=a||"";continue}}let o=s;switch(o.type){case"escape":{n+=t.text(o);break}case"html":{n+=t.html(o);break}case"link":{n+=t.link(o);break}case"image":{n+=t.image(o);break}case"checkbox":{n+=t.checkbox(o);break}case"strong":{n+=t.strong(o);break}case"em":{n+=t.em(o);break}case"codespan":{n+=t.codespan(o);break}case"br":{n+=t.br(o);break}case"del":{n+=t.del(o);break}case"text":{n+=t.text(o);break}default:{let a='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(a),"";throw new Error(a)}}}return n}},Ta,Es=(Ta=class{constructor(r){we(this,"options");we(this,"block");this.options=r||Sn}preprocess(r){return r}postprocess(r){return r}processAllTokens(r){return r}emStrongMask(r){return r}provideLexer(){return this.block?Dt.lex:Dt.lexInline}provideParser(){return this.block?Ht.parse:Ht.parseInline}},we(Ta,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),we(Ta,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),Ta),vu=class{constructor(...r){we(this,"defaults",lu());we(this,"options",this.setOptions);we(this,"parse",this.parseMarkdown(!0));we(this,"parseInline",this.parseMarkdown(!1));we(this,"Parser",Ht);we(this,"Renderer",Ma);we(this,"TextRenderer",mu);we(this,"Lexer",Dt);we(this,"Tokenizer",$a);we(this,"Hooks",Es);this.use(...r)}walkTokens(r,e){let t=[];for(let n of r)switch(t=t.concat(e.call(this,n)),n.type){case"table":{let i=n;for(let s of i.header)t=t.concat(this.walkTokens(s.tokens,e));for(let s of i.rows)for(let o of s)t=t.concat(this.walkTokens(o.tokens,e));break}case"list":{let i=n;t=t.concat(this.walkTokens(i.items,e));break}default:{let i=n;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(s=>{let o=i[s].flat(1/0);t=t.concat(this.walkTokens(o,e))}):i.tokens&&(t=t.concat(this.walkTokens(i.tokens,e)))}}return t}use(...r){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return r.forEach(t=>{let n={...t};if(n.async=this.defaults.async||n.async||!1,t.extensions&&(t.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let s=e.renderers[i.name];s?e.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=s.apply(this,o)),a}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=e[i.level];s?s.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),n.extensions=e),t.renderer){let i=this.defaults.renderer||new Ma(this.defaults);for(let s in t.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let o=s,a=t.renderer[o],l=i[o];i[o]=(...c)=>{let u=a.apply(i,c);return u===!1&&(u=l.apply(i,c)),u||""}}n.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new $a(this.defaults);for(let s in t.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let o=s,a=t.tokenizer[o],l=i[o];i[o]=(...c)=>{let u=a.apply(i,c);return u===!1&&(u=l.apply(i,c)),u}}n.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new Es;for(let s in t.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let o=s,a=t.hooks[o],l=i[o];Es.passThroughHooks.has(s)?i[o]=c=>{if(this.defaults.async&&Es.passThroughHooksRespectAsync.has(s))return(async()=>{let p=await a.call(i,c);return l.call(i,p)})();let u=a.call(i,c);return l.call(i,u)}:i[o]=(...c)=>{if(this.defaults.async)return(async()=>{let p=await a.apply(i,c);return p===!1&&(p=await l.apply(i,c)),p})();let u=a.apply(i,c);return u===!1&&(u=l.apply(i,c)),u}}n.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,s=t.walkTokens;n.walkTokens=function(o){let a=[];return a.push(s.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...n}}),this}setOptions(r){return this.defaults={...this.defaults,...r},this}lexer(r,e){return Dt.lex(r,e??this.defaults)}parser(r,e){return Ht.parse(r,e??this.defaults)}parseMarkdown(r){return(e,t)=>{let n={...t},i={...this.defaults,...n},s=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&n.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=r),i.async)return(async()=>{let o=i.hooks?await i.hooks.preprocess(e):e,a=await(i.hooks?await i.hooks.provideLexer():r?Dt.lex:Dt.lexInline)(o,i),l=i.hooks?await i.hooks.processAllTokens(a):a;i.walkTokens&&await Promise.all(this.walkTokens(l,i.walkTokens));let c=await(i.hooks?await i.hooks.provideParser():r?Ht.parse:Ht.parseInline)(l,i);return i.hooks?await i.hooks.postprocess(c):c})().catch(s);try{i.hooks&&(e=i.hooks.preprocess(e));let o=(i.hooks?i.hooks.provideLexer():r?Dt.lex:Dt.lexInline)(e,i);i.hooks&&(o=i.hooks.processAllTokens(o)),i.walkTokens&&this.walkTokens(o,i.walkTokens);let a=(i.hooks?i.hooks.provideParser():r?Ht.parse:Ht.parseInline)(o,i);return i.hooks&&(a=i.hooks.postprocess(a)),a}catch(o){return s(o)}}}onError(r,e){return t=>{if(t.message+=`
204
- Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error occurred:</p><pre>"+Jt(t.message+"",!0)+"</pre>";return e?Promise.resolve(n):n}if(e)return Promise.reject(t);throw t}}},wn=new vu;function Se(r,e){return wn.parse(r,e)}Se.options=Se.setOptions=function(r){return wn.setOptions(r),Se.defaults=wn.defaults,dm(Se.defaults),Se};Se.getDefaults=lu;Se.defaults=Sn;Se.use=function(...r){return wn.use(...r),Se.defaults=wn.defaults,dm(Se.defaults),Se};Se.walkTokens=function(r,e){return wn.walkTokens(r,e)};Se.parseInline=wn.parseInline;Se.Parser=Ht;Se.parser=Ht.parse;Se.Renderer=Ma;Se.TextRenderer=mu;Se.Lexer=Dt;Se.lexer=Dt.lex;Se.Tokenizer=$a;Se.Hooks=Es;Se.parse=Se;var mI=Se.options,vI=Se.setOptions,yI=Se.use,bI=Se.walkTokens,_I=Se.parseInline;var xI=Ht.parse,wI=Dt.lex;function km(r,e,t){if(e){let n=r.getState().items.find(i=>i.config.id===e);if(n)return n}if(t){let n=r.findByQuestion(t);if(n)return n}throw new Error("FAQ item not found")}async function g1(r,e,t){let n=km(t,r.itemId,r.itemQuestion),{id:i}=n.config;r.expand!==!1&&t.expand(i);let s=document.querySelector(`[data-faq-item-id="${i}"]`);return s&&s.scrollIntoView({behavior:r.behavior??"smooth"}),e.publishEvent("faq:scroll_to",{itemId:i}),{cleanup:()=>{}}}async function m1(r,e,t){let n=km(t,r.itemId,r.itemQuestion),{id:i}=n.config,s=r.state??"toggle",o;switch(s){case"open":t.expand(i),o="open";break;case"closed":t.collapse(i),o="closed";break;default:{let a=t.getState().expandedItems.has(i);t.toggle(i),o=a?"closed":"open";break}}return e.publishEvent("faq:toggle",{itemId:i,newState:o}),{cleanup:()=>{}}}async function v1(r,e,t){switch(r.operation){case"add":{let n=r.items??[],i=r.position==="prepend"?"prepend":"append";t.addItems(n,i);break}case"remove":{if(!r.itemId)throw new Error("FAQ item not found");if(!t.getState().items.some(i=>i.config.id===r.itemId))throw new Error("FAQ item not found");t.removeItem(r.itemId);break}case"reorder":{let n=r.order??[];t.reorderItems(n);break}case"replace":{let n=r.items??[];t.replaceItems(n);break}}return e.publishEvent("faq:update",{operation:r.operation}),{cleanup:()=>{}}}var y1=[{kind:"faq:scroll_to",executor:g1},{kind:"faq:toggle_item",executor:m1},{kind:"faq:update",executor:v1}],rt={container:{fontFamily:"var(--sc-font-family, system-ui, -apple-system, sans-serif)",maxWidth:"800px",margin:"0 auto"},searchWrapper:{marginBottom:"8px"},searchInput:{width:"100%",padding:"12px 16px",borderRadius:"8px",fontSize:"14px",outline:"none",transition:"border-color 0.15s ease",backgroundColor:"var(--sc-content-search-background)",color:"var(--sc-content-search-color)"},accordion:{display:"flex",flexDirection:"column",gap:"var(--sc-content-item-gap, 6px)"},item:{borderRadius:"var(--sc-content-border-radius, 8px)",overflow:"hidden",transition:"box-shadow 0.15s ease"},question:{width:"100%",padding:"var(--sc-content-item-padding, 12px 16px)",display:"flex",alignItems:"center",justifyContent:"space-between",border:"none",cursor:"pointer",fontSize:"var(--sc-content-item-font-size, 15px)",fontWeight:500,textAlign:"left",transition:"background-color 0.15s ease"},chevron:{fontSize:"20px",transition:"transform 0.2s ease",color:"var(--sc-content-chevron-color, currentColor)"},answer:{padding:"var(--sc-content-body-padding, 0 16px 12px 16px)",fontSize:"var(--sc-content-body-font-size, 14px)",lineHeight:1.6,overflow:"hidden",transition:"max-height 0.2s ease, padding 0.2s ease"},category:{display:"inline-block",fontSize:"11px",fontWeight:600,textTransform:"uppercase",letterSpacing:"0.05em",padding:"4px 8px",borderRadius:"4px",marginBottom:"8px"},categoryHeader:{fontSize:"var(--sc-content-category-font-size, 12px)",fontWeight:700,textTransform:"uppercase",letterSpacing:"0.05em",padding:"var(--sc-content-category-padding, 8px 4px 4px 4px)",marginTop:"var(--sc-content-category-gap, 4px)"},feedback:{display:"flex",alignItems:"center",gap:"8px",marginTop:"12px",paddingTop:"10px",borderTop:"1px solid rgba(0, 0, 0, 0.08)",fontSize:"13px"},feedbackButton:{background:"none",border:"1px solid transparent",cursor:"pointer",fontSize:"16px",padding:"4px 8px",borderRadius:"4px",transition:"background-color 0.15s ease, border-color 0.15s ease"},feedbackButtonSelected:{borderColor:"rgba(0, 0, 0, 0.2)",backgroundColor:"rgba(0, 0, 0, 0.04)"},emptyState:{textAlign:"center",padding:"48px 24px",fontSize:"14px"},noResults:{textAlign:"center",padding:"32px 16px",fontSize:"14px"}},yu={light:{container:{backgroundColor:"transparent",color:"inherit"},searchInput:{border:`1px solid ${M[11]}`},item:{backgroundColor:"var(--sc-content-background)",borderTop:"var(--sc-content-border)",borderRight:"var(--sc-content-border)",borderBottom:"var(--sc-content-border)",borderLeft:"var(--sc-content-border)"},itemExpanded:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.08)"},question:{backgroundColor:"transparent",color:"var(--sc-content-text-color)"},questionHover:{backgroundColor:"var(--sc-content-background-hover)"},answer:{color:"var(--sc-content-text-secondary-color)"},category:{backgroundColor:Ft[8],color:Ft[2]},categoryHeader:{color:M[7]},emptyState:{color:M[8]},feedbackPrompt:{color:M[7]}},dark:{container:{backgroundColor:"transparent",color:"inherit"},searchInput:{border:`1px solid ${M[5]}`},item:{backgroundColor:"var(--sc-content-background)",borderTop:"var(--sc-content-border)",borderRight:"var(--sc-content-border)",borderBottom:"var(--sc-content-border)",borderLeft:"var(--sc-content-border)"},itemExpanded:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)"},question:{backgroundColor:"transparent",color:"var(--sc-content-text-color)"},questionHover:{backgroundColor:"var(--sc-content-background-hover)"},answer:{color:"var(--sc-content-text-secondary-color)"},category:{backgroundColor:Ft[0],color:Ft[6]},categoryHeader:{color:M[8]},emptyState:{color:M[7]},feedbackPrompt:{color:M[8]}}};var Sm=new vu({async:!1,gfm:!0,breaks:!0});function b1(r){return typeof r=="string"?r:r.type==="rich"?r.html:r.content}function _1(r){return typeof r=="string"?Sm.parse(r):r.type==="rich"?r.html:Sm.parse(r.content)}function x1(r){return r?r===!0?{style:"thumbs"}:r:null}function w1(r){return r.prompt??"Was this helpful?"}function S1(r){return r&&r!=="auto"?r:typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var Em=class extends ye{constructor(){super(...arguments),this.faqConfig={expandBehavior:"single",searchable:!1,theme:"auto",actions:[]},this.runtime=null,this.instanceId="faq-widget",this._expandedIds=new Set,this._highlightId=null,this._searchQuery="",this._feedbackState=new Map,this._hoveredId=null,this._unsubContext=null,this._unsubAccumulator=null,this._unsubCta=null,this._unsubDeepLink=null,this._unsubSessionMetrics=null,this._highlightTimer=null}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._subscribeAll()}disconnectedCallback(){super.disconnectedCallback(),this._unsubscribeAll(),this._highlightTimer!==null&&(clearTimeout(this._highlightTimer),this._highlightTimer=null)}updated(r){r.has("runtime")&&(this._unsubscribeAll(),this._subscribeAll())}_subscribeAll(){if(this.runtime){if(this._unsubContext=this.runtime.context.subscribe(()=>{this.requestUpdate()}),this.runtime.accumulator?.subscribe&&(this._unsubAccumulator=this.runtime.accumulator.subscribe(()=>{this.requestUpdate()})),this.runtime.sessionMetrics?.subscribe&&(this._unsubSessionMetrics=this.runtime.sessionMetrics.subscribe(()=>{this.requestUpdate()})),this.runtime.events.subscribe){if(this.runtime.events.getRecent){let e=this.runtime.events.getRecent({patterns:["^action\\.tooltip_cta_clicked$","^action\\.modal_cta_clicked$"]},10).filter(t=>{let n=t.props?.actionId;return typeof n=="string"&&n.startsWith("faq:open:")}).pop();if(e&&Date.now()-e.ts<1e4){let t=e.props.actionId.replace("faq:open:","");this._expandedIds=new Set([t]),requestAnimationFrame(()=>{let n=document.querySelector(`[data-faq-item-id="${t}"]`);n&&n.scrollIntoView({behavior:"smooth",block:"center"})})}}this._unsubCta=this.runtime.events.subscribe({patterns:["^action\\.tooltip_cta_clicked$","^action\\.modal_cta_clicked$"]},r=>{let e=r.props?.actionId;if(typeof e!="string"||!e.startsWith("faq:open:"))return;let t=e.replace("faq:open:","");this._expandedIds=new Set([t]),requestAnimationFrame(()=>{let n=document.querySelector(`[data-faq-item-id="${t}"]`);n&&n.scrollIntoView({behavior:"smooth",block:"center"})}),this.runtime?.events.publish("canvas.requestOpen")})}if(this.runtime.events.subscribe){let r=e=>{let t=e.props?.tileId,n=e.props?.itemId;t===this.instanceId&&n&&(this._expandedIds=new Set([n]),this._highlightId=n,this._highlightTimer!==null&&clearTimeout(this._highlightTimer),this._highlightTimer=setTimeout(()=>{this._highlightId=null,this._highlightTimer=null},1500),requestAnimationFrame(()=>{let i=document.querySelector(`[data-faq-item-id="${n}"]`);i&&i.scrollIntoView({behavior:"smooth",block:"center"})}))};if(this.runtime.events.getRecent){let t=this.runtime.events.getRecent({names:["notification.deep_link"]},5).filter(n=>n.props?.tileId===this.instanceId&&n.props?.itemId).pop();t&&Date.now()-t.ts<1e4&&r(t)}this._unsubDeepLink=this.runtime.events.subscribe({names:["notification.deep_link"]},r)}}}_unsubscribeAll(){this._unsubContext?.(),this._unsubAccumulator?.(),this._unsubSessionMetrics?.(),this._unsubCta?.(),this._unsubDeepLink?.(),this._unsubContext=null,this._unsubAccumulator=null,this._unsubSessionMetrics=null,this._unsubCta=null,this._unsubDeepLink=null}_handleToggle(r){let e=this._expandedIds,t;this.faqConfig.expandBehavior==="single"?t=e.has(r)?new Set:new Set([r]):(t=new Set(e),e.has(r)?t.delete(r):t.add(r));let n=!e.has(r);this._expandedIds=t,this.runtime?.events.publish("faq:toggled",{instanceId:this.instanceId,questionId:r,expanded:n,timestamp:Date.now()})}_handleFeedback(r,e,t){let n=new Map(this._feedbackState);n.set(r,t),this._feedbackState=n,this.runtime?.events.publish("faq:feedback",{itemId:r,question:e,value:t})}_visibleQuestions(){return(this.faqConfig.actions??[]).filter(r=>!r.triggerWhen||!this.runtime?!0:this.runtime.evaluateSync(r.triggerWhen).value)}_orderedQuestions(r){return this.faqConfig.ordering==="priority"?[...r].sort((e,t)=>(t.config.priority??0)-(e.config.priority??0)):r}_filteredQuestions(r){let e=this._searchQuery.trim().toLowerCase();return!this.faqConfig.searchable||!e?r:r.filter(t=>t.config.question.toLowerCase().includes(e)||b1(t.config.answer).toLowerCase().includes(e)||t.config.category?.toLowerCase().includes(e))}_categoryGroups(r){let e=new Map;for(let t of r){let n=t.config.category;e.has(n)||e.set(n,[]),e.get(n).push(t)}return e}_renderAnswer(r){let e=_1(r);return L`<div style="margin:0" data-faq-markdown="">${Aa(e)}</div>`}_renderFeedback(r,e,t,n){let i=yu[n],s={...rt.feedback,...i.feedbackPrompt};return L`
205
- <div style=${R(s)}>
206
- <span>${w1(e)}</span>
203
+ `}strong({tokens:r}){return`<strong>${this.parser.parseInline(r)}</strong>`}em({tokens:r}){return`<em>${this.parser.parseInline(r)}</em>`}codespan({text:r}){return`<code>${Jt(r,!0)}</code>`}br(r){return"<br>"}del({tokens:r}){return`<del>${this.parser.parseInline(r)}</del>`}link({href:r,title:e,tokens:t}){let n=this.parser.parseInline(t),i=Lm(r);if(i===null)return n;r=i;let s='<a href="'+r+'"';return e&&(s+=' title="'+Jt(e)+'"'),s+=">"+n+"</a>",s}image({href:r,title:e,text:t,tokens:n}){n&&(t=this.parser.parseInline(n,this.parser.textRenderer));let i=Lm(r);if(i===null)return Jt(t);r=i;let s=`<img src="${r}" alt="${Jt(t)}"`;return e&&(s+=` title="${Jt(e)}"`),s+=">",s}text(r){return"tokens"in r&&r.tokens?this.parser.parseInline(r.tokens):"escaped"in r&&r.escaped?r.text:Jt(r.text)}},Cu=class{strong({text:r}){return r}em({text:r}){return r}codespan({text:r}){return r}del({text:r}){return r}html({text:r}){return r}text({text:r}){return r}link({text:r}){return""+r}image({text:r}){return""+r}br(){return""}checkbox({raw:r}){return r}},Ht=class vu{constructor(e){pe(this,"options");pe(this,"renderer");pe(this,"textRenderer");this.options=e||En,this.options.renderer=this.options.renderer||new Da,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new Cu}static parse(e,t){return new vu(t).parse(e)}static parseInline(e,t){return new vu(t).parseInline(e)}parse(e){let t="";for(let n=0;n<e.length;n++){let i=e[n];if(this.options.extensions?.renderers?.[i.type]){let o=i,a=this.options.extensions.renderers[o.type].call({parser:this},o);if(a!==!1||!["space","hr","heading","code","table","blockquote","list","html","def","paragraph","text"].includes(o.type)){t+=a||"";continue}}let s=i;switch(s.type){case"space":{t+=this.renderer.space(s);break}case"hr":{t+=this.renderer.hr(s);break}case"heading":{t+=this.renderer.heading(s);break}case"code":{t+=this.renderer.code(s);break}case"table":{t+=this.renderer.table(s);break}case"blockquote":{t+=this.renderer.blockquote(s);break}case"list":{t+=this.renderer.list(s);break}case"checkbox":{t+=this.renderer.checkbox(s);break}case"html":{t+=this.renderer.html(s);break}case"def":{t+=this.renderer.def(s);break}case"paragraph":{t+=this.renderer.paragraph(s);break}case"text":{t+=this.renderer.text(s);break}default:{let o='Token with "'+s.type+'" type was not found.';if(this.options.silent)return console.error(o),"";throw new Error(o)}}}return t}parseInline(e,t=this.renderer){let n="";for(let i=0;i<e.length;i++){let s=e[i];if(this.options.extensions?.renderers?.[s.type]){let a=this.options.extensions.renderers[s.type].call({parser:this},s);if(a!==!1||!["escape","html","link","image","strong","em","codespan","br","del","text"].includes(s.type)){n+=a||"";continue}}let o=s;switch(o.type){case"escape":{n+=t.text(o);break}case"html":{n+=t.html(o);break}case"link":{n+=t.link(o);break}case"image":{n+=t.image(o);break}case"checkbox":{n+=t.checkbox(o);break}case"strong":{n+=t.strong(o);break}case"em":{n+=t.em(o);break}case"codespan":{n+=t.codespan(o);break}case"br":{n+=t.br(o);break}case"del":{n+=t.del(o);break}case"text":{n+=t.text(o);break}default:{let a='Token with "'+o.type+'" type was not found.';if(this.options.silent)return console.error(a),"";throw new Error(a)}}}return n}},La,Rs=(La=class{constructor(r){pe(this,"options");pe(this,"block");this.options=r||En}preprocess(r){return r}postprocess(r){return r}processAllTokens(r){return r}emStrongMask(r){return r}provideLexer(){return this.block?Dt.lex:Dt.lexInline}provideParser(){return this.block?Ht.parse:Ht.parseInline}},pe(La,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),pe(La,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),La),Au=class{constructor(...r){pe(this,"defaults",yu());pe(this,"options",this.setOptions);pe(this,"parse",this.parseMarkdown(!0));pe(this,"parseInline",this.parseMarkdown(!1));pe(this,"Parser",Ht);pe(this,"Renderer",Da);pe(this,"TextRenderer",Cu);pe(this,"Lexer",Dt);pe(this,"Tokenizer",Fa);pe(this,"Hooks",Rs);this.use(...r)}walkTokens(r,e){let t=[];for(let n of r)switch(t=t.concat(e.call(this,n)),n.type){case"table":{let i=n;for(let s of i.header)t=t.concat(this.walkTokens(s.tokens,e));for(let s of i.rows)for(let o of s)t=t.concat(this.walkTokens(o.tokens,e));break}case"list":{let i=n;t=t.concat(this.walkTokens(i.items,e));break}default:{let i=n;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(s=>{let o=i[s].flat(1/0);t=t.concat(this.walkTokens(o,e))}):i.tokens&&(t=t.concat(this.walkTokens(i.tokens,e)))}}return t}use(...r){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return r.forEach(t=>{let n={...t};if(n.async=this.defaults.async||n.async||!1,t.extensions&&(t.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let s=e.renderers[i.name];s?e.renderers[i.name]=function(...o){let a=i.renderer.apply(this,o);return a===!1&&(a=s.apply(this,o)),a}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=e[i.level];s?s.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),n.extensions=e),t.renderer){let i=this.defaults.renderer||new Da(this.defaults);for(let s in t.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let o=s,a=t.renderer[o],l=i[o];i[o]=(...c)=>{let u=a.apply(i,c);return u===!1&&(u=l.apply(i,c)),u||""}}n.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new Fa(this.defaults);for(let s in t.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let o=s,a=t.tokenizer[o],l=i[o];i[o]=(...c)=>{let u=a.apply(i,c);return u===!1&&(u=l.apply(i,c)),u}}n.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new Rs;for(let s in t.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let o=s,a=t.hooks[o],l=i[o];Rs.passThroughHooks.has(s)?i[o]=c=>{if(this.defaults.async&&Rs.passThroughHooksRespectAsync.has(s))return(async()=>{let p=await a.call(i,c);return l.call(i,p)})();let u=a.call(i,c);return l.call(i,u)}:i[o]=(...c)=>{if(this.defaults.async)return(async()=>{let p=await a.apply(i,c);return p===!1&&(p=await l.apply(i,c)),p})();let u=a.apply(i,c);return u===!1&&(u=l.apply(i,c)),u}}n.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,s=t.walkTokens;n.walkTokens=function(o){let a=[];return a.push(s.call(this,o)),i&&(a=a.concat(i.call(this,o))),a}}this.defaults={...this.defaults,...n}}),this}setOptions(r){return this.defaults={...this.defaults,...r},this}lexer(r,e){return Dt.lex(r,e??this.defaults)}parser(r,e){return Ht.parse(r,e??this.defaults)}parseMarkdown(r){return(e,t)=>{let n={...t},i={...this.defaults,...n},s=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&n.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=r),i.async)return(async()=>{let o=i.hooks?await i.hooks.preprocess(e):e,a=await(i.hooks?await i.hooks.provideLexer():r?Dt.lex:Dt.lexInline)(o,i),l=i.hooks?await i.hooks.processAllTokens(a):a;i.walkTokens&&await Promise.all(this.walkTokens(l,i.walkTokens));let c=await(i.hooks?await i.hooks.provideParser():r?Ht.parse:Ht.parseInline)(l,i);return i.hooks?await i.hooks.postprocess(c):c})().catch(s);try{i.hooks&&(e=i.hooks.preprocess(e));let o=(i.hooks?i.hooks.provideLexer():r?Dt.lex:Dt.lexInline)(e,i);i.hooks&&(o=i.hooks.processAllTokens(o)),i.walkTokens&&this.walkTokens(o,i.walkTokens);let a=(i.hooks?i.hooks.provideParser():r?Ht.parse:Ht.parseInline)(o,i);return i.hooks&&(a=i.hooks.postprocess(a)),a}catch(o){return s(o)}}}onError(r,e){return t=>{if(t.message+=`
204
+ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error occurred:</p><pre>"+Jt(t.message+"",!0)+"</pre>";return e?Promise.resolve(n):n}if(e)return Promise.reject(t);throw t}}},kn=new Au;function Se(r,e){return kn.parse(r,e)}Se.options=Se.setOptions=function(r){return kn.setOptions(r),Se.defaults=kn.defaults,Dm(Se.defaults),Se};Se.getDefaults=yu;Se.defaults=En;Se.use=function(...r){return kn.use(...r),Se.defaults=kn.defaults,Dm(Se.defaults),Se};Se.walkTokens=function(r,e){return kn.walkTokens(r,e)};Se.parseInline=kn.parseInline;Se.Parser=Ht;Se.parser=Ht.parse;Se.Renderer=Da;Se.TextRenderer=Cu;Se.Lexer=Dt;Se.lexer=Dt.lex;Se.Tokenizer=Fa;Se.Hooks=Rs;Se.parse=Se;var h$=Se.options,f$=Se.setOptions,g$=Se.use,m$=Se.walkTokens,v$=Se.parseInline;var y$=Ht.parse,b$=Dt.lex;function Xm(r,e,t){if(e){let n=r.getState().items.find(i=>i.config.id===e);if(n)return n}if(t){let n=r.findByQuestion(t);if(n)return n}throw new Error("FAQ item not found")}async function aS(r,e,t){let n=Xm(t,r.itemId,r.itemQuestion),{id:i}=n.config;r.expand!==!1&&t.expand(i);let s=document.querySelector(`[data-faq-item-id="${i}"]`);return s&&s.scrollIntoView({behavior:r.behavior??"smooth"}),e.publishEvent("faq:scroll_to",{itemId:i}),{cleanup:()=>{}}}async function lS(r,e,t){let n=Xm(t,r.itemId,r.itemQuestion),{id:i}=n.config,s=r.state??"toggle",o;switch(s){case"open":t.expand(i),o="open";break;case"closed":t.collapse(i),o="closed";break;default:{let a=t.getState().expandedItems.has(i);t.toggle(i),o=a?"closed":"open";break}}return e.publishEvent("faq:toggle",{itemId:i,newState:o}),{cleanup:()=>{}}}async function cS(r,e,t){switch(r.operation){case"add":{let n=r.items??[],i=r.position==="prepend"?"prepend":"append";t.addItems(n,i);break}case"remove":{if(!r.itemId)throw new Error("FAQ item not found");if(!t.getState().items.some(i=>i.config.id===r.itemId))throw new Error("FAQ item not found");t.removeItem(r.itemId);break}case"reorder":{let n=r.order??[];t.reorderItems(n);break}case"replace":{let n=r.items??[];t.replaceItems(n);break}}return e.publishEvent("faq:update",{operation:r.operation}),{cleanup:()=>{}}}var uS=[{kind:"faq:scroll_to",executor:aS},{kind:"faq:toggle_item",executor:lS},{kind:"faq:update",executor:cS}],rt={container:{fontFamily:"var(--sc-font-family, system-ui, -apple-system, sans-serif)",maxWidth:"800px",margin:"0 auto"},searchWrapper:{marginBottom:"8px"},searchInput:{width:"100%",padding:"12px 16px",borderRadius:"8px",fontSize:"14px",outline:"none",transition:"border-color 0.15s ease",backgroundColor:"var(--sc-content-search-background)",color:"var(--sc-content-search-color)"},accordion:{display:"flex",flexDirection:"column",gap:"var(--sc-content-item-gap, 6px)"},item:{borderRadius:"var(--sc-content-border-radius, 8px)",overflow:"hidden",transition:"box-shadow 0.15s ease"},question:{width:"100%",padding:"var(--sc-content-item-padding, 12px 16px)",display:"flex",alignItems:"center",justifyContent:"space-between",border:"none",cursor:"pointer",fontSize:"var(--sc-content-item-font-size, 15px)",fontWeight:500,textAlign:"left",transition:"background-color 0.15s ease"},chevron:{fontSize:"20px",transition:"transform 0.2s ease",color:"var(--sc-content-chevron-color, currentColor)"},answer:{padding:"var(--sc-content-body-padding, 0 16px 12px 16px)",fontSize:"var(--sc-content-body-font-size, 14px)",lineHeight:1.6,overflow:"hidden",transition:"max-height 0.2s ease, padding 0.2s ease"},category:{display:"inline-block",fontSize:"11px",fontWeight:600,textTransform:"uppercase",letterSpacing:"0.05em",padding:"4px 8px",borderRadius:"4px",marginBottom:"8px"},categoryHeader:{fontSize:"var(--sc-content-category-font-size, 12px)",fontWeight:700,textTransform:"uppercase",letterSpacing:"0.05em",padding:"var(--sc-content-category-padding, 8px 4px 4px 4px)",marginTop:"var(--sc-content-category-gap, 4px)"},feedback:{display:"flex",alignItems:"center",gap:"8px",marginTop:"12px",paddingTop:"10px",borderTop:"1px solid rgba(0, 0, 0, 0.08)",fontSize:"13px"},feedbackButton:{background:"none",border:"1px solid transparent",cursor:"pointer",fontSize:"16px",padding:"4px 8px",borderRadius:"4px",transition:"background-color 0.15s ease, border-color 0.15s ease"},feedbackButtonSelected:{borderColor:"rgba(0, 0, 0, 0.2)",backgroundColor:"rgba(0, 0, 0, 0.04)"},emptyState:{textAlign:"center",padding:"48px 24px",fontSize:"14px"},noResults:{textAlign:"center",padding:"32px 16px",fontSize:"14px"}},Tu={light:{container:{backgroundColor:"transparent",color:"inherit"},searchInput:{border:`1px solid ${M[11]}`},item:{backgroundColor:"var(--sc-content-background)",borderTop:"var(--sc-content-border)",borderRight:"var(--sc-content-border)",borderBottom:"var(--sc-content-border)",borderLeft:"var(--sc-content-border)"},itemExpanded:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.08)"},question:{backgroundColor:"transparent",color:"var(--sc-content-text-color)"},questionHover:{backgroundColor:"var(--sc-content-background-hover)"},answer:{color:"var(--sc-content-text-secondary-color)"},category:{backgroundColor:Ft[8],color:Ft[2]},categoryHeader:{color:M[7]},emptyState:{color:M[8]},feedbackPrompt:{color:M[7]}},dark:{container:{backgroundColor:"transparent",color:"inherit"},searchInput:{border:`1px solid ${M[5]}`},item:{backgroundColor:"var(--sc-content-background)",borderTop:"var(--sc-content-border)",borderRight:"var(--sc-content-border)",borderBottom:"var(--sc-content-border)",borderLeft:"var(--sc-content-border)"},itemExpanded:{boxShadow:"0 4px 12px rgba(0, 0, 0, 0.15)"},question:{backgroundColor:"transparent",color:"var(--sc-content-text-color)"},questionHover:{backgroundColor:"var(--sc-content-background-hover)"},answer:{color:"var(--sc-content-text-secondary-color)"},category:{backgroundColor:Ft[0],color:Ft[6]},categoryHeader:{color:M[8]},emptyState:{color:M[7]},feedbackPrompt:{color:M[8]}}};var Ym=new Au({async:!1,gfm:!0,breaks:!0});function dS(r){return typeof r=="string"?r:r.type==="rich"?r.html:r.content}function pS(r){return typeof r=="string"?Ym.parse(r):r.type==="rich"?r.html:Ym.parse(r.content)}function hS(r){return r?r===!0?{style:"thumbs"}:r:null}function fS(r){return r.prompt??"Was this helpful?"}function gS(r){return r&&r!=="auto"?r:typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var Jm=class extends be{constructor(){super(...arguments),this.faqConfig={expandBehavior:"single",searchable:!1,theme:"auto",actions:[]},this.runtime=null,this.instanceId="faq-widget",this._expandedIds=new Set,this._highlightId=null,this._searchQuery="",this._feedbackState=new Map,this._hoveredId=null,this._unsubContext=null,this._unsubAccumulator=null,this._unsubCta=null,this._unsubDeepLink=null,this._unsubSessionMetrics=null,this._highlightTimer=null}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._subscribeAll()}disconnectedCallback(){super.disconnectedCallback(),this._unsubscribeAll(),this._highlightTimer!==null&&(clearTimeout(this._highlightTimer),this._highlightTimer=null)}updated(r){r.has("runtime")&&(this._unsubscribeAll(),this._subscribeAll())}_subscribeAll(){if(this.runtime){if(this._unsubContext=this.runtime.context.subscribe(()=>{this.requestUpdate()}),this.runtime.accumulator?.subscribe&&(this._unsubAccumulator=this.runtime.accumulator.subscribe(()=>{this.requestUpdate()})),this.runtime.sessionMetrics?.subscribe&&(this._unsubSessionMetrics=this.runtime.sessionMetrics.subscribe(()=>{this.requestUpdate()})),this.runtime.events.subscribe){if(this.runtime.events.getRecent){let e=this.runtime.events.getRecent({patterns:["^action\\.tooltip_cta_clicked$","^action\\.modal_cta_clicked$"]},10).filter(t=>{let n=t.props?.actionId;return typeof n=="string"&&n.startsWith("faq:open:")}).pop();if(e&&Date.now()-e.ts<1e4){let t=e.props.actionId.replace("faq:open:","");this._expandedIds=new Set([t]),requestAnimationFrame(()=>{let n=document.querySelector(`[data-faq-item-id="${t}"]`);n&&n.scrollIntoView({behavior:"smooth",block:"center"})})}}this._unsubCta=this.runtime.events.subscribe({patterns:["^action\\.tooltip_cta_clicked$","^action\\.modal_cta_clicked$"]},r=>{let e=r.props?.actionId;if(typeof e!="string"||!e.startsWith("faq:open:"))return;let t=e.replace("faq:open:","");this._expandedIds=new Set([t]),requestAnimationFrame(()=>{let n=document.querySelector(`[data-faq-item-id="${t}"]`);n&&n.scrollIntoView({behavior:"smooth",block:"center"})}),this.runtime?.events.publish("canvas.requestOpen")})}if(this.runtime.events.subscribe){let r=e=>{let t=e.props?.tileId,n=e.props?.itemId;t===this.instanceId&&n&&(this._expandedIds=new Set([n]),this._highlightId=n,this._highlightTimer!==null&&clearTimeout(this._highlightTimer),this._highlightTimer=setTimeout(()=>{this._highlightId=null,this._highlightTimer=null},1500),requestAnimationFrame(()=>{let i=document.querySelector(`[data-faq-item-id="${n}"]`);i&&i.scrollIntoView({behavior:"smooth",block:"center"})}))};if(this.runtime.events.getRecent){let t=this.runtime.events.getRecent({names:["notification.deep_link"]},5).filter(n=>n.props?.tileId===this.instanceId&&n.props?.itemId).pop();t&&Date.now()-t.ts<1e4&&r(t)}this._unsubDeepLink=this.runtime.events.subscribe({names:["notification.deep_link"]},r)}}}_unsubscribeAll(){this._unsubContext?.(),this._unsubAccumulator?.(),this._unsubSessionMetrics?.(),this._unsubCta?.(),this._unsubDeepLink?.(),this._unsubContext=null,this._unsubAccumulator=null,this._unsubSessionMetrics=null,this._unsubCta=null,this._unsubDeepLink=null}_handleToggle(r){let e=this._expandedIds,t;this.faqConfig.expandBehavior==="single"?t=e.has(r)?new Set:new Set([r]):(t=new Set(e),e.has(r)?t.delete(r):t.add(r));let n=!e.has(r);this._expandedIds=t,this.runtime?.events.publish("faq:toggled",{instanceId:this.instanceId,questionId:r,expanded:n,timestamp:Date.now()})}_handleFeedback(r,e,t){let n=new Map(this._feedbackState);n.set(r,t),this._feedbackState=n,this.runtime?.events.publish("faq:feedback",{itemId:r,question:e,value:t})}_visibleQuestions(){return(this.faqConfig.actions??[]).filter(r=>!r.triggerWhen||!this.runtime?!0:this.runtime.evaluateSync(r.triggerWhen).value)}_orderedQuestions(r){return this.faqConfig.ordering==="priority"?[...r].sort((e,t)=>(t.config.priority??0)-(e.config.priority??0)):r}_filteredQuestions(r){let e=this._searchQuery.trim().toLowerCase();return!this.faqConfig.searchable||!e?r:r.filter(t=>t.config.question.toLowerCase().includes(e)||dS(t.config.answer).toLowerCase().includes(e)||t.config.category?.toLowerCase().includes(e))}_categoryGroups(r){let e=new Map;for(let t of r){let n=t.config.category;e.has(n)||e.set(n,[]),e.get(n).push(t)}return e}_renderAnswer(r){let e=pS(r);return N`<div style="margin:0" data-faq-markdown="">${Pa(e)}</div>`}_renderFeedback(r,e,t,n){let i=Tu[n],s={...rt.feedback,...i.feedbackPrompt};return N`
205
+ <div style=${T(s)}>
206
+ <span>${fS(e)}</span>
207
207
  <button
208
208
  type="button"
209
- style=${R({...rt.feedbackButton,...t==="up"?rt.feedbackButtonSelected:{}})}
209
+ style=${T({...rt.feedbackButton,...t==="up"?rt.feedbackButtonSelected:{}})}
210
210
  aria-label="Thumbs up"
211
211
  @click=${()=>this._handleFeedback(r.config.id,r.config.question,"up")}
212
212
  >\uD83D\uDC4D</button>
213
213
  <button
214
214
  type="button"
215
- style=${R({...rt.feedbackButton,...t==="down"?rt.feedbackButtonSelected:{}})}
215
+ style=${T({...rt.feedbackButton,...t==="down"?rt.feedbackButtonSelected:{}})}
216
216
  aria-label="Thumbs down"
217
217
  @click=${()=>this._handleFeedback(r.config.id,r.config.question,"down")}
218
218
  >\uD83D\uDC4E</button>
219
219
  </div>
220
- `}_renderItem(r,e,t,n){let i=yu[t],s=this._expandedIds.has(r.config.id),o=this._highlightId===r.config.id,a=this._hoveredId===r.config.id,l={...rt.item,...i.item,...s?i.itemExpanded:{},...o?{boxShadow:`0 0 0 2px ${Ft[4]}, 0 0 12px rgba(106, 89, 206, 0.4)`,transition:"box-shadow 0.3s ease"}:{},...e?{}:{borderBottom:"var(--sc-content-item-divider, none)"}},c={...rt.question,...i.question,...a?i.questionHover:{}},u={...rt.chevron,transform:s?"rotate(90deg)":"rotate(0deg)"},p={...rt.answer,...i.answer,maxHeight:s?"500px":"0",paddingBottom:s?"16px":"0"};return L`
220
+ `}_renderItem(r,e,t,n){let i=Tu[t],s=this._expandedIds.has(r.config.id),o=this._highlightId===r.config.id,a=this._hoveredId===r.config.id,l={...rt.item,...i.item,...s?i.itemExpanded:{},...o?{boxShadow:`0 0 0 2px ${Ft[4]}, 0 0 12px rgba(106, 89, 206, 0.4)`,transition:"box-shadow 0.3s ease"}:{},...e?{}:{borderBottom:"var(--sc-content-item-divider, none)"}},c={...rt.question,...i.question,...a?i.questionHover:{}},u={...rt.chevron,transform:s?"rotate(90deg)":"rotate(0deg)"},p={...rt.answer,...i.answer,maxHeight:s?"500px":"0",paddingBottom:s?"16px":"0"};return N`
221
221
  <div
222
- style=${R(l)}
222
+ style=${T(l)}
223
223
  data-faq-item-id=${r.config.id}
224
224
  >
225
225
  <button
226
226
  type="button"
227
- style=${R(c)}
227
+ style=${T(c)}
228
228
  aria-expanded=${s}
229
229
  @click=${()=>this._handleToggle(r.config.id)}
230
230
  @mouseenter=${()=>{this._hoveredId=r.config.id}}
231
231
  @mouseleave=${()=>{this._hoveredId=null}}
232
232
  >
233
233
  <span>${r.config.question}</span>
234
- <span style=${R(u)}>\u203A</span>
234
+ <span style=${T(u)}>\u203A</span>
235
235
  </button>
236
236
 
237
237
  <div
238
- style=${R(p)}
238
+ style=${T(p)}
239
239
  aria-hidden=${!s}
240
240
  >
241
241
  ${this._renderAnswer(r.config.answer)}
242
- ${s&&n?this._renderFeedback(r,n,this._feedbackState.get(r.config.id),t):J}
242
+ ${s&&n?this._renderFeedback(r,n,this._feedbackState.get(r.config.id),t):ee}
243
243
  </div>
244
244
  </div>
245
- `}_renderItems(r,e,t){return r.map((n,i)=>this._renderItem(n,i===r.length-1,e,t))}render(){let r=S1(this.faqConfig.theme),e=yu[r],t=x1(this.faqConfig.feedback),n=this._visibleQuestions(),i=this._orderedQuestions(n),s=this._filteredQuestions(i),a=s.some(h=>h.config.category)?this._categoryGroups(s):null,l={...rt.container,...e.container},c={...rt.emptyState,...e.emptyState},u={...rt.categoryHeader,...e.categoryHeader},p={...rt.searchInput,...e.searchInput};return n.length===0?L`
245
+ `}_renderItems(r,e,t){return r.map((n,i)=>this._renderItem(n,i===r.length-1,e,t))}render(){let r=gS(this.faqConfig.theme),e=Tu[r],t=hS(this.faqConfig.feedback),n=this._visibleQuestions(),i=this._orderedQuestions(n),s=this._filteredQuestions(i),a=s.some(h=>h.config.category)?this._categoryGroups(s):null,l={...rt.container,...e.container},c={...rt.emptyState,...e.emptyState},u={...rt.categoryHeader,...e.categoryHeader},p={...rt.searchInput,...e.searchInput};return n.length===0?N`
246
246
  <div
247
- style=${R(l)}
247
+ style=${T(l)}
248
248
  data-adaptive-id=${this.instanceId}
249
249
  data-adaptive-type="adaptive-faq"
250
250
  >
251
- <div style=${R(c)}>
251
+ <div style=${T(c)}>
252
252
  You're all set for now! We'll surface answers here when they're relevant to what
253
253
  you're doing.
254
254
  </div>
255
255
  </div>
256
- `:L`
256
+ `:N`
257
257
  <div
258
- style=${R(l)}
258
+ style=${T(l)}
259
259
  data-adaptive-id=${this.instanceId}
260
260
  data-adaptive-type="adaptive-faq"
261
261
  >
262
- ${this.faqConfig.searchable?L`
263
- <div style=${R(rt.searchWrapper)}>
262
+ ${this.faqConfig.searchable?N`
263
+ <div style=${T(rt.searchWrapper)}>
264
264
  <style>
265
265
  [data-adaptive-id="${this.instanceId}"] input::placeholder {
266
266
  color: var(--sc-content-search-color, inherit);
@@ -271,35 +271,35 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
271
271
  type="text"
272
272
  placeholder="Search questions..."
273
273
  .value=${this._searchQuery}
274
- style=${R(p)}
274
+ style=${T(p)}
275
275
  @input=${h=>{this._searchQuery=h.target.value}}
276
276
  />
277
277
  </div>
278
- `:J}
278
+ `:ee}
279
279
 
280
- <div style=${R(rt.accordion)}>
281
- ${a?Array.from(a.entries()).map(([h,f])=>L`
282
- ${h?L`
280
+ <div style=${T(rt.accordion)}>
281
+ ${a?Array.from(a.entries()).map(([h,f])=>N`
282
+ ${h?N`
283
283
  <div
284
- style=${R(u)}
284
+ style=${T(u)}
285
285
  data-category-header=${h}
286
286
  >
287
287
  ${h}
288
288
  </div>
289
- `:J}
289
+ `:ee}
290
290
  ${this._renderItems(f,r,t)}
291
291
  `):this._renderItems(s,r,t)}
292
292
  </div>
293
293
 
294
- ${this.faqConfig.searchable&&s.length===0&&this._searchQuery?L`
294
+ ${this.faqConfig.searchable&&s.length===0&&this._searchQuery?N`
295
295
  <div
296
- style=${R({...rt.noResults,...e.emptyState})}
296
+ style=${T({...rt.noResults,...e.emptyState})}
297
297
  >
298
298
  No questions found matching &quot;${this._searchQuery}&quot;
299
299
  </div>
300
- `:J}
300
+ `:ee}
301
301
  </div>
302
- `}};Em.properties={faqConfig:{attribute:!1},runtime:{attribute:!1},instanceId:{type:String},_expandedIds:{state:!0},_highlightId:{state:!0},_searchQuery:{state:!0},_feedbackState:{state:!0},_hoveredId:{state:!0}};customElements.get("syntro-faq-accordion")||customElements.define("syntro-faq-accordion",Em);var k1={mount(r,e){let{runtime:t,instanceId:n="faq-widget",...i}=e??{expandBehavior:"single",searchable:!1,theme:"auto",actions:[]},s=document.createElement("syntro-faq-accordion");return Object.assign(s,{faqConfig:i,runtime:t??null,instanceId:n}),r.appendChild(s),()=>s.remove()}},Cm={id:"adaptive-faq",version:"2.0.0",name:"FAQ Accordion",description:"Collapsible Q&A accordion with actions, rich content, feedback, and personalization",executors:y1,widgets:[{id:"adaptive-faq:accordion",component:k1,metadata:{name:"FAQ Accordion",description:"Collapsible Q&A accordion with search, categories, and feedback",icon:"\u2753",subtitle:"Curated just for you."}}],notifyWatchers(r){return(r.actions??[]).filter(t=>t.notify&&t.triggerWhen).map(t=>({id:`faq:${t.config.id}`,strategy:t.triggerWhen,eventName:"faq:question_revealed",eventProps:{questionId:t.config.id,question:t.config.question,title:t.notify.title,body:t.notify.body,icon:t.notify.icon}}))}};var d={};ex(d,{BRAND:()=>Y1,DIRTY:()=>kn,EMPTY_PATH:()=>R1,INVALID:()=>ne,NEVER:()=>PS,OK:()=>nt,ParseStatus:()=>Ke,Schema:()=>ue,ZodAny:()=>Ur,ZodArray:()=>br,ZodBigInt:()=>Cn,ZodBoolean:()=>An,ZodBranded:()=>Rs,ZodCatch:()=>Dn,ZodDate:()=>Rn,ZodDefault:()=>Fn,ZodDiscriminatedUnion:()=>Fa,ZodEffects:()=>At,ZodEnum:()=>Nn,ZodError:()=>gt,ZodFirstPartyTypeKind:()=>ie,ZodFunction:()=>Ha,ZodIntersection:()=>Mn,ZodIssueCode:()=>I,ZodLazy:()=>On,ZodLiteral:()=>Pn,ZodMap:()=>vi,ZodNaN:()=>bi,ZodNativeEnum:()=>Ln,ZodNever:()=>Bt,ZodNull:()=>In,ZodNullable:()=>tr,ZodNumber:()=>En,ZodObject:()=>mt,ZodOptional:()=>Et,ZodParsedType:()=>z,ZodPipeline:()=>Ts,ZodPromise:()=>Wr,ZodReadonly:()=>Hn,ZodRecord:()=>Da,ZodSchema:()=>ue,ZodSet:()=>yi,ZodString:()=>jr,ZodSymbol:()=>gi,ZodTransformer:()=>At,ZodTuple:()=>er,ZodType:()=>ue,ZodUndefined:()=>Tn,ZodUnion:()=>$n,ZodUnknown:()=>yr,ZodVoid:()=>mi,addIssueToContext:()=>D,any:()=>sS,array:()=>cS,bigint:()=>eS,boolean:()=>Fm,coerce:()=>OS,custom:()=>Pm,date:()=>tS,datetimeRegex:()=>Mm,defaultErrorMap:()=>mr,discriminatedUnion:()=>hS,effect:()=>ES,enum:()=>wS,function:()=>bS,getErrorMap:()=>pi,getParsedType:()=>Qt,instanceof:()=>J1,intersection:()=>fS,isAborted:()=>Na,isAsync:()=>hi,isDirty:()=>La,isValid:()=>Vr,late:()=>X1,lazy:()=>_S,literal:()=>xS,makeIssue:()=>As,map:()=>vS,nan:()=>Q1,nativeEnum:()=>SS,never:()=>aS,null:()=>iS,nullable:()=>AS,number:()=>Lm,object:()=>uS,objectUtil:()=>bu,oboolean:()=>MS,onumber:()=>$S,optional:()=>CS,ostring:()=>IS,pipeline:()=>TS,preprocess:()=>RS,promise:()=>kS,quotelessJson:()=>E1,record:()=>mS,set:()=>yS,setErrorMap:()=>A1,strictObject:()=>dS,string:()=>Nm,symbol:()=>rS,transformer:()=>ES,tuple:()=>gS,undefined:()=>nS,union:()=>pS,unknown:()=>oS,util:()=>pe,void:()=>lS});var pe;(function(r){r.assertEqual=i=>{};function e(i){}r.assertIs=e;function t(i){throw new Error}r.assertNever=t,r.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},r.getValidEnumValues=i=>{let s=r.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return r.objectValues(o)},r.objectValues=i=>r.objectKeys(i).map(function(s){return i[s]}),r.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},r.find=(i,s)=>{for(let o of i)if(s(o))return o},r.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}r.joinValues=n,r.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(pe||(pe={}));var bu;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(bu||(bu={}));var z=pe.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Qt=r=>{switch(typeof r){case"undefined":return z.undefined;case"string":return z.string;case"number":return Number.isNaN(r)?z.nan:z.number;case"boolean":return z.boolean;case"function":return z.function;case"bigint":return z.bigint;case"symbol":return z.symbol;case"object":return Array.isArray(r)?z.array:r===null?z.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?z.promise:typeof Map<"u"&&r instanceof Map?z.map:typeof Set<"u"&&r instanceof Set?z.set:typeof Date<"u"&&r instanceof Date?z.date:z.object;default:return z.unknown}};var I=pe.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),E1=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:"),gt=class r extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){let t=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(t(o));else{let a=n,l=0;for(;l<o.path.length;){let c=o.path[l];l===o.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(t(o))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return i(this),n}static assert(e){if(!(e instanceof r))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,pe.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){let t={},n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];t[s]=t[s]||[],t[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};gt.create=r=>new gt(r);var C1=(r,e)=>{let t;switch(r.code){case I.invalid_type:r.received===z.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case I.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,pe.jsonStringifyReplacer)}`;break;case I.unrecognized_keys:t=`Unrecognized key(s) in object: ${pe.joinValues(r.keys,", ")}`;break;case I.invalid_union:t="Invalid input";break;case I.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${pe.joinValues(r.options)}`;break;case I.invalid_enum_value:t=`Invalid enum value. Expected ${pe.joinValues(r.options)}, received '${r.received}'`;break;case I.invalid_arguments:t="Invalid function arguments";break;case I.invalid_return_type:t="Invalid function return type";break;case I.invalid_date:t="Invalid date";break;case I.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:pe.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case I.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="bigint"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case I.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case I.custom:t="Invalid input";break;case I.invalid_intersection_types:t="Intersection results could not be merged";break;case I.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case I.not_finite:t="Number must be finite";break;default:t=e.defaultError,pe.assertNever(r)}return{message:t}},mr=C1;var Am=mr;function A1(r){Am=r}function pi(){return Am}var As=r=>{let{data:e,path:t,errorMaps:n,issueData:i}=r,s=[...t,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",l=n.filter(c=>!!c).slice().reverse();for(let c of l)a=c(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}},R1=[];function D(r,e){let t=pi(),n=As({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===mr?void 0:mr].filter(i=>!!i)});r.common.issues.push(n)}var Ke=class r{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){let n=[];for(let i of t){if(i.status==="aborted")return ne;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){let n=[];for(let i of t){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return r.mergeObjectSync(e,n)}static mergeObjectSync(e,t){let n={};for(let i of t){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return ne;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},ne=Object.freeze({status:"aborted"}),kn=r=>({status:"dirty",value:r}),nt=r=>({status:"valid",value:r}),Na=r=>r.status==="aborted",La=r=>r.status==="dirty",Vr=r=>r.status==="valid",hi=r=>typeof Promise<"u"&&r instanceof Promise;var X;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e?.message})(X||(X={}));var Ct=class{constructor(e,t,n,i){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Rm=(r,e)=>{if(Vr(e))return{success:!0,data:e.value};if(!r.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let t=new gt(r.common.issues);return this._error=t,this._error}}};function ce(r){if(!r)return{};let{errorMap:e,invalid_type_error:t,required_error:n,description:i}=r;if(e&&(t||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:l}=r;return o.code==="invalid_enum_value"?{message:l??a.defaultError}:typeof a.data>"u"?{message:l??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:l??t??a.defaultError}},description:i}}var ue=class{get description(){return this._def.description}_getType(e){return Qt(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Qt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ke,ctx:{common:e.parent.common,data:e.data,parsedType:Qt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(hi(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Qt(e)},i=this._parseSync({data:e,path:n.path,parent:n});return Rm(n,i)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Qt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:t});return Vr(n)?{value:n.value}:{issues:t.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(n=>Vr(n)?{value:n.value}:{issues:t.common.issues})}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Qt(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(hi(i)?i:Promise.resolve(i));return Rm(n,s)}refine(e,t){let n=i=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(i):t;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:I.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(l=>l?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof t=="function"?t(n,i):t),!1))}_refinement(e){return new At({schema:this,typeName:ie.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:t=>this["~validate"](t)}}optional(){return Et.create(this,this._def)}nullable(){return tr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return br.create(this)}promise(){return Wr.create(this,this._def)}or(e){return $n.create([this,e],this._def)}and(e){return Mn.create(this,e,this._def)}transform(e){return new At({...ce(this._def),schema:this,typeName:ie.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let t=typeof e=="function"?e:()=>e;return new Fn({...ce(this._def),innerType:this,defaultValue:t,typeName:ie.ZodDefault})}brand(){return new Rs({typeName:ie.ZodBranded,type:this,...ce(this._def)})}catch(e){let t=typeof e=="function"?e:()=>e;return new Dn({...ce(this._def),innerType:this,catchValue:t,typeName:ie.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Ts.create(this,e)}readonly(){return Hn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},T1=/^c[^\s-]{8,}$/i,I1=/^[0-9a-z]+$/,$1=/^[0-9A-HJKMNP-TV-Z]{26}$/i,M1=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,O1=/^[a-z0-9_-]{21}$/i,P1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,N1=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,L1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,F1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",_u,D1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,H1=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,B1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,V1=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,j1=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,U1=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Im="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",W1=new RegExp(`^${Im}$`);function $m(r){let e="[0-5]\\d";r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`);let t=r.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function z1(r){return new RegExp(`^${$m(r)}$`)}function Mm(r){let e=`${Im}T${$m(r)}`,t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function q1(r,e){return!!((e==="v4"||!e)&&D1.test(r)||(e==="v6"||!e)&&B1.test(r))}function Z1(r,e){if(!P1.test(r))return!1;try{let[t]=r.split(".");if(!t)return!1;let n=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function G1(r,e){return!!((e==="v4"||!e)&&H1.test(r)||(e==="v6"||!e)&&V1.test(r))}var jr=class r extends ue{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==z.string){let s=this._getOrReturnCtx(e);return D(s,{code:I.invalid_type,expected:z.string,received:s.parsedType}),ne}let n=new Ke,i;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:I.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:I.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.length<s.value;(o||a)&&(i=this._getOrReturnCtx(e,i),o?D(i,{code:I.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&D(i,{code:I.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")L1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"email",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")_u||(_u=new RegExp(F1,"u")),_u.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"emoji",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")M1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"uuid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")O1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"nanoid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")T1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"cuid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")I1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"cuid2",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")$1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"ulid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{i=this._getOrReturnCtx(e,i),D(i,{validation:"url",code:I.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"regex",code:I.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Mm(s).test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?W1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?z1(s).test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?N1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"duration",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?q1(e.data,s.version)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"ip",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Z1(e.data,s.alg)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"jwt",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?G1(e.data,s.version)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"cidr",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?j1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"base64",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?U1.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"base64url",code:I.invalid_string,message:s.message}),n.dirty()):pe.assertNever(s);return{status:n.value,value:e.data}}_regex(e,t,n){return this.refinement(i=>e.test(i),{validation:t,code:I.invalid_string,...X.errToObj(n)})}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...X.errToObj(e)})}url(e){return this._addCheck({kind:"url",...X.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...X.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...X.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...X.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...X.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...X.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...X.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...X.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...X.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...X.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...X.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...X.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...X.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...X.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...X.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...X.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t?.position,...X.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...X.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...X.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...X.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...X.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...X.errToObj(t)})}nonempty(e){return this.min(1,X.errToObj(e))}trim(){return new r({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new r({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new r({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};jr.create=r=>new jr({checks:[],typeName:ie.ZodString,coerce:r?.coerce??!1,...ce(r)});function K1(r,e){let t=(r.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=t>n?t:n,s=Number.parseInt(r.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var En=class r extends ue{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==z.number){let s=this._getOrReturnCtx(e);return D(s,{code:I.invalid_type,expected:z.number,received:s.parsedType}),ne}let n,i=new Ke;for(let s of this._def.checks)s.kind==="int"?pe.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),D(n,{code:I.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:I.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:I.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?K1(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),D(n,{code:I.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),D(n,{code:I.not_finite,message:s.message}),i.dirty()):pe.assertNever(s);return{status:i.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,X.toString(t))}gt(e,t){return this.setLimit("min",e,!1,X.toString(t))}lte(e,t){return this.setLimit("max",e,!0,X.toString(t))}lt(e,t){return this.setLimit("max",e,!1,X.toString(t))}setLimit(e,t,n,i){return new r({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:X.toString(i)}]})}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:X.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:X.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:X.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:X.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:X.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:X.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:X.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:X.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:X.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&pe.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(t)&&Number.isFinite(e)}};En.create=r=>new En({checks:[],typeName:ie.ZodNumber,coerce:r?.coerce||!1,...ce(r)});var Cn=class r extends ue{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==z.bigint)return this._getInvalidInput(e);let n,i=new Ke;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:I.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:I.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),D(n,{code:I.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):pe.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return D(t,{code:I.invalid_type,expected:z.bigint,received:t.parsedType}),ne}gte(e,t){return this.setLimit("min",e,!0,X.toString(t))}gt(e,t){return this.setLimit("min",e,!1,X.toString(t))}lte(e,t){return this.setLimit("max",e,!0,X.toString(t))}lt(e,t){return this.setLimit("max",e,!1,X.toString(t))}setLimit(e,t,n,i){return new r({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:X.toString(i)}]})}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:X.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:X.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:X.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:X.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:X.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};Cn.create=r=>new Cn({checks:[],typeName:ie.ZodBigInt,coerce:r?.coerce??!1,...ce(r)});var An=class extends ue{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==z.boolean){let n=this._getOrReturnCtx(e);return D(n,{code:I.invalid_type,expected:z.boolean,received:n.parsedType}),ne}return nt(e.data)}};An.create=r=>new An({typeName:ie.ZodBoolean,coerce:r?.coerce||!1,...ce(r)});var Rn=class r extends ue{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==z.date){let s=this._getOrReturnCtx(e);return D(s,{code:I.invalid_type,expected:z.date,received:s.parsedType}),ne}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return D(s,{code:I.invalid_date}),ne}let n=new Ke,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:I.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:I.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):pe.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:X.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:X.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}};Rn.create=r=>new Rn({checks:[],coerce:r?.coerce||!1,typeName:ie.ZodDate,...ce(r)});var gi=class extends ue{_parse(e){if(this._getType(e)!==z.symbol){let n=this._getOrReturnCtx(e);return D(n,{code:I.invalid_type,expected:z.symbol,received:n.parsedType}),ne}return nt(e.data)}};gi.create=r=>new gi({typeName:ie.ZodSymbol,...ce(r)});var Tn=class extends ue{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return D(n,{code:I.invalid_type,expected:z.undefined,received:n.parsedType}),ne}return nt(e.data)}};Tn.create=r=>new Tn({typeName:ie.ZodUndefined,...ce(r)});var In=class extends ue{_parse(e){if(this._getType(e)!==z.null){let n=this._getOrReturnCtx(e);return D(n,{code:I.invalid_type,expected:z.null,received:n.parsedType}),ne}return nt(e.data)}};In.create=r=>new In({typeName:ie.ZodNull,...ce(r)});var Ur=class extends ue{constructor(){super(...arguments),this._any=!0}_parse(e){return nt(e.data)}};Ur.create=r=>new Ur({typeName:ie.ZodAny,...ce(r)});var yr=class extends ue{constructor(){super(...arguments),this._unknown=!0}_parse(e){return nt(e.data)}};yr.create=r=>new yr({typeName:ie.ZodUnknown,...ce(r)});var Bt=class extends ue{_parse(e){let t=this._getOrReturnCtx(e);return D(t,{code:I.invalid_type,expected:z.never,received:t.parsedType}),ne}};Bt.create=r=>new Bt({typeName:ie.ZodNever,...ce(r)});var mi=class extends ue{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return D(n,{code:I.invalid_type,expected:z.void,received:n.parsedType}),ne}return nt(e.data)}};mi.create=r=>new mi({typeName:ie.ZodVoid,...ce(r)});var br=class r extends ue{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),i=this._def;if(t.parsedType!==z.array)return D(t,{code:I.invalid_type,expected:z.array,received:t.parsedType}),ne;if(i.exactLength!==null){let o=t.data.length>i.exactLength.value,a=t.data.length<i.exactLength.value;(o||a)&&(D(t,{code:o?I.too_big:I.too_small,minimum:a?i.exactLength.value:void 0,maximum:o?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&t.data.length<i.minLength.value&&(D(t,{code:I.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&t.data.length>i.maxLength.value&&(D(t,{code:I.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((o,a)=>i.type._parseAsync(new Ct(t,o,t.path,a)))).then(o=>Ke.mergeArray(n,o));let s=[...t.data].map((o,a)=>i.type._parseSync(new Ct(t,o,t.path,a)));return Ke.mergeArray(n,s)}get element(){return this._def.type}min(e,t){return new r({...this._def,minLength:{value:e,message:X.toString(t)}})}max(e,t){return new r({...this._def,maxLength:{value:e,message:X.toString(t)}})}length(e,t){return new r({...this._def,exactLength:{value:e,message:X.toString(t)}})}nonempty(e){return this.min(1,e)}};br.create=(r,e)=>new br({type:r,minLength:null,maxLength:null,exactLength:null,typeName:ie.ZodArray,...ce(e)});function fi(r){if(r instanceof mt){let e={};for(let t in r.shape){let n=r.shape[t];e[t]=Et.create(fi(n))}return new mt({...r._def,shape:()=>e})}else return r instanceof br?new br({...r._def,type:fi(r.element)}):r instanceof Et?Et.create(fi(r.unwrap())):r instanceof tr?tr.create(fi(r.unwrap())):r instanceof er?er.create(r.items.map(e=>fi(e))):r}var mt=class r extends ue{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=pe.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==z.object){let c=this._getOrReturnCtx(e);return D(c,{code:I.invalid_type,expected:z.object,received:c.parsedType}),ne}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Bt&&this._def.unknownKeys==="strip"))for(let c in i.data)o.includes(c)||a.push(c);let l=[];for(let c of o){let u=s[c],p=i.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new Ct(i,p,i.path,c)),alwaysSet:c in i.data})}if(this._def.catchall instanceof Bt){let c=this._def.unknownKeys;if(c==="passthrough")for(let u of a)l.push({key:{status:"valid",value:u},value:{status:"valid",value:i.data[u]}});else if(c==="strict")a.length>0&&(D(i,{code:I.unrecognized_keys,keys:a}),n.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let u of a){let p=i.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new Ct(i,p,i.path,u)),alwaysSet:u in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let c=[];for(let u of l){let p=await u.key,h=await u.value;c.push({key:p,value:h,alwaysSet:u.alwaysSet})}return c}).then(c=>Ke.mergeObjectSync(n,c)):Ke.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(e){return X.errToObj,new r({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,n)=>{let i=this._def.errorMap?.(t,n).message??n.defaultError;return t.code==="unrecognized_keys"?{message:X.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new r({...this._def,unknownKeys:"strip"})}passthrough(){return new r({...this._def,unknownKeys:"passthrough"})}extend(e){return new r({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new r({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:ie.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new r({...this._def,catchall:e})}pick(e){let t={};for(let n of pe.objectKeys(e))e[n]&&this.shape[n]&&(t[n]=this.shape[n]);return new r({...this._def,shape:()=>t})}omit(e){let t={};for(let n of pe.objectKeys(this.shape))e[n]||(t[n]=this.shape[n]);return new r({...this._def,shape:()=>t})}deepPartial(){return fi(this)}partial(e){let t={};for(let n of pe.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?t[n]=i:t[n]=i.optional()}return new r({...this._def,shape:()=>t})}required(e){let t={};for(let n of pe.objectKeys(this.shape))if(e&&!e[n])t[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Et;)s=s._def.innerType;t[n]=s}return new r({...this._def,shape:()=>t})}keyof(){return Om(pe.objectKeys(this.shape))}};mt.create=(r,e)=>new mt({shape:()=>r,unknownKeys:"strip",catchall:Bt.create(),typeName:ie.ZodObject,...ce(e)});mt.strictCreate=(r,e)=>new mt({shape:()=>r,unknownKeys:"strict",catchall:Bt.create(),typeName:ie.ZodObject,...ce(e)});mt.lazycreate=(r,e)=>new mt({shape:r,unknownKeys:"strip",catchall:Bt.create(),typeName:ie.ZodObject,...ce(e)});var $n=class extends ue{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return t.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new gt(a.ctx.common.issues));return D(t,{code:I.invalid_union,unionErrors:o}),ne}if(t.common.async)return Promise.all(n.map(async s=>{let o={...t,common:{...t.common,issues:[]},parent:null};return{result:await s._parseAsync({data:t.data,path:t.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let l of n){let c={...t,common:{...t.common,issues:[]},parent:null},u=l._parseSync({data:t.data,path:t.path,parent:c});if(u.status==="valid")return u;u.status==="dirty"&&!s&&(s={result:u,ctx:c}),c.common.issues.length&&o.push(c.common.issues)}if(s)return t.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(l=>new gt(l));return D(t,{code:I.invalid_union,unionErrors:a}),ne}}get options(){return this._def.options}};$n.create=(r,e)=>new $n({options:r,typeName:ie.ZodUnion,...ce(e)});var vr=r=>r instanceof On?vr(r.schema):r instanceof At?vr(r.innerType()):r instanceof Pn?[r.value]:r instanceof Nn?r.options:r instanceof Ln?pe.objectValues(r.enum):r instanceof Fn?vr(r._def.innerType):r instanceof Tn?[void 0]:r instanceof In?[null]:r instanceof Et?[void 0,...vr(r.unwrap())]:r instanceof tr?[null,...vr(r.unwrap())]:r instanceof Rs||r instanceof Hn?vr(r.unwrap()):r instanceof Dn?vr(r._def.innerType):[],Fa=class r extends ue{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.object)return D(t,{code:I.invalid_type,expected:z.object,received:t.parsedType}),ne;let n=this.discriminator,i=t.data[n],s=this.optionsMap.get(i);return s?t.common.async?s._parseAsync({data:t.data,path:t.path,parent:t}):s._parseSync({data:t.data,path:t.path,parent:t}):(D(t,{code:I.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),ne)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,n){let i=new Map;for(let s of t){let o=vr(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new r({typeName:ie.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:i,...ce(n)})}};function xu(r,e){let t=Qt(r),n=Qt(e);if(r===e)return{valid:!0,data:r};if(t===z.object&&n===z.object){let i=pe.objectKeys(e),s=pe.objectKeys(r).filter(a=>i.indexOf(a)!==-1),o={...r,...e};for(let a of s){let l=xu(r[a],e[a]);if(!l.valid)return{valid:!1};o[a]=l.data}return{valid:!0,data:o}}else if(t===z.array&&n===z.array){if(r.length!==e.length)return{valid:!1};let i=[];for(let s=0;s<r.length;s++){let o=r[s],a=e[s],l=xu(o,a);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return t===z.date&&n===z.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}var Mn=class extends ue{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),i=(s,o)=>{if(Na(s)||Na(o))return ne;let a=xu(s.value,o.value);return a.valid?((La(s)||La(o))&&t.dirty(),{status:t.value,value:a.data}):(D(n,{code:I.invalid_intersection_types}),ne)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};Mn.create=(r,e,t)=>new Mn({left:r,right:e,typeName:ie.ZodIntersection,...ce(t)});var er=class r extends ue{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.array)return D(n,{code:I.invalid_type,expected:z.array,received:n.parsedType}),ne;if(n.data.length<this._def.items.length)return D(n,{code:I.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ne;!this._def.rest&&n.data.length>this._def.items.length&&(D(n,{code:I.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let s=[...n.data].map((o,a)=>{let l=this._def.items[a]||this._def.rest;return l?l._parse(new Ct(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>Ke.mergeArray(t,o)):Ke.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new r({...this._def,rest:e})}};er.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new er({items:r,typeName:ie.ZodTuple,rest:null,...ce(e)})};var Da=class r extends ue{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.object)return D(n,{code:I.invalid_type,expected:z.object,received:n.parsedType}),ne;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new Ct(n,a,n.path,a)),value:o._parse(new Ct(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ke.mergeObjectAsync(t,i):Ke.mergeObjectSync(t,i)}get element(){return this._def.valueType}static create(e,t,n){return t instanceof ue?new r({keyType:e,valueType:t,typeName:ie.ZodRecord,...ce(n)}):new r({keyType:jr.create(),valueType:e,typeName:ie.ZodRecord,...ce(t)})}},vi=class extends ue{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.map)return D(n,{code:I.invalid_type,expected:z.map,received:n.parsedType}),ne;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,l],c)=>({key:i._parse(new Ct(n,a,n.path,[c,"key"])),value:s._parse(new Ct(n,l,n.path,[c,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let l of o){let c=await l.key,u=await l.value;if(c.status==="aborted"||u.status==="aborted")return ne;(c.status==="dirty"||u.status==="dirty")&&t.dirty(),a.set(c.value,u.value)}return{status:t.value,value:a}})}else{let a=new Map;for(let l of o){let c=l.key,u=l.value;if(c.status==="aborted"||u.status==="aborted")return ne;(c.status==="dirty"||u.status==="dirty")&&t.dirty(),a.set(c.value,u.value)}return{status:t.value,value:a}}}};vi.create=(r,e,t)=>new vi({valueType:e,keyType:r,typeName:ie.ZodMap,...ce(t)});var yi=class r extends ue{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.set)return D(n,{code:I.invalid_type,expected:z.set,received:n.parsedType}),ne;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(D(n,{code:I.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),t.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(D(n,{code:I.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),t.dirty());let s=this._def.valueType;function o(l){let c=new Set;for(let u of l){if(u.status==="aborted")return ne;u.status==="dirty"&&t.dirty(),c.add(u.value)}return{status:t.value,value:c}}let a=[...n.data.values()].map((l,c)=>s._parse(new Ct(n,l,n.path,c)));return n.common.async?Promise.all(a).then(l=>o(l)):o(a)}min(e,t){return new r({...this._def,minSize:{value:e,message:X.toString(t)}})}max(e,t){return new r({...this._def,maxSize:{value:e,message:X.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};yi.create=(r,e)=>new yi({valueType:r,minSize:null,maxSize:null,typeName:ie.ZodSet,...ce(e)});var Ha=class r extends ue{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.function)return D(t,{code:I.invalid_type,expected:z.function,received:t.parsedType}),ne;function n(a,l){return As({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,pi(),mr].filter(c=>!!c),issueData:{code:I.invalid_arguments,argumentsError:l}})}function i(a,l){return As({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,pi(),mr].filter(c=>!!c),issueData:{code:I.invalid_return_type,returnTypeError:l}})}let s={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof Wr){let a=this;return nt(async function(...l){let c=new gt([]),u=await a._def.args.parseAsync(l,s).catch(f=>{throw c.addIssue(n(l,f)),c}),p=await Reflect.apply(o,this,u);return await a._def.returns._def.type.parseAsync(p,s).catch(f=>{throw c.addIssue(i(p,f)),c})})}else{let a=this;return nt(function(...l){let c=a._def.args.safeParse(l,s);if(!c.success)throw new gt([n(l,c.error)]);let u=Reflect.apply(o,this,c.data),p=a._def.returns.safeParse(u,s);if(!p.success)throw new gt([i(u,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new r({...this._def,args:er.create(e).rest(yr.create())})}returns(e){return new r({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,n){return new r({args:e||er.create([]).rest(yr.create()),returns:t||yr.create(),typeName:ie.ZodFunction,...ce(n)})}},On=class extends ue{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};On.create=(r,e)=>new On({getter:r,typeName:ie.ZodLazy,...ce(e)});var Pn=class extends ue{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return D(t,{received:t.data,code:I.invalid_literal,expected:this._def.value}),ne}return{status:"valid",value:e.data}}get value(){return this._def.value}};Pn.create=(r,e)=>new Pn({value:r,typeName:ie.ZodLiteral,...ce(e)});function Om(r,e){return new Nn({values:r,typeName:ie.ZodEnum,...ce(e)})}var Nn=class r extends ue{_parse(e){if(typeof e.data!="string"){let t=this._getOrReturnCtx(e),n=this._def.values;return D(t,{expected:pe.joinValues(n),received:t.parsedType,code:I.invalid_type}),ne}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return D(t,{received:t.data,code:I.invalid_enum_value,options:n}),ne}return nt(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return r.create(e,{...this._def,...t})}exclude(e,t=this._def){return r.create(this.options.filter(n=>!e.includes(n)),{...this._def,...t})}};Nn.create=Om;var Ln=class extends ue{_parse(e){let t=pe.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==z.string&&n.parsedType!==z.number){let i=pe.objectValues(t);return D(n,{expected:pe.joinValues(i),received:n.parsedType,code:I.invalid_type}),ne}if(this._cache||(this._cache=new Set(pe.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=pe.objectValues(t);return D(n,{received:n.data,code:I.invalid_enum_value,options:i}),ne}return nt(e.data)}get enum(){return this._def.values}};Ln.create=(r,e)=>new Ln({values:r,typeName:ie.ZodNativeEnum,...ce(e)});var Wr=class extends ue{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.promise&&t.common.async===!1)return D(t,{code:I.invalid_type,expected:z.promise,received:t.parsedType}),ne;let n=t.parsedType===z.promise?t.data:Promise.resolve(t.data);return nt(n.then(i=>this._def.type.parseAsync(i,{path:t.path,errorMap:t.common.contextualErrorMap})))}};Wr.create=(r,e)=>new Wr({type:r,typeName:ie.ZodPromise,...ce(e)});var At=class extends ue{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ie.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{D(n,o),o.fatal?t.abort():t.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(t.value==="aborted")return ne;let l=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return l.status==="aborted"?ne:l.status==="dirty"?kn(l.value):t.value==="dirty"?kn(l.value):l});{if(t.value==="aborted")return ne;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?ne:a.status==="dirty"?kn(a.value):t.value==="dirty"?kn(a.value):a}}if(i.type==="refinement"){let o=a=>{let l=i.refinement(a,s);if(n.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?ne:(a.status==="dirty"&&t.dirty(),o(a.value),{status:t.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?ne:(a.status==="dirty"&&t.dirty(),o(a.value).then(()=>({status:t.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Vr(o))return ne;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>Vr(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:t.value,value:a})):ne);pe.assertNever(i)}};At.create=(r,e,t)=>new At({schema:r,typeName:ie.ZodEffects,effect:e,...ce(t)});At.createWithPreprocess=(r,e,t)=>new At({schema:e,effect:{type:"preprocess",transform:r},typeName:ie.ZodEffects,...ce(t)});var Et=class extends ue{_parse(e){return this._getType(e)===z.undefined?nt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Et.create=(r,e)=>new Et({innerType:r,typeName:ie.ZodOptional,...ce(e)});var tr=class extends ue{_parse(e){return this._getType(e)===z.null?nt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};tr.create=(r,e)=>new tr({innerType:r,typeName:ie.ZodNullable,...ce(e)});var Fn=class extends ue{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===z.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Fn.create=(r,e)=>new Fn({innerType:r,typeName:ie.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...ce(e)});var Dn=class extends ue{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return hi(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new gt(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new gt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Dn.create=(r,e)=>new Dn({innerType:r,typeName:ie.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...ce(e)});var bi=class extends ue{_parse(e){if(this._getType(e)!==z.nan){let n=this._getOrReturnCtx(e);return D(n,{code:I.invalid_type,expected:z.nan,received:n.parsedType}),ne}return{status:"valid",value:e.data}}};bi.create=r=>new bi({typeName:ie.ZodNaN,...ce(r)});var Y1=Symbol("zod_brand"),Rs=class extends ue{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},Ts=class r extends ue{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?ne:s.status==="dirty"?(t.dirty(),kn(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?ne:i.status==="dirty"?(t.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,t){return new r({in:e,out:t,typeName:ie.ZodPipeline})}},Hn=class extends ue{_parse(e){let t=this._def.innerType._parse(e),n=i=>(Vr(i)&&(i.value=Object.freeze(i.value)),i);return hi(t)?t.then(i=>n(i)):n(t)}unwrap(){return this._def.innerType}};Hn.create=(r,e)=>new Hn({innerType:r,typeName:ie.ZodReadonly,...ce(e)});function Tm(r,e){let t=typeof r=="function"?r(e):typeof r=="string"?{message:r}:r;return typeof t=="string"?{message:t}:t}function Pm(r,e={},t){return r?Ur.create().superRefine((n,i)=>{let s=r(n);if(s instanceof Promise)return s.then(o=>{if(!o){let a=Tm(e,n),l=a.fatal??t??!0;i.addIssue({code:"custom",...a,fatal:l})}});if(!s){let o=Tm(e,n),a=o.fatal??t??!0;i.addIssue({code:"custom",...o,fatal:a})}}):Ur.create()}var X1={object:mt.lazycreate},ie;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(ie||(ie={}));var J1=(r,e={message:`Input not instance of ${r.name}`})=>Pm(t=>t instanceof r,e),Nm=jr.create,Lm=En.create,Q1=bi.create,eS=Cn.create,Fm=An.create,tS=Rn.create,rS=gi.create,nS=Tn.create,iS=In.create,sS=Ur.create,oS=yr.create,aS=Bt.create,lS=mi.create,cS=br.create,uS=mt.create,dS=mt.strictCreate,pS=$n.create,hS=Fa.create,fS=Mn.create,gS=er.create,mS=Da.create,vS=vi.create,yS=yi.create,bS=Ha.create,_S=On.create,xS=Pn.create,wS=Nn.create,SS=Ln.create,kS=Wr.create,ES=At.create,CS=Et.create,AS=tr.create,RS=At.createWithPreprocess,TS=Ts.create,IS=()=>Nm().optional(),$S=()=>Lm().optional(),MS=()=>Fm().optional(),OS={string:(r=>jr.create({...r,coerce:!0})),number:(r=>En.create({...r,coerce:!0})),boolean:(r=>An.create({...r,coerce:!0})),bigint:(r=>Cn.create({...r,coerce:!0})),date:(r=>Rn.create({...r,coerce:!0}))};var PS=ne;var d$=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),p$={title:d.string().max(200).optional().describe("Authoring-only: short label shown on the action plan dashboard. Stripped before serving to the runtime SDK."),description:d.string().max(1e3).optional().describe("Authoring-only: one-sentence explanation of what this action does and why. Stripped before serving to the runtime SDK."),validation:d.array(d.string().max(500)).max(10).optional().describe("Authoring-only: ordered steps a reviewer can follow to trigger this action and visually confirm it works. Each entry is one step. Stripped before serving to the runtime SDK.")},NS=["ui.click","ui.scroll","ui.input","ui.change","ui.submit","ui.hover","ui.idle","ui.scroll_thrash","ui.focus_bounce","nav.page_view","nav.page_leave","behavior.rage_click","behavior.hesitation","behavior.confusion"],LS=d.enum(NS).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),FS=["time_on_page","page_views","scroll_depth"],DS=d.enum(FS).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage."),HS=d.object({type:d.literal("page_url"),url:d.string().describe('URL path to match (e.g. "/pricing", "/dashboard")')}).describe('Fires when the current page URL matches. Use for page-specific actions. Example: {"type": "page_url", "url": "/pricing"}'),BS=d.object({type:d.literal("route"),routeId:d.string().describe("Named route ID from the route filter")}).describe("Fires when the current route matches a named route ID."),VS=d.object({type:d.literal("anchor_visible"),anchorId:d.string().describe("CSS selector of the anchor element"),state:d.enum(["visible","present","absent"]).describe('"visible" = in viewport, "present" = in DOM, "absent" = not in DOM')}).describe(`Fires based on a DOM element's visibility state. Example: {"type": "anchor_visible", "anchorId": "#cta-button", "state": "visible"}`),jS=d.object({type:d.literal("event_occurred"),eventName:d.string().describe('Event name (e.g. "ui.click", "$pageview")'),withinMs:d.number().optional().describe("Time window in ms. Omit = any time this session.")}).describe('Fires when a specific event has occurred during this session. Example: {"type": "event_occurred", "eventName": "ui.click", "withinMs": 5000}'),US=d.object({type:d.literal("state_equals"),key:d.string().describe("Key in the SDK persistent state store (localStorage). Only valid for keys the host app explicitly sets via syntro.state.set()."),value:d.unknown().describe("Expected value to match against")}).describe("Checks the SDK persistent state store (localStorage). ONLY for host-app state set via syntro.state.set() \u2014 NOT for user attributes like region, device, or UTM params (those are handled by segment targeting). Do NOT use this for targeting. If you do not know the valid state keys, do not use this condition type."),WS=d.object({type:d.literal("viewport"),minWidth:d.number().optional().describe("Minimum viewport width in pixels"),maxWidth:d.number().optional().describe("Maximum viewport width in pixels"),minHeight:d.number().optional().describe("Minimum viewport height in pixels"),maxHeight:d.number().optional().describe("Maximum viewport height in pixels")}).describe('Fires based on viewport (screen) size. Use for responsive behavior. Example: {"type": "viewport", "minWidth": 768} \u2014 fires on tablet and larger.'),zS=d.object({type:d.literal("session_metric"),key:DS,operator:d.enum(["gte","lte","eq","gt","lt"]),threshold:d.number().describe("Numeric threshold to compare against")}).describe('Fires when a session metric crosses a threshold. Valid keys: "time_on_page" (seconds), "page_views" (count), "scroll_depth" (0-100). Example: {"type": "session_metric", "key": "time_on_page", "operator": "gte", "threshold": 30}'),qS=d.object({type:d.literal("dismissed"),key:d.string().describe("Dismissal key (usually a tile or action ID)"),inverted:d.boolean().optional().describe("When true, fires if NOT dismissed (default behavior)")}).describe("Checks if an item has been dismissed by the user. Use with inverted: true to show only if not dismissed."),ZS=d.object({type:d.literal("cooldown_active"),key:d.string().describe("Cooldown key"),inverted:d.boolean().optional().describe("When true, fires if cooldown is NOT active")}).describe("Checks if a cooldown timer is currently active. Use to prevent showing the same intervention too frequently."),GS=d.object({type:d.literal("frequency_limit"),key:d.string().describe("Frequency counter key"),limit:d.number().describe("Maximum allowed count"),inverted:d.boolean().optional().describe("When true, fires if limit NOT reached")}).describe("Checks if a frequency limit has been reached. Use to cap how many times an action fires per session."),KS=d.object({equals:d.union([d.string(),d.number(),d.boolean()]).optional(),contains:d.string().optional()}).describe("Match operator for counter filters. Exactly one of equals or contains must be specified."),YS=d.object({events:d.array(LS).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),KS).optional().describe("Property filters. Keys are event prop names or element-chain fields (tag_name, $el_text, attr__*). All entries AND together.")}).describe("Defines what events to count. Registered as an accumulator predicate at config-load time."),XS=d.object({type:d.literal("event_count"),key:d.string().describe("Unique key for this counter (used for accumulator registration)"),operator:d.enum(["gte","lte","eq","gt","lt"]),count:d.number().int().min(0).describe("Target count threshold"),withinMs:d.number().positive().optional().describe("Time window in ms. Omit = count across entire session."),counter:YS.optional().describe("Inline counter definition. Defines what events to count.")}).describe('Fires when accumulated event count crosses a threshold. Most powerful trigger type. Example: {"type": "event_count", "key": "pricing-clicks", "operator": "gte", "count": 3, "counter": {"events": ["ui.click"], "match": {"attr__data-cta": {"contains": "pricing"}}}}'),JS=d.discriminatedUnion("type",[HS,BS,VS,jS,US,WS,zS,qS,ZS,GS,XS]),QS=d.object({conditions:d.array(JS).describe("Array of conditions \u2014 ALL must match (AND logic) for this rule to fire."),value:d.unknown().describe("Value returned when all conditions match. For triggerWhen: true = fire the action.")}).describe("A single rule. ALL conditions must match (AND logic). Rules in a strategy are evaluated top-to-bottom \u2014 first rule where all conditions match wins and returns its value."),ek=d.object({type:d.literal("rules"),rules:d.array(QS).describe("Ordered list of rules. Evaluated top-to-bottom \u2014 first match wins."),default:d.unknown().describe("Fallback value when no rule matches. For triggerWhen: false = do not fire by default.")}).describe("Rule-based strategy. Evaluates rules top-to-bottom. First rule where ALL conditions match returns its value. If no rule matches, returns default. For triggerWhen: set value=true on matching rules, default=false."),tk=d.object({type:d.literal("score"),field:d.string(),threshold:d.number(),above:d.unknown(),below:d.unknown()}).describe("Score-based strategy. Compares a field value against a threshold."),rk=d.object({type:d.literal("model"),modelId:d.string(),inputs:d.array(d.string()),outputMapping:d.record(d.string(),d.unknown()),default:d.unknown()}).describe("ML model strategy. Sends inputs to a model and maps outputs."),nk=d.object({type:d.literal("external"),endpoint:d.string(),method:d.enum(["GET","POST"]).optional(),default:d.unknown(),timeoutMs:d.number().optional()}).describe("External API strategy. Calls an endpoint to determine the value."),ik=d.discriminatedUnion("type",[ek,tk,rk,nk]),h$=ik.nullable().optional(),f$=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),g$=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional(),sk='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"',ok={"\u{1F4B5}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F3DB}\uFE0F":['<line x1="3" x2="21" y1="22" y2="22"/>','<line x1="6" x2="6" y1="18" y2="11"/>','<line x1="10" x2="10" y1="18" y2="11"/>','<line x1="14" x2="14" y1="18" y2="11"/>','<line x1="18" x2="18" y1="18" y2="11"/>','<polygon points="12 2 20 7 4 7"/>'],"\u23ED\uFE0F":['<polygon points="5 4 15 12 5 20 5 4"/>','<line x1="19" x2="19" y1="5" y2="19"/>'],"\u27A1\uFE0F":['<path d="M5 12h14"/>','<path d="m12 5 7 7-7 7"/>'],"\u{1F4A1}":['<path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/>','<path d="M9 18h6"/>','<path d="M10 22h4"/>'],"\u{1F4B0}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F4CB}":['<rect width="8" height="4" x="8" y="2" rx="1" ry="1"/>','<path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"/>','<path d="M12 11h4"/>','<path d="M12 16h4"/>','<path d="M8 11h.01"/>','<path d="M8 16h.01"/>'],"\u2705":['<path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/>','<path d="m9 11 3 3L22 4"/>'],"\u26A0\uFE0F":['<path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"/>','<path d="M12 9v4"/>','<path d="M12 17h.01"/>'],"\u{1F6E1}\uFE0F":['<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/>'],"\u{1F4C8}":['<polyline points="22 7 13.5 15.5 8.5 10.5 2 17"/>','<polyline points="16 7 22 7 22 13"/>'],"\u{1F52C}":['<path d="M6 18h8"/>','<path d="M3 22h18"/>','<path d="M14 22a7 7 0 1 0 0-14h-1"/>','<path d="M9 14h2"/>','<path d="M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z"/>','<path d="M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3"/>'],"\u{1F48A}":['<path d="m10.5 20.5 10-10a4.95 4.95 0 1 0-7-7l-10 10a4.95 4.95 0 1 0 7 7Z"/>','<path d="m8.5 8.5 7 7"/>'],"\u{1F4C4}":['<path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/>','<path d="M14 2v4a2 2 0 0 0 2 2h4"/>','<path d="M10 9H8"/>','<path d="M16 13H8"/>','<path d="M16 17H8"/>'],"\u{1F9EA}":['<path d="M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2"/>','<path d="M6.453 15h11.094"/>','<path d="M8.5 2h7"/>'],"\u{1F501}":['<path d="m17 2 4 4-4 4"/>','<path d="M3 11v-1a4 4 0 0 1 4-4h14"/>','<path d="m7 22-4-4 4-4"/>','<path d="M21 13v1a4 4 0 0 1-4 4H3"/>'],"\u{1F9E0}":['<path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"/>','<path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"/>','<path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"/>','<path d="M17.599 6.5a3 3 0 0 0 .399-1.375"/>','<path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"/>','<path d="M3.477 10.896a4 4 0 0 1 .585-.396"/>','<path d="M19.938 10.5a4 4 0 0 1 .585.396"/>','<path d="M6 18a4 4 0 0 1-1.967-.516"/>','<path d="M19.967 17.484A4 4 0 0 1 18 18"/>'],"\u{1F319}":['<path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"/>'],"\u{1F4E6}":['<path d="M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z"/>','<path d="M12 22V12"/>','<path d="m3.3 7 8.7 5 8.7-5"/>','<path d="m7.5 4.27 9 5.15"/>'],"\u{1F69A}":['<path d="M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2"/>','<path d="M15 18H9"/>','<path d="M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14"/>','<circle cx="17" cy="18" r="2"/>','<circle cx="7" cy="18" r="2"/>'],"\u{1F331}":['<path d="M7 20h10"/>','<path d="M10 20c5.5-2.5.8-6.4 3-10"/>','<path d="M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z"/>','<path d="M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z"/>'],"\u26A1":['<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"/>'],"\u{1F525}":['<path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"/>'],"\u{1F333}":['<path d="M12 22V8"/>','<path d="m17 8-5-6-5 6"/>','<path d="M12 12c-2-2-4-2-4-2 0 0 0 4 2 6 1.5 1.5 3 1 4 0"/>','<path d="M12 12c2-2 4-2 4-2 0 0 0 4-2 6-1.5 1.5-3 1-4 0"/>'],"\u{1F33F}":['<path d="M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19.2 2.96a1 1 0 0 1 1.8.5c0 6-2 11-9 16.5"/>','<path d="M2 21c0-3 1.85-5.36 5.08-6"/>'],"\u2753":['<circle cx="12" cy="12" r="10"/>','<path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/>','<path d="M12 17h.01"/>'],"\u{1F9ED}":['<circle cx="12" cy="12" r="10"/>','<polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/>'],"\u{1F4DD}":['<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/>','<polyline points="14 2 14 8 20 8"/>','<line x1="16" y1="13" x2="8" y2="13"/>','<line x1="16" y1="17" x2="8" y2="17"/>','<line x1="10" y1="9" x2="8" y2="9"/>'],"\u{1F3AF}":['<polygon points="12 2 2 7 12 12 22 7 12 2"/>','<polyline points="2 17 12 22 22 17"/>','<polyline points="2 12 12 17 22 12"/>'],"\u{1F3C6}":['<path d="M6 9H4.5a2.5 2.5 0 0 1 0-5H6"/>','<path d="M18 9h1.5a2.5 2.5 0 0 0 0-5H18"/>','<path d="M4 22h16"/>','<path d="M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22"/>','<path d="M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22"/>','<path d="M18 2H6v7a6 6 0 0 0 12 0V2Z"/>'],"\u2728":['<path d="m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z"/>','<path d="M5 3v4"/>','<path d="M19 17v4"/>','<path d="M3 5h4"/>','<path d="M17 19h4"/>'],"\u{1F4AC}":['<path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"/>'],"\u{1F3AE}":['<line x1="6" y1="11" x2="10" y2="11"/>','<line x1="8" y1="9" x2="8" y2="13"/>','<line x1="15" y1="12" x2="15.01" y2="12"/>','<line x1="18" y1="10" x2="18.01" y2="10"/>','<path d="M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z"/>'],"\u23F1\uFE0F":['<line x1="10" y1="2" x2="14" y2="2"/>','<line x1="12" y1="14" x2="12" y2="8"/>','<circle cx="12" cy="14" r="8"/>'],"\u{1F4D6}":['<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/>','<path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/>'],"\u{1F514}":['<path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"/>','<path d="M10.3 21a1.94 1.94 0 0 0 3.4 0"/>'],"\u{1F393}":['<path d="M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z"/>','<path d="M22 10v6"/>','<path d="M6 12.5V16a6 3 0 0 0 12 0v-3.5"/>'],"\u23F0":['<circle cx="12" cy="13" r="8"/>','<path d="M12 9v4l2 2"/>','<path d="M5 3 2 6"/>','<path d="m22 6-3-3"/>','<path d="M6.38 18.7 4 21"/>','<path d="M17.64 18.67 20 21"/>'],"\u{1F504}":['<path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/>','<path d="M21 3v5h-5"/>','<path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/>','<path d="M8 16H3v5"/>'],"\u{1F464}":['<path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/>','<circle cx="12" cy="7" r="4"/>'],"\u{1F3E0}":['<path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"/>','<path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>'],"\u{1F6D2}":['<circle cx="8" cy="21" r="1"/>','<circle cx="19" cy="21" r="1"/>','<path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"/>'],"\u{1F4CA}":['<path d="M3 3v18h18"/>','<path d="M18 17V9"/>','<path d="M13 17V5"/>','<path d="M8 17v-3"/>'],"\u{1F4C9}":['<polyline points="22 17 13.5 8.5 8.5 13.5 2 7"/>','<polyline points="16 17 22 17 22 11"/>'],"\u{1F967}":['<path d="M21 12c.552 0 1.005-.449.95-.998a10 10 0 0 0-8.953-8.951c-.55-.055-.998.398-.998.95v8a1 1 0 0 0 1 1z"/>','<path d="M21.21 15.89A10 10 0 1 1 8 2.83"/>'],"\u{1F4B9}":['<path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.5.5 0 0 1-.96 0L9.24 2.18a.5.5 0 0 0-.96 0l-2.35 8.36A2 2 0 0 1 4.02 12H2"/>'],"\u{1F321}\uFE0F":['<path d="M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z"/>']};function Dm(r,e={}){let t=ok[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${sk} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var Hm=r=>{throw TypeError(r)};var wu=(r,e,t)=>e.has(r)||Hm("Cannot "+t),Su=(r,e,t)=>(wu(r,e,"read from private field"),t?t.call(r):e.get(r)),Ba=(r,e,t)=>e.has(r)?Hm("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),Is=(r,e,t,n)=>(wu(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),Ye=(r,e,t)=>(wu(r,e,"access private method"),t);function ak(r){let{href:e,external:t,windowOrigin:n,isIframe:i}=r;if(i||n==="null")return{kind:"open",url:e};if(t)return{kind:"open",url:e};let o;try{o=new URL(e,n)}catch{return{kind:"fullnav",url:e}}return o.origin!==n?{kind:"fullnav",url:o.toString()}:{kind:"spa",url:o}}function lk(){if(typeof window>"u")return!1;try{return window!==window.top}catch{return!0}}var ck="#6a59ce",Bm="#677384",Vm="#87919f";function uk(r){return r.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function dk(r){return Dm(r)||uk(r)}function jm(r){if(typeof window>"u")return!1;let e=window.location.pathname;return r.some(t=>{let n=t.split("?")[0].split("#")[0];return n.endsWith("/**")?e.startsWith(n.slice(0,-3)):e===n})}function pk(r){let e=[{boxShadow:"0 0 0 0 rgba(13, 148, 136, 0.5)"},{boxShadow:"0 0 0 8px rgba(13, 148, 136, 0)"}];r.animate(e,{duration:600,iterations:3,easing:"ease-out"})}function hk(r){return r==="dark"?"dark":r==="light"?"light":typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var $s,Ms,qe,ku,Eu,Wm,Au,zm,qm,Zm,Os,Cu,Gm=class extends ye{constructor(){super(...arguments),Ba(this,qe),this.config={expandBehavior:"single",theme:"auto",actions:[]},this.runtime=void 0,this.instanceId="nav-widget",this._expandedIds=new Set,this._renderTick=0,this._hoveredId=null,Ba(this,$s,null),Ba(this,Ms,null)}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),Ye(this,qe,ku).call(this)}disconnectedCallback(){super.disconnectedCallback(),Ye(this,qe,Eu).call(this)}updated(r){r.has("runtime")&&(Ye(this,qe,Eu).call(this),Ye(this,qe,ku).call(this))}render(){let r=Ye(this,qe,Wm).call(this),e=Ye(this,qe,Au).call(this),t=R({fontFamily:"var(--sc-font-family, system-ui, -apple-system, sans-serif)",maxWidth:"100%",overflow:"hidden",backgroundColor:"transparent",color:"inherit"}),n=R({display:"flex",flexDirection:"column",gap:"var(--sc-content-item-gap, 6px)"}),i=R({fontSize:"var(--sc-content-category-font-size, 12px)",fontWeight:"600",textTransform:"uppercase",letterSpacing:"0.05em",padding:"var(--sc-content-category-padding, 8px 4px 4px 4px)",color:e==="dark"?Vm:Bm}),s=R({fontSize:"13px",padding:"16px",textAlign:"center",color:e==="dark"?Bm:Vm});if(r.length===0)return L`
302
+ `}};Jm.properties={faqConfig:{attribute:!1},runtime:{attribute:!1},instanceId:{type:String},_expandedIds:{state:!0},_highlightId:{state:!0},_searchQuery:{state:!0},_feedbackState:{state:!0},_hoveredId:{state:!0}};customElements.get("syntro-faq-accordion")||customElements.define("syntro-faq-accordion",Jm);var mS={mount(r,e){let{runtime:t,instanceId:n="faq-widget",...i}=e??{expandBehavior:"single",searchable:!1,theme:"auto",actions:[]},s=document.createElement("syntro-faq-accordion");return Object.assign(s,{faqConfig:i,runtime:t??null,instanceId:n}),r.appendChild(s),()=>s.remove()}},Qm={id:"adaptive-faq",version:"2.0.0",name:"FAQ Accordion",description:"Collapsible Q&A accordion with actions, rich content, feedback, and personalization",executors:uS,widgets:[{id:"adaptive-faq:accordion",component:mS,metadata:{name:"FAQ Accordion",description:"Collapsible Q&A accordion with search, categories, and feedback",icon:"\u2753",subtitle:"Curated just for you."}}],notifyWatchers(r){return(r.actions??[]).filter(t=>t.notify&&t.triggerWhen).map(t=>({id:`faq:${t.config.id}`,strategy:t.triggerWhen,eventName:"faq:question_revealed",eventProps:{questionId:t.config.id,question:t.config.question,title:t.notify.title,body:t.notify.body,icon:t.notify.icon}}))}};var d={};Wx(d,{BRAND:()=>US,DIRTY:()=>Cn,EMPTY_PATH:()=>_S,INVALID:()=>ne,NEVER:()=>Ck,OK:()=>nt,ParseStatus:()=>Ke,Schema:()=>de,ZodAny:()=>zr,ZodArray:()=>xr,ZodBigInt:()=>Tn,ZodBoolean:()=>Rn,ZodBranded:()=>Ms,ZodCatch:()=>Bn,ZodDate:()=>In,ZodDefault:()=>Hn,ZodDiscriminatedUnion:()=>ja,ZodEffects:()=>At,ZodEnum:()=>Fn,ZodError:()=>gt,ZodFirstPartyTypeKind:()=>ie,ZodFunction:()=>za,ZodIntersection:()=>On,ZodIssueCode:()=>$,ZodLazy:()=>Ln,ZodLiteral:()=>Nn,ZodMap:()=>bi,ZodNaN:()=>xi,ZodNativeEnum:()=>Dn,ZodNever:()=>Bt,ZodNull:()=>Mn,ZodNullable:()=>tr,ZodNumber:()=>An,ZodObject:()=>mt,ZodOptional:()=>Et,ZodParsedType:()=>z,ZodPipeline:()=>Ps,ZodPromise:()=>qr,ZodReadonly:()=>Vn,ZodRecord:()=>Wa,ZodSchema:()=>de,ZodSet:()=>_i,ZodString:()=>Wr,ZodSymbol:()=>vi,ZodTransformer:()=>At,ZodTuple:()=>er,ZodType:()=>de,ZodUndefined:()=>$n,ZodUnion:()=>Pn,ZodUnknown:()=>_r,ZodVoid:()=>yi,addIssueToContext:()=>D,any:()=>XS,array:()=>tk,bigint:()=>qS,boolean:()=>uv,coerce:()=>Ek,custom:()=>av,date:()=>ZS,datetimeRegex:()=>sv,defaultErrorMap:()=>yr,discriminatedUnion:()=>sk,effect:()=>vk,enum:()=>fk,function:()=>dk,getErrorMap:()=>fi,getParsedType:()=>Qt,instanceof:()=>WS,intersection:()=>ok,isAborted:()=>Va,isAsync:()=>gi,isDirty:()=>Ua,isValid:()=>jr,late:()=>jS,lazy:()=>pk,literal:()=>hk,makeIssue:()=>$s,map:()=>ck,nan:()=>zS,nativeEnum:()=>gk,never:()=>QS,null:()=>YS,nullable:()=>bk,number:()=>cv,object:()=>rk,objectUtil:()=>Ru,oboolean:()=>kk,onumber:()=>Sk,optional:()=>yk,ostring:()=>wk,pipeline:()=>xk,preprocess:()=>_k,promise:()=>mk,quotelessJson:()=>vS,record:()=>lk,set:()=>uk,setErrorMap:()=>bS,strictObject:()=>nk,string:()=>lv,symbol:()=>GS,transformer:()=>vk,tuple:()=>ak,undefined:()=>KS,union:()=>ik,unknown:()=>JS,util:()=>he,void:()=>ek});var he;(function(r){r.assertEqual=i=>{};function e(i){}r.assertIs=e;function t(i){throw new Error}r.assertNever=t,r.arrayToEnum=i=>{let s={};for(let o of i)s[o]=o;return s},r.getValidEnumValues=i=>{let s=r.objectKeys(i).filter(a=>typeof i[i[a]]!="number"),o={};for(let a of s)o[a]=i[a];return r.objectValues(o)},r.objectValues=i=>r.objectKeys(i).map(function(s){return i[s]}),r.objectKeys=typeof Object.keys=="function"?i=>Object.keys(i):i=>{let s=[];for(let o in i)Object.prototype.hasOwnProperty.call(i,o)&&s.push(o);return s},r.find=(i,s)=>{for(let o of i)if(s(o))return o},r.isInteger=typeof Number.isInteger=="function"?i=>Number.isInteger(i):i=>typeof i=="number"&&Number.isFinite(i)&&Math.floor(i)===i;function n(i,s=" | "){return i.map(o=>typeof o=="string"?`'${o}'`:o).join(s)}r.joinValues=n,r.jsonStringifyReplacer=(i,s)=>typeof s=="bigint"?s.toString():s})(he||(he={}));var Ru;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(Ru||(Ru={}));var z=he.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Qt=r=>{switch(typeof r){case"undefined":return z.undefined;case"string":return z.string;case"number":return Number.isNaN(r)?z.nan:z.number;case"boolean":return z.boolean;case"function":return z.function;case"bigint":return z.bigint;case"symbol":return z.symbol;case"object":return Array.isArray(r)?z.array:r===null?z.null:r.then&&typeof r.then=="function"&&r.catch&&typeof r.catch=="function"?z.promise:typeof Map<"u"&&r instanceof Map?z.map:typeof Set<"u"&&r instanceof Set?z.set:typeof Date<"u"&&r instanceof Date?z.date:z.object;default:return z.unknown}};var $=he.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),vS=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:"),gt=class r extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let t=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,t):this.__proto__=t,this.name="ZodError",this.issues=e}format(e){let t=e||function(s){return s.message},n={_errors:[]},i=s=>{for(let o of s.issues)if(o.code==="invalid_union")o.unionErrors.map(i);else if(o.code==="invalid_return_type")i(o.returnTypeError);else if(o.code==="invalid_arguments")i(o.argumentsError);else if(o.path.length===0)n._errors.push(t(o));else{let a=n,l=0;for(;l<o.path.length;){let c=o.path[l];l===o.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(t(o))):a[c]=a[c]||{_errors:[]},a=a[c],l++}}};return i(this),n}static assert(e){if(!(e instanceof r))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,he.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=t=>t.message){let t={},n=[];for(let i of this.issues)if(i.path.length>0){let s=i.path[0];t[s]=t[s]||[],t[s].push(e(i))}else n.push(e(i));return{formErrors:n,fieldErrors:t}}get formErrors(){return this.flatten()}};gt.create=r=>new gt(r);var yS=(r,e)=>{let t;switch(r.code){case $.invalid_type:r.received===z.undefined?t="Required":t=`Expected ${r.expected}, received ${r.received}`;break;case $.invalid_literal:t=`Invalid literal value, expected ${JSON.stringify(r.expected,he.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:t=`Unrecognized key(s) in object: ${he.joinValues(r.keys,", ")}`;break;case $.invalid_union:t="Invalid input";break;case $.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${he.joinValues(r.options)}`;break;case $.invalid_enum_value:t=`Invalid enum value. Expected ${he.joinValues(r.options)}, received '${r.received}'`;break;case $.invalid_arguments:t="Invalid function arguments";break;case $.invalid_return_type:t="Invalid function return type";break;case $.invalid_date:t="Invalid date";break;case $.invalid_string:typeof r.validation=="object"?"includes"in r.validation?(t=`Invalid input: must include "${r.validation.includes}"`,typeof r.validation.position=="number"&&(t=`${t} at one or more positions greater than or equal to ${r.validation.position}`)):"startsWith"in r.validation?t=`Invalid input: must start with "${r.validation.startsWith}"`:"endsWith"in r.validation?t=`Invalid input: must end with "${r.validation.endsWith}"`:he.assertNever(r.validation):r.validation!=="regex"?t=`Invalid ${r.validation}`:t="Invalid";break;case $.too_small:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at least":"more than"} ${r.minimum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at least":"over"} ${r.minimum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="bigint"?t=`Number must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${r.minimum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly equal to ":r.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(r.minimum))}`:t="Invalid input";break;case $.too_big:r.type==="array"?t=`Array must contain ${r.exact?"exactly":r.inclusive?"at most":"less than"} ${r.maximum} element(s)`:r.type==="string"?t=`String must contain ${r.exact?"exactly":r.inclusive?"at most":"under"} ${r.maximum} character(s)`:r.type==="number"?t=`Number must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="bigint"?t=`BigInt must be ${r.exact?"exactly":r.inclusive?"less than or equal to":"less than"} ${r.maximum}`:r.type==="date"?t=`Date must be ${r.exact?"exactly":r.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(r.maximum))}`:t="Invalid input";break;case $.custom:t="Invalid input";break;case $.invalid_intersection_types:t="Intersection results could not be merged";break;case $.not_multiple_of:t=`Number must be a multiple of ${r.multipleOf}`;break;case $.not_finite:t="Number must be finite";break;default:t=e.defaultError,he.assertNever(r)}return{message:t}},yr=yS;var ev=yr;function bS(r){ev=r}function fi(){return ev}var $s=r=>{let{data:e,path:t,errorMaps:n,issueData:i}=r,s=[...t,...i.path||[]],o={...i,path:s};if(i.message!==void 0)return{...i,path:s,message:i.message};let a="",l=n.filter(c=>!!c).slice().reverse();for(let c of l)a=c(o,{data:e,defaultError:a}).message;return{...i,path:s,message:a}},_S=[];function D(r,e){let t=fi(),n=$s({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===yr?void 0:yr].filter(i=>!!i)});r.common.issues.push(n)}var Ke=class r{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,t){let n=[];for(let i of t){if(i.status==="aborted")return ne;i.status==="dirty"&&e.dirty(),n.push(i.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,t){let n=[];for(let i of t){let s=await i.key,o=await i.value;n.push({key:s,value:o})}return r.mergeObjectSync(e,n)}static mergeObjectSync(e,t){let n={};for(let i of t){let{key:s,value:o}=i;if(s.status==="aborted"||o.status==="aborted")return ne;s.status==="dirty"&&e.dirty(),o.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof o.value<"u"||i.alwaysSet)&&(n[s.value]=o.value)}return{status:e.value,value:n}}},ne=Object.freeze({status:"aborted"}),Cn=r=>({status:"dirty",value:r}),nt=r=>({status:"valid",value:r}),Va=r=>r.status==="aborted",Ua=r=>r.status==="dirty",jr=r=>r.status==="valid",gi=r=>typeof Promise<"u"&&r instanceof Promise;var X;(function(r){r.errToObj=e=>typeof e=="string"?{message:e}:e||{},r.toString=e=>typeof e=="string"?e:e?.message})(X||(X={}));var Ct=class{constructor(e,t,n,i){this._cachedPath=[],this.parent=e,this.data=t,this._path=n,this._key=i}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},tv=(r,e)=>{if(jr(e))return{success:!0,data:e.value};if(!r.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let t=new gt(r.common.issues);return this._error=t,this._error}}};function ce(r){if(!r)return{};let{errorMap:e,invalid_type_error:t,required_error:n,description:i}=r;if(e&&(t||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:i}:{errorMap:(o,a)=>{let{message:l}=r;return o.code==="invalid_enum_value"?{message:l??a.defaultError}:typeof a.data>"u"?{message:l??n??a.defaultError}:o.code!=="invalid_type"?{message:a.defaultError}:{message:l??t??a.defaultError}},description:i}}var de=class{get description(){return this._def.description}_getType(e){return Qt(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:Qt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ke,ctx:{common:e.parent.common,data:e.data,parsedType:Qt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(gi(t))throw new Error("Synchronous parse encountered promise.");return t}_parseAsync(e){let t=this._parse(e);return Promise.resolve(t)}parse(e,t){let n=this.safeParse(e,t);if(n.success)return n.data;throw n.error}safeParse(e,t){let n={common:{issues:[],async:t?.async??!1,contextualErrorMap:t?.errorMap},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Qt(e)},i=this._parseSync({data:e,path:n.path,parent:n});return tv(n,i)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Qt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:t});return jr(n)?{value:n.value}:{issues:t.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),t.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:t}).then(n=>jr(n)?{value:n.value}:{issues:t.common.issues})}async parseAsync(e,t){let n=await this.safeParseAsync(e,t);if(n.success)return n.data;throw n.error}async safeParseAsync(e,t){let n={common:{issues:[],contextualErrorMap:t?.errorMap,async:!0},path:t?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Qt(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(gi(i)?i:Promise.resolve(i));return tv(n,s)}refine(e,t){let n=i=>typeof t=="string"||typeof t>"u"?{message:t}:typeof t=="function"?t(i):t;return this._refinement((i,s)=>{let o=e(i),a=()=>s.addIssue({code:$.custom,...n(i)});return typeof Promise<"u"&&o instanceof Promise?o.then(l=>l?!0:(a(),!1)):o?!0:(a(),!1)})}refinement(e,t){return this._refinement((n,i)=>e(n)?!0:(i.addIssue(typeof t=="function"?t(n,i):t),!1))}_refinement(e){return new At({schema:this,typeName:ie.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:t=>this["~validate"](t)}}optional(){return Et.create(this,this._def)}nullable(){return tr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return xr.create(this)}promise(){return qr.create(this,this._def)}or(e){return Pn.create([this,e],this._def)}and(e){return On.create(this,e,this._def)}transform(e){return new At({...ce(this._def),schema:this,typeName:ie.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let t=typeof e=="function"?e:()=>e;return new Hn({...ce(this._def),innerType:this,defaultValue:t,typeName:ie.ZodDefault})}brand(){return new Ms({typeName:ie.ZodBranded,type:this,...ce(this._def)})}catch(e){let t=typeof e=="function"?e:()=>e;return new Bn({...ce(this._def),innerType:this,catchValue:t,typeName:ie.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return Ps.create(this,e)}readonly(){return Vn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},xS=/^c[^\s-]{8,}$/i,wS=/^[0-9a-z]+$/,SS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,kS=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,ES=/^[a-z0-9_-]{21}$/i,CS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,AS=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,TS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,RS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Iu,IS=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,$S=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,MS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,PS=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,OS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,LS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nv="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",NS=new RegExp(`^${nv}$`);function iv(r){let e="[0-5]\\d";r.precision?e=`${e}\\.\\d{${r.precision}}`:r.precision==null&&(e=`${e}(\\.\\d+)?`);let t=r.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${t}`}function FS(r){return new RegExp(`^${iv(r)}$`)}function sv(r){let e=`${nv}T${iv(r)}`,t=[];return t.push(r.local?"Z?":"Z"),r.offset&&t.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${t.join("|")})`,new RegExp(`^${e}$`)}function DS(r,e){return!!((e==="v4"||!e)&&IS.test(r)||(e==="v6"||!e)&&MS.test(r))}function HS(r,e){if(!CS.test(r))return!1;try{let[t]=r.split(".");if(!t)return!1;let n=t.replace(/-/g,"+").replace(/_/g,"/").padEnd(t.length+(4-t.length%4)%4,"="),i=JSON.parse(atob(n));return!(typeof i!="object"||i===null||"typ"in i&&i?.typ!=="JWT"||!i.alg||e&&i.alg!==e)}catch{return!1}}function BS(r,e){return!!((e==="v4"||!e)&&$S.test(r)||(e==="v6"||!e)&&PS.test(r))}var Wr=class r extends de{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==z.string){let s=this._getOrReturnCtx(e);return D(s,{code:$.invalid_type,expected:z.string,received:s.parsedType}),ne}let n=new Ke,i;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let o=e.data.length>s.value,a=e.data.length<s.value;(o||a)&&(i=this._getOrReturnCtx(e,i),o?D(i,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&D(i,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")TS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Iu||(Iu=new RegExp(RS,"u")),Iu.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")kS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")ES.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")xS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")wS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")SS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"ulid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{i=this._getOrReturnCtx(e,i),D(i,{validation:"url",code:$.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"regex",code:$.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(i=this._getOrReturnCtx(e,i),D(i,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(i=this._getOrReturnCtx(e,i),D(i,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(i=this._getOrReturnCtx(e,i),D(i,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?sv(s).test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?NS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?FS(s).test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?AS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?DS(e.data,s.version)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?HS(e.data,s.alg)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?BS(e.data,s.version)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?OS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?LS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):he.assertNever(s);return{status:n.value,value:e.data}}_regex(e,t,n){return this.refinement(i=>e.test(i),{validation:t,code:$.invalid_string,...X.errToObj(n)})}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...X.errToObj(e)})}url(e){return this._addCheck({kind:"url",...X.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...X.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...X.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...X.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...X.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...X.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...X.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...X.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...X.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...X.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...X.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...X.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...X.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...X.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...X.errToObj(e)})}regex(e,t){return this._addCheck({kind:"regex",regex:e,...X.errToObj(t)})}includes(e,t){return this._addCheck({kind:"includes",value:e,position:t?.position,...X.errToObj(t?.message)})}startsWith(e,t){return this._addCheck({kind:"startsWith",value:e,...X.errToObj(t)})}endsWith(e,t){return this._addCheck({kind:"endsWith",value:e,...X.errToObj(t)})}min(e,t){return this._addCheck({kind:"min",value:e,...X.errToObj(t)})}max(e,t){return this._addCheck({kind:"max",value:e,...X.errToObj(t)})}length(e,t){return this._addCheck({kind:"length",value:e,...X.errToObj(t)})}nonempty(e){return this.min(1,X.errToObj(e))}trim(){return new r({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new r({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new r({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxLength(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};Wr.create=r=>new Wr({checks:[],typeName:ie.ZodString,coerce:r?.coerce??!1,...ce(r)});function VS(r,e){let t=(r.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,i=t>n?t:n,s=Number.parseInt(r.toFixed(i).replace(".","")),o=Number.parseInt(e.toFixed(i).replace(".",""));return s%o/10**i}var An=class r extends de{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==z.number){let s=this._getOrReturnCtx(e);return D(s,{code:$.invalid_type,expected:z.number,received:s.parsedType}),ne}let n,i=new Ke;for(let s of this._def.checks)s.kind==="int"?he.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),D(n,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),i.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?VS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),D(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),D(n,{code:$.not_finite,message:s.message}),i.dirty()):he.assertNever(s);return{status:i.value,value:e.data}}gte(e,t){return this.setLimit("min",e,!0,X.toString(t))}gt(e,t){return this.setLimit("min",e,!1,X.toString(t))}lte(e,t){return this.setLimit("max",e,!0,X.toString(t))}lt(e,t){return this.setLimit("max",e,!1,X.toString(t))}setLimit(e,t,n,i){return new r({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:X.toString(i)}]})}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:X.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:X.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:X.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:X.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:X.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:X.toString(t)})}finite(e){return this._addCheck({kind:"finite",message:X.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:X.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:X.toString(e)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&he.isInteger(e.value))}get isFinite(){let e=null,t=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(t===null||n.value>t)&&(t=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(t)&&Number.isFinite(e)}};An.create=r=>new An({checks:[],typeName:ie.ZodNumber,coerce:r?.coerce||!1,...ce(r)});var Tn=class r extends de{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==z.bigint)return this._getInvalidInput(e);let n,i=new Ke;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),D(n,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),i.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),D(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),i.dirty()):he.assertNever(s);return{status:i.value,value:e.data}}_getInvalidInput(e){let t=this._getOrReturnCtx(e);return D(t,{code:$.invalid_type,expected:z.bigint,received:t.parsedType}),ne}gte(e,t){return this.setLimit("min",e,!0,X.toString(t))}gt(e,t){return this.setLimit("min",e,!1,X.toString(t))}lte(e,t){return this.setLimit("max",e,!0,X.toString(t))}lt(e,t){return this.setLimit("max",e,!1,X.toString(t))}setLimit(e,t,n,i){return new r({...this._def,checks:[...this._def.checks,{kind:e,value:t,inclusive:n,message:X.toString(i)}]})}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:X.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:X.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:X.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:X.toString(e)})}multipleOf(e,t){return this._addCheck({kind:"multipleOf",value:e,message:X.toString(t)})}get minValue(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e}get maxValue(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e}};Tn.create=r=>new Tn({checks:[],typeName:ie.ZodBigInt,coerce:r?.coerce??!1,...ce(r)});var Rn=class extends de{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==z.boolean){let n=this._getOrReturnCtx(e);return D(n,{code:$.invalid_type,expected:z.boolean,received:n.parsedType}),ne}return nt(e.data)}};Rn.create=r=>new Rn({typeName:ie.ZodBoolean,coerce:r?.coerce||!1,...ce(r)});var In=class r extends de{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==z.date){let s=this._getOrReturnCtx(e);return D(s,{code:$.invalid_type,expected:z.date,received:s.parsedType}),ne}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return D(s,{code:$.invalid_date}),ne}let n=new Ke,i;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(i=this._getOrReturnCtx(e,i),D(i,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):he.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new r({...this._def,checks:[...this._def.checks,e]})}min(e,t){return this._addCheck({kind:"min",value:e.getTime(),message:X.toString(t)})}max(e,t){return this._addCheck({kind:"max",value:e.getTime(),message:X.toString(t)})}get minDate(){let e=null;for(let t of this._def.checks)t.kind==="min"&&(e===null||t.value>e)&&(e=t.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let t of this._def.checks)t.kind==="max"&&(e===null||t.value<e)&&(e=t.value);return e!=null?new Date(e):null}};In.create=r=>new In({checks:[],coerce:r?.coerce||!1,typeName:ie.ZodDate,...ce(r)});var vi=class extends de{_parse(e){if(this._getType(e)!==z.symbol){let n=this._getOrReturnCtx(e);return D(n,{code:$.invalid_type,expected:z.symbol,received:n.parsedType}),ne}return nt(e.data)}};vi.create=r=>new vi({typeName:ie.ZodSymbol,...ce(r)});var $n=class extends de{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return D(n,{code:$.invalid_type,expected:z.undefined,received:n.parsedType}),ne}return nt(e.data)}};$n.create=r=>new $n({typeName:ie.ZodUndefined,...ce(r)});var Mn=class extends de{_parse(e){if(this._getType(e)!==z.null){let n=this._getOrReturnCtx(e);return D(n,{code:$.invalid_type,expected:z.null,received:n.parsedType}),ne}return nt(e.data)}};Mn.create=r=>new Mn({typeName:ie.ZodNull,...ce(r)});var zr=class extends de{constructor(){super(...arguments),this._any=!0}_parse(e){return nt(e.data)}};zr.create=r=>new zr({typeName:ie.ZodAny,...ce(r)});var _r=class extends de{constructor(){super(...arguments),this._unknown=!0}_parse(e){return nt(e.data)}};_r.create=r=>new _r({typeName:ie.ZodUnknown,...ce(r)});var Bt=class extends de{_parse(e){let t=this._getOrReturnCtx(e);return D(t,{code:$.invalid_type,expected:z.never,received:t.parsedType}),ne}};Bt.create=r=>new Bt({typeName:ie.ZodNever,...ce(r)});var yi=class extends de{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return D(n,{code:$.invalid_type,expected:z.void,received:n.parsedType}),ne}return nt(e.data)}};yi.create=r=>new yi({typeName:ie.ZodVoid,...ce(r)});var xr=class r extends de{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),i=this._def;if(t.parsedType!==z.array)return D(t,{code:$.invalid_type,expected:z.array,received:t.parsedType}),ne;if(i.exactLength!==null){let o=t.data.length>i.exactLength.value,a=t.data.length<i.exactLength.value;(o||a)&&(D(t,{code:o?$.too_big:$.too_small,minimum:a?i.exactLength.value:void 0,maximum:o?i.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:i.exactLength.message}),n.dirty())}if(i.minLength!==null&&t.data.length<i.minLength.value&&(D(t,{code:$.too_small,minimum:i.minLength.value,type:"array",inclusive:!0,exact:!1,message:i.minLength.message}),n.dirty()),i.maxLength!==null&&t.data.length>i.maxLength.value&&(D(t,{code:$.too_big,maximum:i.maxLength.value,type:"array",inclusive:!0,exact:!1,message:i.maxLength.message}),n.dirty()),t.common.async)return Promise.all([...t.data].map((o,a)=>i.type._parseAsync(new Ct(t,o,t.path,a)))).then(o=>Ke.mergeArray(n,o));let s=[...t.data].map((o,a)=>i.type._parseSync(new Ct(t,o,t.path,a)));return Ke.mergeArray(n,s)}get element(){return this._def.type}min(e,t){return new r({...this._def,minLength:{value:e,message:X.toString(t)}})}max(e,t){return new r({...this._def,maxLength:{value:e,message:X.toString(t)}})}length(e,t){return new r({...this._def,exactLength:{value:e,message:X.toString(t)}})}nonempty(e){return this.min(1,e)}};xr.create=(r,e)=>new xr({type:r,minLength:null,maxLength:null,exactLength:null,typeName:ie.ZodArray,...ce(e)});function mi(r){if(r instanceof mt){let e={};for(let t in r.shape){let n=r.shape[t];e[t]=Et.create(mi(n))}return new mt({...r._def,shape:()=>e})}else return r instanceof xr?new xr({...r._def,type:mi(r.element)}):r instanceof Et?Et.create(mi(r.unwrap())):r instanceof tr?tr.create(mi(r.unwrap())):r instanceof er?er.create(r.items.map(e=>mi(e))):r}var mt=class r extends de{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),t=he.objectKeys(e);return this._cached={shape:e,keys:t},this._cached}_parse(e){if(this._getType(e)!==z.object){let c=this._getOrReturnCtx(e);return D(c,{code:$.invalid_type,expected:z.object,received:c.parsedType}),ne}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Bt&&this._def.unknownKeys==="strip"))for(let c in i.data)o.includes(c)||a.push(c);let l=[];for(let c of o){let u=s[c],p=i.data[c];l.push({key:{status:"valid",value:c},value:u._parse(new Ct(i,p,i.path,c)),alwaysSet:c in i.data})}if(this._def.catchall instanceof Bt){let c=this._def.unknownKeys;if(c==="passthrough")for(let u of a)l.push({key:{status:"valid",value:u},value:{status:"valid",value:i.data[u]}});else if(c==="strict")a.length>0&&(D(i,{code:$.unrecognized_keys,keys:a}),n.dirty());else if(c!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let c=this._def.catchall;for(let u of a){let p=i.data[u];l.push({key:{status:"valid",value:u},value:c._parse(new Ct(i,p,i.path,u)),alwaysSet:u in i.data})}}return i.common.async?Promise.resolve().then(async()=>{let c=[];for(let u of l){let p=await u.key,h=await u.value;c.push({key:p,value:h,alwaysSet:u.alwaysSet})}return c}).then(c=>Ke.mergeObjectSync(n,c)):Ke.mergeObjectSync(n,l)}get shape(){return this._def.shape()}strict(e){return X.errToObj,new r({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(t,n)=>{let i=this._def.errorMap?.(t,n).message??n.defaultError;return t.code==="unrecognized_keys"?{message:X.errToObj(e).message??i}:{message:i}}}:{}})}strip(){return new r({...this._def,unknownKeys:"strip"})}passthrough(){return new r({...this._def,unknownKeys:"passthrough"})}extend(e){return new r({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new r({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:ie.ZodObject})}setKey(e,t){return this.augment({[e]:t})}catchall(e){return new r({...this._def,catchall:e})}pick(e){let t={};for(let n of he.objectKeys(e))e[n]&&this.shape[n]&&(t[n]=this.shape[n]);return new r({...this._def,shape:()=>t})}omit(e){let t={};for(let n of he.objectKeys(this.shape))e[n]||(t[n]=this.shape[n]);return new r({...this._def,shape:()=>t})}deepPartial(){return mi(this)}partial(e){let t={};for(let n of he.objectKeys(this.shape)){let i=this.shape[n];e&&!e[n]?t[n]=i:t[n]=i.optional()}return new r({...this._def,shape:()=>t})}required(e){let t={};for(let n of he.objectKeys(this.shape))if(e&&!e[n])t[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Et;)s=s._def.innerType;t[n]=s}return new r({...this._def,shape:()=>t})}keyof(){return ov(he.objectKeys(this.shape))}};mt.create=(r,e)=>new mt({shape:()=>r,unknownKeys:"strip",catchall:Bt.create(),typeName:ie.ZodObject,...ce(e)});mt.strictCreate=(r,e)=>new mt({shape:()=>r,unknownKeys:"strict",catchall:Bt.create(),typeName:ie.ZodObject,...ce(e)});mt.lazycreate=(r,e)=>new mt({shape:r,unknownKeys:"strip",catchall:Bt.create(),typeName:ie.ZodObject,...ce(e)});var Pn=class extends de{_parse(e){let{ctx:t}=this._processInputParams(e),n=this._def.options;function i(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return t.common.issues.push(...a.ctx.common.issues),a.result;let o=s.map(a=>new gt(a.ctx.common.issues));return D(t,{code:$.invalid_union,unionErrors:o}),ne}if(t.common.async)return Promise.all(n.map(async s=>{let o={...t,common:{...t.common,issues:[]},parent:null};return{result:await s._parseAsync({data:t.data,path:t.path,parent:o}),ctx:o}})).then(i);{let s,o=[];for(let l of n){let c={...t,common:{...t.common,issues:[]},parent:null},u=l._parseSync({data:t.data,path:t.path,parent:c});if(u.status==="valid")return u;u.status==="dirty"&&!s&&(s={result:u,ctx:c}),c.common.issues.length&&o.push(c.common.issues)}if(s)return t.common.issues.push(...s.ctx.common.issues),s.result;let a=o.map(l=>new gt(l));return D(t,{code:$.invalid_union,unionErrors:a}),ne}}get options(){return this._def.options}};Pn.create=(r,e)=>new Pn({options:r,typeName:ie.ZodUnion,...ce(e)});var br=r=>r instanceof Ln?br(r.schema):r instanceof At?br(r.innerType()):r instanceof Nn?[r.value]:r instanceof Fn?r.options:r instanceof Dn?he.objectValues(r.enum):r instanceof Hn?br(r._def.innerType):r instanceof $n?[void 0]:r instanceof Mn?[null]:r instanceof Et?[void 0,...br(r.unwrap())]:r instanceof tr?[null,...br(r.unwrap())]:r instanceof Ms||r instanceof Vn?br(r.unwrap()):r instanceof Bn?br(r._def.innerType):[],ja=class r extends de{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.object)return D(t,{code:$.invalid_type,expected:z.object,received:t.parsedType}),ne;let n=this.discriminator,i=t.data[n],s=this.optionsMap.get(i);return s?t.common.async?s._parseAsync({data:t.data,path:t.path,parent:t}):s._parseSync({data:t.data,path:t.path,parent:t}):(D(t,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),ne)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,t,n){let i=new Map;for(let s of t){let o=br(s.shape[e]);if(!o.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of o){if(i.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);i.set(a,s)}}return new r({typeName:ie.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:i,...ce(n)})}};function $u(r,e){let t=Qt(r),n=Qt(e);if(r===e)return{valid:!0,data:r};if(t===z.object&&n===z.object){let i=he.objectKeys(e),s=he.objectKeys(r).filter(a=>i.indexOf(a)!==-1),o={...r,...e};for(let a of s){let l=$u(r[a],e[a]);if(!l.valid)return{valid:!1};o[a]=l.data}return{valid:!0,data:o}}else if(t===z.array&&n===z.array){if(r.length!==e.length)return{valid:!1};let i=[];for(let s=0;s<r.length;s++){let o=r[s],a=e[s],l=$u(o,a);if(!l.valid)return{valid:!1};i.push(l.data)}return{valid:!0,data:i}}else return t===z.date&&n===z.date&&+r==+e?{valid:!0,data:r}:{valid:!1}}var On=class extends de{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),i=(s,o)=>{if(Va(s)||Va(o))return ne;let a=$u(s.value,o.value);return a.valid?((Ua(s)||Ua(o))&&t.dirty(),{status:t.value,value:a.data}):(D(n,{code:$.invalid_intersection_types}),ne)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,o])=>i(s,o)):i(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};On.create=(r,e,t)=>new On({left:r,right:e,typeName:ie.ZodIntersection,...ce(t)});var er=class r extends de{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.array)return D(n,{code:$.invalid_type,expected:z.array,received:n.parsedType}),ne;if(n.data.length<this._def.items.length)return D(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),ne;!this._def.rest&&n.data.length>this._def.items.length&&(D(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),t.dirty());let s=[...n.data].map((o,a)=>{let l=this._def.items[a]||this._def.rest;return l?l._parse(new Ct(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>Ke.mergeArray(t,o)):Ke.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new r({...this._def,rest:e})}};er.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new er({items:r,typeName:ie.ZodTuple,rest:null,...ce(e)})};var Wa=class r extends de{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.object)return D(n,{code:$.invalid_type,expected:z.object,received:n.parsedType}),ne;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new Ct(n,a,n.path,a)),value:o._parse(new Ct(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ke.mergeObjectAsync(t,i):Ke.mergeObjectSync(t,i)}get element(){return this._def.valueType}static create(e,t,n){return t instanceof de?new r({keyType:e,valueType:t,typeName:ie.ZodRecord,...ce(n)}):new r({keyType:Wr.create(),valueType:e,typeName:ie.ZodRecord,...ce(t)})}},bi=class extends de{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.map)return D(n,{code:$.invalid_type,expected:z.map,received:n.parsedType}),ne;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,l],c)=>({key:i._parse(new Ct(n,a,n.path,[c,"key"])),value:s._parse(new Ct(n,l,n.path,[c,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let l of o){let c=await l.key,u=await l.value;if(c.status==="aborted"||u.status==="aborted")return ne;(c.status==="dirty"||u.status==="dirty")&&t.dirty(),a.set(c.value,u.value)}return{status:t.value,value:a}})}else{let a=new Map;for(let l of o){let c=l.key,u=l.value;if(c.status==="aborted"||u.status==="aborted")return ne;(c.status==="dirty"||u.status==="dirty")&&t.dirty(),a.set(c.value,u.value)}return{status:t.value,value:a}}}};bi.create=(r,e,t)=>new bi({valueType:e,keyType:r,typeName:ie.ZodMap,...ce(t)});var _i=class r extends de{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.set)return D(n,{code:$.invalid_type,expected:z.set,received:n.parsedType}),ne;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(D(n,{code:$.too_small,minimum:i.minSize.value,type:"set",inclusive:!0,exact:!1,message:i.minSize.message}),t.dirty()),i.maxSize!==null&&n.data.size>i.maxSize.value&&(D(n,{code:$.too_big,maximum:i.maxSize.value,type:"set",inclusive:!0,exact:!1,message:i.maxSize.message}),t.dirty());let s=this._def.valueType;function o(l){let c=new Set;for(let u of l){if(u.status==="aborted")return ne;u.status==="dirty"&&t.dirty(),c.add(u.value)}return{status:t.value,value:c}}let a=[...n.data.values()].map((l,c)=>s._parse(new Ct(n,l,n.path,c)));return n.common.async?Promise.all(a).then(l=>o(l)):o(a)}min(e,t){return new r({...this._def,minSize:{value:e,message:X.toString(t)}})}max(e,t){return new r({...this._def,maxSize:{value:e,message:X.toString(t)}})}size(e,t){return this.min(e,t).max(e,t)}nonempty(e){return this.min(1,e)}};_i.create=(r,e)=>new _i({valueType:r,minSize:null,maxSize:null,typeName:ie.ZodSet,...ce(e)});var za=class r extends de{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.function)return D(t,{code:$.invalid_type,expected:z.function,received:t.parsedType}),ne;function n(a,l){return $s({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,fi(),yr].filter(c=>!!c),issueData:{code:$.invalid_arguments,argumentsError:l}})}function i(a,l){return $s({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,fi(),yr].filter(c=>!!c),issueData:{code:$.invalid_return_type,returnTypeError:l}})}let s={errorMap:t.common.contextualErrorMap},o=t.data;if(this._def.returns instanceof qr){let a=this;return nt(async function(...l){let c=new gt([]),u=await a._def.args.parseAsync(l,s).catch(f=>{throw c.addIssue(n(l,f)),c}),p=await Reflect.apply(o,this,u);return await a._def.returns._def.type.parseAsync(p,s).catch(f=>{throw c.addIssue(i(p,f)),c})})}else{let a=this;return nt(function(...l){let c=a._def.args.safeParse(l,s);if(!c.success)throw new gt([n(l,c.error)]);let u=Reflect.apply(o,this,c.data),p=a._def.returns.safeParse(u,s);if(!p.success)throw new gt([i(u,p.error)]);return p.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new r({...this._def,args:er.create(e).rest(_r.create())})}returns(e){return new r({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,t,n){return new r({args:e||er.create([]).rest(_r.create()),returns:t||_r.create(),typeName:ie.ZodFunction,...ce(n)})}},Ln=class extends de{get schema(){return this._def.getter()}_parse(e){let{ctx:t}=this._processInputParams(e);return this._def.getter()._parse({data:t.data,path:t.path,parent:t})}};Ln.create=(r,e)=>new Ln({getter:r,typeName:ie.ZodLazy,...ce(e)});var Nn=class extends de{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return D(t,{received:t.data,code:$.invalid_literal,expected:this._def.value}),ne}return{status:"valid",value:e.data}}get value(){return this._def.value}};Nn.create=(r,e)=>new Nn({value:r,typeName:ie.ZodLiteral,...ce(e)});function ov(r,e){return new Fn({values:r,typeName:ie.ZodEnum,...ce(e)})}var Fn=class r extends de{_parse(e){if(typeof e.data!="string"){let t=this._getOrReturnCtx(e),n=this._def.values;return D(t,{expected:he.joinValues(n),received:t.parsedType,code:$.invalid_type}),ne}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let t=this._getOrReturnCtx(e),n=this._def.values;return D(t,{received:t.data,code:$.invalid_enum_value,options:n}),ne}return nt(e.data)}get options(){return this._def.values}get enum(){let e={};for(let t of this._def.values)e[t]=t;return e}get Values(){let e={};for(let t of this._def.values)e[t]=t;return e}get Enum(){let e={};for(let t of this._def.values)e[t]=t;return e}extract(e,t=this._def){return r.create(e,{...this._def,...t})}exclude(e,t=this._def){return r.create(this.options.filter(n=>!e.includes(n)),{...this._def,...t})}};Fn.create=ov;var Dn=class extends de{_parse(e){let t=he.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==z.string&&n.parsedType!==z.number){let i=he.objectValues(t);return D(n,{expected:he.joinValues(i),received:n.parsedType,code:$.invalid_type}),ne}if(this._cache||(this._cache=new Set(he.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=he.objectValues(t);return D(n,{received:n.data,code:$.invalid_enum_value,options:i}),ne}return nt(e.data)}get enum(){return this._def.values}};Dn.create=(r,e)=>new Dn({values:r,typeName:ie.ZodNativeEnum,...ce(e)});var qr=class extends de{unwrap(){return this._def.type}_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.promise&&t.common.async===!1)return D(t,{code:$.invalid_type,expected:z.promise,received:t.parsedType}),ne;let n=t.parsedType===z.promise?t.data:Promise.resolve(t.data);return nt(n.then(i=>this._def.type.parseAsync(i,{path:t.path,errorMap:t.common.contextualErrorMap})))}};qr.create=(r,e)=>new qr({type:r,typeName:ie.ZodPromise,...ce(e)});var At=class extends de{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ie.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:t,ctx:n}=this._processInputParams(e),i=this._def.effect||null,s={addIssue:o=>{D(n,o),o.fatal?t.abort():t.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),i.type==="preprocess"){let o=i.transform(n.data,s);if(n.common.async)return Promise.resolve(o).then(async a=>{if(t.value==="aborted")return ne;let l=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return l.status==="aborted"?ne:l.status==="dirty"?Cn(l.value):t.value==="dirty"?Cn(l.value):l});{if(t.value==="aborted")return ne;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?ne:a.status==="dirty"?Cn(a.value):t.value==="dirty"?Cn(a.value):a}}if(i.type==="refinement"){let o=a=>{let l=i.refinement(a,s);if(n.common.async)return Promise.resolve(l);if(l instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?ne:(a.status==="dirty"&&t.dirty(),o(a.value),{status:t.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?ne:(a.status==="dirty"&&t.dirty(),o(a.value).then(()=>({status:t.value,value:a.value}))))}if(i.type==="transform")if(n.common.async===!1){let o=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!jr(o))return ne;let a=i.transform(o.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:t.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(o=>jr(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:t.value,value:a})):ne);he.assertNever(i)}};At.create=(r,e,t)=>new At({schema:r,typeName:ie.ZodEffects,effect:e,...ce(t)});At.createWithPreprocess=(r,e,t)=>new At({schema:e,effect:{type:"preprocess",transform:r},typeName:ie.ZodEffects,...ce(t)});var Et=class extends de{_parse(e){return this._getType(e)===z.undefined?nt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Et.create=(r,e)=>new Et({innerType:r,typeName:ie.ZodOptional,...ce(e)});var tr=class extends de{_parse(e){return this._getType(e)===z.null?nt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};tr.create=(r,e)=>new tr({innerType:r,typeName:ie.ZodNullable,...ce(e)});var Hn=class extends de{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return t.parsedType===z.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:t.path,parent:t})}removeDefault(){return this._def.innerType}};Hn.create=(r,e)=>new Hn({innerType:r,typeName:ie.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...ce(e)});var Bn=class extends de{_parse(e){let{ctx:t}=this._processInputParams(e),n={...t,common:{...t.common,issues:[]}},i=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return gi(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new gt(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new gt(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Bn.create=(r,e)=>new Bn({innerType:r,typeName:ie.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...ce(e)});var xi=class extends de{_parse(e){if(this._getType(e)!==z.nan){let n=this._getOrReturnCtx(e);return D(n,{code:$.invalid_type,expected:z.nan,received:n.parsedType}),ne}return{status:"valid",value:e.data}}};xi.create=r=>new xi({typeName:ie.ZodNaN,...ce(r)});var US=Symbol("zod_brand"),Ms=class extends de{_parse(e){let{ctx:t}=this._processInputParams(e),n=t.data;return this._def.type._parse({data:n,path:t.path,parent:t})}unwrap(){return this._def.type}},Ps=class r extends de{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?ne:s.status==="dirty"?(t.dirty(),Cn(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let i=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?ne:i.status==="dirty"?(t.dirty(),{status:"dirty",value:i.value}):this._def.out._parseSync({data:i.value,path:n.path,parent:n})}}static create(e,t){return new r({in:e,out:t,typeName:ie.ZodPipeline})}},Vn=class extends de{_parse(e){let t=this._def.innerType._parse(e),n=i=>(jr(i)&&(i.value=Object.freeze(i.value)),i);return gi(t)?t.then(i=>n(i)):n(t)}unwrap(){return this._def.innerType}};Vn.create=(r,e)=>new Vn({innerType:r,typeName:ie.ZodReadonly,...ce(e)});function rv(r,e){let t=typeof r=="function"?r(e):typeof r=="string"?{message:r}:r;return typeof t=="string"?{message:t}:t}function av(r,e={},t){return r?zr.create().superRefine((n,i)=>{let s=r(n);if(s instanceof Promise)return s.then(o=>{if(!o){let a=rv(e,n),l=a.fatal??t??!0;i.addIssue({code:"custom",...a,fatal:l})}});if(!s){let o=rv(e,n),a=o.fatal??t??!0;i.addIssue({code:"custom",...o,fatal:a})}}):zr.create()}var jS={object:mt.lazycreate},ie;(function(r){r.ZodString="ZodString",r.ZodNumber="ZodNumber",r.ZodNaN="ZodNaN",r.ZodBigInt="ZodBigInt",r.ZodBoolean="ZodBoolean",r.ZodDate="ZodDate",r.ZodSymbol="ZodSymbol",r.ZodUndefined="ZodUndefined",r.ZodNull="ZodNull",r.ZodAny="ZodAny",r.ZodUnknown="ZodUnknown",r.ZodNever="ZodNever",r.ZodVoid="ZodVoid",r.ZodArray="ZodArray",r.ZodObject="ZodObject",r.ZodUnion="ZodUnion",r.ZodDiscriminatedUnion="ZodDiscriminatedUnion",r.ZodIntersection="ZodIntersection",r.ZodTuple="ZodTuple",r.ZodRecord="ZodRecord",r.ZodMap="ZodMap",r.ZodSet="ZodSet",r.ZodFunction="ZodFunction",r.ZodLazy="ZodLazy",r.ZodLiteral="ZodLiteral",r.ZodEnum="ZodEnum",r.ZodEffects="ZodEffects",r.ZodNativeEnum="ZodNativeEnum",r.ZodOptional="ZodOptional",r.ZodNullable="ZodNullable",r.ZodDefault="ZodDefault",r.ZodCatch="ZodCatch",r.ZodPromise="ZodPromise",r.ZodBranded="ZodBranded",r.ZodPipeline="ZodPipeline",r.ZodReadonly="ZodReadonly"})(ie||(ie={}));var WS=(r,e={message:`Input not instance of ${r.name}`})=>av(t=>t instanceof r,e),lv=Wr.create,cv=An.create,zS=xi.create,qS=Tn.create,uv=Rn.create,ZS=In.create,GS=vi.create,KS=$n.create,YS=Mn.create,XS=zr.create,JS=_r.create,QS=Bt.create,ek=yi.create,tk=xr.create,rk=mt.create,nk=mt.strictCreate,ik=Pn.create,sk=ja.create,ok=On.create,ak=er.create,lk=Wa.create,ck=bi.create,uk=_i.create,dk=za.create,pk=Ln.create,hk=Nn.create,fk=Fn.create,gk=Dn.create,mk=qr.create,vk=At.create,yk=Et.create,bk=tr.create,_k=At.createWithPreprocess,xk=Ps.create,wk=()=>lv().optional(),Sk=()=>cv().optional(),kk=()=>uv().optional(),Ek={string:(r=>Wr.create({...r,coerce:!0})),number:(r=>An.create({...r,coerce:!0})),boolean:(r=>Rn.create({...r,coerce:!0})),bigint:(r=>Tn.create({...r,coerce:!0})),date:(r=>In.create({...r,coerce:!0}))};var Ck=ne;var lM=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),cM={title:d.string().max(200).optional().describe("Authoring-only: short label shown on the action plan dashboard. Stripped before serving to the runtime SDK."),description:d.string().max(1e3).optional().describe("Authoring-only: one-sentence explanation of what this action does and why. Stripped before serving to the runtime SDK."),validation:d.array(d.string().max(500)).max(10).optional().describe("Authoring-only: ordered steps a reviewer can follow to trigger this action and visually confirm it works. Each entry is one step. Stripped before serving to the runtime SDK.")},Ak=["ui.click","ui.scroll","ui.input","ui.change","ui.submit","ui.hover","ui.idle","ui.scroll_thrash","ui.focus_bounce","nav.page_view","nav.page_leave","behavior.rage_click","behavior.hesitation","behavior.confusion"],Tk=d.enum(Ak).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),Rk=["time_on_page","page_views","scroll_depth"],Ik=d.enum(Rk).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage."),$k=d.object({type:d.literal("page_url"),url:d.string().describe('URL path to match (e.g. "/pricing", "/dashboard")')}).describe('Fires when the current page URL matches. Use for page-specific actions. Example: {"type": "page_url", "url": "/pricing"}'),Mk=d.object({type:d.literal("route"),routeId:d.string().describe("Named route ID from the route filter")}).describe("Fires when the current route matches a named route ID."),Pk=d.object({type:d.literal("anchor_visible"),anchorId:d.string().describe("CSS selector of the anchor element"),state:d.enum(["visible","present","absent"]).describe('"visible" = in viewport, "present" = in DOM, "absent" = not in DOM')}).describe(`Fires based on a DOM element's visibility state. Example: {"type": "anchor_visible", "anchorId": "#cta-button", "state": "visible"}`),Ok=d.object({type:d.literal("event_occurred"),eventName:d.string().describe('Event name (e.g. "ui.click", "$pageview")'),withinMs:d.number().optional().describe("Time window in ms. Omit = any time this session.")}).describe('Fires when a specific event has occurred during this session. Example: {"type": "event_occurred", "eventName": "ui.click", "withinMs": 5000}'),Lk=d.object({type:d.literal("state_equals"),key:d.string().describe("Key in the SDK persistent state store (localStorage). Only valid for keys the host app explicitly sets via syntro.state.set()."),value:d.unknown().describe("Expected value to match against")}).describe("Checks the SDK persistent state store (localStorage). ONLY for host-app state set via syntro.state.set() \u2014 NOT for user attributes like region, device, or UTM params (those are handled by segment targeting). Do NOT use this for targeting. If you do not know the valid state keys, do not use this condition type."),Nk=d.object({type:d.literal("viewport"),minWidth:d.number().optional().describe("Minimum viewport width in pixels"),maxWidth:d.number().optional().describe("Maximum viewport width in pixels"),minHeight:d.number().optional().describe("Minimum viewport height in pixels"),maxHeight:d.number().optional().describe("Maximum viewport height in pixels")}).describe('Fires based on viewport (screen) size. Use for responsive behavior. Example: {"type": "viewport", "minWidth": 768} \u2014 fires on tablet and larger.'),Fk=d.object({type:d.literal("session_metric"),key:Ik,operator:d.enum(["gte","lte","eq","gt","lt"]),threshold:d.number().describe("Numeric threshold to compare against")}).describe('Fires when a session metric crosses a threshold. Valid keys: "time_on_page" (seconds), "page_views" (count), "scroll_depth" (0-100). Example: {"type": "session_metric", "key": "time_on_page", "operator": "gte", "threshold": 30}'),Dk=d.object({type:d.literal("dismissed"),key:d.string().describe("Dismissal key (usually a tile or action ID)"),inverted:d.boolean().optional().describe("When true, fires if NOT dismissed (default behavior)")}).describe("Checks if an item has been dismissed by the user. Use with inverted: true to show only if not dismissed."),Hk=d.object({type:d.literal("cooldown_active"),key:d.string().describe("Cooldown key"),inverted:d.boolean().optional().describe("When true, fires if cooldown is NOT active")}).describe("Checks if a cooldown timer is currently active. Use to prevent showing the same intervention too frequently."),Bk=d.object({type:d.literal("frequency_limit"),key:d.string().describe("Frequency counter key"),limit:d.number().describe("Maximum allowed count"),inverted:d.boolean().optional().describe("When true, fires if limit NOT reached")}).describe("Checks if a frequency limit has been reached. Use to cap how many times an action fires per session."),Vk=d.object({equals:d.union([d.string(),d.number(),d.boolean()]).optional(),contains:d.string().optional()}).describe("Match operator for counter filters. Exactly one of equals or contains must be specified."),Uk=d.object({events:d.array(Tk).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),Vk).optional().describe("Property filters. Keys are event prop names or element-chain fields (tag_name, $el_text, attr__*). All entries AND together.")}).describe("Defines what events to count. Registered as an accumulator predicate at config-load time."),jk=d.object({type:d.literal("event_count"),key:d.string().describe("Unique key for this counter (used for accumulator registration)"),operator:d.enum(["gte","lte","eq","gt","lt"]),count:d.number().int().min(0).describe("Target count threshold"),withinMs:d.number().positive().optional().describe("Time window in ms. Omit = count across entire session."),counter:Uk.optional().describe("Inline counter definition. Defines what events to count.")}).describe('Fires when accumulated event count crosses a threshold. Most powerful trigger type. Example: {"type": "event_count", "key": "pricing-clicks", "operator": "gte", "count": 3, "counter": {"events": ["ui.click"], "match": {"attr__data-cta": {"contains": "pricing"}}}}'),Wk=d.discriminatedUnion("type",[$k,Mk,Pk,Ok,Lk,Nk,Fk,Dk,Hk,Bk,jk]),zk=d.object({conditions:d.array(Wk).describe("Array of conditions \u2014 ALL must match (AND logic) for this rule to fire."),value:d.unknown().describe("Value returned when all conditions match. For triggerWhen: true = fire the action.")}).describe("A single rule. ALL conditions must match (AND logic). Rules in a strategy are evaluated top-to-bottom \u2014 first rule where all conditions match wins and returns its value."),qk=d.object({type:d.literal("rules"),rules:d.array(zk).describe("Ordered list of rules. Evaluated top-to-bottom \u2014 first match wins."),default:d.unknown().describe("Fallback value when no rule matches. For triggerWhen: false = do not fire by default.")}).describe("Rule-based strategy. Evaluates rules top-to-bottom. First rule where ALL conditions match returns its value. If no rule matches, returns default. For triggerWhen: set value=true on matching rules, default=false."),Zk=d.object({type:d.literal("score"),field:d.string(),threshold:d.number(),above:d.unknown(),below:d.unknown()}).describe("Score-based strategy. Compares a field value against a threshold."),Gk=d.object({type:d.literal("model"),modelId:d.string(),inputs:d.array(d.string()),outputMapping:d.record(d.string(),d.unknown()),default:d.unknown()}).describe("ML model strategy. Sends inputs to a model and maps outputs."),Kk=d.object({type:d.literal("external"),endpoint:d.string(),method:d.enum(["GET","POST"]).optional(),default:d.unknown(),timeoutMs:d.number().optional()}).describe("External API strategy. Calls an endpoint to determine the value."),Yk=d.discriminatedUnion("type",[qk,Zk,Gk,Kk]),uM=Yk.nullable().optional(),dM=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),pM=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional(),Xk='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"',Jk={"\u{1F4B5}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F3DB}\uFE0F":['<line x1="3" x2="21" y1="22" y2="22"/>','<line x1="6" x2="6" y1="18" y2="11"/>','<line x1="10" x2="10" y1="18" y2="11"/>','<line x1="14" x2="14" y1="18" y2="11"/>','<line x1="18" x2="18" y1="18" y2="11"/>','<polygon points="12 2 20 7 4 7"/>'],"\u23ED\uFE0F":['<polygon points="5 4 15 12 5 20 5 4"/>','<line x1="19" x2="19" y1="5" y2="19"/>'],"\u27A1\uFE0F":['<path d="M5 12h14"/>','<path d="m12 5 7 7-7 7"/>'],"\u{1F4A1}":['<path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/>','<path d="M9 18h6"/>','<path d="M10 22h4"/>'],"\u{1F4B0}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F4CB}":['<rect width="8" height="4" x="8" y="2" rx="1" ry="1"/>','<path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"/>','<path d="M12 11h4"/>','<path d="M12 16h4"/>','<path d="M8 11h.01"/>','<path d="M8 16h.01"/>'],"\u2705":['<path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/>','<path d="m9 11 3 3L22 4"/>'],"\u26A0\uFE0F":['<path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"/>','<path d="M12 9v4"/>','<path d="M12 17h.01"/>'],"\u{1F6E1}\uFE0F":['<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/>'],"\u{1F4C8}":['<polyline points="22 7 13.5 15.5 8.5 10.5 2 17"/>','<polyline points="16 7 22 7 22 13"/>'],"\u{1F52C}":['<path d="M6 18h8"/>','<path d="M3 22h18"/>','<path d="M14 22a7 7 0 1 0 0-14h-1"/>','<path d="M9 14h2"/>','<path d="M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z"/>','<path d="M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3"/>'],"\u{1F48A}":['<path d="m10.5 20.5 10-10a4.95 4.95 0 1 0-7-7l-10 10a4.95 4.95 0 1 0 7 7Z"/>','<path d="m8.5 8.5 7 7"/>'],"\u{1F4C4}":['<path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/>','<path d="M14 2v4a2 2 0 0 0 2 2h4"/>','<path d="M10 9H8"/>','<path d="M16 13H8"/>','<path d="M16 17H8"/>'],"\u{1F9EA}":['<path d="M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2"/>','<path d="M6.453 15h11.094"/>','<path d="M8.5 2h7"/>'],"\u{1F501}":['<path d="m17 2 4 4-4 4"/>','<path d="M3 11v-1a4 4 0 0 1 4-4h14"/>','<path d="m7 22-4-4 4-4"/>','<path d="M21 13v1a4 4 0 0 1-4 4H3"/>'],"\u{1F9E0}":['<path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"/>','<path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"/>','<path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"/>','<path d="M17.599 6.5a3 3 0 0 0 .399-1.375"/>','<path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"/>','<path d="M3.477 10.896a4 4 0 0 1 .585-.396"/>','<path d="M19.938 10.5a4 4 0 0 1 .585.396"/>','<path d="M6 18a4 4 0 0 1-1.967-.516"/>','<path d="M19.967 17.484A4 4 0 0 1 18 18"/>'],"\u{1F319}":['<path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"/>'],"\u{1F4E6}":['<path d="M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z"/>','<path d="M12 22V12"/>','<path d="m3.3 7 8.7 5 8.7-5"/>','<path d="m7.5 4.27 9 5.15"/>'],"\u{1F69A}":['<path d="M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2"/>','<path d="M15 18H9"/>','<path d="M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14"/>','<circle cx="17" cy="18" r="2"/>','<circle cx="7" cy="18" r="2"/>'],"\u{1F331}":['<path d="M7 20h10"/>','<path d="M10 20c5.5-2.5.8-6.4 3-10"/>','<path d="M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z"/>','<path d="M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z"/>'],"\u26A1":['<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"/>'],"\u{1F525}":['<path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"/>'],"\u{1F333}":['<path d="M12 22V8"/>','<path d="m17 8-5-6-5 6"/>','<path d="M12 12c-2-2-4-2-4-2 0 0 0 4 2 6 1.5 1.5 3 1 4 0"/>','<path d="M12 12c2-2 4-2 4-2 0 0 0 4-2 6-1.5 1.5-3 1-4 0"/>'],"\u{1F33F}":['<path d="M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19.2 2.96a1 1 0 0 1 1.8.5c0 6-2 11-9 16.5"/>','<path d="M2 21c0-3 1.85-5.36 5.08-6"/>'],"\u2753":['<circle cx="12" cy="12" r="10"/>','<path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/>','<path d="M12 17h.01"/>'],"\u{1F9ED}":['<circle cx="12" cy="12" r="10"/>','<polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/>'],"\u{1F4DD}":['<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/>','<polyline points="14 2 14 8 20 8"/>','<line x1="16" y1="13" x2="8" y2="13"/>','<line x1="16" y1="17" x2="8" y2="17"/>','<line x1="10" y1="9" x2="8" y2="9"/>'],"\u{1F3AF}":['<polygon points="12 2 2 7 12 12 22 7 12 2"/>','<polyline points="2 17 12 22 22 17"/>','<polyline points="2 12 12 17 22 12"/>'],"\u{1F3C6}":['<path d="M6 9H4.5a2.5 2.5 0 0 1 0-5H6"/>','<path d="M18 9h1.5a2.5 2.5 0 0 0 0-5H18"/>','<path d="M4 22h16"/>','<path d="M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22"/>','<path d="M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22"/>','<path d="M18 2H6v7a6 6 0 0 0 12 0V2Z"/>'],"\u2728":['<path d="m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z"/>','<path d="M5 3v4"/>','<path d="M19 17v4"/>','<path d="M3 5h4"/>','<path d="M17 19h4"/>'],"\u{1F4AC}":['<path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"/>'],"\u{1F3AE}":['<line x1="6" y1="11" x2="10" y2="11"/>','<line x1="8" y1="9" x2="8" y2="13"/>','<line x1="15" y1="12" x2="15.01" y2="12"/>','<line x1="18" y1="10" x2="18.01" y2="10"/>','<path d="M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z"/>'],"\u23F1\uFE0F":['<line x1="10" y1="2" x2="14" y2="2"/>','<line x1="12" y1="14" x2="12" y2="8"/>','<circle cx="12" cy="14" r="8"/>'],"\u{1F4D6}":['<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/>','<path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/>'],"\u{1F514}":['<path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"/>','<path d="M10.3 21a1.94 1.94 0 0 0 3.4 0"/>'],"\u{1F393}":['<path d="M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z"/>','<path d="M22 10v6"/>','<path d="M6 12.5V16a6 3 0 0 0 12 0v-3.5"/>'],"\u23F0":['<circle cx="12" cy="13" r="8"/>','<path d="M12 9v4l2 2"/>','<path d="M5 3 2 6"/>','<path d="m22 6-3-3"/>','<path d="M6.38 18.7 4 21"/>','<path d="M17.64 18.67 20 21"/>'],"\u{1F504}":['<path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/>','<path d="M21 3v5h-5"/>','<path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/>','<path d="M8 16H3v5"/>'],"\u{1F464}":['<path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/>','<circle cx="12" cy="7" r="4"/>'],"\u{1F3E0}":['<path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"/>','<path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>'],"\u{1F6D2}":['<circle cx="8" cy="21" r="1"/>','<circle cx="19" cy="21" r="1"/>','<path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"/>'],"\u{1F4CA}":['<path d="M3 3v18h18"/>','<path d="M18 17V9"/>','<path d="M13 17V5"/>','<path d="M8 17v-3"/>'],"\u{1F4C9}":['<polyline points="22 17 13.5 8.5 8.5 13.5 2 7"/>','<polyline points="16 17 22 17 22 11"/>'],"\u{1F967}":['<path d="M21 12c.552 0 1.005-.449.95-.998a10 10 0 0 0-8.953-8.951c-.55-.055-.998.398-.998.95v8a1 1 0 0 0 1 1z"/>','<path d="M21.21 15.89A10 10 0 1 1 8 2.83"/>'],"\u{1F4B9}":['<path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.5.5 0 0 1-.96 0L9.24 2.18a.5.5 0 0 0-.96 0l-2.35 8.36A2 2 0 0 1 4.02 12H2"/>'],"\u{1F321}\uFE0F":['<path d="M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z"/>']};function dv(r,e={}){let t=Jk[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${Xk} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var pv=r=>{throw TypeError(r)};var Mu=(r,e,t)=>e.has(r)||pv("Cannot "+t),Pu=(r,e,t)=>(Mu(r,e,"read from private field"),t?t.call(r):e.get(r)),qa=(r,e,t)=>e.has(r)?pv("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),Os=(r,e,t,n)=>(Mu(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),Ye=(r,e,t)=>(Mu(r,e,"access private method"),t);function Qk(r){let{href:e,external:t,windowOrigin:n,isIframe:i}=r;if(i||n==="null")return{kind:"open",url:e};if(t)return{kind:"open",url:e};let o;try{o=new URL(e,n)}catch{return{kind:"fullnav",url:e}}return o.origin!==n?{kind:"fullnav",url:o.toString()}:{kind:"spa",url:o}}function eE(){if(typeof window>"u")return!1;try{return window!==window.top}catch{return!0}}var tE="#6a59ce",hv="#677384",fv="#87919f";function rE(r){return r.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function nE(r){return dv(r)||rE(r)}function gv(r){if(typeof window>"u")return!1;let e=window.location.pathname;return r.some(t=>{let n=t.split("?")[0].split("#")[0];return n.endsWith("/**")?e.startsWith(n.slice(0,-3)):e===n})}function iE(r){let e=[{boxShadow:"0 0 0 0 rgba(13, 148, 136, 0.5)"},{boxShadow:"0 0 0 8px rgba(13, 148, 136, 0)"}];r.animate(e,{duration:600,iterations:3,easing:"ease-out"})}function sE(r){return r==="dark"?"dark":r==="light"?"light":typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var Ls,Ns,qe,Ou,Lu,vv,Fu,yv,bv,_v,Fs,Nu,xv=class extends be{constructor(){super(...arguments),qa(this,qe),this.config={expandBehavior:"single",theme:"auto",actions:[]},this.runtime=void 0,this.instanceId="nav-widget",this._expandedIds=new Set,this._renderTick=0,this._hoveredId=null,qa(this,Ls,null),qa(this,Ns,null)}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),Ye(this,qe,Ou).call(this)}disconnectedCallback(){super.disconnectedCallback(),Ye(this,qe,Lu).call(this)}updated(r){r.has("runtime")&&(Ye(this,qe,Lu).call(this),Ye(this,qe,Ou).call(this))}render(){let r=Ye(this,qe,vv).call(this),e=Ye(this,qe,Fu).call(this),t=T({fontFamily:"var(--sc-font-family, system-ui, -apple-system, sans-serif)",maxWidth:"100%",overflow:"hidden",backgroundColor:"transparent",color:"inherit"}),n=T({display:"flex",flexDirection:"column",gap:"var(--sc-content-item-gap, 6px)"}),i=T({fontSize:"var(--sc-content-category-font-size, 12px)",fontWeight:"600",textTransform:"uppercase",letterSpacing:"0.05em",padding:"var(--sc-content-category-padding, 8px 4px 4px 4px)",color:e==="dark"?fv:hv}),s=T({fontSize:"13px",padding:"16px",textAlign:"center",color:e==="dark"?hv:fv});if(r.length===0)return N`
303
303
  <div
304
304
  style=${t}
305
305
  data-adaptive-id=${this.instanceId}
@@ -310,81 +310,81 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
310
310
  you're doing.
311
311
  </div>
312
312
  </div>
313
- `;let o=new Map;for(let l of r){let c=l.config.category;o.has(c)||o.set(c,[]),o.get(c).push(l)}let a=r.some(l=>l.config.category);return L`
313
+ `;let o=new Map;for(let l of r){let c=l.config.category;o.has(c)||o.set(c,[]),o.get(c).push(l)}let a=r.some(l=>l.config.category);return N`
314
314
  <div
315
315
  style=${t}
316
316
  data-adaptive-id=${this.instanceId}
317
317
  data-adaptive-type="adaptive-nav"
318
318
  >
319
319
  <div style=${n}>
320
- ${a?Array.from(o.entries()).map(([l,c])=>L`
321
- ${l?L`<div style=${i} data-category-header=${l}>${l}</div>`:J}
322
- ${c.map((u,p)=>Ye(this,qe,Cu).call(this,u,p,c.length))}
323
- `):r.map((l,c)=>Ye(this,qe,Cu).call(this,l,c,r.length))}
320
+ ${a?Array.from(o.entries()).map(([l,c])=>N`
321
+ ${l?N`<div style=${i} data-category-header=${l}>${l}</div>`:ee}
322
+ ${c.map((u,p)=>Ye(this,qe,Nu).call(this,u,p,c.length))}
323
+ `):r.map((l,c)=>Ye(this,qe,Nu).call(this,l,c,r.length))}
324
324
  </div>
325
325
  </div>
326
- `}};$s=new WeakMap;Ms=new WeakMap;qe=new WeakSet;ku=function(){this.runtime&&(Is(this,$s,this.runtime.context.subscribe(()=>{this._renderTick+=1})),this.runtime.accumulator?.subscribe&&Is(this,Ms,this.runtime.accumulator.subscribe(()=>{this._renderTick+=1})))};Eu=function(){var r,e;(r=Su(this,$s))==null||r.call(this),Is(this,$s,null),(e=Su(this,Ms))==null||e.call(this),Is(this,Ms,null)};Wm=function(){return this._renderTick,this.runtime?this.config.actions.filter(r=>{if(!r.triggerWhen)return!0;try{return this.runtime.evaluateSync(r.triggerWhen).value}catch{return!1}}):this.config.actions};Au=function(){return hk(this.config.theme)};zm=function(r){let e=this._expandedIds.has(r),t;if(this.config.expandBehavior==="single"){for(let n of this._expandedIds)n!==r&&Ye(this,qe,Os).call(this,"nav:toggled",{tipId:n,expanded:!1});t=e?new Set:new Set([r])}else t=new Set(this._expandedIds),e?t.delete(r):t.add(r);Ye(this,qe,Os).call(this,"nav:toggled",{tipId:r,expanded:!e}),this._expandedIds=t};qm=function(r,e){let t=r.trim().toLowerCase();if(t.startsWith("javascript:")||t.startsWith("data:"))return;Ye(this,qe,Os).call(this,"nav:tip_clicked",{href:r,external:e}),this.dispatchEvent(new CustomEvent("nav-tip-clicked",{bubbles:!0,detail:{href:r,external:e,instanceId:this.instanceId}}));let n=ak({href:r,external:e,windowOrigin:typeof window<"u"?window.location.origin:"",isIframe:lk()});if(n.kind==="open"){window.open(n.url,"_blank","noopener,noreferrer");return}if(n.kind==="fullnav"){window.location.href=n.url;return}n.url.search=window.location.search,Km(n.url.toString())||(window.history.pushState(null,"",n.url.toString()),window.dispatchEvent(new PopStateEvent("popstate")))};Zm=function(r){let e=document.querySelector(r.selector);e instanceof HTMLElement&&(Ye(this,qe,Os).call(this,"nav:tip_focused",{selector:r.selector,route:r.route}),this.dispatchEvent(new CustomEvent("nav-tip-focused",{bubbles:!0,detail:{selector:r.selector,instanceId:this.instanceId}})),e.scrollIntoView({behavior:"smooth",block:"center"}),pk(e),setTimeout(()=>e.focus(),400))};Os=function(r,e){this.runtime?.events.publish(r,{instanceId:this.instanceId,timestamp:Date.now(),...e})};Cu=function(r,e,t){let{id:n,title:i,description:s,href:o,icon:a,external:l,anchor:c,category:u}=r.config,p=this._expandedIds.has(n),h=e===t-1,f=this._hoveredId===n,v=Ye(this,qe,Au).call(this),g=c?Array.isArray(c.route)?c.route[0]:c.route:o,m=c?jm(Array.isArray(c.route)?c.route:[c.route]):g?jm([g]):!1,y=c?.selector&&c.selector!=="*",x=m&&y,S=!!g||x,b=x?"Focus \u2192":l?"Go \u2197":"Go \u2192",w=R({borderRadius:"var(--sc-content-border-radius, 8px)",overflow:"hidden",transition:"box-shadow 0.2s ease",backgroundColor:"var(--sc-content-background)",border:"var(--sc-content-border)",...p?{boxShadow:v==="dark"?"0 4px 12px rgba(0, 0, 0, 0.15)":"0 4px 12px rgba(0, 0, 0, 0.08)"}:{},...h?{}:{borderBottom:"var(--sc-content-item-divider, none)"}}),C=R({display:"flex",alignItems:"center",gap:"8px",width:"100%",padding:"var(--sc-content-item-padding, 12px 16px)",border:"none",cursor:"pointer",fontSize:"var(--sc-content-item-font-size, 15px)",fontWeight:"500",fontFamily:"inherit",textAlign:"left",transition:"background-color 0.15s ease",backgroundColor:f?"var(--sc-content-background-hover)":"transparent",color:"var(--sc-content-text-color)"}),_=R({fontSize:"20px",transition:"transform 0.2s ease",marginLeft:"auto",flexShrink:"0",color:"var(--sc-content-chevron-color, currentColor)",transform:p?"rotate(90deg)":"rotate(0deg)"}),A=R({overflow:"hidden",transition:"max-height 0.25s ease, padding-bottom 0.25s ease",padding:"var(--sc-content-body-padding, 0 16px 12px 16px)",color:"var(--sc-content-text-secondary-color)",maxHeight:p?"500px":"0",paddingBottom:p?"16px":"0"}),$=R({fontSize:"var(--sc-content-body-font-size, 14px)",lineHeight:"1.5",margin:"0"}),T=R({display:"inline-flex",alignItems:"center",gap:"4px",marginTop:"10px",padding:"6px 12px",borderRadius:"6px",textDecoration:"none",fontSize:"13px",fontWeight:"500",cursor:"pointer",border:"none",transition:"background-color 0.15s ease",backgroundColor:`var(--sc-color-primary, ${ck})`,color:"#ffffff"}),O=R({fontSize:"16px",flexShrink:"0"}),Y=F=>{F.preventDefault(),F.stopPropagation(),x&&c?Ye(this,qe,Zm).call(this,c):g&&Ye(this,qe,qm).call(this,g,l??!1)};return L`
326
+ `}};Ls=new WeakMap;Ns=new WeakMap;qe=new WeakSet;Ou=function(){this.runtime&&(Os(this,Ls,this.runtime.context.subscribe(()=>{this._renderTick+=1})),this.runtime.accumulator?.subscribe&&Os(this,Ns,this.runtime.accumulator.subscribe(()=>{this._renderTick+=1})))};Lu=function(){var r,e;(r=Pu(this,Ls))==null||r.call(this),Os(this,Ls,null),(e=Pu(this,Ns))==null||e.call(this),Os(this,Ns,null)};vv=function(){return this._renderTick,this.runtime?this.config.actions.filter(r=>{if(!r.triggerWhen)return!0;try{return this.runtime.evaluateSync(r.triggerWhen).value}catch{return!1}}):this.config.actions};Fu=function(){return sE(this.config.theme)};yv=function(r){let e=this._expandedIds.has(r),t;if(this.config.expandBehavior==="single"){for(let n of this._expandedIds)n!==r&&Ye(this,qe,Fs).call(this,"nav:toggled",{tipId:n,expanded:!1});t=e?new Set:new Set([r])}else t=new Set(this._expandedIds),e?t.delete(r):t.add(r);Ye(this,qe,Fs).call(this,"nav:toggled",{tipId:r,expanded:!e}),this._expandedIds=t};bv=function(r,e){let t=r.trim().toLowerCase();if(t.startsWith("javascript:")||t.startsWith("data:"))return;Ye(this,qe,Fs).call(this,"nav:tip_clicked",{href:r,external:e}),this.dispatchEvent(new CustomEvent("nav-tip-clicked",{bubbles:!0,detail:{href:r,external:e,instanceId:this.instanceId}}));let n=Qk({href:r,external:e,windowOrigin:typeof window<"u"?window.location.origin:"",isIframe:eE()});if(n.kind==="open"){window.open(n.url,"_blank","noopener,noreferrer");return}if(n.kind==="fullnav"){window.location.href=n.url;return}n.url.search=window.location.search,wv(n.url.toString())||(window.history.pushState(null,"",n.url.toString()),window.dispatchEvent(new PopStateEvent("popstate")))};_v=function(r){let e=document.querySelector(r.selector);e instanceof HTMLElement&&(Ye(this,qe,Fs).call(this,"nav:tip_focused",{selector:r.selector,route:r.route}),this.dispatchEvent(new CustomEvent("nav-tip-focused",{bubbles:!0,detail:{selector:r.selector,instanceId:this.instanceId}})),e.scrollIntoView({behavior:"smooth",block:"center"}),iE(e),setTimeout(()=>e.focus(),400))};Fs=function(r,e){this.runtime?.events.publish(r,{instanceId:this.instanceId,timestamp:Date.now(),...e})};Nu=function(r,e,t){let{id:n,title:i,description:s,href:o,icon:a,external:l,anchor:c,category:u}=r.config,p=this._expandedIds.has(n),h=e===t-1,f=this._hoveredId===n,v=Ye(this,qe,Fu).call(this),g=c?Array.isArray(c.route)?c.route[0]:c.route:o,m=c?gv(Array.isArray(c.route)?c.route:[c.route]):g?gv([g]):!1,y=c?.selector&&c.selector!=="*",x=m&&y,S=!!g||x,b=x?"Focus \u2192":l?"Go \u2197":"Go \u2192",w=T({borderRadius:"var(--sc-content-border-radius, 8px)",overflow:"hidden",transition:"box-shadow 0.2s ease",backgroundColor:"var(--sc-content-background)",border:"var(--sc-content-border)",...p?{boxShadow:v==="dark"?"0 4px 12px rgba(0, 0, 0, 0.15)":"0 4px 12px rgba(0, 0, 0, 0.08)"}:{},...h?{}:{borderBottom:"var(--sc-content-item-divider, none)"}}),A=T({display:"flex",alignItems:"center",gap:"8px",width:"100%",padding:"var(--sc-content-item-padding, 12px 16px)",border:"none",cursor:"pointer",fontSize:"var(--sc-content-item-font-size, 15px)",fontWeight:"500",fontFamily:"inherit",textAlign:"left",transition:"background-color 0.15s ease",backgroundColor:f?"var(--sc-content-background-hover)":"transparent",color:"var(--sc-content-text-color)"}),_=T({fontSize:"20px",transition:"transform 0.2s ease",marginLeft:"auto",flexShrink:"0",color:"var(--sc-content-chevron-color, currentColor)",transform:p?"rotate(90deg)":"rotate(0deg)"}),C=T({overflow:"hidden",transition:"max-height 0.25s ease, padding-bottom 0.25s ease",padding:"var(--sc-content-body-padding, 0 16px 12px 16px)",color:"var(--sc-content-text-secondary-color)",maxHeight:p?"500px":"0",paddingBottom:p?"16px":"0"}),I=T({fontSize:"var(--sc-content-body-font-size, 14px)",lineHeight:"1.5",margin:"0"}),R=T({display:"inline-flex",alignItems:"center",gap:"4px",marginTop:"10px",padding:"6px 12px",borderRadius:"6px",textDecoration:"none",fontSize:"13px",fontWeight:"500",cursor:"pointer",border:"none",transition:"background-color 0.15s ease",backgroundColor:`var(--sc-color-primary, ${tE})`,color:"#ffffff"}),P=T({fontSize:"16px",flexShrink:"0"}),Y=F=>{F.preventDefault(),F.stopPropagation(),x&&c?Ye(this,qe,_v).call(this,c):g&&Ye(this,qe,bv).call(this,g,l??!1)};return N`
327
327
  <div
328
328
  style=${w}
329
329
  data-nav-tip-id=${n}
330
330
  >
331
331
  <button
332
332
  type="button"
333
- style=${C}
333
+ style=${A}
334
334
  aria-expanded=${p}
335
- @click=${()=>Ye(this,qe,zm).call(this,n)}
335
+ @click=${()=>Ye(this,qe,yv).call(this,n)}
336
336
  @mouseenter=${()=>{this._hoveredId=n}}
337
337
  @mouseleave=${()=>{this._hoveredId=null}}
338
338
  >
339
- ${a?L`<span style=${O}>${Aa(dk(a))}</span>`:J}
339
+ ${a?N`<span style=${P}>${Pa(nE(a))}</span>`:ee}
340
340
  <span>${i}</span>
341
341
  <span style=${_}>${"\u203A"}</span>
342
342
  </button>
343
- <div style=${A} aria-hidden=${!p}>
344
- <p style=${$}>${s}</p>
345
- ${S?L`
343
+ <div style=${C} aria-hidden=${!p}>
344
+ <p style=${I}>${s}</p>
345
+ ${S?N`
346
346
  <a
347
347
  href=${g||"#"}
348
- style=${T}
349
- target=${l?"_blank":J}
350
- rel=${l?"noopener noreferrer":J}
348
+ style=${R}
349
+ target=${l?"_blank":ee}
350
+ rel=${l?"noopener noreferrer":ee}
351
351
  @click=${Y}
352
352
  >${b}</a>
353
- `:J}
353
+ `:ee}
354
354
  </div>
355
355
  </div>
356
- `};Gm.properties={config:{attribute:!1},runtime:{attribute:!1},instanceId:{type:String},_expandedIds:{state:!0},_renderTick:{state:!0},_hoveredId:{state:!0}};var Um="syntro-nav-tips";function fk(){typeof window>"u"||customElements.get(Um)||customElements.define(Um,Gm)}var gk=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);return t?(t.scrollIntoView({behavior:r.behavior??"smooth",block:r.block??"center",inline:r.inline??"nearest"}),e.publishEvent("action.applied",{id:e.generateId(),kind:"navigation:scrollTo",anchorId:r.anchorId,behavior:r.behavior??"smooth"}),{cleanup:()=>{}}):(console.error(`[adaptive-nav] Anchor not found for scrollTo, skipping: ${r.anchorId.selector}`),{cleanup:()=>{}})};function Km(r){if(typeof window>"u")return!1;let e=window;try{let t=e.next?.router;if(t?.push)return t.push(r),!0}catch{}try{if(e.$nuxt?.$router?.push)return e.$nuxt.$router.push(r),!0}catch{}return e.ng||e.getAllAngularRootElements||document.querySelector("[ng-version]")||e.__SVELTEKIT_DATA__||document.body?.hasAttribute("data-sveltekit")||document.querySelector("[data-astro-transition-fallback]")?(window.location.href=r,!0):!1}function mk(r){try{return new URL(r,window.location.origin).origin===window.location.origin}catch{return!1}}var vk=async(r,e)=>{let t=r.url.trim();if(t.toLowerCase().startsWith("javascript:"))throw new Error("javascript: URLs are not allowed");let n=r.target??"_self";return e.publishEvent("action.applied",{id:e.generateId(),kind:"navigation:navigate",url:r.url,target:n}),n==="_blank"?window.open(t,"_blank","noopener,noreferrer"):!r.forceFullNavigation&&mk(t)?Km(t)||(window.history.pushState(null,"",t),window.dispatchEvent(new PopStateEvent("popstate"))):window.location.href=t,{cleanup:()=>{}}},yk={mount(r,e){fk();let t=document.createElement("syntro-nav-tips"),{runtime:n,instanceId:i="nav-widget",...s}=e??{expandBehavior:"single",theme:"auto",actions:[]};return Object.assign(t,{config:s,runtime:n,instanceId:i}),r.appendChild(t),()=>t.remove()}},bk=[{kind:"navigation:scrollTo",executor:gk},{kind:"navigation:navigate",executor:vk}],Ym={id:"adaptive-nav",version:"2.0.0",name:"Navigation Tips",description:"Navigation actions and accordion-based tips with per-item conditional visibility",executors:bk,widgets:[{id:"adaptive-nav:tips",component:yk,metadata:{name:"Navigation Tips",description:"Accordion of contextual navigation tips with per-item visibility",icon:"\u{1F9ED}"}}],notifyWatchers(r){return(r.actions??[]).filter(t=>t.notify&&t.triggerWhen).map(t=>({id:`nav:${t.config.id}`,strategy:t.triggerWhen,eventName:"nav:tip_revealed",eventProps:{tipId:t.config.id,title:t.notify.title,body:t.notify.body,icon:t.notify.icon}}))}};var _k=[Oc,Cm,Ym,eu],xk=_k.map(r=>({id:r.id,version:r.version,name:r.name,description:r.description,runtime:{actions:(r.executors||[]).map(({kind:e,executor:t})=>({kind:e,executor:t})),widgets:r.widgets,notifyWatchers:r.notifyWatchers,events:r.eventHandlers},editor:void 0,metadata:{isBuiltIn:!0}}));function Xm(r){let e=0;for(let t of xk)r.has(t.id)||(r.register(t),e++);console.log("[Syntro Runtime] Registered",e,"built-in runtime modules")}var Bn=class extends Event{constructor(e,t,n,i){super("context-request",{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t,this.callback=n,this.subscribe=i??!1}};var Va=class{get value(){return this.o}set value(e){this.setValue(e)}setValue(e,t=!1){let n=t||!Object.is(e,this.o);this.o=e,n&&this.updateObservers()}constructor(e){this.subscriptions=new Map,this.updateObservers=()=>{for(let[t,{disposer:n}]of this.subscriptions)t(this.o,n)},e!==void 0&&(this.value=e)}addCallback(e,t,n){if(!n)return void e(this.value);this.subscriptions.has(e)||this.subscriptions.set(e,{disposer:()=>{this.subscriptions.delete(e)},consumerHost:t});let{disposer:i}=this.subscriptions.get(e);e(this.value,i)}clearCallbacks(){this.subscriptions.clear()}};var Ru=class extends Event{constructor(e,t){super("context-provider",{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t}},_i=class extends Va{constructor(e,t,n){super(t.context!==void 0?t.initialValue:n),this.onContextRequest=i=>{if(i.context!==this.context)return;let s=i.contextTarget??i.composedPath()[0];s!==this.host&&(i.stopPropagation(),this.addCallback(i.callback,s,i.subscribe))},this.onProviderRequest=i=>{if(i.context!==this.context||(i.contextTarget??i.composedPath()[0])===this.host)return;let s=new Set;for(let[o,{consumerHost:a}]of this.subscriptions)s.has(o)||(s.add(o),a.dispatchEvent(new Bn(this.context,a,o,!0)));i.stopPropagation()},this.host=e,t.context!==void 0?this.context=t.context:this.context=t,this.attachListeners(),this.host.addController?.(this)}attachListeners(){this.host.addEventListener("context-request",this.onContextRequest),this.host.addEventListener("context-provider",this.onProviderRequest)}hostConnected(){this.host.dispatchEvent(new Ru(this.context,this.host))}};var kk='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"',Jm={"\u{1F4B5}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F3DB}\uFE0F":['<line x1="3" x2="21" y1="22" y2="22"/>','<line x1="6" x2="6" y1="18" y2="11"/>','<line x1="10" x2="10" y1="18" y2="11"/>','<line x1="14" x2="14" y1="18" y2="11"/>','<line x1="18" x2="18" y1="18" y2="11"/>','<polygon points="12 2 20 7 4 7"/>'],"\u23ED\uFE0F":['<polygon points="5 4 15 12 5 20 5 4"/>','<line x1="19" x2="19" y1="5" y2="19"/>'],"\u27A1\uFE0F":['<path d="M5 12h14"/>','<path d="m12 5 7 7-7 7"/>'],"\u{1F4A1}":['<path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/>','<path d="M9 18h6"/>','<path d="M10 22h4"/>'],"\u{1F4B0}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F4CB}":['<rect width="8" height="4" x="8" y="2" rx="1" ry="1"/>','<path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"/>','<path d="M12 11h4"/>','<path d="M12 16h4"/>','<path d="M8 11h.01"/>','<path d="M8 16h.01"/>'],"\u2705":['<path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/>','<path d="m9 11 3 3L22 4"/>'],"\u26A0\uFE0F":['<path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"/>','<path d="M12 9v4"/>','<path d="M12 17h.01"/>'],"\u{1F6E1}\uFE0F":['<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/>'],"\u{1F4C8}":['<polyline points="22 7 13.5 15.5 8.5 10.5 2 17"/>','<polyline points="16 7 22 7 22 13"/>'],"\u{1F52C}":['<path d="M6 18h8"/>','<path d="M3 22h18"/>','<path d="M14 22a7 7 0 1 0 0-14h-1"/>','<path d="M9 14h2"/>','<path d="M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z"/>','<path d="M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3"/>'],"\u{1F48A}":['<path d="m10.5 20.5 10-10a4.95 4.95 0 1 0-7-7l-10 10a4.95 4.95 0 1 0 7 7Z"/>','<path d="m8.5 8.5 7 7"/>'],"\u{1F4C4}":['<path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/>','<path d="M14 2v4a2 2 0 0 0 2 2h4"/>','<path d="M10 9H8"/>','<path d="M16 13H8"/>','<path d="M16 17H8"/>'],"\u{1F9EA}":['<path d="M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2"/>','<path d="M6.453 15h11.094"/>','<path d="M8.5 2h7"/>'],"\u{1F501}":['<path d="m17 2 4 4-4 4"/>','<path d="M3 11v-1a4 4 0 0 1 4-4h14"/>','<path d="m7 22-4-4 4-4"/>','<path d="M21 13v1a4 4 0 0 1-4 4H3"/>'],"\u{1F9E0}":['<path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"/>','<path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"/>','<path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"/>','<path d="M17.599 6.5a3 3 0 0 0 .399-1.375"/>','<path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"/>','<path d="M3.477 10.896a4 4 0 0 1 .585-.396"/>','<path d="M19.938 10.5a4 4 0 0 1 .585.396"/>','<path d="M6 18a4 4 0 0 1-1.967-.516"/>','<path d="M19.967 17.484A4 4 0 0 1 18 18"/>'],"\u{1F319}":['<path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"/>'],"\u{1F4E6}":['<path d="M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z"/>','<path d="M12 22V12"/>','<path d="m3.3 7 8.7 5 8.7-5"/>','<path d="m7.5 4.27 9 5.15"/>'],"\u{1F69A}":['<path d="M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2"/>','<path d="M15 18H9"/>','<path d="M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14"/>','<circle cx="17" cy="18" r="2"/>','<circle cx="7" cy="18" r="2"/>'],"\u{1F331}":['<path d="M7 20h10"/>','<path d="M10 20c5.5-2.5.8-6.4 3-10"/>','<path d="M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z"/>','<path d="M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z"/>'],"\u26A1":['<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"/>'],"\u{1F525}":['<path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"/>'],"\u{1F333}":['<path d="M12 22V8"/>','<path d="m17 8-5-6-5 6"/>','<path d="M12 12c-2-2-4-2-4-2 0 0 0 4 2 6 1.5 1.5 3 1 4 0"/>','<path d="M12 12c2-2 4-2 4-2 0 0 0 4-2 6-1.5 1.5-3 1-4 0"/>'],"\u{1F33F}":['<path d="M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19.2 2.96a1 1 0 0 1 1.8.5c0 6-2 11-9 16.5"/>','<path d="M2 21c0-3 1.85-5.36 5.08-6"/>'],"\u2753":['<circle cx="12" cy="12" r="10"/>','<path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/>','<path d="M12 17h.01"/>'],"\u{1F9ED}":['<circle cx="12" cy="12" r="10"/>','<polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/>'],"\u{1F4DD}":['<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/>','<polyline points="14 2 14 8 20 8"/>','<line x1="16" y1="13" x2="8" y2="13"/>','<line x1="16" y1="17" x2="8" y2="17"/>','<line x1="10" y1="9" x2="8" y2="9"/>'],"\u{1F3AF}":['<polygon points="12 2 2 7 12 12 22 7 12 2"/>','<polyline points="2 17 12 22 22 17"/>','<polyline points="2 12 12 17 22 12"/>'],"\u{1F3C6}":['<path d="M6 9H4.5a2.5 2.5 0 0 1 0-5H6"/>','<path d="M18 9h1.5a2.5 2.5 0 0 0 0-5H18"/>','<path d="M4 22h16"/>','<path d="M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22"/>','<path d="M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22"/>','<path d="M18 2H6v7a6 6 0 0 0 12 0V2Z"/>'],"\u2728":['<path d="m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z"/>','<path d="M5 3v4"/>','<path d="M19 17v4"/>','<path d="M3 5h4"/>','<path d="M17 19h4"/>'],"\u{1F4AC}":['<path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"/>'],"\u{1F3AE}":['<line x1="6" y1="11" x2="10" y2="11"/>','<line x1="8" y1="9" x2="8" y2="13"/>','<line x1="15" y1="12" x2="15.01" y2="12"/>','<line x1="18" y1="10" x2="18.01" y2="10"/>','<path d="M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z"/>'],"\u23F1\uFE0F":['<line x1="10" y1="2" x2="14" y2="2"/>','<line x1="12" y1="14" x2="12" y2="8"/>','<circle cx="12" cy="14" r="8"/>'],"\u{1F4D6}":['<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/>','<path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/>'],"\u{1F514}":['<path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"/>','<path d="M10.3 21a1.94 1.94 0 0 0 3.4 0"/>'],"\u{1F393}":['<path d="M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z"/>','<path d="M22 10v6"/>','<path d="M6 12.5V16a6 3 0 0 0 12 0v-3.5"/>'],"\u23F0":['<circle cx="12" cy="13" r="8"/>','<path d="M12 9v4l2 2"/>','<path d="M5 3 2 6"/>','<path d="m22 6-3-3"/>','<path d="M6.38 18.7 4 21"/>','<path d="M17.64 18.67 20 21"/>'],"\u{1F504}":['<path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/>','<path d="M21 3v5h-5"/>','<path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/>','<path d="M8 16H3v5"/>'],"\u{1F464}":['<path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/>','<circle cx="12" cy="7" r="4"/>'],"\u{1F3E0}":['<path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"/>','<path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>'],"\u{1F6D2}":['<circle cx="8" cy="21" r="1"/>','<circle cx="19" cy="21" r="1"/>','<path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"/>'],"\u{1F4CA}":['<path d="M3 3v18h18"/>','<path d="M18 17V9"/>','<path d="M13 17V5"/>','<path d="M8 17v-3"/>'],"\u{1F4C9}":['<polyline points="22 17 13.5 8.5 8.5 13.5 2 7"/>','<polyline points="16 17 22 17 22 11"/>'],"\u{1F967}":['<path d="M21 12c.552 0 1.005-.449.95-.998a10 10 0 0 0-8.953-8.951c-.55-.055-.998.398-.998.95v8a1 1 0 0 0 1 1z"/>','<path d="M21.21 15.89A10 10 0 1 1 8 2.83"/>'],"\u{1F4B9}":['<path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.5.5 0 0 1-.96 0L9.24 2.18a.5.5 0 0 0-.96 0l-2.35 8.36A2 2 0 0 1 4.02 12H2"/>'],"\u{1F321}\uFE0F":['<path d="M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z"/>']};function Ps(r,e={}){let t=Jm[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${kk} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var Ek=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),Ve={title:d.string().max(200).optional().describe("Authoring-only: short label shown on the action plan dashboard. Stripped before serving to the runtime SDK."),description:d.string().max(1e3).optional().describe("Authoring-only: one-sentence explanation of what this action does and why. Stripped before serving to the runtime SDK."),validation:d.array(d.string().max(500)).max(10).optional().describe("Authoring-only: ordered steps a reviewer can follow to trigger this action and visually confirm it works. Each entry is one step. Stripped before serving to the runtime SDK.")},Qm=["ui.click","ui.scroll","ui.input","ui.change","ui.submit","ui.hover","ui.idle","ui.scroll_thrash","ui.focus_bounce","nav.page_view","nav.page_leave","behavior.rage_click","behavior.hesitation","behavior.confusion"],ev=d.enum(Qm).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),tv=["time_on_page","page_views","scroll_depth"],rv=d.enum(tv).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage.");var Tu=d.object({type:d.literal("page_url"),url:d.string().describe('URL path to match (e.g. "/pricing", "/dashboard")')}).describe('Fires when the current page URL matches. Use for page-specific actions. Example: {"type": "page_url", "url": "/pricing"}'),Iu=d.object({type:d.literal("route"),routeId:d.string().describe("Named route ID from the route filter")}).describe("Fires when the current route matches a named route ID."),$u=d.object({type:d.literal("anchor_visible"),anchorId:d.string().describe("CSS selector of the anchor element"),state:d.enum(["visible","present","absent"]).describe('"visible" = in viewport, "present" = in DOM, "absent" = not in DOM')}).describe(`Fires based on a DOM element's visibility state. Example: {"type": "anchor_visible", "anchorId": "#cta-button", "state": "visible"}`),Mu=d.object({type:d.literal("event_occurred"),eventName:d.string().describe('Event name (e.g. "ui.click", "$pageview")'),withinMs:d.number().optional().describe("Time window in ms. Omit = any time this session.")}).describe('Fires when a specific event has occurred during this session. Example: {"type": "event_occurred", "eventName": "ui.click", "withinMs": 5000}'),Ou=d.object({type:d.literal("state_equals"),key:d.string().describe("Key in the SDK persistent state store (localStorage). Only valid for keys the host app explicitly sets via syntro.state.set()."),value:d.unknown().describe("Expected value to match against")}).describe("Checks the SDK persistent state store (localStorage). ONLY for host-app state set via syntro.state.set() \u2014 NOT for user attributes like region, device, or UTM params (those are handled by segment targeting). Do NOT use this for targeting. If you do not know the valid state keys, do not use this condition type."),Pu=d.object({type:d.literal("viewport"),minWidth:d.number().optional().describe("Minimum viewport width in pixels"),maxWidth:d.number().optional().describe("Maximum viewport width in pixels"),minHeight:d.number().optional().describe("Minimum viewport height in pixels"),maxHeight:d.number().optional().describe("Maximum viewport height in pixels")}).describe('Fires based on viewport (screen) size. Use for responsive behavior. Example: {"type": "viewport", "minWidth": 768} \u2014 fires on tablet and larger.'),Nu=d.object({type:d.literal("session_metric"),key:rv,operator:d.enum(["gte","lte","eq","gt","lt"]),threshold:d.number().describe("Numeric threshold to compare against")}).describe('Fires when a session metric crosses a threshold. Valid keys: "time_on_page" (seconds), "page_views" (count), "scroll_depth" (0-100). Example: {"type": "session_metric", "key": "time_on_page", "operator": "gte", "threshold": 30}'),Lu=d.object({type:d.literal("dismissed"),key:d.string().describe("Dismissal key (usually a tile or action ID)"),inverted:d.boolean().optional().describe("When true, fires if NOT dismissed (default behavior)")}).describe("Checks if an item has been dismissed by the user. Use with inverted: true to show only if not dismissed."),Fu=d.object({type:d.literal("cooldown_active"),key:d.string().describe("Cooldown key"),inverted:d.boolean().optional().describe("When true, fires if cooldown is NOT active")}).describe("Checks if a cooldown timer is currently active. Use to prevent showing the same intervention too frequently."),Du=d.object({type:d.literal("frequency_limit"),key:d.string().describe("Frequency counter key"),limit:d.number().describe("Maximum allowed count"),inverted:d.boolean().optional().describe("When true, fires if limit NOT reached")}).describe("Checks if a frequency limit has been reached. Use to cap how many times an action fires per session."),Ns=d.object({equals:d.union([d.string(),d.number(),d.boolean()]).optional(),contains:d.string().optional()}).describe("Match operator for counter filters. Exactly one of equals or contains must be specified."),Ls=d.object({events:d.array(ev).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),Ns).optional().describe("Property filters. Keys are event prop names or element-chain fields (tag_name, $el_text, attr__*). All entries AND together.")}).describe("Defines what events to count. Registered as an accumulator predicate at config-load time."),Hu=d.object({type:d.literal("event_count"),key:d.string().describe("Unique key for this counter (used for accumulator registration)"),operator:d.enum(["gte","lte","eq","gt","lt"]),count:d.number().int().min(0).describe("Target count threshold"),withinMs:d.number().positive().optional().describe("Time window in ms. Omit = count across entire session."),counter:Ls.optional().describe("Inline counter definition. Defines what events to count.")}).describe('Fires when accumulated event count crosses a threshold. Most powerful trigger type. Example: {"type": "event_count", "key": "pricing-clicks", "operator": "gte", "count": 3, "counter": {"events": ["ui.click"], "match": {"attr__data-cta": {"contains": "pricing"}}}}'),zr=d.discriminatedUnion("type",[Tu,Iu,$u,Mu,Ou,Pu,Nu,Lu,Fu,Du,Hu]),Fs=d.object({conditions:d.array(zr).describe("Array of conditions \u2014 ALL must match (AND logic) for this rule to fire."),value:d.unknown().describe("Value returned when all conditions match. For triggerWhen: true = fire the action.")}).describe("A single rule. ALL conditions must match (AND logic). Rules in a strategy are evaluated top-to-bottom \u2014 first rule where all conditions match wins and returns its value."),Ds=d.object({type:d.literal("rules"),rules:d.array(Fs).describe("Ordered list of rules. Evaluated top-to-bottom \u2014 first match wins."),default:d.unknown().describe("Fallback value when no rule matches. For triggerWhen: false = do not fire by default.")}).describe("Rule-based strategy. Evaluates rules top-to-bottom. First rule where ALL conditions match returns its value. If no rule matches, returns default. For triggerWhen: set value=true on matching rules, default=false."),Hs=d.object({type:d.literal("score"),field:d.string(),threshold:d.number(),above:d.unknown(),below:d.unknown()}).describe("Score-based strategy. Compares a field value against a threshold."),Bs=d.object({type:d.literal("model"),modelId:d.string(),inputs:d.array(d.string()),outputMapping:d.record(d.string(),d.unknown()),default:d.unknown()}).describe("ML model strategy. Sends inputs to a model and maps outputs."),Vs=d.object({type:d.literal("external"),endpoint:d.string(),method:d.enum(["GET","POST"]).optional(),default:d.unknown(),timeoutMs:d.number().optional()}).describe("External API strategy. Calls an endpoint to determine the value."),js=d.discriminatedUnion("type",[Ds,Hs,Bs,Vs]),ja=js.nullable().optional();var Ck=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),Ak=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional();function Rk(r,e,t="currentColor"){let n=Ps(r,{size:e,color:t});if(!n)return L`<span style=${R({fontSize:`${e}px`,lineHeight:"1"})}>${r}</span>`;let i=document.createElement("span");return i.style.display="flex",i.innerHTML=n,L`${i}`}var Tk=[":toggled",":clicked",":feedback",":navigate",":expanded",":collapsed",":dismissed",":submitted",":interacted",":tip_clicked",":tip_focused"],Ua=class extends ye{constructor(){super(...arguments);this.config=null;this.surface="overlay";this.runtimeRef=null;this._hovered=!1;this._widgetHandle=null;this._widgetContainer=null;this._mountedWidgetId=null;this._registryUnsub=null;this._eventBusUnsub=null;this._intersectionObserver=null;this._prevPropsJson=null;this._onMouseEnter=()=>{this._hovered=!0};this._onMouseLeave=()=>{this._hovered=!1}}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._setupEventBusSubscription(),this._setupRegistrySubscription(),this.updateComplete.then(()=>{this._mountWidgetIfReady(),this._setupIntersectionObserver()})}updated(t){(t.has("runtimeRef")||t.has("config"))&&(t.has("runtimeRef")&&(this._teardownSubscriptions(),this._setupEventBusSubscription(),this._setupRegistrySubscription()),(this.config?.widget??null)!==this._mountedWidgetId?(this._unmountWidget(),this._mountWidgetIfReady()):this._forwardPropUpdates())}disconnectedCallback(){super.disconnectedCallback(),this._unmountWidget(),this._teardownSubscriptions(),this._intersectionObserver?.disconnect(),this._intersectionObserver=null}_mountWidgetIfReady(){if(this._mountedWidgetId)return;let t=this.runtimeRef?.widgets,n=this.config?.widget;if(!t||!n||!t.has(n))return;let i=this.querySelector("[data-widget-mount-parent]");if(!i)return;let s=document.createElement("div");s.style.width="100%",s.style.minHeight="40px",i.appendChild(s);let o={...this.config?.props,instanceId:this.config?.id},a=t.mount(n,s,o);this._widgetContainer=s,this._widgetHandle=a,this._mountedWidgetId=n,this._prevPropsJson=JSON.stringify(o)}_unmountWidget(){this._widgetHandle&&(this._widgetHandle.unmount(),this._widgetHandle=null),this._widgetContainer&&(this._widgetContainer.remove(),this._widgetContainer=null),this._mountedWidgetId=null,this._prevPropsJson=null}_forwardPropUpdates(){if(!this._widgetHandle||!this.config)return;let t={...this.config.props,instanceId:this.config.id},n=JSON.stringify(t);n!==this._prevPropsJson&&(this._prevPropsJson=n,this._widgetHandle.update(t))}_setupRegistrySubscription(){let t=this.runtimeRef?.widgets,n=this.config?.widget;!t||!n||t.has(n)&&this._mountedWidgetId===n||(this._registryUnsub=t.subscribe(i=>{i.type==="registered"&&i.widgetId===n&&(this.requestUpdate(),queueMicrotask(()=>{this._mountedWidgetId||this._mountWidgetIfReady()}))}))}_setupIntersectionObserver(){let t=typeof window<"u"?window.SynOS?.interventionTracker:null;if(!t||!this.config)return;let n=this.querySelector("article");n&&(this._intersectionObserver=new IntersectionObserver(([i])=>{i.isIntersecting&&(t.trackSeen(this.config.id,this.config.widget??"unknown"),this._intersectionObserver?.disconnect())},{threshold:.5}),this._intersectionObserver.observe(n))}_setupEventBusSubscription(){let t=typeof window<"u"?window.SynOS?.interventionTracker:null;!this.runtimeRef?.events||!t||!this.config||(this._eventBusUnsub=this.runtimeRef.events.subscribe(n=>{Tk.some(i=>n.name?.includes(i))&&n.props?.instanceId===this.config.id&&t.trackInteracted(this.config.id,this.config.widget??"unknown",n.name)}))}_teardownSubscriptions(){this._registryUnsub?.(),this._registryUnsub=null,this._eventBusUnsub?.(),this._eventBusUnsub=null}get _registration(){let t=this.config?.widget;if(!(!t||!this.runtimeRef?.widgets))return this.runtimeRef.widgets.getRegistration?.(t)}get _resolvedIcon(){return this.config?.icon?this.config.icon:this._registration?.metadata?.icon??"+"}get _resolvedSubtitle(){return this.config?.subtitle?this.config.subtitle:this._registration?.metadata?.subtitle}render(){if(!this.config)return J;let{title:t,widget:n}=this.config,i=this._resolvedSubtitle,s=this._resolvedIcon,o=i?36:24,l=this.runtimeRef?.widgets?.has(n)??!1,u={display:"flex",flexDirection:"column",borderRadius:"var(--sc-tile-border-radius)",background:this._hovered?"linear-gradient(0deg, var(--sc-tile-background-hover), var(--sc-tile-background-hover)), var(--sc-tile-background)":"var(--sc-tile-background)",backdropFilter:"blur(16px) saturate(1.2)",WebkitBackdropFilter:"blur(16px) saturate(1.2)",border:"var(--sc-tile-border)",boxShadow:"var(--sc-tile-shadow)",color:"var(--sc-tile-title-color)",fontFamily:"var(--sc-font-family)",overflow:"hidden",cursor:"default",transition:"all 0.25s ease",transform:this._hovered?"scale(1.01)":"scale(1)"},p={display:"flex",alignItems:"center",gap:"var(--sc-tile-gap, 0.25rem)",padding:"var(--sc-tile-header-padding, 0.375rem 0.75rem)",minHeight:"44px"},h={display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0"},f={fontSize:"1.14rem",fontWeight:"600",color:"var(--sc-tile-title-color)",margin:"0.125rem 0 0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},v={fontSize:"0.8rem",fontWeight:"400",color:"var(--sc-tile-text-color)",margin:"0.125rem 0 0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},g={padding:"var(--sc-tile-body-padding, 0 0.75rem 0.5rem)",borderTop:"1px solid rgba(255, 255, 255, 0.06)"},m={paddingTop:"var(--sc-tile-gap, 0.25rem)"},y={padding:"0.75rem",fontSize:"0.8rem",color:"var(--sc-tile-text-color)",fontStyle:"italic"};return L`
356
+ `};xv.properties={config:{attribute:!1},runtime:{attribute:!1},instanceId:{type:String},_expandedIds:{state:!0},_renderTick:{state:!0},_hoveredId:{state:!0}};var mv="syntro-nav-tips";function oE(){typeof window>"u"||customElements.get(mv)||customElements.define(mv,xv)}var aE=async(r,e)=>{let t=e.resolveAnchor(r.anchorId);return t?(t.scrollIntoView({behavior:r.behavior??"smooth",block:r.block??"center",inline:r.inline??"nearest"}),e.publishEvent("action.applied",{id:e.generateId(),kind:"navigation:scrollTo",anchorId:r.anchorId,behavior:r.behavior??"smooth"}),{cleanup:()=>{}}):(console.error(`[adaptive-nav] Anchor not found for scrollTo, skipping: ${r.anchorId.selector}`),{cleanup:()=>{}})};function wv(r){if(typeof window>"u")return!1;let e=window;try{let t=e.next?.router;if(t?.push)return t.push(r),!0}catch{}try{if(e.$nuxt?.$router?.push)return e.$nuxt.$router.push(r),!0}catch{}return e.ng||e.getAllAngularRootElements||document.querySelector("[ng-version]")||e.__SVELTEKIT_DATA__||document.body?.hasAttribute("data-sveltekit")||document.querySelector("[data-astro-transition-fallback]")?(window.location.href=r,!0):!1}function lE(r){try{return new URL(r,window.location.origin).origin===window.location.origin}catch{return!1}}var cE=async(r,e)=>{let t=r.url.trim();if(t.toLowerCase().startsWith("javascript:"))throw new Error("javascript: URLs are not allowed");let n=r.target??"_self";return e.publishEvent("action.applied",{id:e.generateId(),kind:"navigation:navigate",url:r.url,target:n}),n==="_blank"?window.open(t,"_blank","noopener,noreferrer"):!r.forceFullNavigation&&lE(t)?wv(t)||(window.history.pushState(null,"",t),window.dispatchEvent(new PopStateEvent("popstate"))):window.location.href=t,{cleanup:()=>{}}},uE={mount(r,e){oE();let t=document.createElement("syntro-nav-tips"),{runtime:n,instanceId:i="nav-widget",...s}=e??{expandBehavior:"single",theme:"auto",actions:[]};return Object.assign(t,{config:s,runtime:n,instanceId:i}),r.appendChild(t),()=>t.remove()}},dE=[{kind:"navigation:scrollTo",executor:aE},{kind:"navigation:navigate",executor:cE}],Sv={id:"adaptive-nav",version:"2.0.0",name:"Navigation Tips",description:"Navigation actions and accordion-based tips with per-item conditional visibility",executors:dE,widgets:[{id:"adaptive-nav:tips",component:uE,metadata:{name:"Navigation Tips",description:"Accordion of contextual navigation tips with per-item visibility",icon:"\u{1F9ED}"}}],notifyWatchers(r){return(r.actions??[]).filter(t=>t.notify&&t.triggerWhen).map(t=>({id:`nav:${t.config.id}`,strategy:t.triggerWhen,eventName:"nav:tip_revealed",eventProps:{tipId:t.config.id,title:t.notify.title,body:t.notify.body,icon:t.notify.icon}}))}};var pE=[jc,Qm,Sv,uu],hE=pE.map(r=>({id:r.id,version:r.version,name:r.name,description:r.description,runtime:{actions:(r.executors||[]).map(({kind:e,executor:t})=>({kind:e,executor:t})),widgets:r.widgets,notifyWatchers:r.notifyWatchers,events:r.eventHandlers},editor:void 0,metadata:{isBuiltIn:!0}}));function kv(r){let e=0;for(let t of hE)r.has(t.id)||(r.register(t),e++);console.log("[Syntro Runtime] Registered",e,"built-in runtime modules")}var Un=class extends Event{constructor(e,t,n,i){super("context-request",{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t,this.callback=n,this.subscribe=i??!1}};var Za=class{get value(){return this.o}set value(e){this.setValue(e)}setValue(e,t=!1){let n=t||!Object.is(e,this.o);this.o=e,n&&this.updateObservers()}constructor(e){this.subscriptions=new Map,this.updateObservers=()=>{for(let[t,{disposer:n}]of this.subscriptions)t(this.o,n)},e!==void 0&&(this.value=e)}addCallback(e,t,n){if(!n)return void e(this.value);this.subscriptions.has(e)||this.subscriptions.set(e,{disposer:()=>{this.subscriptions.delete(e)},consumerHost:t});let{disposer:i}=this.subscriptions.get(e);e(this.value,i)}clearCallbacks(){this.subscriptions.clear()}};var Du=class extends Event{constructor(e,t){super("context-provider",{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t}},wi=class extends Za{constructor(e,t,n){super(t.context!==void 0?t.initialValue:n),this.onContextRequest=i=>{if(i.context!==this.context)return;let s=i.contextTarget??i.composedPath()[0];s!==this.host&&(i.stopPropagation(),this.addCallback(i.callback,s,i.subscribe))},this.onProviderRequest=i=>{if(i.context!==this.context||(i.contextTarget??i.composedPath()[0])===this.host)return;let s=new Set;for(let[o,{consumerHost:a}]of this.subscriptions)s.has(o)||(s.add(o),a.dispatchEvent(new Un(this.context,a,o,!0)));i.stopPropagation()},this.host=e,t.context!==void 0?this.context=t.context:this.context=t,this.attachListeners(),this.host.addController?.(this)}attachListeners(){this.host.addEventListener("context-request",this.onContextRequest),this.host.addEventListener("context-provider",this.onProviderRequest)}hostConnected(){this.host.dispatchEvent(new Du(this.context,this.host))}};var mE='<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true"',Ev={"\u{1F4B5}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F3DB}\uFE0F":['<line x1="3" x2="21" y1="22" y2="22"/>','<line x1="6" x2="6" y1="18" y2="11"/>','<line x1="10" x2="10" y1="18" y2="11"/>','<line x1="14" x2="14" y1="18" y2="11"/>','<line x1="18" x2="18" y1="18" y2="11"/>','<polygon points="12 2 20 7 4 7"/>'],"\u23ED\uFE0F":['<polygon points="5 4 15 12 5 20 5 4"/>','<line x1="19" x2="19" y1="5" y2="19"/>'],"\u27A1\uFE0F":['<path d="M5 12h14"/>','<path d="m12 5 7 7-7 7"/>'],"\u{1F4A1}":['<path d="M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5"/>','<path d="M9 18h6"/>','<path d="M10 22h4"/>'],"\u{1F4B0}":['<rect width="20" height="12" x="2" y="6" rx="2"/>','<circle cx="12" cy="12" r="2"/>','<path d="M6 12h.01M18 12h.01"/>'],"\u{1F4CB}":['<rect width="8" height="4" x="8" y="2" rx="1" ry="1"/>','<path d="M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2"/>','<path d="M12 11h4"/>','<path d="M12 16h4"/>','<path d="M8 11h.01"/>','<path d="M8 16h.01"/>'],"\u2705":['<path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"/>','<path d="m9 11 3 3L22 4"/>'],"\u26A0\uFE0F":['<path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"/>','<path d="M12 9v4"/>','<path d="M12 17h.01"/>'],"\u{1F6E1}\uFE0F":['<path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"/>'],"\u{1F4C8}":['<polyline points="22 7 13.5 15.5 8.5 10.5 2 17"/>','<polyline points="16 7 22 7 22 13"/>'],"\u{1F52C}":['<path d="M6 18h8"/>','<path d="M3 22h18"/>','<path d="M14 22a7 7 0 1 0 0-14h-1"/>','<path d="M9 14h2"/>','<path d="M9 12a2 2 0 0 1-2-2V6h6v4a2 2 0 0 1-2 2Z"/>','<path d="M12 6V3a1 1 0 0 0-1-1H9a1 1 0 0 0-1 1v3"/>'],"\u{1F48A}":['<path d="m10.5 20.5 10-10a4.95 4.95 0 1 0-7-7l-10 10a4.95 4.95 0 1 0 7 7Z"/>','<path d="m8.5 8.5 7 7"/>'],"\u{1F4C4}":['<path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/>','<path d="M14 2v4a2 2 0 0 0 2 2h4"/>','<path d="M10 9H8"/>','<path d="M16 13H8"/>','<path d="M16 17H8"/>'],"\u{1F9EA}":['<path d="M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2"/>','<path d="M6.453 15h11.094"/>','<path d="M8.5 2h7"/>'],"\u{1F501}":['<path d="m17 2 4 4-4 4"/>','<path d="M3 11v-1a4 4 0 0 1 4-4h14"/>','<path d="m7 22-4-4 4-4"/>','<path d="M21 13v1a4 4 0 0 1-4 4H3"/>'],"\u{1F9E0}":['<path d="M12 5a3 3 0 1 0-5.997.125 4 4 0 0 0-2.526 5.77 4 4 0 0 0 .556 6.588A4 4 0 1 0 12 18Z"/>','<path d="M12 5a3 3 0 1 1 5.997.125 4 4 0 0 1 2.526 5.77 4 4 0 0 1-.556 6.588A4 4 0 1 1 12 18Z"/>','<path d="M15 13a4.5 4.5 0 0 1-3-4 4.5 4.5 0 0 1-3 4"/>','<path d="M17.599 6.5a3 3 0 0 0 .399-1.375"/>','<path d="M6.003 5.125A3 3 0 0 0 6.401 6.5"/>','<path d="M3.477 10.896a4 4 0 0 1 .585-.396"/>','<path d="M19.938 10.5a4 4 0 0 1 .585.396"/>','<path d="M6 18a4 4 0 0 1-1.967-.516"/>','<path d="M19.967 17.484A4 4 0 0 1 18 18"/>'],"\u{1F319}":['<path d="M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9Z"/>'],"\u{1F4E6}":['<path d="M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z"/>','<path d="M12 22V12"/>','<path d="m3.3 7 8.7 5 8.7-5"/>','<path d="m7.5 4.27 9 5.15"/>'],"\u{1F69A}":['<path d="M14 18V6a2 2 0 0 0-2-2H4a2 2 0 0 0-2 2v11a1 1 0 0 0 1 1h2"/>','<path d="M15 18H9"/>','<path d="M19 18h2a1 1 0 0 0 1-1v-3.65a1 1 0 0 0-.22-.624l-3.48-4.35A1 1 0 0 0 17.52 8H14"/>','<circle cx="17" cy="18" r="2"/>','<circle cx="7" cy="18" r="2"/>'],"\u{1F331}":['<path d="M7 20h10"/>','<path d="M10 20c5.5-2.5.8-6.4 3-10"/>','<path d="M9.5 9.4c1.1.8 1.8 2.2 2.3 3.7-2 .4-3.5.4-4.8-.3-1.2-.6-2.3-1.9-3-4.2 2.8-.5 4.4 0 5.5.8z"/>','<path d="M14.1 6a7 7 0 0 0-1.1 4c1.9-.1 3.3-.6 4.3-1.4 1-1 1.6-2.3 1.7-4.6-2.7.1-4 1-4.9 2z"/>'],"\u26A1":['<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"/>'],"\u{1F525}":['<path d="M8.5 14.5A2.5 2.5 0 0 0 11 12c0-1.38-.5-2-1-3-1.072-2.143-.224-4.054 2-6 .5 2.5 2 4.9 4 6.5 2 1.6 3 3.5 3 5.5a7 7 0 1 1-14 0c0-1.153.433-2.294 1-3a2.5 2.5 0 0 0 2.5 2.5z"/>'],"\u{1F333}":['<path d="M12 22V8"/>','<path d="m17 8-5-6-5 6"/>','<path d="M12 12c-2-2-4-2-4-2 0 0 0 4 2 6 1.5 1.5 3 1 4 0"/>','<path d="M12 12c2-2 4-2 4-2 0 0 0 4-2 6-1.5 1.5-3 1-4 0"/>'],"\u{1F33F}":['<path d="M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19.2 2.96a1 1 0 0 1 1.8.5c0 6-2 11-9 16.5"/>','<path d="M2 21c0-3 1.85-5.36 5.08-6"/>'],"\u2753":['<circle cx="12" cy="12" r="10"/>','<path d="M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3"/>','<path d="M12 17h.01"/>'],"\u{1F9ED}":['<circle cx="12" cy="12" r="10"/>','<polygon points="16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76"/>'],"\u{1F4DD}":['<path d="M14.5 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7.5L14.5 2z"/>','<polyline points="14 2 14 8 20 8"/>','<line x1="16" y1="13" x2="8" y2="13"/>','<line x1="16" y1="17" x2="8" y2="17"/>','<line x1="10" y1="9" x2="8" y2="9"/>'],"\u{1F3AF}":['<polygon points="12 2 2 7 12 12 22 7 12 2"/>','<polyline points="2 17 12 22 22 17"/>','<polyline points="2 12 12 17 22 12"/>'],"\u{1F3C6}":['<path d="M6 9H4.5a2.5 2.5 0 0 1 0-5H6"/>','<path d="M18 9h1.5a2.5 2.5 0 0 0 0-5H18"/>','<path d="M4 22h16"/>','<path d="M10 14.66V17c0 .55-.47.98-.97 1.21C7.85 18.75 7 20.24 7 22"/>','<path d="M14 14.66V17c0 .55.47.98.97 1.21C16.15 18.75 17 20.24 17 22"/>','<path d="M18 2H6v7a6 6 0 0 0 12 0V2Z"/>'],"\u2728":['<path d="m12 3-1.912 5.813a2 2 0 0 1-1.275 1.275L3 12l5.813 1.912a2 2 0 0 1 1.275 1.275L12 21l1.912-5.813a2 2 0 0 1 1.275-1.275L21 12l-5.813-1.912a2 2 0 0 1-1.275-1.275L12 3Z"/>','<path d="M5 3v4"/>','<path d="M19 17v4"/>','<path d="M3 5h4"/>','<path d="M17 19h4"/>'],"\u{1F4AC}":['<path d="M7.9 20A9 9 0 1 0 4 16.1L2 22Z"/>'],"\u{1F3AE}":['<line x1="6" y1="11" x2="10" y2="11"/>','<line x1="8" y1="9" x2="8" y2="13"/>','<line x1="15" y1="12" x2="15.01" y2="12"/>','<line x1="18" y1="10" x2="18.01" y2="10"/>','<path d="M17.32 5H6.68a4 4 0 0 0-3.978 3.59c-.006.052-.01.101-.017.152C2.604 9.416 2 14.456 2 16a3 3 0 0 0 3 3c1 0 1.5-.5 2-1l1.414-1.414A2 2 0 0 1 9.828 16h4.344a2 2 0 0 1 1.414.586L17 18c.5.5 1 1 2 1a3 3 0 0 0 3-3c0-1.545-.604-6.584-.685-7.258-.007-.05-.011-.1-.017-.151A4 4 0 0 0 17.32 5z"/>'],"\u23F1\uFE0F":['<line x1="10" y1="2" x2="14" y2="2"/>','<line x1="12" y1="14" x2="12" y2="8"/>','<circle cx="12" cy="14" r="8"/>'],"\u{1F4D6}":['<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z"/>','<path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z"/>'],"\u{1F514}":['<path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"/>','<path d="M10.3 21a1.94 1.94 0 0 0 3.4 0"/>'],"\u{1F393}":['<path d="M21.42 10.922a1 1 0 0 0-.019-1.838L12.83 5.18a2 2 0 0 0-1.66 0L2.6 9.08a1 1 0 0 0 0 1.832l8.57 3.908a2 2 0 0 0 1.66 0z"/>','<path d="M22 10v6"/>','<path d="M6 12.5V16a6 3 0 0 0 12 0v-3.5"/>'],"\u23F0":['<circle cx="12" cy="13" r="8"/>','<path d="M12 9v4l2 2"/>','<path d="M5 3 2 6"/>','<path d="m22 6-3-3"/>','<path d="M6.38 18.7 4 21"/>','<path d="M17.64 18.67 20 21"/>'],"\u{1F504}":['<path d="M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8"/>','<path d="M21 3v5h-5"/>','<path d="M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16"/>','<path d="M8 16H3v5"/>'],"\u{1F464}":['<path d="M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2"/>','<circle cx="12" cy="7" r="4"/>'],"\u{1F3E0}":['<path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"/>','<path d="M3 10a2 2 0 0 1 .709-1.528l7-5.999a2 2 0 0 1 2.582 0l7 5.999A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>'],"\u{1F6D2}":['<circle cx="8" cy="21" r="1"/>','<circle cx="19" cy="21" r="1"/>','<path d="M2.05 2.05h2l2.66 12.42a2 2 0 0 0 2 1.58h9.78a2 2 0 0 0 1.95-1.57l1.65-7.43H5.12"/>'],"\u{1F4CA}":['<path d="M3 3v18h18"/>','<path d="M18 17V9"/>','<path d="M13 17V5"/>','<path d="M8 17v-3"/>'],"\u{1F4C9}":['<polyline points="22 17 13.5 8.5 8.5 13.5 2 7"/>','<polyline points="16 17 22 17 22 11"/>'],"\u{1F967}":['<path d="M21 12c.552 0 1.005-.449.95-.998a10 10 0 0 0-8.953-8.951c-.55-.055-.998.398-.998.95v8a1 1 0 0 0 1 1z"/>','<path d="M21.21 15.89A10 10 0 1 1 8 2.83"/>'],"\u{1F4B9}":['<path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.5.5 0 0 1-.96 0L9.24 2.18a.5.5 0 0 0-.96 0l-2.35 8.36A2 2 0 0 1 4.02 12H2"/>'],"\u{1F321}\uFE0F":['<path d="M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z"/>']};function Ds(r,e={}){let t=Ev[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${mE} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var vE=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),Ve={title:d.string().max(200).optional().describe("Authoring-only: short label shown on the action plan dashboard. Stripped before serving to the runtime SDK."),description:d.string().max(1e3).optional().describe("Authoring-only: one-sentence explanation of what this action does and why. Stripped before serving to the runtime SDK."),validation:d.array(d.string().max(500)).max(10).optional().describe("Authoring-only: ordered steps a reviewer can follow to trigger this action and visually confirm it works. Each entry is one step. Stripped before serving to the runtime SDK.")},Cv=["ui.click","ui.scroll","ui.input","ui.change","ui.submit","ui.hover","ui.idle","ui.scroll_thrash","ui.focus_bounce","nav.page_view","nav.page_leave","behavior.rage_click","behavior.hesitation","behavior.confusion"],Av=d.enum(Cv).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),Tv=["time_on_page","page_views","scroll_depth"],Rv=d.enum(Tv).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage.");var Hu=d.object({type:d.literal("page_url"),url:d.string().describe('URL path to match (e.g. "/pricing", "/dashboard")')}).describe('Fires when the current page URL matches. Use for page-specific actions. Example: {"type": "page_url", "url": "/pricing"}'),Bu=d.object({type:d.literal("route"),routeId:d.string().describe("Named route ID from the route filter")}).describe("Fires when the current route matches a named route ID."),Vu=d.object({type:d.literal("anchor_visible"),anchorId:d.string().describe("CSS selector of the anchor element"),state:d.enum(["visible","present","absent"]).describe('"visible" = in viewport, "present" = in DOM, "absent" = not in DOM')}).describe(`Fires based on a DOM element's visibility state. Example: {"type": "anchor_visible", "anchorId": "#cta-button", "state": "visible"}`),Uu=d.object({type:d.literal("event_occurred"),eventName:d.string().describe('Event name (e.g. "ui.click", "$pageview")'),withinMs:d.number().optional().describe("Time window in ms. Omit = any time this session.")}).describe('Fires when a specific event has occurred during this session. Example: {"type": "event_occurred", "eventName": "ui.click", "withinMs": 5000}'),ju=d.object({type:d.literal("state_equals"),key:d.string().describe("Key in the SDK persistent state store (localStorage). Only valid for keys the host app explicitly sets via syntro.state.set()."),value:d.unknown().describe("Expected value to match against")}).describe("Checks the SDK persistent state store (localStorage). ONLY for host-app state set via syntro.state.set() \u2014 NOT for user attributes like region, device, or UTM params (those are handled by segment targeting). Do NOT use this for targeting. If you do not know the valid state keys, do not use this condition type."),Wu=d.object({type:d.literal("viewport"),minWidth:d.number().optional().describe("Minimum viewport width in pixels"),maxWidth:d.number().optional().describe("Maximum viewport width in pixels"),minHeight:d.number().optional().describe("Minimum viewport height in pixels"),maxHeight:d.number().optional().describe("Maximum viewport height in pixels")}).describe('Fires based on viewport (screen) size. Use for responsive behavior. Example: {"type": "viewport", "minWidth": 768} \u2014 fires on tablet and larger.'),zu=d.object({type:d.literal("session_metric"),key:Rv,operator:d.enum(["gte","lte","eq","gt","lt"]),threshold:d.number().describe("Numeric threshold to compare against")}).describe('Fires when a session metric crosses a threshold. Valid keys: "time_on_page" (seconds), "page_views" (count), "scroll_depth" (0-100). Example: {"type": "session_metric", "key": "time_on_page", "operator": "gte", "threshold": 30}'),qu=d.object({type:d.literal("dismissed"),key:d.string().describe("Dismissal key (usually a tile or action ID)"),inverted:d.boolean().optional().describe("When true, fires if NOT dismissed (default behavior)")}).describe("Checks if an item has been dismissed by the user. Use with inverted: true to show only if not dismissed."),Zu=d.object({type:d.literal("cooldown_active"),key:d.string().describe("Cooldown key"),inverted:d.boolean().optional().describe("When true, fires if cooldown is NOT active")}).describe("Checks if a cooldown timer is currently active. Use to prevent showing the same intervention too frequently."),Gu=d.object({type:d.literal("frequency_limit"),key:d.string().describe("Frequency counter key"),limit:d.number().describe("Maximum allowed count"),inverted:d.boolean().optional().describe("When true, fires if limit NOT reached")}).describe("Checks if a frequency limit has been reached. Use to cap how many times an action fires per session."),Hs=d.object({equals:d.union([d.string(),d.number(),d.boolean()]).optional(),contains:d.string().optional()}).describe("Match operator for counter filters. Exactly one of equals or contains must be specified."),Bs=d.object({events:d.array(Av).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),Hs).optional().describe("Property filters. Keys are event prop names or element-chain fields (tag_name, $el_text, attr__*). All entries AND together.")}).describe("Defines what events to count. Registered as an accumulator predicate at config-load time."),Ku=d.object({type:d.literal("event_count"),key:d.string().describe("Unique key for this counter (used for accumulator registration)"),operator:d.enum(["gte","lte","eq","gt","lt"]),count:d.number().int().min(0).describe("Target count threshold"),withinMs:d.number().positive().optional().describe("Time window in ms. Omit = count across entire session."),counter:Bs.optional().describe("Inline counter definition. Defines what events to count.")}).describe('Fires when accumulated event count crosses a threshold. Most powerful trigger type. Example: {"type": "event_count", "key": "pricing-clicks", "operator": "gte", "count": 3, "counter": {"events": ["ui.click"], "match": {"attr__data-cta": {"contains": "pricing"}}}}'),Zr=d.discriminatedUnion("type",[Hu,Bu,Vu,Uu,ju,Wu,zu,qu,Zu,Gu,Ku]),Vs=d.object({conditions:d.array(Zr).describe("Array of conditions \u2014 ALL must match (AND logic) for this rule to fire."),value:d.unknown().describe("Value returned when all conditions match. For triggerWhen: true = fire the action.")}).describe("A single rule. ALL conditions must match (AND logic). Rules in a strategy are evaluated top-to-bottom \u2014 first rule where all conditions match wins and returns its value."),Us=d.object({type:d.literal("rules"),rules:d.array(Vs).describe("Ordered list of rules. Evaluated top-to-bottom \u2014 first match wins."),default:d.unknown().describe("Fallback value when no rule matches. For triggerWhen: false = do not fire by default.")}).describe("Rule-based strategy. Evaluates rules top-to-bottom. First rule where ALL conditions match returns its value. If no rule matches, returns default. For triggerWhen: set value=true on matching rules, default=false."),js=d.object({type:d.literal("score"),field:d.string(),threshold:d.number(),above:d.unknown(),below:d.unknown()}).describe("Score-based strategy. Compares a field value against a threshold."),Ws=d.object({type:d.literal("model"),modelId:d.string(),inputs:d.array(d.string()),outputMapping:d.record(d.string(),d.unknown()),default:d.unknown()}).describe("ML model strategy. Sends inputs to a model and maps outputs."),zs=d.object({type:d.literal("external"),endpoint:d.string(),method:d.enum(["GET","POST"]).optional(),default:d.unknown(),timeoutMs:d.number().optional()}).describe("External API strategy. Calls an endpoint to determine the value."),qs=d.discriminatedUnion("type",[Us,js,Ws,zs]),Ga=qs.nullable().optional();var yE=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),bE=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional();function _E(r,e,t="currentColor"){let n=Ds(r,{size:e,color:t});if(!n)return N`<span style=${T({fontSize:`${e}px`,lineHeight:"1"})}>${r}</span>`;let i=document.createElement("span");return i.style.display="flex",i.innerHTML=n,N`${i}`}var xE=[":toggled",":clicked",":feedback",":navigate",":expanded",":collapsed",":dismissed",":submitted",":interacted",":tip_clicked",":tip_focused"],Ka=class extends be{constructor(){super(...arguments);this.config=null;this.surface="overlay";this.runtimeRef=null;this._hovered=!1;this._widgetHandle=null;this._widgetContainer=null;this._mountedWidgetId=null;this._registryUnsub=null;this._eventBusUnsub=null;this._intersectionObserver=null;this._prevPropsJson=null;this._onMouseEnter=()=>{this._hovered=!0};this._onMouseLeave=()=>{this._hovered=!1}}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._setupEventBusSubscription(),this._setupRegistrySubscription(),this.updateComplete.then(()=>{this._mountWidgetIfReady(),this._setupIntersectionObserver()})}updated(t){(t.has("runtimeRef")||t.has("config"))&&(t.has("runtimeRef")&&(this._teardownSubscriptions(),this._setupEventBusSubscription(),this._setupRegistrySubscription()),(this.config?.widget??null)!==this._mountedWidgetId?(this._unmountWidget(),this._mountWidgetIfReady()):this._forwardPropUpdates())}disconnectedCallback(){super.disconnectedCallback(),this._unmountWidget(),this._teardownSubscriptions(),this._intersectionObserver?.disconnect(),this._intersectionObserver=null}_mountWidgetIfReady(){if(this._mountedWidgetId)return;let t=this.runtimeRef?.widgets,n=this.config?.widget;if(!t||!n||!t.has(n))return;let i=this.querySelector("[data-widget-mount-parent]");if(!i)return;let s=document.createElement("div");s.style.width="100%",s.style.minHeight="40px",i.appendChild(s);let o={...this.config?.props,instanceId:this.config?.id},a=t.mount(n,s,o);this._widgetContainer=s,this._widgetHandle=a,this._mountedWidgetId=n,this._prevPropsJson=JSON.stringify(o)}_unmountWidget(){this._widgetHandle&&(this._widgetHandle.unmount(),this._widgetHandle=null),this._widgetContainer&&(this._widgetContainer.remove(),this._widgetContainer=null),this._mountedWidgetId=null,this._prevPropsJson=null}_forwardPropUpdates(){if(!this._widgetHandle||!this.config)return;let t={...this.config.props,instanceId:this.config.id},n=JSON.stringify(t);n!==this._prevPropsJson&&(this._prevPropsJson=n,this._widgetHandle.update(t))}_setupRegistrySubscription(){let t=this.runtimeRef?.widgets,n=this.config?.widget;!t||!n||t.has(n)&&this._mountedWidgetId===n||(this._registryUnsub=t.subscribe(i=>{i.type==="registered"&&i.widgetId===n&&(this.requestUpdate(),queueMicrotask(()=>{this._mountedWidgetId||this._mountWidgetIfReady()}))}))}_setupIntersectionObserver(){let t=typeof window<"u"?window.SynOS?.interventionTracker:null;if(!t||!this.config)return;let n=this.querySelector("article");n&&(this._intersectionObserver=new IntersectionObserver(([i])=>{i.isIntersecting&&(t.trackSeen(this.config.id,this.config.widget??"unknown"),this._intersectionObserver?.disconnect())},{threshold:.5}),this._intersectionObserver.observe(n))}_setupEventBusSubscription(){let t=typeof window<"u"?window.SynOS?.interventionTracker:null;!this.runtimeRef?.events||!t||!this.config||(this._eventBusUnsub=this.runtimeRef.events.subscribe(n=>{xE.some(i=>n.name?.includes(i))&&n.props?.instanceId===this.config.id&&t.trackInteracted(this.config.id,this.config.widget??"unknown",n.name)}))}_teardownSubscriptions(){this._registryUnsub?.(),this._registryUnsub=null,this._eventBusUnsub?.(),this._eventBusUnsub=null}get _registration(){let t=this.config?.widget;if(!(!t||!this.runtimeRef?.widgets))return this.runtimeRef.widgets.getRegistration?.(t)}get _resolvedIcon(){return this.config?.icon?this.config.icon:this._registration?.metadata?.icon??"+"}get _resolvedSubtitle(){return this.config?.subtitle?this.config.subtitle:this._registration?.metadata?.subtitle}render(){if(!this.config)return ee;let{title:t,widget:n}=this.config,i=this._resolvedSubtitle,s=this._resolvedIcon,o=i?36:24,l=this.runtimeRef?.widgets?.has(n)??!1,u={display:"flex",flexDirection:"column",borderRadius:"var(--sc-tile-border-radius)",background:this._hovered?"linear-gradient(0deg, var(--sc-tile-background-hover), var(--sc-tile-background-hover)), var(--sc-tile-background)":"var(--sc-tile-background)",backdropFilter:"blur(16px) saturate(1.2)",WebkitBackdropFilter:"blur(16px) saturate(1.2)",border:"var(--sc-tile-border)",boxShadow:"var(--sc-tile-shadow)",color:"var(--sc-tile-title-color)",fontFamily:"var(--sc-font-family)",overflow:"hidden",cursor:"default",transition:"all 0.25s ease",transform:this._hovered?"scale(1.01)":"scale(1)"},p={display:"flex",alignItems:"center",gap:"var(--sc-tile-gap, 0.25rem)",padding:"var(--sc-tile-header-padding, 0.375rem 0.75rem)",minHeight:"44px"},h={display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0"},f={fontSize:"1.14rem",fontWeight:"600",color:"var(--sc-tile-title-color)",margin:"0.125rem 0 0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},v={fontSize:"0.8rem",fontWeight:"400",color:"var(--sc-tile-text-color)",margin:"0.125rem 0 0",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},g={padding:"var(--sc-tile-body-padding, 0 0.75rem 0.5rem)",borderTop:"1px solid rgba(255, 255, 255, 0.06)"},m={paddingTop:"var(--sc-tile-gap, 0.25rem)"},y={padding:"0.75rem",fontSize:"0.8rem",color:"var(--sc-tile-text-color)",fontStyle:"italic"};return N`
357
357
  <article
358
358
  data-shadow-canvas-id=${`tile-${this.config.id}`}
359
- style=${R(u)}
359
+ style=${T(u)}
360
360
  @mouseenter=${this._onMouseEnter}
361
361
  @mouseleave=${this._onMouseLeave}
362
362
  >
363
363
  <!-- Header -->
364
- <div style=${R(p)}>
365
- <div style=${R(h)}>
366
- ${Rk(s,o)}
364
+ <div style=${T(p)}>
365
+ <div style=${T(h)}>
366
+ ${_E(s,o)}
367
367
  </div>
368
- <div style=${R({flex:"1",minWidth:"0"})}>
369
- <h3 style=${R(f)}>
368
+ <div style=${T({flex:"1",minWidth:"0"})}>
369
+ <h3 style=${T(f)}>
370
370
  ${t??n}
371
371
  </h3>
372
- ${i?L`<p style=${R(v)}>${i}</p>`:J}
372
+ ${i?N`<p style=${T(v)}>${i}</p>`:ee}
373
373
  </div>
374
374
  </div>
375
375
 
376
376
  <!-- Widget Content -->
377
- <div style=${R(g)}>
378
- <div style=${R(m)}>
379
- ${l?L`<div data-widget-mount-parent></div>`:L`<div style=${R(y)}>
377
+ <div style=${T(g)}>
378
+ <div style=${T(m)}>
379
+ ${l?N`<div data-widget-mount-parent></div>`:N`<div style=${T(y)}>
380
380
  Widget not available: ${n}
381
381
  </div>`}
382
382
  </div>
383
383
  </div>
384
384
  </article>
385
- `}};Ua.properties={config:{attribute:!1},surface:{type:String},runtimeRef:{attribute:!1},_hovered:{state:!0}};customElements.define("syntro-tile-card",Ua);var Wa=class extends ye{constructor(){super(...arguments);this.tiles=[];this.runtimeRef=null;this.surface="overlay"}createRenderRoot(){return this}render(){return L`
386
- <div data-syntro-tile-stack style=${R({display:"flex",flexDirection:"column",gap:"0.75rem",width:"100%"})}>
387
- ${this.tiles.map(n=>L`
385
+ `}};Ka.properties={config:{attribute:!1},surface:{type:String},runtimeRef:{attribute:!1},_hovered:{state:!0}};customElements.define("syntro-tile-card",Ka);var Ya=class extends be{constructor(){super(...arguments);this.tiles=[];this.runtimeRef=null;this.surface="overlay"}createRenderRoot(){return this}render(){return N`
386
+ <div data-syntro-tile-stack style=${T({display:"flex",flexDirection:"column",gap:"0.75rem",width:"100%"})}>
387
+ ${this.tiles.map(n=>N`
388
388
  <syntro-tile-card
389
389
  .config=${n}
390
390
  .surface=${this.surface}
@@ -392,42 +392,42 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
392
392
  ></syntro-tile-card>
393
393
  `)}
394
394
  </div>
395
- `}};Wa.properties={tiles:{attribute:!1},runtimeRef:{attribute:!1},surface:{type:String}};customElements.define("syntro-tile-stack",Wa);var Bu={peek:30,mid:70,full:95},Ik=.5,Vu=8,nv=100,iv=8,za=class extends ye{constructor(){super(...arguments);this.isOpen=!1;this.tiles=[];this.isLoading=!1;this.error=void 0;this.canvasTitle=void 0;this.runtimeRef=null;this.telemetry=null;this.themeConfig={canvas:{}};this.snap="mid";this.dragOffsetVh=0;this.isDragging=!1;this._visible=!1;this._activePointerId=null;this._dragStartY=0;this._dragStartSnap="mid";this._samples=[];this._gestureCommitted=!1;this._gestureFromHandle=!1;this._scrollEl=null;this._savedBodyOverflow=null;this._entryRafId=0;this._exitTimer=null;this._onDocumentMousedown=t=>{if(!this.isOpen)return;let n=t.composedPath();if(n.some(o=>o instanceof HTMLElement&&o.closest?.('[data-shadow-canvas-id="overlay-launcher"]')!=null))return;let s=this.querySelector('[data-syntro-bottom-sheet="container"]');s&&!n.includes(s)&&this.dispatchEvent(new CustomEvent("drawer-close",{bubbles:!0,composed:!0}))};this._onScrimClick=()=>{this.snap="mid"}}createRenderRoot(){return this}get _canvas(){return this.themeConfig?.canvas??{}}get _duration(){return this._canvas.transitionDuration??"300ms"}get _easing(){return this._canvas.transitionEasing??"cubic-bezier(0.32, 0.72, 0, 1)"}get _border(){return this._canvas.border??"1px solid rgba(255, 255, 255, 0.08)"}get _blur(){let t=this._canvas.blur;return!t||t==="none"?"blur(24px)":t}get _background(){let t=this._canvas.background;return!t||t==="transparent"||t==="none"?this.themeConfig?.overlay?.background??"rgba(0, 0, 0, 0.85)":t}get _backdrop(){return this._canvas.backdrop??!1}get _backdropColor(){return this._canvas.backdropColor??"rgba(0, 0, 0, 0.4)"}get snapPoints(){let t=this._canvas.snapPoints??{};return{peek:t.peek??Bu.peek,mid:t.mid??Bu.mid,full:t.full??Bu.full}}get _topEdgeVh(){return 100-this.snapPoints[this.snap]+this.dragOffsetVh}connectedCallback(){super.connectedCallback(),document.addEventListener("mousedown",this._onDocumentMousedown)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("mousedown",this._onDocumentMousedown),cancelAnimationFrame(this._entryRafId),this._exitTimer!==null&&(clearTimeout(this._exitTimer),this._exitTimer=null),this._unlockBodyScroll()}updated(t){this._scrollEl=this.querySelector('[data-syntro-bottom-sheet="scroll-area"]')??null,t.has("isOpen")&&(this.isOpen?(this._cancelExitTransition(),this._visible=!0,this.snap="mid",this._lockBodyScroll(),this._scheduleEntryTransition()):this._visible&&(this._scheduleExitTransition(),this._unlockBodyScroll()),this.dragOffsetVh=0,this.isDragging=!1,this._activePointerId=null,this._samples=[])}_lockBodyScroll(){typeof document>"u"||(this._savedBodyOverflow=document.body.style.overflow,document.body.style.overflow="hidden")}_unlockBodyScroll(){typeof document>"u"||this._savedBodyOverflow!==null&&(document.body.style.overflow=this._savedBodyOverflow,this._savedBodyOverflow=null)}_scheduleEntryTransition(){typeof window>"u"||(cancelAnimationFrame(this._entryRafId),this._entryRafId=requestAnimationFrame(()=>{let t=this.querySelector('[data-syntro-bottom-sheet="container"]');if(!t)return;let n=t.style.transform,i=t.style.transition;t.style.transition="none",t.style.transform="translateY(100svh)",this._entryRafId=requestAnimationFrame(()=>{t.style.transition=i,t.style.transform=n})}))}_scheduleExitTransition(){let t=this.querySelector('[data-syntro-bottom-sheet="container"]');if(!t){this._visible=!1;return}t.style.transform="translateY(100svh)",this._exitTimer=setTimeout(()=>{this._exitTimer=null,this._visible=!1},350)}_cancelExitTransition(){this._exitTimer!==null&&(clearTimeout(this._exitTimer),this._exitTimer=null)}_pxToVh(t){return typeof window>"u"||window.innerHeight<=0?0:t/window.innerHeight*100}_computeVelocityVhPerMs(){if(this._samples.length<2)return 0;let t=this._samples[this._samples.length-1],n=t.ts-nv,i=this._samples.find(o=>o.ts>=n)??this._samples[0],s=t.ts-i.ts;return s<=0?0:this._pxToVh(t.y-i.y)/s}_decideSnapOnRelease(){let t=this.snapPoints,n=t[this._dragStartSnap]-this.dragOffsetVh,i=this._computeVelocityVhPerMs(),s=i>0;if(Math.abs(this._pxToVelocityForDecision(i))>Ik)return s?n<t.peek-Vu?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null:this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(this.dragOffsetVh>iv)return n<t.peek-Vu?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null;if(this.dragOffsetVh<-iv)return this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(n<t.peek-Vu&&s)return null;let o=[["peek",Math.abs(n-t.peek)],["mid",Math.abs(n-t.mid)],["full",Math.abs(n-t.full)]];return o.sort((a,l)=>a[1]-l[1]),o[0][0]}_pxToVelocityForDecision(t){return typeof window>"u"?0:t/100*window.innerHeight}_onPointerDown(t,n){if(this._activePointerId===null&&!(!n&&this.snap!=="full")&&(this._activePointerId=t.pointerId,this._dragStartY=t.clientY,this._dragStartSnap=this.snap,this._samples=[{ts:t.timeStamp,y:t.clientY}],this._gestureFromHandle=n,this._gestureCommitted=n,n)){this.isDragging=!0;try{t.currentTarget.setPointerCapture?.(t.pointerId)}catch{}}}_onPointerMove(t){if(this._activePointerId!==t.pointerId)return;let n=t.clientY-this._dragStartY;this._samples.push({ts:t.timeStamp,y:t.clientY});let i=t.timeStamp-nv*2;for(;this._samples.length>2&&this._samples[0].ts<i;)this._samples.shift();if(!this._gestureCommitted){if(Math.abs(n)<6)return;if(this.snap!=="full"){this._activePointerId=null,this._samples=[];return}let c=n>0,p=(this._scrollEl?.scrollTop??0)<=0;if(!(c&&p)){this._activePointerId=null,this._samples=[];return}this._gestureCommitted=!0,this.isDragging=!0;try{t.currentTarget.setPointerCapture?.(t.pointerId)}catch{}}let s=this._pxToVh(n),o=this.snapPoints,l=o[this._dragStartSnap]-o.full;this.dragOffsetVh=Math.max(s,l),t.preventDefault()}_onPointerUp(t){if(this._activePointerId!==t.pointerId)return;if(this._activePointerId=null,!this._gestureCommitted){this._samples=[];return}let n=this._decideSnapOnRelease();this.isDragging=!1,this.dragOffsetVh=0,this._gestureCommitted=!1,this._gestureFromHandle=!1,this._samples=[];try{t.currentTarget.releasePointerCapture?.(t.pointerId)}catch{}if(n===null){this.dispatchEvent(new CustomEvent("drawer-close",{bubbles:!0,composed:!0}));return}this.snap=n}render(){if(!this._visible)return J;let t=this._duration,n=this._easing,i=this._topEdgeVh,s=2147483600,o=this._backdrop&&this.snap==="full",a={position:"fixed",inset:"0",pointerEvents:"none",zIndex:String(s)},l={position:"fixed",left:"0",right:"0",bottom:"0",height:"100svh",pointerEvents:"auto",transform:`translateY(${i}svh)`,transition:this.isDragging?"none":`transform ${t} ${n}, opacity ${t} ease-out`,display:"flex",flexDirection:"column",color:"var(--sc-overlay-text-color)",background:this._background,backdropFilter:this._blur,WebkitBackdropFilter:this._blur,borderTop:this._border,borderTopLeftRadius:"var(--sc-overlay-border-radius, 16px)",borderTopRightRadius:"var(--sc-overlay-border-radius, 16px)",boxShadow:"0 -8px 32px rgba(0, 0, 0, 0.25)",overflow:"hidden",paddingBottom:"env(safe-area-inset-bottom, 0px)"},c={flex:"0 0 auto",height:"56px",display:"flex",alignItems:"center",justifyContent:"center",cursor:"grab",touchAction:"none"},u={width:"48px",height:"5px",borderRadius:"3px",background:"rgba(255, 255, 255, 0.4)"},h={flex:"1 1 auto",overflowY:"auto",padding:"0 1rem 1rem",touchAction:"pan-y",maxHeight:`calc(${this.snapPoints[this.snap]}svh - 56px)`};return L`
396
- <div data-syntro-bottom-sheet="root" style=${R(a)}>
397
- ${o?L`<div
395
+ `}};Ya.properties={tiles:{attribute:!1},runtimeRef:{attribute:!1},surface:{type:String}};customElements.define("syntro-tile-stack",Ya);var Yu={peek:30,mid:70,full:95},wE=.5,Xu=8,Iv=100,$v=8,Xa=class extends be{constructor(){super(...arguments);this.isOpen=!1;this.tiles=[];this.isLoading=!1;this.error=void 0;this.canvasTitle=void 0;this.runtimeRef=null;this.telemetry=null;this.themeConfig={canvas:{}};this.snap="mid";this.dragOffsetVh=0;this.isDragging=!1;this._visible=!1;this._activePointerId=null;this._dragStartY=0;this._dragStartSnap="mid";this._samples=[];this._gestureCommitted=!1;this._gestureFromHandle=!1;this._scrollEl=null;this._savedBodyOverflow=null;this._entryRafId=0;this._exitTimer=null;this._onDocumentMousedown=t=>{if(!this.isOpen)return;let n=t.composedPath();if(n.some(o=>o instanceof HTMLElement&&o.closest?.('[data-shadow-canvas-id="overlay-launcher"]')!=null))return;let s=this.querySelector('[data-syntro-bottom-sheet="container"]');s&&!n.includes(s)&&this.dispatchEvent(new CustomEvent("drawer-close",{bubbles:!0,composed:!0}))};this._onScrimClick=()=>{this.snap="mid"}}createRenderRoot(){return this}get _canvas(){return this.themeConfig?.canvas??{}}get _duration(){return this._canvas.transitionDuration??"300ms"}get _easing(){return this._canvas.transitionEasing??"cubic-bezier(0.32, 0.72, 0, 1)"}get _border(){return this._canvas.border??"1px solid rgba(255, 255, 255, 0.08)"}get _blur(){let t=this._canvas.blur;return!t||t==="none"?"blur(24px)":t}get _background(){let t=this._canvas.background;return!t||t==="transparent"||t==="none"?this.themeConfig?.overlay?.background??"rgba(0, 0, 0, 0.85)":t}get _backdrop(){return this._canvas.backdrop??!1}get _backdropColor(){return this._canvas.backdropColor??"rgba(0, 0, 0, 0.4)"}get snapPoints(){let t=this._canvas.snapPoints??{};return{peek:t.peek??Yu.peek,mid:t.mid??Yu.mid,full:t.full??Yu.full}}get _topEdgeVh(){return 100-this.snapPoints[this.snap]+this.dragOffsetVh}connectedCallback(){super.connectedCallback(),document.addEventListener("mousedown",this._onDocumentMousedown)}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("mousedown",this._onDocumentMousedown),cancelAnimationFrame(this._entryRafId),this._exitTimer!==null&&(clearTimeout(this._exitTimer),this._exitTimer=null),this._unlockBodyScroll()}updated(t){this._scrollEl=this.querySelector('[data-syntro-bottom-sheet="scroll-area"]')??null,t.has("isOpen")&&(this.isOpen?(this._cancelExitTransition(),this._visible=!0,this.snap="mid",this._lockBodyScroll(),this._scheduleEntryTransition()):this._visible&&(this._scheduleExitTransition(),this._unlockBodyScroll()),this.dragOffsetVh=0,this.isDragging=!1,this._activePointerId=null,this._samples=[])}_lockBodyScroll(){typeof document>"u"||(this._savedBodyOverflow=document.body.style.overflow,document.body.style.overflow="hidden")}_unlockBodyScroll(){typeof document>"u"||this._savedBodyOverflow!==null&&(document.body.style.overflow=this._savedBodyOverflow,this._savedBodyOverflow=null)}_scheduleEntryTransition(){typeof window>"u"||(cancelAnimationFrame(this._entryRafId),this._entryRafId=requestAnimationFrame(()=>{let t=this.querySelector('[data-syntro-bottom-sheet="container"]');if(!t)return;let n=t.style.transform,i=t.style.transition;t.style.transition="none",t.style.transform="translateY(100svh)",this._entryRafId=requestAnimationFrame(()=>{t.style.transition=i,t.style.transform=n})}))}_scheduleExitTransition(){let t=this.querySelector('[data-syntro-bottom-sheet="container"]');if(!t){this._visible=!1;return}t.style.transform="translateY(100svh)",this._exitTimer=setTimeout(()=>{this._exitTimer=null,this._visible=!1},350)}_cancelExitTransition(){this._exitTimer!==null&&(clearTimeout(this._exitTimer),this._exitTimer=null)}_pxToVh(t){return typeof window>"u"||window.innerHeight<=0?0:t/window.innerHeight*100}_computeVelocityVhPerMs(){if(this._samples.length<2)return 0;let t=this._samples[this._samples.length-1],n=t.ts-Iv,i=this._samples.find(o=>o.ts>=n)??this._samples[0],s=t.ts-i.ts;return s<=0?0:this._pxToVh(t.y-i.y)/s}_decideSnapOnRelease(){let t=this.snapPoints,n=t[this._dragStartSnap]-this.dragOffsetVh,i=this._computeVelocityVhPerMs(),s=i>0;if(Math.abs(this._pxToVelocityForDecision(i))>wE)return s?n<t.peek-Xu?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null:this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(this.dragOffsetVh>$v)return n<t.peek-Xu?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null;if(this.dragOffsetVh<-$v)return this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(n<t.peek-Xu&&s)return null;let o=[["peek",Math.abs(n-t.peek)],["mid",Math.abs(n-t.mid)],["full",Math.abs(n-t.full)]];return o.sort((a,l)=>a[1]-l[1]),o[0][0]}_pxToVelocityForDecision(t){return typeof window>"u"?0:t/100*window.innerHeight}_onPointerDown(t,n){if(this._activePointerId===null&&!(!n&&this.snap!=="full")&&(this._activePointerId=t.pointerId,this._dragStartY=t.clientY,this._dragStartSnap=this.snap,this._samples=[{ts:t.timeStamp,y:t.clientY}],this._gestureFromHandle=n,this._gestureCommitted=n,n)){this.isDragging=!0;try{t.currentTarget.setPointerCapture?.(t.pointerId)}catch{}}}_onPointerMove(t){if(this._activePointerId!==t.pointerId)return;let n=t.clientY-this._dragStartY;this._samples.push({ts:t.timeStamp,y:t.clientY});let i=t.timeStamp-Iv*2;for(;this._samples.length>2&&this._samples[0].ts<i;)this._samples.shift();if(!this._gestureCommitted){if(Math.abs(n)<6)return;if(this.snap!=="full"){this._activePointerId=null,this._samples=[];return}let c=n>0,p=(this._scrollEl?.scrollTop??0)<=0;if(!(c&&p)){this._activePointerId=null,this._samples=[];return}this._gestureCommitted=!0,this.isDragging=!0;try{t.currentTarget.setPointerCapture?.(t.pointerId)}catch{}}let s=this._pxToVh(n),o=this.snapPoints,l=o[this._dragStartSnap]-o.full;this.dragOffsetVh=Math.max(s,l),t.preventDefault()}_onPointerUp(t){if(this._activePointerId!==t.pointerId)return;if(this._activePointerId=null,!this._gestureCommitted){this._samples=[];return}let n=this._decideSnapOnRelease();this.isDragging=!1,this.dragOffsetVh=0,this._gestureCommitted=!1,this._gestureFromHandle=!1,this._samples=[];try{t.currentTarget.releasePointerCapture?.(t.pointerId)}catch{}if(n===null){this.dispatchEvent(new CustomEvent("drawer-close",{bubbles:!0,composed:!0}));return}this.snap=n}render(){if(!this._visible)return ee;let t=this._duration,n=this._easing,i=this._topEdgeVh,s=2147483600,o=this._backdrop&&this.snap==="full",a={position:"fixed",inset:"0",pointerEvents:"none",zIndex:String(s)},l={position:"fixed",left:"0",right:"0",bottom:"0",height:"100svh",pointerEvents:"auto",transform:`translateY(${i}svh)`,transition:this.isDragging?"none":`transform ${t} ${n}, opacity ${t} ease-out`,display:"flex",flexDirection:"column",color:"var(--sc-overlay-text-color)",background:this._background,backdropFilter:this._blur,WebkitBackdropFilter:this._blur,borderTop:this._border,borderTopLeftRadius:"var(--sc-overlay-border-radius, 16px)",borderTopRightRadius:"var(--sc-overlay-border-radius, 16px)",boxShadow:"0 -8px 32px rgba(0, 0, 0, 0.25)",overflow:"hidden",paddingBottom:"env(safe-area-inset-bottom, 0px)"},c={flex:"0 0 auto",height:"56px",display:"flex",alignItems:"center",justifyContent:"center",cursor:"grab",touchAction:"none"},u={width:"48px",height:"5px",borderRadius:"3px",background:"rgba(255, 255, 255, 0.4)"},h={flex:"1 1 auto",overflowY:"auto",padding:"0 1rem 1rem",touchAction:"pan-y",maxHeight:`calc(${this.snapPoints[this.snap]}svh - 56px)`};return N`
396
+ <div data-syntro-bottom-sheet="root" style=${T(a)}>
397
+ ${o?N`<div
398
398
  data-syntro-bottom-sheet="scrim"
399
- style=${R({position:"fixed",inset:"0",background:this._backdropColor,pointerEvents:"auto",transition:`opacity ${t} ease-out`,zIndex:String(s)})}
399
+ style=${T({position:"fixed",inset:"0",background:this._backdropColor,pointerEvents:"auto",transition:`opacity ${t} ease-out`,zIndex:String(s)})}
400
400
  @click=${this._onScrimClick}
401
- ></div>`:J}
401
+ ></div>`:ee}
402
402
  <div
403
403
  data-syntro-bottom-sheet="container"
404
- style=${R({...l,zIndex:String(s+1)})}
404
+ style=${T({...l,zIndex:String(s+1)})}
405
405
  >
406
406
  <div
407
407
  data-syntro-bottom-sheet="handle"
408
- style=${R(c)}
408
+ style=${T(c)}
409
409
  @pointerdown=${f=>this._onPointerDown(f,!0)}
410
410
  @pointermove=${f=>this._onPointerMove(f)}
411
411
  @pointerup=${f=>this._onPointerUp(f)}
412
412
  @pointercancel=${f=>this._onPointerUp(f)}
413
413
  >
414
- <div data-syntro-bottom-sheet="grabber" style=${R(u)}></div>
414
+ <div data-syntro-bottom-sheet="grabber" style=${T(u)}></div>
415
415
  </div>
416
416
 
417
- ${this.canvasTitle?L`<header style=${R({padding:"0 1rem 0.5rem",margin:"0",fontSize:"0.7rem",textTransform:"uppercase",letterSpacing:"0.5em",color:"var(--sc-notification-text-secondary-color)"})}>${this.canvasTitle}</header>`:J}
417
+ ${this.canvasTitle?N`<header style=${T({padding:"0 1rem 0.5rem",margin:"0",fontSize:"0.7rem",textTransform:"uppercase",letterSpacing:"0.5em",color:"var(--sc-notification-text-secondary-color)"})}>${this.canvasTitle}</header>`:ee}
418
418
 
419
419
  <div
420
420
  data-syntro-bottom-sheet="scroll-area"
421
- style=${R(h)}
421
+ style=${T(h)}
422
422
  @pointerdown=${f=>this._onPointerDown(f,!1)}
423
423
  @pointermove=${f=>this._onPointerMove(f)}
424
424
  @pointerup=${f=>this._onPointerUp(f)}
425
425
  @pointercancel=${f=>this._onPointerUp(f)}
426
426
  >
427
- ${this.isLoading?L`<div data-syntro-bottom-sheet="loading">Loading...</div>`:this.error?L`<div
427
+ ${this.isLoading?N`<div data-syntro-bottom-sheet="loading">Loading...</div>`:this.error?N`<div
428
428
  data-syntro-bottom-sheet="error"
429
- style=${R({color:"var(--sc-notification-error-color)"})}
430
- >Failed to load: ${this.error}</div>`:L`<syntro-tile-stack
429
+ style=${T({color:"var(--sc-notification-error-color)"})}
430
+ >Failed to load: ${this.error}</div>`:N`<syntro-tile-stack
431
431
  .tiles=${this.tiles}
432
432
  .surface=${"overlay"}
433
433
  .runtimeRef=${this.runtimeRef}
@@ -435,15 +435,15 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
435
435
  </div>
436
436
  </div>
437
437
  </div>
438
- `}};za.properties={isOpen:{type:Boolean},tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},canvasTitle:{type:String},runtimeRef:{attribute:!1},telemetry:{attribute:!1},themeConfig:{attribute:!1},snap:{attribute:!1},dragOffsetVh:{attribute:!1},isDragging:{attribute:!1},_visible:{attribute:!1}};customElements.define("syntro-bottom-sheet",za);var Le="1.0.0",Te={UI_CLICK:"ui.click",UI_SCROLL:"ui.scroll",UI_INPUT:"ui.input",UI_CHANGE:"ui.change",UI_SUBMIT:"ui.submit",NAV_PAGE_VIEW:"nav.page_view",NAV_PAGE_LEAVE:"nav.page_leave",UI_HESITATE:"ui.hesitate",UI_RAGE_CLICK:"ui.rage_click",UI_SCROLL_THRASH:"ui.scroll_thrash",UI_FOCUS_BOUNCE:"ui.focus_bounce",UI_IDLE:"ui.idle",UI_HOVER:"ui.hover"},lt={Mutation:0,MouseMove:1,MouseInteraction:2,Scroll:3,ViewportResize:4,Input:5,TouchMove:6,MediaInteraction:7,Drag:12},Us={MouseUp:0,MouseDown:1,Click:2,ContextMenu:3,DblClick:4,Focus:5,Blur:6,TouchStart:7,TouchEnd:9},ju={hesitationMs:3e3,hesitationRadiusPx:10,rageClickCount:3,rageClickWindowMs:1e3,rageClickRadiusPx:30,scrollThrashReversals:3,scrollThrashWindowMs:2e3,focusBounceMaxInputs:0,idleMs:5e3,hoverSampleMs:100};var qa=class{constructor(e,t){this.config=e,this.emit=t,this.focused=new Map}ingest(e){if(e.type!==3)return;let t=e.timestamp;if(e.data.source===lt.MouseInteraction){let n=e.data.id??0;if(e.data.type===Us.Focus)this.focused.set(n,{id:n,focusTs:t,inputCount:0});else if(e.data.type===Us.Blur){let i=this.focused.get(n);i&&i.inputCount<=this.config.focusBounceMaxInputs&&this.emit({ts:t,name:Te.UI_FOCUS_BOUNCE,source:"rrweb",schemaVersion:Le,props:{elementId:n,duration_ms:t-i.focusTs}}),this.focused.delete(n)}}else if(e.data.source===lt.Input){let n=e.data.id??0,i=this.focused.get(n);i&&i.inputCount++}}};var Za=class{constructor(e,t){this.config=e,this.emit=t,this.anchorX=0,this.anchorY=0,this.anchorTs=0,this.emitted=!1,this.hasPosition=!1}ingest(e){if(e.type!==3||e.data.source!==lt.MouseMove)return;let t=e.data.positions;if(!t||t.length===0)return;let n=t[t.length-1],i=e.timestamp+(n.timeOffset??0);if(!this.hasPosition){this.anchorX=n.x,this.anchorY=n.y,this.anchorTs=i,this.hasPosition=!0,this.emitted=!1;return}let s=n.x-this.anchorX,o=n.y-this.anchorY;Math.sqrt(s*s+o*o)>this.config.hesitationRadiusPx&&(this.anchorX=n.x,this.anchorY=n.y,this.anchorTs=i,this.emitted=!1)}tick(e){if(!this.hasPosition||this.emitted)return;let t=e-this.anchorTs;t>=this.config.hesitationMs&&(this.emit({ts:e,name:Te.UI_HESITATE,source:"rrweb",schemaVersion:Le,props:{x:this.anchorX,y:this.anchorY,duration_ms:t}}),this.emitted=!0)}};var Ga=class{constructor(e,t,n){this.config=e,this.emit=t,this.elementResolver=n,this.currentElement=null,this.hoverStartTs=null,this.lastX=0,this.lastY=0,this.lastSampleTs=-1/0}ingest(e){if(e.type!==3||e.data.source!==lt.MouseMove)return;let t=e.data.positions;if(!t||t.length===0)return;let n=t[t.length-1];this.lastX=n.x,this.lastY=n.y}tick(e){if(!this.elementResolver||e-this.lastSampleTs<this.config.hoverSampleMs)return;this.lastSampleTs=e;let t=this.elementResolver(this.lastX,this.lastY),n=t?sv(t):null,i=this.currentElement?sv(this.currentElement):null;n!==i&&(this.currentElement&&this.hoverStartTs!==null&&this.emit({ts:e,name:Te.UI_HOVER,source:"rrweb",schemaVersion:Le,props:{x:this.lastX,y:this.lastY,duration_ms:e-this.hoverStartTs,element:this.currentElement}}),this.currentElement=t,this.hoverStartTs=e)}};function sv(r){return`${r.tag_name??""}|${r.attr__id??""}|${(r.classes??[]).join(",")}`}var Ka=class{constructor(e,t){this.config=e,this.emit=t,this.lastActivityTs=null,this.emitted=!1}ingest(e){if(e.type!==3)return;let t=e.data.source;(t===lt.MouseMove||t===lt.MouseInteraction||t===lt.Scroll)&&(this.lastActivityTs=e.timestamp,this.emitted=!1)}tick(e){this.lastActivityTs===null||this.emitted||e-this.lastActivityTs>=this.config.idleMs&&(this.emit({ts:e,name:Te.UI_IDLE,source:"rrweb",schemaVersion:Le,props:{idle_ms:e-this.lastActivityTs}}),this.emitted=!0)}};var Ya=class{constructor(e,t){this.config=e,this.emit=t,this.clicks=[]}ingest(e){if(e.type!==3||e.data.source!==lt.MouseInteraction||e.data.type!==Us.Click)return;let t=e.data.x??0,n=e.data.y??0,i=e.timestamp,s=i-this.config.rageClickWindowMs;this.clicks=this.clicks.filter(a=>a.ts>=s),this.clicks.push({ts:i,x:t,y:n});let o=this.clicks.filter(a=>{let l=a.x-t,c=a.y-n;return Math.sqrt(l*l+c*c)<=this.config.rageClickRadiusPx});o.length>=this.config.rageClickCount&&(this.emit({ts:i,name:Te.UI_RAGE_CLICK,source:"rrweb",schemaVersion:Le,props:{x:t,y:n,clickCount:o.length,duration_ms:i-o[0].ts}}),this.clicks=[])}};var Xa=class{constructor(e,t){this.config=e,this.emit=t,this.lastY=null,this.lastDirection=null,this.reversals=[]}ingest(e){if(e.type!==3||e.data.source!==lt.Scroll)return;let t=e.data.y??0,n=e.timestamp;if(this.lastY!==null){let i=t>this.lastY?"down":t<this.lastY?"up":this.lastDirection;if(i&&i!==this.lastDirection){let s=n-this.config.scrollThrashWindowMs;this.reversals=this.reversals.filter(o=>o>s),this.reversals.push(n),this.reversals.length>=this.config.scrollThrashReversals&&(this.emit({ts:n,name:Te.UI_SCROLL_THRASH,source:"rrweb",schemaVersion:Le,props:{reversals:this.reversals.length,duration_ms:n-this.reversals[0]}}),this.reversals=[])}this.lastDirection=i}this.lastY=t}};var ov={$click:Te.UI_CLICK,$scroll:Te.UI_SCROLL,$input:Te.UI_INPUT,$change:Te.UI_CHANGE,$submit:Te.UI_SUBMIT,$pageview:Te.NAV_PAGE_VIEW,$pageleave:Te.NAV_PAGE_LEAVE,$session_start:"session.start",$identify:"user.identify"};function $k(r){let e=r.event;if(typeof e!="string")return"posthog.unknown";if(ov[e])return ov[e];if(e==="$autocapture"){let t=r.properties?.$tag_name,n=r.properties?.$event_type;return n==="submit"?Te.UI_SUBMIT:n==="change"?Te.UI_CHANGE:t==="input"||t==="textarea"?Te.UI_INPUT:Te.UI_CLICK}return e.startsWith("$")?e.replace("$","posthog."):`posthog.${e}`}var av=new Set(["a","button","input","select","textarea"]);function Mk(r){if(r)return r.split(";").map(e=>{let t={},n=e.indexOf(":"),i=n>=0?e.slice(0,n):e,s=n>=0?e.slice(n+1):"",o=i.indexOf(".");if(o>=0?(t.tag_name=i.slice(0,o),t.attr__class=i.slice(o+1).replace(/\./g," ")):t.tag_name=i,!/^[a-zA-Z][a-zA-Z0-9-]*$/.test(String(t.tag_name??"")))return null;let a=/([\w$-]+)="([^"]*)"/g,l;for(;(l=a.exec(s))!==null;){let[,c,u]=l;c==="nth-child"||c==="nth-of-type"||(t[c]=u)}return t.text&&(t.$el_text=t.text,delete t.text),t}).filter(e=>e!==null)}function Ok(r,e){if(e&&av.has(e)||!r)return e;for(let t of r){let n=t.tag_name;if(n&&av.has(n))return n}return e}function Pk(r,e){return r.map((t,n)=>{let i=e[n];return!i||t.tag_name!==i.tag_name?t:{...i,...t}})}function Nk(r,e){let t={},n=r.properties||{},i=n.$elements??(typeof n.$elements_chain=="string"?Mk(n.$elements_chain):void 0),s=i&&e?Pk(i,e):i,o=n.$tag_name??s?.[0]?.tag_name,a=r.event==="$autocapture"||r.event==="$click";return t.tagName=a?Ok(s,o):o,n.$el_text&&(t.elementText=n.$el_text),s&&(t.elements=s),a&&!s&&console.warn(`[PostHogNormalizer] $autocapture click has no element chain. PostHog may have changed wire format. Properties: $elements=${!!n.$elements}, $elements_chain=${typeof n.$elements_chain}`),n.$current_url&&(t.url=n.$current_url),n.$pathname&&(t.pathname=n.$pathname),n.$host&&(t.host=n.$host),n.$viewport_width&&(t.viewportWidth=n.$viewport_width),n.$viewport_height&&(t.viewportHeight=n.$viewport_height),n.$session_id&&(t.sessionId=n.$session_id),n.$scroll_depth&&(t.scrollDepth=n.$scroll_depth),n.$scroll_percentage&&(t.scrollPercentage=n.$scroll_percentage),t.originalEvent=r.event,t}function Ws(r,e){let t;return typeof r.timestamp=="number"?t=r.timestamp:typeof r.timestamp=="string"?t=new Date(r.timestamp).getTime():t=Date.now(),{ts:t,name:$k(r),source:"posthog",props:Nk(r,e),schemaVersion:Le}}function zs(r){let e=r.event;return!(typeof e!="string"||["$feature_flag_called","$feature_flags","$groups","$groupidentify","$set","$set_once","$unset","$create_alias","$capture_metrics","$performance_event","$web_vitals","$exception","$dead_click","$heatmap"].includes(e))}function lv(r){return(e,t)=>{if(typeof e!="string")return;let n={event:e,properties:t,timestamp:Date.now()};if(zs(n)){let i=Ws(n);r(i)}}}function Uu(r){let e={...ju,...r?.config},t=[];function n(v){for(let g of t)g(v)}let i=new Za(e,n),s=new Ya(e,n),o=new Xa(e,n),a=new qa(e,n),l=new Ka(e,n),c=new Ga(e,n,r?.elementResolver),u=[],p=500;function h(v){if(v.event==="$click")return!0;if(v.event!=="$autocapture")return!1;let g=v.properties?.$event_type;return g===void 0||g==="click"}function f(v){let g=v-p;for(;u.length>0&&u[0].ts<g;)u.shift();return u.shift()?.elements}return{ingest(v){if(v.kind==="posthog"){let{kind:g,...m}=v;if(zs(m)){let y=h(m)?f(typeof m.timestamp=="number"?m.timestamp:Date.now()):void 0;n(Ws(m,y))}}else v.kind==="rrweb"&&(i.ingest(v),s.ingest(v),o.ingest(v),a.ingest(v),l.ingest(v),c.ingest(v))},onEvent(v){t.push(v)},tick(v){i.tick(v),l.tick(v),c.tick(v)},enrichClickAttributes(v,g){u.push({ts:v,elements:g});let m=v-p;for(;u.length>0&&u[0].ts<m;)u.shift()}}}var Xe={UI_CLICK:"ui.click",UI_SCROLL:"ui.scroll",UI_INPUT:"ui.input",UI_CHANGE:"ui.change",UI_SUBMIT:"ui.submit",NAV_PAGE_VIEW:"nav.page_view",NAV_PAGE_LEAVE:"nav.page_leave",CANVAS_OPENED:"canvas.opened",CANVAS_CLOSED:"canvas.closed",TILE_VIEWED:"tile.viewed",TILE_EXPANDED:"tile.expanded",TILE_COLLAPSED:"tile.collapsed",TILE_ACTION:"tile.action",OVERLAY_STARTED:"overlay.started",OVERLAY_COMPLETED:"overlay.completed",OVERLAY_DISMISSED:"overlay.dismissed",OVERLAY_STEP_VIEWED:"overlay.step_viewed",BEHAVIOR_RAGE_CLICK:"behavior.rage_click",BEHAVIOR_HESITATION:"behavior.hesitation",BEHAVIOR_CONFUSION:"behavior.confusion",ACTION_APPLIED:"action.applied",ACTION_REVERTED:"action.reverted",ACTION_FAILED:"action.failed",ACTION_CTA_CLICKED:"action.cta_clicked",NOTIFICATION_SHOWN:"notification.shown",NOTIFICATION_CLICKED:"notification.clicked",NOTIFICATION_DISMISSED:"notification.dismissed",NOTIFICATION_DEEP_LINK:"notification.deep_link",SURFACE_MOUNTED:"surface.mounted",SURFACE_UNMOUNTED:"surface.unmounted"};var Ja=3;var Wu=3e4;var Fk=0;function zu(r,e){return r.replace(/\{\{props\.(\w+)\}\}/g,(t,n)=>!e||!(n in e)?t:String(e[n]))}function Dk(r,e){if(r===e)return!0;try{return new RegExp(e).test(r)}catch{return!1}}function cv(r,e){for(let t of e){let n=t.notifications;if(!(!n||n.length===0))for(let i of n){if(!Dk(r.name,i.on))continue;let s=Date.now(),o=i.ttl??8e3;return{notification:{id:`notif-${++Fk}-${s}`,title:zu(i.title,r.props),body:i.body?zu(i.body,r.props):void 0,icon:i.icon,tileId:t.id,itemId:i.deepLink?.itemId?zu(i.deepLink.itemId,r.props):void 0,expiresAt:s+o,createdAt:s,ttl:o},rule:i}}}return null}var qs=class{constructor(e,t,n){this._notifications=[];this._cooldownMap=new Map;this._timerIds=new Map;this._unsubscribe=null;this.host=e,this.eventBus=t,this.tiles=n,e.addController(this)}get notifications(){return this._notifications}setTiles(e){this.tiles=e}setEventBus(e){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=null),this.eventBus=e,this.eventBus&&this.hostConnected()}hostConnected(){this.eventBus&&(this._unsubscribe=this.eventBus.subscribe(e=>{let t=cv(e,this.tiles);if(!t)return;let{notification:n,rule:i}=t,s=n.itemId?`${n.tileId}:${e.name}:${n.itemId}`:`${n.tileId}:${e.name}`,o=this._cooldownMap.get(s),a=Date.now(),l=i.cooldown??3e4;if(o!==void 0&&a-o<l||(this._cooldownMap.set(s,a),n.itemId&&this._notifications.some(p=>p.tileId===n.tileId&&p.itemId===n.itemId)))return;let c=[...this._notifications,n];if(c.length>3){let u=c.shift(),p=this._timerIds.get(u.id);p&&(clearTimeout(p),this._timerIds.delete(u.id))}this._notifications=c,this.host.requestUpdate(),this.eventBus.publish(Xe.NOTIFICATION_SHOWN,{notificationId:n.id,tileId:n.tileId,itemId:n.itemId,title:n.title}),this._scheduleDismiss(n)}))}hostDisconnected(){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=null);for(let e of this._timerIds.values())clearTimeout(e);this._timerIds.clear()}push(e){let t=[...this._notifications,e];if(t.length>3){let n=t.shift(),i=this._timerIds.get(n.id);i&&(clearTimeout(i),this._timerIds.delete(n.id))}this._notifications=t,this.host.requestUpdate(),this._scheduleDismiss(e)}dismiss(e){let t=this._notifications.find(i=>i.id===e);t&&this._publishDismissed(t),this._notifications=this._notifications.filter(i=>i.id!==e);let n=this._timerIds.get(e);n&&(clearTimeout(n),this._timerIds.delete(e)),this.host.requestUpdate()}_publishDismissed(e){this.eventBus?.publish(Xe.NOTIFICATION_DISMISSED,{notificationId:e.id,tileId:e.tileId,itemId:e.itemId})}_scheduleDismiss(e){let t=setTimeout(()=>{this._notifications=this._notifications.filter(n=>n.id!==e.id),this._timerIds.delete(e.id),this._publishDismissed(e),this.host.requestUpdate()},e.ttl);this._timerIds.set(e.id,t)}};function Vt(r,e){return{ts:Date.now(),name:r,source:"canvas",props:e,schemaVersion:Le}}function Hk(r,e){return Vt(Xe.CANVAS_OPENED,{surface:r,...e})}function Bk(r,e){return Vt(Xe.CANVAS_CLOSED,{surface:r,...e})}function Vk(r,e){return Vt(Xe.TILE_VIEWED,{tileId:r,surface:e})}function jk(r,e){return Vt(Xe.TILE_EXPANDED,{tileId:r,surface:e})}function Uk(r,e){return Vt(Xe.TILE_COLLAPSED,{tileId:r,surface:e})}function Wk(r,e,t){return Vt(Xe.TILE_ACTION,{tileId:r,actionId:e,surface:t})}function zk(r,e){return Vt(Xe.OVERLAY_STARTED,{recipeId:r,recipeName:e})}function qk(r,e){return Vt(Xe.OVERLAY_COMPLETED,{recipeId:r,recipeName:e})}function Zk(r,e,t){return Vt(Xe.OVERLAY_DISMISSED,{recipeId:r,recipeName:e,stepIndex:t})}function Gk(r,e,t){return Vt(Xe.OVERLAY_STEP_VIEWED,{recipeId:r,stepIndex:e,stepTitle:t})}function Kk(r,e){let t=r.startsWith("canvas.")?r:`canvas.${r}`;return Vt(t,e)}var Zs={canvasOpened:Hk,canvasClosed:Bk,tileViewed:Vk,tileExpanded:jk,tileCollapsed:Uk,tileAction:Wk,overlayStarted:zk,overlayCompleted:qk,overlayDismissed:Zk,overlayStepViewed:Gk,custom:Kk};function Yk(r,e){let t=[];for(let n of r){let i=n.widget.split(":")[0],o=e.get(i)?.manifest.runtime?.notifyWatchers;o&&t.push(...o(n.props??{}))}return t}var Qa=class extends ye{constructor(){super();this.isOpen=!1;this.tiles=[];this.isLoading=!1;this.error=void 0;this.canvasTitle=void 0;this.displayMode="standard";this.runtimeRef=null;this.telemetry=null;this.themeConfig={};this.launcherAnimate=!1;this.isMobileMode=!1;this._surfaceUnsub=null;this._toggleCooldown=!1;this._toggleCooldownTimer=null;this._notifyPrevState=new Map;this._notifyUnsub=null;this._notifyUnsubMetrics=null;this._notifications=new qs(this,null,[])}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._syncNotificationsController(),this._startNotifyWatcher(),this._subscribeSurface()}disconnectedCallback(){super.disconnectedCallback(),this._stopNotifyWatcher(),this._surfaceUnsub?.(),this._surfaceUnsub=null,this._toggleCooldownTimer!==null&&(clearTimeout(this._toggleCooldownTimer),this._toggleCooldownTimer=null)}_subscribeSurface(){let t=this.runtimeRef?.context;if(!t)return;let n=()=>{let i=t.get()?.surface?.mode==="mobile";i!==this.isMobileMode&&(this.isMobileMode=i)};n(),this._surfaceUnsub=t.subscribe(n)}updated(t){(t.has("runtimeRef")||t.has("tiles"))&&(this._syncNotificationsController(),this._restartNotifyWatcher(),t.has("runtimeRef")&&(this._surfaceUnsub?.(),this._surfaceUnsub=null,this._subscribeSurface())),t.has("isOpen")&&this.isOpen&&this._trackTilesViewed()}_syncNotificationsController(){this._notifications.setEventBus(this.runtimeRef?.events??null),this._notifications.setTiles(this.tiles)}_startNotifyWatcher(){let t=this.runtimeRef;if(!t?.events||!t.apps)return;let n=Yk(this.tiles,t.apps);if(n.length===0)return;let i=t.state.ns("notified");for(let o of n)if(!this._notifyPrevState.has(o.id)){let a=t.evaluateSync(o.strategy);this._notifyPrevState.set(o.id,a.value),a.value&&!i.has(o.id)&&(i.set(o.id,!0),t.events.publish(o.eventName,o.eventProps))}let s=()=>{for(let o of n){let a=t.evaluateSync(o.strategy),l=this._notifyPrevState.get(o.id)??!1;this._notifyPrevState.set(o.id,a.value),!l&&a.value?(i.set(o.id,!0),t.events.publish(o.eventName,o.eventProps)):l&&!a.value&&i.remove(o.id)}};this._notifyUnsub=t.events.subscribe(s),this._notifyUnsubMetrics=t.sessionMetrics?.subscribe(s)??null}_stopNotifyWatcher(){this._notifyUnsub&&(this._notifyUnsub(),this._notifyUnsub=null),this._notifyUnsubMetrics&&(this._notifyUnsubMetrics(),this._notifyUnsubMetrics=null),this._notifyPrevState.clear()}_restartNotifyWatcher(){this._stopNotifyWatcher(),this._startNotifyWatcher()}_trackTilesViewed(){for(let t of this.tiles)if(this.telemetry?.trackRectangleViewed(t.id,"overlay"),this.runtimeRef){let n=Zs.tileViewed(t.id,"overlay");this.runtimeRef.events.publish(n.name,n.props,n.source)}}get _resolvedThemeConfig(){return!this.isMobileMode||!this.themeConfig?.mobile?.canvas?this.themeConfig:{...this.themeConfig,canvas:{...this.themeConfig.canvas,...this.themeConfig.mobile.canvas}}}_surfaceMeta(){return this.runtimeRef?.context.get()?.surface}_toggle(){if(this._toggleCooldown)return;let t=!this.isOpen;if(this.isOpen=t,this._toggleCooldown=!0,this._toggleCooldownTimer=setTimeout(()=>{this._toggleCooldown=!1,this._toggleCooldownTimer=null},300),t?this.telemetry?.trackCanvasOpened("overlay"):this.telemetry?.trackCanvasClosed("overlay"),this.runtimeRef){let n=this._surfaceMeta(),i=t?Zs.canvasOpened("overlay",n):Zs.canvasClosed("overlay",n);this.runtimeRef.events.publish(i.name,i.props,i.source)}this.dispatchEvent(new CustomEvent("canvas-toggle",{bubbles:!0,composed:!0,detail:{isOpen:t}}))}_handleNotificationClick(t){let n=t.detail?.notification;n&&(this.runtimeRef&&this.runtimeRef.events.publish(Xe.NOTIFICATION_CLICKED,{notificationId:n.id,tileId:n.tileId,itemId:n.itemId}),this.isOpen||this._toggle(),this.runtimeRef&&n.tileId&&this.runtimeRef.events.publish(Xe.NOTIFICATION_DEEP_LINK,{tileId:n.tileId,itemId:n.itemId}),this._notifications.dismiss(n.id))}_handleNotificationDismiss(t){let n=t.detail?.id;n&&this._notifications.dismiss(n)}previewNotification(t){let n=t.ttl??6e3;this._notifications.push({id:`preview-${Date.now()}`,title:t.title,body:t.body,icon:t.icon??"\u{1F514}",tileId:"__preview__",createdAt:Date.now(),expiresAt:Date.now()+n,ttl:n})}_onLauncherToggle(){this._toggle()}_onDrawerClose(){this.isOpen&&this._toggle()}render(){let t=this._notifications.notifications,n=this.themeConfig?.canvas?.position==="left"?"left":"right";return L`
438
+ `}};Xa.properties={isOpen:{type:Boolean},tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},canvasTitle:{type:String},runtimeRef:{attribute:!1},telemetry:{attribute:!1},themeConfig:{attribute:!1},snap:{attribute:!1},dragOffsetVh:{attribute:!1},isDragging:{attribute:!1},_visible:{attribute:!1}};customElements.define("syntro-bottom-sheet",Xa);var Ne="1.0.0",Re={UI_CLICK:"ui.click",UI_SCROLL:"ui.scroll",UI_INPUT:"ui.input",UI_CHANGE:"ui.change",UI_SUBMIT:"ui.submit",NAV_PAGE_VIEW:"nav.page_view",NAV_PAGE_LEAVE:"nav.page_leave",UI_HESITATE:"ui.hesitate",UI_RAGE_CLICK:"ui.rage_click",UI_SCROLL_THRASH:"ui.scroll_thrash",UI_FOCUS_BOUNCE:"ui.focus_bounce",UI_IDLE:"ui.idle",UI_HOVER:"ui.hover"},lt={Mutation:0,MouseMove:1,MouseInteraction:2,Scroll:3,ViewportResize:4,Input:5,TouchMove:6,MediaInteraction:7,Drag:12},Zs={MouseUp:0,MouseDown:1,Click:2,ContextMenu:3,DblClick:4,Focus:5,Blur:6,TouchStart:7,TouchEnd:9},Ju={hesitationMs:3e3,hesitationRadiusPx:10,rageClickCount:3,rageClickWindowMs:1e3,rageClickRadiusPx:30,scrollThrashReversals:3,scrollThrashWindowMs:2e3,focusBounceMaxInputs:0,idleMs:5e3,hoverSampleMs:100};var Ja=class{constructor(e,t){this.config=e,this.emit=t,this.focused=new Map}ingest(e){if(e.type!==3)return;let t=e.timestamp;if(e.data.source===lt.MouseInteraction){let n=e.data.id??0;if(e.data.type===Zs.Focus)this.focused.set(n,{id:n,focusTs:t,inputCount:0});else if(e.data.type===Zs.Blur){let i=this.focused.get(n);i&&i.inputCount<=this.config.focusBounceMaxInputs&&this.emit({ts:t,name:Re.UI_FOCUS_BOUNCE,source:"rrweb",schemaVersion:Ne,props:{elementId:n,duration_ms:t-i.focusTs}}),this.focused.delete(n)}}else if(e.data.source===lt.Input){let n=e.data.id??0,i=this.focused.get(n);i&&i.inputCount++}}};var Qa=class{constructor(e,t){this.config=e,this.emit=t,this.anchorX=0,this.anchorY=0,this.anchorTs=0,this.emitted=!1,this.hasPosition=!1}ingest(e){if(e.type!==3||e.data.source!==lt.MouseMove)return;let t=e.data.positions;if(!t||t.length===0)return;let n=t[t.length-1],i=e.timestamp+(n.timeOffset??0);if(!this.hasPosition){this.anchorX=n.x,this.anchorY=n.y,this.anchorTs=i,this.hasPosition=!0,this.emitted=!1;return}let s=n.x-this.anchorX,o=n.y-this.anchorY;Math.sqrt(s*s+o*o)>this.config.hesitationRadiusPx&&(this.anchorX=n.x,this.anchorY=n.y,this.anchorTs=i,this.emitted=!1)}tick(e){if(!this.hasPosition||this.emitted)return;let t=e-this.anchorTs;t>=this.config.hesitationMs&&(this.emit({ts:e,name:Re.UI_HESITATE,source:"rrweb",schemaVersion:Ne,props:{x:this.anchorX,y:this.anchorY,duration_ms:t}}),this.emitted=!0)}};var el=class{constructor(e,t,n){this.config=e,this.emit=t,this.elementResolver=n,this.currentElement=null,this.hoverStartTs=null,this.lastX=0,this.lastY=0,this.lastSampleTs=-1/0}ingest(e){if(e.type!==3||e.data.source!==lt.MouseMove)return;let t=e.data.positions;if(!t||t.length===0)return;let n=t[t.length-1];this.lastX=n.x,this.lastY=n.y}tick(e){if(!this.elementResolver||e-this.lastSampleTs<this.config.hoverSampleMs)return;this.lastSampleTs=e;let t=this.elementResolver(this.lastX,this.lastY),n=t?Mv(t):null,i=this.currentElement?Mv(this.currentElement):null;n!==i&&(this.currentElement&&this.hoverStartTs!==null&&this.emit({ts:e,name:Re.UI_HOVER,source:"rrweb",schemaVersion:Ne,props:{x:this.lastX,y:this.lastY,duration_ms:e-this.hoverStartTs,element:this.currentElement}}),this.currentElement=t,this.hoverStartTs=e)}};function Mv(r){return`${r.tag_name??""}|${r.attr__id??""}|${(r.classes??[]).join(",")}`}var tl=class{constructor(e,t){this.config=e,this.emit=t,this.lastActivityTs=null,this.emitted=!1}ingest(e){if(e.type!==3)return;let t=e.data.source;(t===lt.MouseMove||t===lt.MouseInteraction||t===lt.Scroll)&&(this.lastActivityTs=e.timestamp,this.emitted=!1)}tick(e){this.lastActivityTs===null||this.emitted||e-this.lastActivityTs>=this.config.idleMs&&(this.emit({ts:e,name:Re.UI_IDLE,source:"rrweb",schemaVersion:Ne,props:{idle_ms:e-this.lastActivityTs}}),this.emitted=!0)}};var rl=class{constructor(e,t){this.config=e,this.emit=t,this.clicks=[]}ingest(e){if(e.type!==3||e.data.source!==lt.MouseInteraction||e.data.type!==Zs.Click)return;let t=e.data.x??0,n=e.data.y??0,i=e.timestamp,s=i-this.config.rageClickWindowMs;this.clicks=this.clicks.filter(a=>a.ts>=s),this.clicks.push({ts:i,x:t,y:n});let o=this.clicks.filter(a=>{let l=a.x-t,c=a.y-n;return Math.sqrt(l*l+c*c)<=this.config.rageClickRadiusPx});o.length>=this.config.rageClickCount&&(this.emit({ts:i,name:Re.UI_RAGE_CLICK,source:"rrweb",schemaVersion:Ne,props:{x:t,y:n,clickCount:o.length,duration_ms:i-o[0].ts}}),this.clicks=[])}};var nl=class{constructor(e,t){this.config=e,this.emit=t,this.lastY=null,this.lastDirection=null,this.reversals=[]}ingest(e){if(e.type!==3||e.data.source!==lt.Scroll)return;let t=e.data.y??0,n=e.timestamp;if(this.lastY!==null){let i=t>this.lastY?"down":t<this.lastY?"up":this.lastDirection;if(i&&i!==this.lastDirection){let s=n-this.config.scrollThrashWindowMs;this.reversals=this.reversals.filter(o=>o>s),this.reversals.push(n),this.reversals.length>=this.config.scrollThrashReversals&&(this.emit({ts:n,name:Re.UI_SCROLL_THRASH,source:"rrweb",schemaVersion:Ne,props:{reversals:this.reversals.length,duration_ms:n-this.reversals[0]}}),this.reversals=[])}this.lastDirection=i}this.lastY=t}};var Pv={$click:Re.UI_CLICK,$scroll:Re.UI_SCROLL,$input:Re.UI_INPUT,$change:Re.UI_CHANGE,$submit:Re.UI_SUBMIT,$pageview:Re.NAV_PAGE_VIEW,$pageleave:Re.NAV_PAGE_LEAVE,$session_start:"session.start",$identify:"user.identify"};function SE(r){let e=r.event;if(typeof e!="string")return"posthog.unknown";if(Pv[e])return Pv[e];if(e==="$autocapture"){let t=r.properties?.$tag_name,n=r.properties?.$event_type;return n==="submit"?Re.UI_SUBMIT:n==="change"?Re.UI_CHANGE:t==="input"||t==="textarea"?Re.UI_INPUT:Re.UI_CLICK}return e.startsWith("$")?e.replace("$","posthog."):`posthog.${e}`}var Ov=new Set(["a","button","input","select","textarea"]);function kE(r){if(r)return r.split(";").map(e=>{let t={},n=e.indexOf(":"),i=n>=0?e.slice(0,n):e,s=n>=0?e.slice(n+1):"",o=i.indexOf(".");if(o>=0?(t.tag_name=i.slice(0,o),t.attr__class=i.slice(o+1).replace(/\./g," ")):t.tag_name=i,!/^[a-zA-Z][a-zA-Z0-9-]*$/.test(String(t.tag_name??"")))return null;let a=/([\w$-]+)="([^"]*)"/g,l;for(;(l=a.exec(s))!==null;){let[,c,u]=l;c==="nth-child"||c==="nth-of-type"||(t[c]=u)}return t.text&&(t.$el_text=t.text,delete t.text),t}).filter(e=>e!==null)}function EE(r,e){if(e&&Ov.has(e)||!r)return e;for(let t of r){let n=t.tag_name;if(n&&Ov.has(n))return n}return e}function CE(r,e){return r.map((t,n)=>{let i=e[n];return!i||t.tag_name!==i.tag_name?t:{...i,...t}})}function AE(r,e){let t={},n=r.properties||{},i=n.$elements??(typeof n.$elements_chain=="string"?kE(n.$elements_chain):void 0),s=i&&e?CE(i,e):i,o=n.$tag_name??s?.[0]?.tag_name,a=r.event==="$autocapture"||r.event==="$click";return t.tagName=a?EE(s,o):o,n.$el_text&&(t.elementText=n.$el_text),s&&(t.elements=s),a&&!s&&console.warn(`[PostHogNormalizer] $autocapture click has no element chain. PostHog may have changed wire format. Properties: $elements=${!!n.$elements}, $elements_chain=${typeof n.$elements_chain}`),n.$current_url&&(t.url=n.$current_url),n.$pathname&&(t.pathname=n.$pathname),n.$host&&(t.host=n.$host),n.$viewport_width&&(t.viewportWidth=n.$viewport_width),n.$viewport_height&&(t.viewportHeight=n.$viewport_height),n.$session_id&&(t.sessionId=n.$session_id),n.$scroll_depth&&(t.scrollDepth=n.$scroll_depth),n.$scroll_percentage&&(t.scrollPercentage=n.$scroll_percentage),t.originalEvent=r.event,t}function Gs(r,e){let t;return typeof r.timestamp=="number"?t=r.timestamp:typeof r.timestamp=="string"?t=new Date(r.timestamp).getTime():t=Date.now(),{ts:t,name:SE(r),source:"posthog",props:AE(r,e),schemaVersion:Ne}}function Ks(r){let e=r.event;return!(typeof e!="string"||["$feature_flag_called","$feature_flags","$groups","$groupidentify","$set","$set_once","$unset","$create_alias","$capture_metrics","$performance_event","$web_vitals","$exception","$dead_click","$heatmap"].includes(e))}function Lv(r){return(e,t)=>{if(typeof e!="string")return;let n={event:e,properties:t,timestamp:Date.now()};if(Ks(n)){let i=Gs(n);r(i)}}}function Qu(r){let e={...Ju,...r?.config},t=[];function n(v){for(let g of t)g(v)}let i=new Qa(e,n),s=new rl(e,n),o=new nl(e,n),a=new Ja(e,n),l=new tl(e,n),c=new el(e,n,r?.elementResolver),u=[],p=500;function h(v){if(v.event==="$click")return!0;if(v.event!=="$autocapture")return!1;let g=v.properties?.$event_type;return g===void 0||g==="click"}function f(v){let g=v-p;for(;u.length>0&&u[0].ts<g;)u.shift();return u.shift()?.elements}return{ingest(v){if(v.kind==="posthog"){let{kind:g,...m}=v;if(Ks(m)){let y=h(m)?f(typeof m.timestamp=="number"?m.timestamp:Date.now()):void 0;n(Gs(m,y))}}else v.kind==="rrweb"&&(i.ingest(v),s.ingest(v),o.ingest(v),a.ingest(v),l.ingest(v),c.ingest(v))},onEvent(v){t.push(v)},tick(v){i.tick(v),l.tick(v),c.tick(v)},enrichClickAttributes(v,g){u.push({ts:v,elements:g});let m=v-p;for(;u.length>0&&u[0].ts<m;)u.shift()}}}var Xe={UI_CLICK:"ui.click",UI_SCROLL:"ui.scroll",UI_INPUT:"ui.input",UI_CHANGE:"ui.change",UI_SUBMIT:"ui.submit",NAV_PAGE_VIEW:"nav.page_view",NAV_PAGE_LEAVE:"nav.page_leave",CANVAS_OPENED:"canvas.opened",CANVAS_CLOSED:"canvas.closed",TILE_VIEWED:"tile.viewed",TILE_EXPANDED:"tile.expanded",TILE_COLLAPSED:"tile.collapsed",TILE_ACTION:"tile.action",OVERLAY_STARTED:"overlay.started",OVERLAY_COMPLETED:"overlay.completed",OVERLAY_DISMISSED:"overlay.dismissed",OVERLAY_STEP_VIEWED:"overlay.step_viewed",BEHAVIOR_RAGE_CLICK:"behavior.rage_click",BEHAVIOR_HESITATION:"behavior.hesitation",BEHAVIOR_CONFUSION:"behavior.confusion",ACTION_APPLIED:"action.applied",ACTION_REVERTED:"action.reverted",ACTION_FAILED:"action.failed",ACTION_CTA_CLICKED:"action.cta_clicked",NOTIFICATION_SHOWN:"notification.shown",NOTIFICATION_CLICKED:"notification.clicked",NOTIFICATION_DISMISSED:"notification.dismissed",NOTIFICATION_DEEP_LINK:"notification.deep_link",SURFACE_MOUNTED:"surface.mounted",SURFACE_UNMOUNTED:"surface.unmounted"};var il=3;var ed=3e4;var RE=0;function td(r,e){return r.replace(/\{\{props\.(\w+)\}\}/g,(t,n)=>!e||!(n in e)?t:String(e[n]))}function IE(r,e){if(r===e)return!0;try{return new RegExp(e).test(r)}catch{return!1}}function Nv(r,e){for(let t of e){let n=t.notifications;if(!(!n||n.length===0))for(let i of n){if(!IE(r.name,i.on))continue;let s=Date.now(),o=i.ttl??8e3;return{notification:{id:`notif-${++RE}-${s}`,title:td(i.title,r.props),body:i.body?td(i.body,r.props):void 0,icon:i.icon,tileId:t.id,itemId:i.deepLink?.itemId?td(i.deepLink.itemId,r.props):void 0,expiresAt:s+o,createdAt:s,ttl:o},rule:i}}}return null}var Ys=class{constructor(e,t,n){this._notifications=[];this._cooldownMap=new Map;this._timerIds=new Map;this._unsubscribe=null;this.host=e,this.eventBus=t,this.tiles=n,e.addController(this)}get notifications(){return this._notifications}setTiles(e){this.tiles=e}setEventBus(e){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=null),this.eventBus=e,this.eventBus&&this.hostConnected()}hostConnected(){this.eventBus&&(this._unsubscribe=this.eventBus.subscribe(e=>{let t=Nv(e,this.tiles);if(!t)return;let{notification:n,rule:i}=t,s=n.itemId?`${n.tileId}:${e.name}:${n.itemId}`:`${n.tileId}:${e.name}`,o=this._cooldownMap.get(s),a=Date.now(),l=i.cooldown??3e4;if(o!==void 0&&a-o<l||(this._cooldownMap.set(s,a),n.itemId&&this._notifications.some(p=>p.tileId===n.tileId&&p.itemId===n.itemId)))return;let c=[...this._notifications,n];if(c.length>3){let u=c.shift(),p=this._timerIds.get(u.id);p&&(clearTimeout(p),this._timerIds.delete(u.id))}this._notifications=c,this.host.requestUpdate(),this.eventBus.publish(Xe.NOTIFICATION_SHOWN,{notificationId:n.id,tileId:n.tileId,itemId:n.itemId,title:n.title}),this._scheduleDismiss(n)}))}hostDisconnected(){this._unsubscribe&&(this._unsubscribe(),this._unsubscribe=null);for(let e of this._timerIds.values())clearTimeout(e);this._timerIds.clear()}push(e){let t=[...this._notifications,e];if(t.length>3){let n=t.shift(),i=this._timerIds.get(n.id);i&&(clearTimeout(i),this._timerIds.delete(n.id))}this._notifications=t,this.host.requestUpdate(),this._scheduleDismiss(e)}dismiss(e){let t=this._notifications.find(i=>i.id===e);t&&this._publishDismissed(t),this._notifications=this._notifications.filter(i=>i.id!==e);let n=this._timerIds.get(e);n&&(clearTimeout(n),this._timerIds.delete(e)),this.host.requestUpdate()}_publishDismissed(e){this.eventBus?.publish(Xe.NOTIFICATION_DISMISSED,{notificationId:e.id,tileId:e.tileId,itemId:e.itemId})}_scheduleDismiss(e){let t=setTimeout(()=>{this._notifications=this._notifications.filter(n=>n.id!==e.id),this._timerIds.delete(e.id),this._publishDismissed(e),this.host.requestUpdate()},e.ttl);this._timerIds.set(e.id,t)}};function Vt(r,e){return{ts:Date.now(),name:r,source:"canvas",props:e,schemaVersion:Ne}}function $E(r,e){return Vt(Xe.CANVAS_OPENED,{surface:r,...e})}function ME(r,e){return Vt(Xe.CANVAS_CLOSED,{surface:r,...e})}function PE(r,e){return Vt(Xe.TILE_VIEWED,{tileId:r,surface:e})}function OE(r,e){return Vt(Xe.TILE_EXPANDED,{tileId:r,surface:e})}function LE(r,e){return Vt(Xe.TILE_COLLAPSED,{tileId:r,surface:e})}function NE(r,e,t){return Vt(Xe.TILE_ACTION,{tileId:r,actionId:e,surface:t})}function FE(r,e){return Vt(Xe.OVERLAY_STARTED,{recipeId:r,recipeName:e})}function DE(r,e){return Vt(Xe.OVERLAY_COMPLETED,{recipeId:r,recipeName:e})}function HE(r,e,t){return Vt(Xe.OVERLAY_DISMISSED,{recipeId:r,recipeName:e,stepIndex:t})}function BE(r,e,t){return Vt(Xe.OVERLAY_STEP_VIEWED,{recipeId:r,stepIndex:e,stepTitle:t})}function VE(r,e){let t=r.startsWith("canvas.")?r:`canvas.${r}`;return Vt(t,e)}var Xs={canvasOpened:$E,canvasClosed:ME,tileViewed:PE,tileExpanded:OE,tileCollapsed:LE,tileAction:NE,overlayStarted:FE,overlayCompleted:DE,overlayDismissed:HE,overlayStepViewed:BE,custom:VE};function UE(r,e){let t=[];for(let n of r){let i=n.widget.split(":")[0],o=e.get(i)?.manifest.runtime?.notifyWatchers;o&&t.push(...o(n.props??{}))}return t}var sl=class extends be{constructor(){super();this.isOpen=!1;this.tiles=[];this.isLoading=!1;this.error=void 0;this.canvasTitle=void 0;this.displayMode="standard";this.runtimeRef=null;this.telemetry=null;this.themeConfig={};this.launcherAnimate=!1;this.isMobileMode=!1;this._surfaceUnsub=null;this._toggleCooldown=!1;this._toggleCooldownTimer=null;this._notifyPrevState=new Map;this._notifyUnsub=null;this._notifyUnsubMetrics=null;this._notifications=new Ys(this,null,[])}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._syncNotificationsController(),this._startNotifyWatcher(),this._subscribeSurface()}disconnectedCallback(){super.disconnectedCallback(),this._stopNotifyWatcher(),this._surfaceUnsub?.(),this._surfaceUnsub=null,this._toggleCooldownTimer!==null&&(clearTimeout(this._toggleCooldownTimer),this._toggleCooldownTimer=null)}_subscribeSurface(){let t=this.runtimeRef?.context;if(!t)return;let n=()=>{let i=t.get()?.surface?.mode==="mobile";i!==this.isMobileMode&&(this.isMobileMode=i)};n(),this._surfaceUnsub=t.subscribe(n)}updated(t){(t.has("runtimeRef")||t.has("tiles"))&&(this._syncNotificationsController(),this._restartNotifyWatcher(),t.has("runtimeRef")&&(this._surfaceUnsub?.(),this._surfaceUnsub=null,this._subscribeSurface())),t.has("isOpen")&&this.isOpen&&this._trackTilesViewed()}_syncNotificationsController(){this._notifications.setEventBus(this.runtimeRef?.events??null),this._notifications.setTiles(this.tiles)}_startNotifyWatcher(){let t=this.runtimeRef;if(!t?.events||!t.apps)return;let n=UE(this.tiles,t.apps);if(n.length===0)return;let i=t.state.ns("notified");for(let o of n)if(!this._notifyPrevState.has(o.id)){let a=t.evaluateSync(o.strategy);this._notifyPrevState.set(o.id,a.value),a.value&&!i.has(o.id)&&(i.set(o.id,!0),t.events.publish(o.eventName,o.eventProps))}let s=()=>{for(let o of n){let a=t.evaluateSync(o.strategy),l=this._notifyPrevState.get(o.id)??!1;this._notifyPrevState.set(o.id,a.value),!l&&a.value?(i.set(o.id,!0),t.events.publish(o.eventName,o.eventProps)):l&&!a.value&&i.remove(o.id)}};this._notifyUnsub=t.events.subscribe(s),this._notifyUnsubMetrics=t.sessionMetrics?.subscribe(s)??null}_stopNotifyWatcher(){this._notifyUnsub&&(this._notifyUnsub(),this._notifyUnsub=null),this._notifyUnsubMetrics&&(this._notifyUnsubMetrics(),this._notifyUnsubMetrics=null),this._notifyPrevState.clear()}_restartNotifyWatcher(){this._stopNotifyWatcher(),this._startNotifyWatcher()}_trackTilesViewed(){for(let t of this.tiles)if(this.telemetry?.trackRectangleViewed(t.id,"overlay"),this.runtimeRef){let n=Xs.tileViewed(t.id,"overlay");this.runtimeRef.events.publish(n.name,n.props,n.source)}}get _resolvedThemeConfig(){return!this.isMobileMode||!this.themeConfig?.mobile?.canvas?this.themeConfig:{...this.themeConfig,canvas:{...this.themeConfig.canvas,...this.themeConfig.mobile.canvas}}}_surfaceMeta(){return this.runtimeRef?.context.get()?.surface}_toggle(){if(this._toggleCooldown)return;let t=!this.isOpen;if(this.isOpen=t,this._toggleCooldown=!0,this._toggleCooldownTimer=setTimeout(()=>{this._toggleCooldown=!1,this._toggleCooldownTimer=null},300),t?this.telemetry?.trackCanvasOpened("overlay"):this.telemetry?.trackCanvasClosed("overlay"),this.runtimeRef){let n=this._surfaceMeta(),i=t?Xs.canvasOpened("overlay",n):Xs.canvasClosed("overlay",n);this.runtimeRef.events.publish(i.name,i.props,i.source)}this.dispatchEvent(new CustomEvent("canvas-toggle",{bubbles:!0,composed:!0,detail:{isOpen:t}}))}_handleNotificationClick(t){let n=t.detail?.notification;n&&(this.runtimeRef&&this.runtimeRef.events.publish(Xe.NOTIFICATION_CLICKED,{notificationId:n.id,tileId:n.tileId,itemId:n.itemId}),this.isOpen||this._toggle(),this.runtimeRef&&n.tileId&&this.runtimeRef.events.publish(Xe.NOTIFICATION_DEEP_LINK,{tileId:n.tileId,itemId:n.itemId}),this._notifications.dismiss(n.id))}_handleNotificationDismiss(t){let n=t.detail?.id;n&&this._notifications.dismiss(n)}previewNotification(t){let n=t.ttl??6e3;this._notifications.push({id:`preview-${Date.now()}`,title:t.title,body:t.body,icon:t.icon??"\u{1F514}",tileId:"__preview__",createdAt:Date.now(),expiresAt:Date.now()+n,ttl:n})}_onLauncherToggle(){this._toggle()}_onDrawerClose(){this.isOpen&&this._toggle()}render(){let t=this._notifications.notifications,n=this.themeConfig?.canvas?.position==="left"?"left":"right";return N`
439
439
  <div data-shadow-canvas-id="overlay-launcher" style="position:fixed;inset:0;pointer-events:none;z-index:2147483647">
440
- ${t.length>0?L`<syntro-toast-stack
440
+ ${t.length>0?N`<syntro-toast-stack
441
441
  data-testid="notification-toast-stack"
442
442
  .notifications=${t}
443
443
  .position=${n}
444
444
  @notification-click=${this._handleNotificationClick}
445
445
  @notification-dismiss=${this._handleNotificationDismiss}
446
- ></syntro-toast-stack>`:J}
446
+ ></syntro-toast-stack>`:ee}
447
447
  <syntro-launcher
448
448
  .isOpen=${this.isOpen}
449
449
  .notifications=${t}
@@ -455,7 +455,7 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
455
455
  ></syntro-launcher>
456
456
  </div>
457
457
 
458
- ${this.isMobileMode?L`<syntro-bottom-sheet
458
+ ${this.isMobileMode?N`<syntro-bottom-sheet
459
459
  .isOpen=${this.isOpen}
460
460
  .tiles=${this.tiles}
461
461
  .isLoading=${this.isLoading}
@@ -465,7 +465,7 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
465
465
  .telemetry=${this.telemetry}
466
466
  .themeConfig=${this._resolvedThemeConfig}
467
467
  @drawer-close=${this._onDrawerClose}
468
- ></syntro-bottom-sheet>`:L`<syntro-drawer
468
+ ></syntro-bottom-sheet>`:N`<syntro-drawer
469
469
  .isOpen=${this.isOpen}
470
470
  .tiles=${this.tiles}
471
471
  .isLoading=${this.isLoading}
@@ -477,28 +477,28 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
477
477
  .themeConfig=${this.themeConfig}
478
478
  @drawer-close=${this._onDrawerClose}
479
479
  ></syntro-drawer>`}
480
- `}};Qa.properties={isOpen:{type:Boolean},tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},canvasTitle:{type:String},displayMode:{type:String},runtimeRef:{attribute:!1},telemetry:{attribute:!1},themeConfig:{attribute:!1},launcherAnimate:{type:Boolean},isMobileMode:{attribute:!1}};customElements.define("syntro-canvas-overlay",Qa);var el=class extends ye{constructor(){super(...arguments);this.tiles=[];this.isLoading=!1;this.error=void 0;this.runtimeRef=null}createRenderRoot(){return this}render(){return L`
481
- <div data-syntro-inline-shell="container" style=${R({position:"relative",width:"100%",height:"100%",overflowY:"auto",color:"var(--sc-overlay-text-color)",background:"var(--sc-canvas-background)",padding:"var(--sc-canvas-padding, 0)",boxSizing:"border-box"})}>
482
- ${this.isLoading?L`<div data-syntro-inline-shell="loading">Loading...</div>`:this.error?L`<div
480
+ `}};sl.properties={isOpen:{type:Boolean},tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},canvasTitle:{type:String},displayMode:{type:String},runtimeRef:{attribute:!1},telemetry:{attribute:!1},themeConfig:{attribute:!1},launcherAnimate:{type:Boolean},isMobileMode:{attribute:!1}};customElements.define("syntro-canvas-overlay",sl);var ol=class extends be{constructor(){super(...arguments);this.tiles=[];this.isLoading=!1;this.error=void 0;this.runtimeRef=null}createRenderRoot(){return this}render(){return N`
481
+ <div data-syntro-inline-shell="container" style=${T({position:"relative",width:"100%",height:"100%",overflowY:"auto",color:"var(--sc-overlay-text-color)",background:"var(--sc-canvas-background)",padding:"var(--sc-canvas-padding, 0)",boxSizing:"border-box"})}>
482
+ ${this.isLoading?N`<div data-syntro-inline-shell="loading">Loading...</div>`:this.error?N`<div
483
483
  data-syntro-inline-shell="error"
484
- style=${R({color:"var(--sc-notification-error-color)"})}
485
- >Failed to load: ${this.error}</div>`:this.tiles.length>0?L`<syntro-tile-stack
484
+ style=${T({color:"var(--sc-notification-error-color)"})}
485
+ >Failed to load: ${this.error}</div>`:this.tiles.length>0?N`<syntro-tile-stack
486
486
  .tiles=${this.tiles}
487
487
  .surface=${"inline"}
488
488
  .runtimeRef=${this.runtimeRef}
489
- ></syntro-tile-stack>`:J}
489
+ ></syntro-tile-stack>`:ee}
490
490
  </div>
491
- `}};el.properties={tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},runtimeRef:{attribute:!1}};customElements.define("syntro-inline-shell",el);function tl(r,e,t="merge"){return t==="first-match"?Xk(r,e):Jk(r,e)}function Xk(r,e){for(let t of e){let n=r.getFeatureValue?.(t,null);if(!n||typeof n!="object")continue;let i=n,s=i.tiles&&i.tiles.length>0,o=i.actions&&i.actions.length>0;if(s||o)return uv([i])}return null}function Jk(r,e){let t=[];for(let n of e){let i=r.getFeatureValue?.(n,null);if(!i||typeof i!="object")continue;let s=i,o=s.tiles&&s.tiles.length>0,a=s.actions&&s.actions.length>0;(o||a)&&t.push(s)}return t.length===0?null:uv(t)}function uv(r){let e=[],t=[],n,i,s,o,a,l,c,u;for(let p of r)p.tiles&&e.push(...p.tiles),p.actions&&t.push(...p.actions),n??(n=p.fetchedAt),i??(i=p.schemaVersion),s??(s=p.configVersion),o??(o=p.canvasTitle),a??(a=p.displayMode),l??(l=p.theme),c??(c=p.launcher),u??(u=p.meta);return{tiles:e,actions:t,fetchedAt:n??new Date().toISOString(),...i&&{schemaVersion:i},...s&&{configVersion:s},...o&&{canvasTitle:o},...a&&{displayMode:a},...l&&{theme:l},...c&&{launcher:c},...u&&{meta:u}}}var qu=!1;function dv(){if(typeof window>"u")return!1;try{return new URLSearchParams(window.location.search).get("syntro_debug")==="true"}catch{return!1}}function Zu(r){if(dv()){qu=!0;return}qu=r??!1}function Qk(){return dv()?!0:qu}function Z(r,e,t){Qk()&&(t!==void 0?console.log(`[${r}]`,e,t):console.log(`[${r}]`,e))}function Ze(r,e,t){t!==void 0?console.warn(`[${r}]`,e,t):console.warn(`[${r}]`,e)}function rl(r,e,t){t!==void 0?console.error(`[${r}]`,e,t):console.error(`[${r}]`,e)}var nl=class{constructor(e){this.config=e;this.counters=new Map;this.histograms=new Map;this.windowStartMs=Date.now();this.timer=null;this.pagehideHandler=null;this.runtime=null;this.resource=e.resource,this.flushIntervalMs=e.flushIntervalMs??6e4}bindRuntime(e){this.runtime=e}increment(e,t=1){this.counters.set(e,(this.counters.get(e)??0)+t)}snapshotCounters(){let e={};for(let[t,n]of this.counters)e[t]=n;return e}recordHistogram(e,t){let n=this.histograms.get(e)??[];n.push(t),this.histograms.set(e,n)}snapshotHistograms(){let e={};for(let[t,n]of this.histograms){if(n.length===0)continue;let i=[...n].sort((s,o)=>s-o);e[t]={count:i.length,p50:pv(i,.5),p95:pv(i,.95)}}return e}async flush(){let e=this.snapshotCounters(),t=this.snapshotHistograms();if(!(Object.keys(e).length>0||Object.keys(t).length>0))return;let i=null,s="";try{i=this.runtime?.getSurface()??null}catch{}try{s=this.runtime?.getSessionId()??""}catch{}let o={resource:{...this.resource,sessionId:s,surfaceType:i?.type??"unknown",surfaceHost:i?.host??"unknown",surfaceDevice:i?.device??"unknown",surfaceMode:i?.mode??"unknown"},windowSeconds:Math.max(1,Math.round((Date.now()-this.windowStartMs)/1e3)),windowStartUnixMs:this.windowStartMs,counters:e,histograms:t};this.counters.clear(),this.histograms.clear(),this.windowStartMs=Date.now();try{await this.config.emit(o)}catch{}}start(){this.timer===null&&(this.timer=setInterval(()=>{this.flush()},this.flushIntervalMs),typeof window<"u"&&(this.pagehideHandler=()=>{this.flush()},window.addEventListener("pagehide",this.pagehideHandler)))}stop(){this.timer!==null&&(clearInterval(this.timer),this.timer=null),this.pagehideHandler!==null&&typeof window<"u"&&(window.removeEventListener("pagehide",this.pagehideHandler),this.pagehideHandler=null)}};function pv(r,e){if(r.length===0)return 0;let t=(r.length-1)*e,n=Math.floor(t),i=Math.ceil(t);return n===i?r[n]:r[n]+(r[i]-r[n])*(t-n)}var Gs=null;function Gu(r){return Gs?.stop(),Gs=new nl(r),Gs.start(),Gs}function rr(){return Gs}var _r=(r,e)=>({key:r,value:{stringValue:e}}),Ku=(r,e)=>({key:r,value:{intValue:Math.round(e)}}),hv=(r,e)=>({key:r,value:{doubleValue:e}});function eE(r){let{resource:e,counters:t,histograms:n,windowSeconds:i,windowStartUnixMs:s}=r,o=[_r("service.name",e.serviceName),_r("service.version",e.serviceVersion),_r("syntro.posthog_key",e.posthogKey),_r("syntro.session_id",e.sessionId),_r("syntro.surface_type",e.surfaceType),_r("syntro.surface_host",e.surfaceHost),_r("syntro.surface_device",e.surfaceDevice),_r("syntro.surface_mode",e.surfaceMode),_r("syntro.host_origin",e.hostOrigin)],a=[Ku("window_seconds",i)];for(let[u,p]of Object.entries(t))p!==void 0&&a.push(Ku(u,p));for(let[u,p]of Object.entries(n))p!==void 0&&(a.push(Ku(`${u}_count`,p.count)),a.push(hv(`${u}_p50`,p.p50)),a.push(hv(`${u}_p95`,p.p95)));let l=`${Date.now()}000000`,c=`${s}000000`;return{resourceLogs:[{resource:{attributes:o},scopeLogs:[{scope:{name:"syntro.sdk.health"},logRecords:[{timeUnixNano:c,observedTimeUnixNano:l,severityText:"INFO",body:{stringValue:"sdk_health_window"},attributes:a}]}]}]}}function Yu(r){let e=r.fetchImpl??fetch;return async t=>{let n=JSON.stringify(eE(t)),i=()=>e(r.endpoint,{method:"POST",headers:{"Content-Type":"application/json"},body:n,keepalive:!0,mode:"cors"});try{let s=await i();if(!s.ok&&s.status>=500)try{await i()}catch{}}catch{try{await i()}catch{}}}}var Ks="2.18.0";var qr="2.0";var tE=["api.syntrologie.com","cdn.syntrologie.com","localhost","127.0.0.1"];function rE(r){try{let e=new URL(r),t=/^(localhost|127\.0\.0\.1)$/.test(e.hostname);return e.protocol!=="https:"&&!t?(console.warn("[SmartCanvas] Config URI must use HTTPS:",r),!1):tE.some(i=>e.hostname===i)?!0:(console.warn("[SmartCanvas] Config URI host not in allowlist:",e.hostname),!1)}catch{return console.warn("[SmartCanvas] Invalid config URI:",r),!1}}function nE(r){if(typeof window>"u")return!1;try{return new URL(r).origin===window.location.origin}catch{return!1}}var fv="syntro_config_cache",iE=1440*60*1e3;function gv(){try{return typeof localStorage<"u"&&localStorage!==null}catch{return!1}}function sE(r,e){if(gv())try{let t={config:r,timestamp:Date.now(),sdkVersion:e};localStorage.setItem(fv,JSON.stringify(t))}catch{}}function oE(r){if(!gv())return null;try{let e=localStorage.getItem(fv);if(!e)return null;let t=JSON.parse(e);return!t.config||typeof t.timestamp!="number"||!t.sdkVersion||t.sdkVersion!==r||Date.now()-t.timestamp>iE?null:t.config}catch{return null}}var Xu=({configUri:r,experiments:e,featureKey:t})=>{if(r)return r;if(e&&t){let n=e.getFeatureValue?.(t,null);if(n)return n}};function aE(r,e,t){if(e){let n=r.getFeatureValue?.(e,null);if(n&&typeof n=="object"){let i=n.variant_flags;if(i&&i.length>0)return i}}if(r.getAllFeatures){let n=r.getAllFeatures();return t?Object.keys(n).filter(i=>i.startsWith(t)):Object.keys(n)}return[]}var xi=({configUri:r,experiments:e,featureKey:t,credentials:n,configFeatureKey:i,manifestKey:s,variantFlagPrefix:o,sdkVersion:a})=>async()=>{if(e&&i){let h=e.getFeatureValue?.(i,null);if(h&&typeof h=="object")return Z("SmartCanvas Config","Resolved config directly from feature flag",h),h}if(e&&(s||o||e.getAllFeatures)){let h=aE(e,s,o);if(console.log("[SmartCanvas Config] Variant key discovery:",h.length,"keys found"),h.length>0){let f=tl(e,h);if(console.log("[SmartCanvas Config] resolveVariantConfigs result:",f?`tiles=${f.tiles?.length}`:"null"),f)return Z("SmartCanvas Config","Resolved config from variant flags",f),f}}else console.log("[SmartCanvas Config] Skipping multi-flag mode:",{hasExperiments:!!e,manifestKey:s,variantFlagPrefix:o,hasGetAllFeatures:!!e?.getAllFeatures});let l=Xu({configUri:r,experiments:e,featureKey:t});if(!l)return Z("SmartCanvas Config","No config available \u2014 returning empty config"),{tiles:[],actions:[],fetchedAt:new Date().toISOString()};if(!rE(l))throw new Error(`SmartCanvas: config URI not allowed: ${l}`);let c=n??(nE(l)?"include":"omit"),u=performance.now(),p=!1;try{let h=await fetch(l,{credentials:c,headers:{"X-SDK-Version":Ks,"X-SDK-Schema-Version":qr}});if(!h.ok)throw rr()?.increment("flag_fetch_errors"),p=!0,new Error(`SmartCanvas: failed to fetch config (${h.status})`);let f=await h.json(),v=performance.now()-u;return rr()?.increment("flag_fetch_count"),rr()?.recordHistogram("flag_fetch_latency_ms",v),Z("SmartCanvas Config","Fetched config from URI",f),a&&sE(f,a),f}catch(h){if(p||rr()?.increment("flag_fetch_errors"),a){let f=oE(a);if(f)return Z("SmartCanvas Config","Serving config from offline cache"),f}throw h}};var Ju=class{constructor(e){this.listeners=new Set;let t=e?.open??!1;if(e?.open===void 0)try{let n=sessionStorage?.getItem("syntro:editor:panel-open");n!==null&&(t=JSON.parse(n))}catch{}this.state={open:t}}getState(){return this.state}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setOpen(e){if(this.state.open!==e){this.state={...this.state,open:e};try{sessionStorage?.setItem("syntro:editor:panel-open",JSON.stringify(e))}catch{}this.emit()}}toggle(){this.setOpen(!this.state.open)}emit(){for(let e of this.listeners)e(this.state)}},mv=r=>new Ju(r);var jt={white:"#ffffff",black:"#000000"},se={0:"#2c0b0a",1:"#5b1715",2:"#89221f",3:"#b72e2a",4:"#d44844",5:"#dd6d69",6:"#e5918f",7:"#eeb6b4",8:"#f6dada",9:"#faebea"},k={0:"#07080a",1:"#0f1318",2:"#0e1114",3:"#1c222a",4:"#2b333f",5:"#394454",6:"#475569",7:"#677384",8:"#87919f",9:"#a8afba",10:"#cbd0d7",11:"#e8eaee",12:"#f6f7f9"},Ee={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Je={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},Oe={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},nr={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},Ys={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},Xs={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},Js={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"};var bt={primary:k[10],secondary:k[9],tertiary:k[8]},PO={primary:k[2],secondary:k[0]},Qu={primary:k[4],secondary:k[3]},il={primary:{text:jt.white,icon:jt.white,border:se[3],backgroundDefault:se[3],backgroundHover:se[2]},neutral:{text:k[10],textHover:jt.white,icon:k[10],iconHover:jt.white,border:k[4],background:k[2]},link:{text:jt.white,icon:jt.white,hover:se[5]},error:{text:Oe[5],hover:Oe[6]},success:{text:Ee[5],hover:Ee[6]}},NO={slateGrey:{content:k[10],pillOutline:k[10],borderPrimary:k[5],borderSecondary:k[5],background:k[3]},brand:{content:se[9],pillOutline:se[9],borderPrimary:se[6],borderSecondary:se[6],background:se[0]},red:{content:Oe[8],pillOutline:Oe[4],borderPrimary:Oe[2],borderSecondary:Oe[2],background:Oe[0]},yellow:{content:Je[8],pillOutline:Je[4],borderPrimary:Je[2],borderSecondary:Je[2],background:Je[0]},green:{content:Ee[8],pillOutline:Ee[4],borderPrimary:Ee[2],borderSecondary:Ee[2],background:Ee[0]},purple:{content:Xs[8],pillOutline:Xs[4],borderPrimary:Xs[2],borderSecondary:Xs[2],background:Xs[0]},blue:{content:nr[8],pillOutline:nr[4],borderPrimary:nr[2],borderSecondary:nr[2],background:nr[0]},orange:{content:Ys[8],pillOutline:Ys[4],borderPrimary:Ys[2],borderSecondary:Ys[2],background:Ys[0]},pink:{content:Js[8],pillOutline:Js[4],borderPrimary:Js[2],borderSecondary:Js[2],background:Js[0]}},LO={green:{content:Ee[8],border:Ee[2],background:Ee[0]},yellow:{content:Je[8],border:Je[2],background:Je[0]},red:{content:Oe[8],border:Oe[2],background:Oe[0]}},FO={green:{content:Ee[1],background:Ee[9]},yellow:{content:Je[1],background:Je[9]},red:{content:Oe[1],background:Oe[9]}},DO={content:k[10],border:k[4],background:k[3]},HO={backgroundDefault:k[2],backgroundHover:k[1],selected:k[3]},BO={background:k[2],icon:k[10],borderDefault:k[4],borderSelected:se[3],textLabel:k[9],textPlaceholder:k[8],textHint:k[8]},VO={backgroundDefault:k[2],backgroundDisabled:k[0],textLabel:k[9],textPlaceholder:k[8],textHint:k[8],textError:Oe[5],iconDefault:k[9],iconPlaceholder:k[10],iconError:Oe[5],borderDefault:k[4],borderSelected:se[3],borderError:Oe[5]},jO={handleDefault:jt.white,handleDisabled:k[10],off:{backgroundDefault:k[4],backgroundHover:k[5],backgroundDisabled:k[4]},on:{backgroundDefault:Ee[3],backgroundHover:Ee[2],backgroundDisabled:k[4]}},UO={off:{backgroundDefault:"#00000000",backgroundHover:k[5],backgroundDisabled:k[2],border:k[6]},on:{backgroundDefault:Ee[0],backgroundHover:Ee[1],backgroundDisabled:k[2],border:Ee[3]}},WO={content:k[10],background:k[4]},zO={background:k[4],active:Ee[3]},qO={background:k[1],content:k[9],border:k[4]},ZO={backgroundDefault:k[1],backgroundHover:k[3],backgroundActive:k[4],border:k[4],contentPrimary:k[10],contentSecondary:k[9],contentTertiary:k[8]},GO={background:k[1],content:k[9],border:k[4]},KO={activeBackground:k[3],activeContent:se[5],inactiveContent:k[9],border:k[4]},YO={header:{textDefault:k[9],textHover:k[8],backgroundDefault:k[1]},border:k[4],cell:{textPrimary:k[10],textSecondary:k[9],backgroundDefault:k[2],backgroundHover:k[1]}},XO={textPrimaryDefault:k[10],textPrimaryHover:k[10],textSecondaryDefault:k[8],textSecondaryHover:k[9],iconPrimary:k[10],iconSecondary:k[8]},JO={background:Ee[1],active:Ee[5]},QO={textDefault:k[10],textSelected:jt.white,textDisabled:k[7],backgroundDefault:k[2],backgroundMiddle:k[3],backgroundSelected:se[3],border:k[4]},eP=k[9];var iP={size:56,inset:12,background:jt.black,color:jt.white,border:`2px solid ${se[3]}`,shadowOpen:"0 4px 24px rgba(0,0,0,0.6), 0 0 0 2px rgba(255,255,255,0.08)",shadowClosed:"0 4px 24px rgba(0,0,0,0.6)"};function ae(r,e){return`${r}${Math.round(e*255).toString(16).padStart(2,"0")}`}var vP={colorPrimary:se[3],colorPrimaryHover:se[4],colorPrimaryMuted:se[0],colorBackground:ae(k[1],.95),colorBackgroundElevated:ae(k[3],.95),colorBackgroundSubtle:ae(k[0],.2),colorSurface:ae(k[4],.8),colorSurfaceHover:ae(k[5],.8),colorText:bt.primary,colorTextSecondary:bt.secondary,colorTextMuted:bt.tertiary,colorTextInverse:k[1],colorBorder:Qu.primary,colorBorderSubtle:Qu.secondary,colorSuccess:Ee[4],colorSuccessMuted:Ee[0],colorWarning:Je[4],colorWarningMuted:Je[0],colorError:Oe[4],colorErrorMuted:Oe[0],colorInfo:nr[4],colorInfoMuted:nr[0],colorNotification:se[4],colorNotificationMuted:ae(se[4],.4),glassBackground:ae(k[1],.6),glassBackgroundHover:ae(k[1],.7),glassBorder:"rgba(255, 255, 255, 0.08)",glassBlur:"blur(24px)",glassSaturate:"saturate(1.2)",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",fontFamilyMono:"'SF Mono', 'Fira Code', Consolas, monospace",fontSizeXs:"0.7rem",fontSizeSm:"0.8rem",fontSizeMd:"0.9rem",fontSizeLg:"1rem",fontSizeXl:"1.25rem",fontSizeXxl:"1.5rem",fontWeightNormal:"400",fontWeightMedium:"500",fontWeightSemibold:"600",fontWeightBold:"700",lineHeightTight:"1.25",lineHeightNormal:"1.5",lineHeightRelaxed:"1.75",spacingXs:"0.25rem",spacingSm:"0.5rem",spacingMd:"0.75rem",spacingLg:"1rem",spacingXl:"1.5rem",borderRadiusSm:"6px",borderRadiusMd:"10px",borderRadiusLg:"14px",borderRadiusXl:"20px",borderRadiusFull:"9999px",shadowSm:"0 1px 2px rgba(0, 0, 0, 0.2)",shadowMd:"0 2px 12px rgba(0, 0, 0, 0.3)",shadowLg:"0 8px 24px rgba(0, 0, 0, 0.4)",shadowXl:"0 16px 48px rgba(0, 0, 0, 0.5)",backdropBlur:"blur(20px)",backdropSaturate:"saturate(180%)",transitionFast:"0.1s ease",transitionNormal:"0.25s ease",transitionSlow:"0.4s ease"},yP={colorPrimary:se[3],colorPrimaryHover:se[2],colorPrimaryMuted:ae(se[5],.1),colorBackground:ae(k[12],.95),colorBackgroundElevated:ae(k[11],.95),colorBackgroundSubtle:ae(k[0],.02),colorSurface:ae(k[11],.6),colorSurfaceHover:ae(k[10],.6),colorText:k[1],colorTextSecondary:k[6],colorTextMuted:k[8],colorTextInverse:k[12],colorBorder:ae(k[0],.12),colorBorderSubtle:ae(k[0],.06),colorSuccess:Ee[4],colorSuccessMuted:ae(Ee[4],.12),colorWarning:Je[4],colorWarningMuted:ae(Je[4],.12),colorError:Oe[4],colorErrorMuted:ae(Oe[4],.12),colorInfo:nr[4],colorInfoMuted:ae(nr[4],.12),colorNotification:se[3],colorNotificationMuted:ae(se[3],.4),glassBackground:ae(k[12],.7),glassBackgroundHover:ae(k[12],.8),glassBorder:"rgba(0, 0, 0, 0.06)",glassBlur:"blur(24px)",glassSaturate:"saturate(1.2)",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",fontFamilyMono:"'SF Mono', 'Fira Code', Consolas, monospace",fontSizeXs:"0.7rem",fontSizeSm:"0.8rem",fontSizeMd:"0.9rem",fontSizeLg:"1rem",fontSizeXl:"1.25rem",fontSizeXxl:"1.5rem",fontWeightNormal:"400",fontWeightMedium:"500",fontWeightSemibold:"600",fontWeightBold:"700",lineHeightTight:"1.25",lineHeightNormal:"1.5",lineHeightRelaxed:"1.75",spacingXs:"0.25rem",spacingSm:"0.5rem",spacingMd:"0.75rem",spacingLg:"1rem",spacingXl:"1.5rem",borderRadiusSm:"6px",borderRadiusMd:"10px",borderRadiusLg:"14px",borderRadiusXl:"20px",borderRadiusFull:"9999px",shadowSm:"0 1px 2px rgba(0, 0, 0, 0.08)",shadowMd:"0 2px 12px rgba(0, 0, 0, 0.12)",shadowLg:"0 8px 24px rgba(0, 0, 0, 0.16)",shadowXl:"0 16px 48px rgba(0, 0, 0, 0.2)",backdropBlur:"blur(20px)",backdropSaturate:"saturate(180%)",transitionFast:"0.1s ease",transitionNormal:"0.25s ease",transitionSlow:"0.4s ease"};function lE(r){return r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}var vv={mode:"dark",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",colorPrimary:se[3],colorPrimaryHover:se[4],borderRadius:"12px",canvas:{position:"right",layout:"overlay",background:ae(k[1],.6),blur:"blur(24px)",border:"none",width:"clamp(380px, 25vw, 520px)",transitionDuration:"300ms",transitionEasing:"cubic-bezier(0.16, 1, 0.3, 1)",transitionFade:"6%",backdrop:!1,backdropColor:"rgba(0, 0, 0, 0.4)",padding:"0"},launcher:{background:il.primary.backgroundDefault,backgroundHover:il.primary.backgroundHover,color:il.primary.icon,size:"56px",shadow:`0 8px 32px ${ae(k[0],.6)}`,borderRadius:"9999px"},tile:{background:ae(k[1],.6),backgroundHover:ae(k[1],.7),border:"1px solid rgba(255, 255, 255, 0.08)",borderRadius:"14px",shadow:"0 2px 12px rgba(0, 0, 0, 0.3)",titleColor:bt.primary,textColor:bt.secondary,iconBackground:`linear-gradient(135deg, ${se[3]} 0%, ${se[3]}cc 100%)`,iconShadow:`0 2px 8px ${se[3]}40`,headerPadding:"0.375rem 0.75rem",bodyPadding:"0 0.75rem 0.5rem",gap:"0.25rem"},overlay:{background:ae(k[1],.6),textColor:bt.primary,titleColor:bt.primary,arrowColor:ae(k[1],.6),arrowSize:"8px",border:"none",borderRadius:"0",scrimOpacity:"0",highlightRing:`2px solid ${se[3]}`},notification:{background:ae(k[0],.95),textColor:bt.primary,textSecondaryColor:bt.secondary,border:`1px solid ${k[5]}`,borderRadius:"12px",successColor:Ee[4],warningColor:Je[4],errorColor:Oe[4],iconBackground:ae(se[3],.15),progressGradient:`linear-gradient(90deg, ${se[3]}, ${se[4]})`},content:{background:ae(k[3],.8),backgroundHover:ae(k[5],.6),border:`1px solid ${ae(k[5],.5)}`,borderRadius:"8px",textColor:bt.primary,textSecondaryColor:bt.secondary,itemDivider:"none",itemGap:"6px",itemPadding:"12px 16px",itemFontSize:"15px",bodyPadding:"0 16px 12px 16px",bodyFontSize:"14px",categoryPadding:"8px 4px 4px 4px",categoryGap:"4px",categoryFontSize:"12px",searchBackground:ae(k[3],.8),searchColor:bt.primary,chevronColor:"currentColor"},mobile:{canvas:{backdrop:!0}}},yv={mode:"light",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",colorPrimary:se[3],colorPrimaryHover:se[2],borderRadius:"12px",canvas:{position:"right",layout:"overlay",background:ae(k[12],.7),blur:"blur(24px)",border:"none",width:"clamp(380px, 25vw, 520px)",transitionDuration:"300ms",transitionEasing:"cubic-bezier(0.16, 1, 0.3, 1)",transitionFade:"6%",backdrop:!1,backdropColor:"rgba(0, 0, 0, 0.3)",padding:"0"},launcher:{background:se[3],backgroundHover:se[2],color:"#ffffff",size:"56px",shadow:"0 8px 32px rgba(0, 0, 0, 0.15)",borderRadius:"9999px"},tile:{background:ae(k[12],.7),backgroundHover:ae(k[12],.8),border:"1px solid rgba(0, 0, 0, 0.06)",borderRadius:"14px",shadow:"0 2px 12px rgba(0, 0, 0, 0.12)",titleColor:k[1],textColor:k[6],iconBackground:`linear-gradient(135deg, ${se[3]} 0%, ${se[3]}cc 100%)`,iconShadow:`0 2px 8px ${se[3]}40`,headerPadding:"0.375rem 0.75rem",bodyPadding:"0 0.75rem 0.5rem",gap:"0.25rem"},overlay:{background:ae(k[12],.7),textColor:k[1],titleColor:k[1],arrowColor:ae(k[12],.7),arrowSize:"8px",border:"none",borderRadius:"0",scrimOpacity:"0",highlightRing:`2px solid ${se[3]}`},notification:{background:ae(k[12],.95),textColor:k[1],textSecondaryColor:k[6],border:`1px solid ${ae(k[0],.12)}`,borderRadius:"12px",successColor:Ee[4],warningColor:Je[4],errorColor:Oe[4],iconBackground:ae(se[3],.1),progressGradient:`linear-gradient(90deg, ${se[3]}, ${se[2]})`},content:{background:ae(k[12],.8),backgroundHover:ae(k[11],.6),border:`1px solid ${k[11]}`,borderRadius:"8px",textColor:k[1],textSecondaryColor:k[6],itemDivider:"none",itemGap:"6px",itemPadding:"12px 16px",itemFontSize:"15px",bodyPadding:"0 16px 12px 16px",bodyFontSize:"14px",categoryPadding:"8px 4px 4px 4px",categoryGap:"4px",categoryFontSize:"12px",searchBackground:k[12],searchColor:k[1],chevronColor:"currentColor"},mobile:{canvas:{backdrop:!0}}};function bv(r){let e=r.mode==="light"?yv:vv;return{mode:r.mode??e.mode,fontFamily:r.fontFamily??e.fontFamily,colorPrimary:r.colorPrimary??e.colorPrimary,colorPrimaryHover:r.colorPrimaryHover??e.colorPrimaryHover,borderRadius:r.borderRadius??e.borderRadius,canvas:{...e.canvas,...r.canvas},launcher:{...e.launcher,...r.launcher},tile:{...e.tile,...r.tile},overlay:{...e.overlay,...r.overlay},notification:{...e.notification,...r.notification},content:{...e.content,...r.content},mobile:{canvas:{...e.mobile.canvas,...r.mobile?.canvas}}}}function _v(r,e){let t=e.mode??r.mode??"dark",n=t==="light"?yv:vv;return{mode:t,fontFamily:e.fontFamily??r.fontFamily??n.fontFamily,colorPrimary:e.colorPrimary??r.colorPrimary??n.colorPrimary,colorPrimaryHover:e.colorPrimaryHover??r.colorPrimaryHover??n.colorPrimaryHover,borderRadius:e.borderRadius??r.borderRadius??n.borderRadius,canvas:{...n.canvas,...r.canvas,...e.canvas},launcher:{...n.launcher,...r.launcher,...e.launcher},tile:{...n.tile,...r.tile,...e.tile},overlay:{...n.overlay,...r.overlay,...e.overlay},notification:{...n.notification,...r.notification,...e.notification},content:{...n.content,...r.content,...e.content},mobile:{canvas:{...n.mobile.canvas,...r.mobile?.canvas,...e.mobile?.canvas}}}}var cE=["canvas","launcher","tile","overlay","notification","content"];function xv(r){let e={};r.fontFamily&&(e["--sc-font-family"]=r.fontFamily),r.colorPrimary&&(e["--sc-color-primary"]=r.colorPrimary),r.colorPrimaryHover&&(e["--sc-color-primary-hover"]=r.colorPrimaryHover),r.borderRadius&&(e["--sc-border-radius"]=r.borderRadius);for(let t of cE){let n=r[t];if(n)for(let[i,s]of Object.entries(n))s!==void 0&&typeof s=="string"&&(e[`--sc-${t}-${lE(i)}`]=s)}return e}var Zr,Vn,jn,xr,wr,ed,sl,Qs=class{constructor(e,t,n){ve(this,wr);ve(this,Zr);ve(this,Vn);ve(this,jn);ve(this,xr);oe(this,Zr,e),oe(this,Vn,t??{}),oe(this,jn,n),oe(this,xr,xe(this,wr,ed).call(this)),e.addController(this)}get config(){return q(this,xr).config}get mode(){return q(this,xr).mode}get cssVariables(){return q(this,xr).cssVariables}hostConnected(){xe(this,wr,sl).call(this)}hostDisconnected(){}hostUpdated(){xe(this,wr,sl).call(this)}setThemeConfig(e,t){oe(this,Vn,e),oe(this,jn,t),oe(this,xr,xe(this,wr,ed).call(this)),xe(this,wr,sl).call(this),q(this,Zr).requestUpdate()}};Zr=new WeakMap,Vn=new WeakMap,jn=new WeakMap,xr=new WeakMap,wr=new WeakSet,ed=function(){let e=q(this,jn)?_v(q(this,jn),q(this,Vn)):bv(q(this,Vn)),t=xv(e);return{config:e,mode:e.mode,cssVariables:t}},sl=function(){let e=q(this,Zr).shadowRoot??("renderRoot"in q(this,Zr)?q(this,Zr).renderRoot:null);if(!e||!(e instanceof ShadowRoot))return;let t=e.querySelector("#sc-theme-vars");t||(t=document.createElement("style"),t.id="sc-theme-vars",e.insertBefore(t,e.firstChild));let n=Object.entries(q(this,xr).cssVariables).map(([i,s])=>` ${i}: ${s};`).join(`
491
+ `}};ol.properties={tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},runtimeRef:{attribute:!1}};customElements.define("syntro-inline-shell",ol);function al(r,e,t="merge"){return t==="first-match"?jE(r,e):WE(r,e)}function jE(r,e){for(let t of e){let n=r.getFeatureValue?.(t,null);if(!n||typeof n!="object")continue;let i=n,s=i.tiles&&i.tiles.length>0,o=i.actions&&i.actions.length>0;if(s||o)return Fv([i])}return null}function WE(r,e){let t=[];for(let n of e){let i=r.getFeatureValue?.(n,null);if(!i||typeof i!="object")continue;let s=i,o=s.tiles&&s.tiles.length>0,a=s.actions&&s.actions.length>0;(o||a)&&t.push(s)}return t.length===0?null:Fv(t)}function Fv(r){let e=[],t=[],n,i,s,o,a,l,c,u;for(let p of r)p.tiles&&e.push(...p.tiles),p.actions&&t.push(...p.actions),n??(n=p.fetchedAt),i??(i=p.schemaVersion),s??(s=p.configVersion),o??(o=p.canvasTitle),a??(a=p.displayMode),l??(l=p.theme),c??(c=p.launcher),u??(u=p.meta);return{tiles:e,actions:t,fetchedAt:n??new Date().toISOString(),...i&&{schemaVersion:i},...s&&{configVersion:s},...o&&{canvasTitle:o},...a&&{displayMode:a},...l&&{theme:l},...c&&{launcher:c},...u&&{meta:u}}}var rd=!1;function Dv(){if(typeof window>"u")return!1;try{return new URLSearchParams(window.location.search).get("syntro_debug")==="true"}catch{return!1}}function nd(r){if(Dv()){rd=!0;return}rd=r??!1}function zE(){return Dv()?!0:rd}function Z(r,e,t){zE()&&(t!==void 0?console.log(`[${r}]`,e,t):console.log(`[${r}]`,e))}function Ze(r,e,t){t!==void 0?console.warn(`[${r}]`,e,t):console.warn(`[${r}]`,e)}function ll(r,e,t){t!==void 0?console.error(`[${r}]`,e,t):console.error(`[${r}]`,e)}var cl=class{constructor(e){this.config=e;this.counters=new Map;this.histograms=new Map;this.windowStartMs=Date.now();this.timer=null;this.pagehideHandler=null;this.runtime=null;this.adapterCleanup=null;this.resource=e.resource,this.flushIntervalMs=e.flushIntervalMs??6e4}bindRuntime(e){this.runtime=e}attachAdapterCleanup(e){this.adapterCleanup=e}increment(e,t=1){this.counters.set(e,(this.counters.get(e)??0)+t)}snapshotCounters(){let e={};for(let[t,n]of this.counters)e[t]=n;return e}recordHistogram(e,t){let n=this.histograms.get(e)??[];n.push(t),this.histograms.set(e,n)}snapshotHistograms(){let e={};for(let[t,n]of this.histograms){if(n.length===0)continue;let i=[...n].sort((s,o)=>s-o);e[t]={count:i.length,p50:Hv(i,.5),p95:Hv(i,.95)}}return e}async flush(){let e=this.snapshotCounters(),t=this.snapshotHistograms();if(!(Object.keys(e).length>0||Object.keys(t).length>0))return;let i=null,s="";try{i=this.runtime?.getSurface()??null}catch{}try{s=this.runtime?.getSessionId()??""}catch{}let o={resource:{...this.resource,sessionId:s,surfaceType:i?.type??"unknown",surfaceHost:i?.host??"unknown",surfaceDevice:i?.device??"unknown",surfaceMode:i?.mode??"unknown"},windowSeconds:Math.max(1,Math.round((Date.now()-this.windowStartMs)/1e3)),windowStartUnixMs:this.windowStartMs,counters:e,histograms:t};this.counters.clear(),this.histograms.clear(),this.windowStartMs=Date.now();try{await this.config.emit(o)}catch{}}start(){this.timer===null&&(this.timer=setInterval(()=>{this.flush()},this.flushIntervalMs),typeof window<"u"&&(this.pagehideHandler=()=>{this.flush()},window.addEventListener("pagehide",this.pagehideHandler)))}stop(){if(this.timer!==null&&(clearInterval(this.timer),this.timer=null),this.pagehideHandler!==null&&typeof window<"u"&&(window.removeEventListener("pagehide",this.pagehideHandler),this.pagehideHandler=null),this.adapterCleanup!==null){try{this.adapterCleanup()}catch{}this.adapterCleanup=null}}};function Hv(r,e){if(r.length===0)return 0;let t=(r.length-1)*e,n=Math.floor(t),i=Math.ceil(t);return n===i?r[n]:r[n]+(r[i]-r[n])*(t-n)}var Js=null;function id(r){return Js?.stop(),Js=new cl(r),Js.start(),Js}function rr(){return Js}var wr=(r,e)=>({key:r,value:{stringValue:e}}),sd=(r,e)=>({key:r,value:{intValue:Math.round(e)}}),Bv=(r,e)=>({key:r,value:{doubleValue:e}});function qE(r){let{resource:e,counters:t,histograms:n,windowSeconds:i,windowStartUnixMs:s}=r,o=[wr("service.name",e.serviceName),wr("service.version",e.serviceVersion),wr("syntro.posthog_key",e.posthogKey),wr("syntro.session_id",e.sessionId),wr("syntro.surface_type",e.surfaceType),wr("syntro.surface_host",e.surfaceHost),wr("syntro.surface_device",e.surfaceDevice),wr("syntro.surface_mode",e.surfaceMode),wr("syntro.host_origin",e.hostOrigin)],a=[sd("window_seconds",i)];for(let[u,p]of Object.entries(t))p!==void 0&&a.push(sd(u,p));for(let[u,p]of Object.entries(n))p!==void 0&&(a.push(sd(`${u}_count`,p.count)),a.push(Bv(`${u}_p50`,p.p50)),a.push(Bv(`${u}_p95`,p.p95)));let l=`${Date.now()}000000`,c=`${s}000000`;return{resourceLogs:[{resource:{attributes:o},scopeLogs:[{scope:{name:"syntro.sdk.health"},logRecords:[{timeUnixNano:c,observedTimeUnixNano:l,severityText:"INFO",body:{stringValue:"sdk_health_window"},attributes:a}]}]}]}}function od(r){let e=r.fetchImpl??fetch;return async t=>{let n=JSON.stringify(qE(t)),i=()=>e(r.endpoint,{method:"POST",headers:{"Content-Type":"application/json"},body:n,keepalive:!0,mode:"cors"});try{let s=await i();if(!s.ok&&s.status>=500)try{await i()}catch{}}catch{try{await i()}catch{}}}}function ZE(){if(typeof document>"u")return;let r=document.currentScript;if(r&&r.src)return r.src;try{let e=Array.from(document.scripts);for(let t=e.length-1;t>=0;t-=1){let n=e[t]?.src;if(typeof n=="string"&&(n.includes("runtime-sdk")||n.includes("smart-canvas")))return n}}catch{}}var ad=ZE();function ld(){if(!ad)return;let r=ad.lastIndexOf("/");if(r!==-1)return ad.substring(0,r+1)}var Kv=-1,ki=r=>{addEventListener("pageshow",(e=>{e.persisted&&(Kv=e.timeStamp,r(e))}),!0)},nr=(r,e,t,n)=>{let i,s;return o=>{e.value>=0&&(o||n)&&(s=e.value-(i??0),(s||i===void 0)&&(i=e.value,e.delta=s,e.rating=((a,l)=>a>l[1]?"poor":a>l[0]?"needs-improvement":"good")(e.value,t),r(e)))}},vd=r=>{requestAnimationFrame((()=>requestAnimationFrame((()=>r()))))},yd=()=>{let r=performance.getEntriesByType("navigation")[0];if(r&&r.responseStart>0&&r.responseStart<performance.now())return r},Qs=()=>yd()?.activationStart??0,ir=(r,e=-1)=>{let t=yd(),n="navigate";return Kv>=0?n="back-forward-cache":t&&(document.prerendering||Qs()>0?n="prerender":document.wasDiscarded?n="restore":t.type&&(n=t.type.replace(/_/g,"-"))),{name:r,value:e,rating:"good",delta:0,entries:[],id:`v5-${Date.now()}-${Math.floor(8999999999999*Math.random())+1e12}`,navigationType:n}},cd=new WeakMap;function bd(r,e){return cd.get(r)||cd.set(r,new e),cd.get(r)}var dd=class{constructor(){pe(this,"t");pe(this,"i",0);pe(this,"o",[])}h(e){if(e.hadRecentInput)return;let t=this.o[0],n=this.o.at(-1);this.i&&t&&n&&e.startTime-n.startTime<1e3&&e.startTime-t.startTime<5e3?(this.i+=e.value,this.o.push(e)):(this.i=e.value,this.o=[e]),this.t?.(e)}},eo=(r,e,t={})=>{try{if(PerformanceObserver.supportedEntryTypes.includes(r)){let n=new PerformanceObserver((i=>{Promise.resolve().then((()=>{e(i.getEntries())}))}));return n.observe({type:r,buffered:!0,...t}),n}}catch{}},_d=r=>{let e=!1;return()=>{e||(r(),e=!0)}},Si=-1,Yv=new Set,Vv=()=>document.visibilityState!=="hidden"||document.prerendering?1/0:0,pd=r=>{if(document.visibilityState==="hidden"){if(r.type==="visibilitychange")for(let e of Yv)e();isFinite(Si)||(Si=r.type==="visibilitychange"?r.timeStamp:0,removeEventListener("prerenderingchange",pd,!0))}},dl=()=>{if(Si<0){let r=Qs();Si=(document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").filter((t=>t.name==="hidden"&&t.startTime>r))[0]?.startTime)??Vv(),addEventListener("visibilitychange",pd,!0),addEventListener("prerenderingchange",pd,!0),ki((()=>{setTimeout((()=>{Si=Vv()}))}))}return{get firstHiddenTime(){return Si},onHidden(r){Yv.add(r)}}},pl=r=>{document.prerendering?addEventListener("prerenderingchange",(()=>r()),!0):r()},Uv=[1800,3e3],xd=(r,e={})=>{pl((()=>{let t=dl(),n,i=ir("FCP"),s=eo("paint",(o=>{for(let a of o)a.name==="first-contentful-paint"&&(s.disconnect(),a.startTime<t.firstHiddenTime&&(i.value=Math.max(a.startTime-Qs(),0),i.entries.push(a),n(!0)))}));s&&(n=nr(r,i,Uv,e.reportAllChanges),ki((o=>{i=ir("FCP"),n=nr(r,i,Uv,e.reportAllChanges),vd((()=>{i.value=performance.now()-o.timeStamp,n(!0)}))})))}))},jv=[.1,.25],Xv=(r,e={})=>{let t=dl();xd(_d((()=>{let n,i=ir("CLS",0),s=bd(e,dd),o=l=>{for(let c of l)s.h(c);s.i>i.value&&(i.value=s.i,i.entries=s.o,n())},a=eo("layout-shift",o);a&&(n=nr(r,i,jv,e.reportAllChanges),t.onHidden((()=>{o(a.takeRecords()),n(!0)})),ki((()=>{s.i=0,i=ir("CLS",0),n=nr(r,i,jv,e.reportAllChanges),vd((()=>n()))})),setTimeout(n))})))},Jv=0,ud=1/0,ul=0,GE=r=>{for(let e of r)e.interactionId&&(ud=Math.min(ud,e.interactionId),ul=Math.max(ul,e.interactionId),Jv=ul?(ul-ud)/7+1:0)},hd,Wv=()=>hd?Jv:performance.interactionCount??0,KE=()=>{"interactionCount"in performance||hd||(hd=eo("event",GE,{type:"event",buffered:!0,durationThreshold:0}))},zv=0,fd=class{constructor(){pe(this,"u",[]);pe(this,"l",new Map);pe(this,"m");pe(this,"p")}v(){zv=Wv(),this.u.length=0,this.l.clear()}L(){let e=Math.min(this.u.length-1,Math.floor((Wv()-zv)/50));return this.u[e]}h(e){if(this.m?.(e),!e.interactionId&&e.entryType!=="first-input")return;let t=this.u.at(-1),n=this.l.get(e.interactionId);if(n||this.u.length<10||e.duration>t.P){if(n?e.duration>n.P?(n.entries=[e],n.P=e.duration):e.duration===n.P&&e.startTime===n.entries[0].startTime&&n.entries.push(e):(n={id:e.interactionId,entries:[e],P:e.duration},this.l.set(n.id,n),this.u.push(n)),this.u.sort(((i,s)=>s.P-i.P)),this.u.length>10){let i=this.u.splice(10);for(let s of i)this.l.delete(s.id)}this.p?.(n)}}},Qv=r=>{let e=globalThis.requestIdleCallback||setTimeout;document.visibilityState==="hidden"?r():(r=_d(r),addEventListener("visibilitychange",r,{once:!0,capture:!0}),e((()=>{r(),removeEventListener("visibilitychange",r,{capture:!0})})))},qv=[200,500],ey=(r,e={})=>{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;let t=dl();pl((()=>{KE();let n,i=ir("INP"),s=bd(e,fd),o=l=>{Qv((()=>{for(let u of l)s.h(u);let c=s.L();c&&c.P!==i.value&&(i.value=c.P,i.entries=c.entries,n())}))},a=eo("event",o,{durationThreshold:e.durationThreshold??40});n=nr(r,i,qv,e.reportAllChanges),a&&(a.observe({type:"first-input",buffered:!0}),t.onHidden((()=>{o(a.takeRecords()),n(!0)})),ki((()=>{s.v(),i=ir("INP"),n=nr(r,i,qv,e.reportAllChanges)})))}))},gd=class{constructor(){pe(this,"m")}h(e){this.m?.(e)}},Zv=[2500,4e3],ty=(r,e={})=>{pl((()=>{let t=dl(),n,i=ir("LCP"),s=bd(e,gd),o=l=>{e.reportAllChanges||(l=l.slice(-1));for(let c of l)s.h(c),c.startTime<t.firstHiddenTime&&(i.value=Math.max(c.startTime-Qs(),0),i.entries=[c],n())},a=eo("largest-contentful-paint",o);if(a){n=nr(r,i,Zv,e.reportAllChanges);let l=_d((()=>{o(a.takeRecords()),a.disconnect(),n(!0)})),c=u=>{u.isTrusted&&(Qv(l),removeEventListener(u.type,c,{capture:!0}))};for(let u of["keydown","click","visibilitychange"])addEventListener(u,c,{capture:!0});ki((u=>{i=ir("LCP"),n=nr(r,i,Zv,e.reportAllChanges),vd((()=>{i.value=performance.now()-u.timeStamp,n(!0)}))}))}}))},Gv=[800,1800],md=r=>{document.prerendering?pl((()=>md(r))):document.readyState!=="complete"?addEventListener("load",(()=>md(r)),!0):setTimeout(r)},ry=(r,e={})=>{let t=ir("TTFB"),n=nr(r,t,Gv,e.reportAllChanges);md((()=>{let i=yd();i&&(t.value=Math.max(i.responseStart-Qs(),0),t.entries=[i],n(!0),ki((()=>{t=ir("TTFB",0),n=nr(r,t,Gv,e.reportAllChanges),n(!0)})))}))};var ny="__syntro_vitals_bound",hl="__syntro_vitals_current_reporter";function wd(r,e){if(typeof window>"u")return()=>{};let t=window;t[hl]=r;let n=null,i=e?.attributedScriptUrlPrefix;if(i&&"PerformanceObserver"in window)try{n=new PerformanceObserver(s=>{let o=t[hl];if(o)for(let a of s.getEntries()){let l=a.attribution;if(!l)continue;l.some(u=>(u.containerSrc??u.name??"").startsWith(i))&&(o.increment("longtasks_self_count"),o.increment("longtasks_self_blocking_ms",Math.round(a.duration)))}}),n.observe({type:"longtask",buffered:!0})}catch{n=null}if(!t[ny]){t[ny]=!0;let s=o=>a=>{t[hl]?.recordHistogram(o,a.value)};ty(s("lcp_ms")),ey(s("inp_ms")),xd(s("fcp_ms")),ry(s("ttfb_ms")),Xv(o=>{t[hl]?.recordHistogram("cls_score",o.value)})}return()=>{n?.disconnect()}}var to="2.20.0";var Gr="2.0";var YE=["api.syntrologie.com","cdn.syntrologie.com","localhost","127.0.0.1"];function XE(r){try{let e=new URL(r),t=/^(localhost|127\.0\.0\.1)$/.test(e.hostname);return e.protocol!=="https:"&&!t?(console.warn("[SmartCanvas] Config URI must use HTTPS:",r),!1):YE.some(i=>e.hostname===i)?!0:(console.warn("[SmartCanvas] Config URI host not in allowlist:",e.hostname),!1)}catch{return console.warn("[SmartCanvas] Invalid config URI:",r),!1}}function JE(r){if(typeof window>"u")return!1;try{return new URL(r).origin===window.location.origin}catch{return!1}}var iy="syntro_config_cache",QE=1440*60*1e3;function sy(){try{return typeof localStorage<"u"&&localStorage!==null}catch{return!1}}function eC(r,e){if(sy())try{let t={config:r,timestamp:Date.now(),sdkVersion:e};localStorage.setItem(iy,JSON.stringify(t))}catch{}}function tC(r){if(!sy())return null;try{let e=localStorage.getItem(iy);if(!e)return null;let t=JSON.parse(e);return!t.config||typeof t.timestamp!="number"||!t.sdkVersion||t.sdkVersion!==r||Date.now()-t.timestamp>QE?null:t.config}catch{return null}}var Sd=({configUri:r,experiments:e,featureKey:t})=>{if(r)return r;if(e&&t){let n=e.getFeatureValue?.(t,null);if(n)return n}};function rC(r,e,t){if(e){let n=r.getFeatureValue?.(e,null);if(n&&typeof n=="object"){let i=n.variant_flags;if(i&&i.length>0)return i}}if(r.getAllFeatures){let n=r.getAllFeatures();return t?Object.keys(n).filter(i=>i.startsWith(t)):Object.keys(n)}return[]}var Ei=({configUri:r,experiments:e,featureKey:t,credentials:n,configFeatureKey:i,manifestKey:s,variantFlagPrefix:o,sdkVersion:a})=>async()=>{if(e&&i){let h=e.getFeatureValue?.(i,null);if(h&&typeof h=="object")return Z("SmartCanvas Config","Resolved config directly from feature flag",h),h}if(e&&(s||o||e.getAllFeatures)){let h=rC(e,s,o);if(console.log("[SmartCanvas Config] Variant key discovery:",h.length,"keys found"),h.length>0){let f=al(e,h);if(console.log("[SmartCanvas Config] resolveVariantConfigs result:",f?`tiles=${f.tiles?.length}`:"null"),f)return Z("SmartCanvas Config","Resolved config from variant flags",f),f}}else console.log("[SmartCanvas Config] Skipping multi-flag mode:",{hasExperiments:!!e,manifestKey:s,variantFlagPrefix:o,hasGetAllFeatures:!!e?.getAllFeatures});let l=Sd({configUri:r,experiments:e,featureKey:t});if(!l)return Z("SmartCanvas Config","No config available \u2014 returning empty config"),{tiles:[],actions:[],fetchedAt:new Date().toISOString()};if(!XE(l))throw new Error(`SmartCanvas: config URI not allowed: ${l}`);let c=n??(JE(l)?"include":"omit"),u=performance.now(),p=!1;try{let h=await fetch(l,{credentials:c,headers:{"X-SDK-Version":to,"X-SDK-Schema-Version":Gr}});if(!h.ok)throw rr()?.increment("flag_fetch_errors"),p=!0,new Error(`SmartCanvas: failed to fetch config (${h.status})`);let f=await h.json(),v=performance.now()-u;return rr()?.increment("flag_fetch_count"),rr()?.recordHistogram("flag_fetch_latency_ms",v),Z("SmartCanvas Config","Fetched config from URI",f),a&&eC(f,a),f}catch(h){if(p||rr()?.increment("flag_fetch_errors"),a){let f=tC(a);if(f)return Z("SmartCanvas Config","Serving config from offline cache"),f}throw h}};var kd=class{constructor(e){this.listeners=new Set;let t=e?.open??!1;if(e?.open===void 0)try{let n=sessionStorage?.getItem("syntro:editor:panel-open");n!==null&&(t=JSON.parse(n))}catch{}this.state={open:t}}getState(){return this.state}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setOpen(e){if(this.state.open!==e){this.state={...this.state,open:e};try{sessionStorage?.setItem("syntro:editor:panel-open",JSON.stringify(e))}catch{}this.emit()}}toggle(){this.setOpen(!this.state.open)}emit(){for(let e of this.listeners)e(this.state)}},oy=r=>new kd(r);var Ut={white:"#ffffff",black:"#000000"},se={0:"#2c0b0a",1:"#5b1715",2:"#89221f",3:"#b72e2a",4:"#d44844",5:"#dd6d69",6:"#e5918f",7:"#eeb6b4",8:"#f6dada",9:"#faebea"},k={0:"#07080a",1:"#0f1318",2:"#0e1114",3:"#1c222a",4:"#2b333f",5:"#394454",6:"#475569",7:"#677384",8:"#87919f",9:"#a8afba",10:"#cbd0d7",11:"#e8eaee",12:"#f6f7f9"},Ee={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Je={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},Pe={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},sr={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},ro={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},no={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},io={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"};var bt={primary:k[10],secondary:k[9],tertiary:k[8]},HO={primary:k[2],secondary:k[0]},Ed={primary:k[4],secondary:k[3]},fl={primary:{text:Ut.white,icon:Ut.white,border:se[3],backgroundDefault:se[3],backgroundHover:se[2]},neutral:{text:k[10],textHover:Ut.white,icon:k[10],iconHover:Ut.white,border:k[4],background:k[2]},link:{text:Ut.white,icon:Ut.white,hover:se[5]},error:{text:Pe[5],hover:Pe[6]},success:{text:Ee[5],hover:Ee[6]}},BO={slateGrey:{content:k[10],pillOutline:k[10],borderPrimary:k[5],borderSecondary:k[5],background:k[3]},brand:{content:se[9],pillOutline:se[9],borderPrimary:se[6],borderSecondary:se[6],background:se[0]},red:{content:Pe[8],pillOutline:Pe[4],borderPrimary:Pe[2],borderSecondary:Pe[2],background:Pe[0]},yellow:{content:Je[8],pillOutline:Je[4],borderPrimary:Je[2],borderSecondary:Je[2],background:Je[0]},green:{content:Ee[8],pillOutline:Ee[4],borderPrimary:Ee[2],borderSecondary:Ee[2],background:Ee[0]},purple:{content:no[8],pillOutline:no[4],borderPrimary:no[2],borderSecondary:no[2],background:no[0]},blue:{content:sr[8],pillOutline:sr[4],borderPrimary:sr[2],borderSecondary:sr[2],background:sr[0]},orange:{content:ro[8],pillOutline:ro[4],borderPrimary:ro[2],borderSecondary:ro[2],background:ro[0]},pink:{content:io[8],pillOutline:io[4],borderPrimary:io[2],borderSecondary:io[2],background:io[0]}},VO={green:{content:Ee[8],border:Ee[2],background:Ee[0]},yellow:{content:Je[8],border:Je[2],background:Je[0]},red:{content:Pe[8],border:Pe[2],background:Pe[0]}},UO={green:{content:Ee[1],background:Ee[9]},yellow:{content:Je[1],background:Je[9]},red:{content:Pe[1],background:Pe[9]}},jO={content:k[10],border:k[4],background:k[3]},WO={backgroundDefault:k[2],backgroundHover:k[1],selected:k[3]},zO={background:k[2],icon:k[10],borderDefault:k[4],borderSelected:se[3],textLabel:k[9],textPlaceholder:k[8],textHint:k[8]},qO={backgroundDefault:k[2],backgroundDisabled:k[0],textLabel:k[9],textPlaceholder:k[8],textHint:k[8],textError:Pe[5],iconDefault:k[9],iconPlaceholder:k[10],iconError:Pe[5],borderDefault:k[4],borderSelected:se[3],borderError:Pe[5]},ZO={handleDefault:Ut.white,handleDisabled:k[10],off:{backgroundDefault:k[4],backgroundHover:k[5],backgroundDisabled:k[4]},on:{backgroundDefault:Ee[3],backgroundHover:Ee[2],backgroundDisabled:k[4]}},GO={off:{backgroundDefault:"#00000000",backgroundHover:k[5],backgroundDisabled:k[2],border:k[6]},on:{backgroundDefault:Ee[0],backgroundHover:Ee[1],backgroundDisabled:k[2],border:Ee[3]}},KO={content:k[10],background:k[4]},YO={background:k[4],active:Ee[3]},XO={background:k[1],content:k[9],border:k[4]},JO={backgroundDefault:k[1],backgroundHover:k[3],backgroundActive:k[4],border:k[4],contentPrimary:k[10],contentSecondary:k[9],contentTertiary:k[8]},QO={background:k[1],content:k[9],border:k[4]},e4={activeBackground:k[3],activeContent:se[5],inactiveContent:k[9],border:k[4]},t4={header:{textDefault:k[9],textHover:k[8],backgroundDefault:k[1]},border:k[4],cell:{textPrimary:k[10],textSecondary:k[9],backgroundDefault:k[2],backgroundHover:k[1]}},r4={textPrimaryDefault:k[10],textPrimaryHover:k[10],textSecondaryDefault:k[8],textSecondaryHover:k[9],iconPrimary:k[10],iconSecondary:k[8]},n4={background:Ee[1],active:Ee[5]},i4={textDefault:k[10],textSelected:Ut.white,textDisabled:k[7],backgroundDefault:k[2],backgroundMiddle:k[3],backgroundSelected:se[3],border:k[4]},s4=k[9];var c4={size:56,inset:12,background:Ut.black,color:Ut.white,border:`2px solid ${se[3]}`,shadowOpen:"0 4px 24px rgba(0,0,0,0.6), 0 0 0 2px rgba(255,255,255,0.08)",shadowClosed:"0 4px 24px rgba(0,0,0,0.6)"};function ae(r,e){return`${r}${Math.round(e*255).toString(16).padStart(2,"0")}`}var w4={colorPrimary:se[3],colorPrimaryHover:se[4],colorPrimaryMuted:se[0],colorBackground:ae(k[1],.95),colorBackgroundElevated:ae(k[3],.95),colorBackgroundSubtle:ae(k[0],.2),colorSurface:ae(k[4],.8),colorSurfaceHover:ae(k[5],.8),colorText:bt.primary,colorTextSecondary:bt.secondary,colorTextMuted:bt.tertiary,colorTextInverse:k[1],colorBorder:Ed.primary,colorBorderSubtle:Ed.secondary,colorSuccess:Ee[4],colorSuccessMuted:Ee[0],colorWarning:Je[4],colorWarningMuted:Je[0],colorError:Pe[4],colorErrorMuted:Pe[0],colorInfo:sr[4],colorInfoMuted:sr[0],colorNotification:se[4],colorNotificationMuted:ae(se[4],.4),glassBackground:ae(k[1],.6),glassBackgroundHover:ae(k[1],.7),glassBorder:"rgba(255, 255, 255, 0.08)",glassBlur:"blur(24px)",glassSaturate:"saturate(1.2)",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",fontFamilyMono:"'SF Mono', 'Fira Code', Consolas, monospace",fontSizeXs:"0.7rem",fontSizeSm:"0.8rem",fontSizeMd:"0.9rem",fontSizeLg:"1rem",fontSizeXl:"1.25rem",fontSizeXxl:"1.5rem",fontWeightNormal:"400",fontWeightMedium:"500",fontWeightSemibold:"600",fontWeightBold:"700",lineHeightTight:"1.25",lineHeightNormal:"1.5",lineHeightRelaxed:"1.75",spacingXs:"0.25rem",spacingSm:"0.5rem",spacingMd:"0.75rem",spacingLg:"1rem",spacingXl:"1.5rem",borderRadiusSm:"6px",borderRadiusMd:"10px",borderRadiusLg:"14px",borderRadiusXl:"20px",borderRadiusFull:"9999px",shadowSm:"0 1px 2px rgba(0, 0, 0, 0.2)",shadowMd:"0 2px 12px rgba(0, 0, 0, 0.3)",shadowLg:"0 8px 24px rgba(0, 0, 0, 0.4)",shadowXl:"0 16px 48px rgba(0, 0, 0, 0.5)",backdropBlur:"blur(20px)",backdropSaturate:"saturate(180%)",transitionFast:"0.1s ease",transitionNormal:"0.25s ease",transitionSlow:"0.4s ease"},S4={colorPrimary:se[3],colorPrimaryHover:se[2],colorPrimaryMuted:ae(se[5],.1),colorBackground:ae(k[12],.95),colorBackgroundElevated:ae(k[11],.95),colorBackgroundSubtle:ae(k[0],.02),colorSurface:ae(k[11],.6),colorSurfaceHover:ae(k[10],.6),colorText:k[1],colorTextSecondary:k[6],colorTextMuted:k[8],colorTextInverse:k[12],colorBorder:ae(k[0],.12),colorBorderSubtle:ae(k[0],.06),colorSuccess:Ee[4],colorSuccessMuted:ae(Ee[4],.12),colorWarning:Je[4],colorWarningMuted:ae(Je[4],.12),colorError:Pe[4],colorErrorMuted:ae(Pe[4],.12),colorInfo:sr[4],colorInfoMuted:ae(sr[4],.12),colorNotification:se[3],colorNotificationMuted:ae(se[3],.4),glassBackground:ae(k[12],.7),glassBackgroundHover:ae(k[12],.8),glassBorder:"rgba(0, 0, 0, 0.06)",glassBlur:"blur(24px)",glassSaturate:"saturate(1.2)",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",fontFamilyMono:"'SF Mono', 'Fira Code', Consolas, monospace",fontSizeXs:"0.7rem",fontSizeSm:"0.8rem",fontSizeMd:"0.9rem",fontSizeLg:"1rem",fontSizeXl:"1.25rem",fontSizeXxl:"1.5rem",fontWeightNormal:"400",fontWeightMedium:"500",fontWeightSemibold:"600",fontWeightBold:"700",lineHeightTight:"1.25",lineHeightNormal:"1.5",lineHeightRelaxed:"1.75",spacingXs:"0.25rem",spacingSm:"0.5rem",spacingMd:"0.75rem",spacingLg:"1rem",spacingXl:"1.5rem",borderRadiusSm:"6px",borderRadiusMd:"10px",borderRadiusLg:"14px",borderRadiusXl:"20px",borderRadiusFull:"9999px",shadowSm:"0 1px 2px rgba(0, 0, 0, 0.08)",shadowMd:"0 2px 12px rgba(0, 0, 0, 0.12)",shadowLg:"0 8px 24px rgba(0, 0, 0, 0.16)",shadowXl:"0 16px 48px rgba(0, 0, 0, 0.2)",backdropBlur:"blur(20px)",backdropSaturate:"saturate(180%)",transitionFast:"0.1s ease",transitionNormal:"0.25s ease",transitionSlow:"0.4s ease"};function nC(r){return r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}var ay={mode:"dark",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",colorPrimary:se[3],colorPrimaryHover:se[4],borderRadius:"12px",canvas:{position:"right",layout:"overlay",background:ae(k[1],.6),blur:"blur(24px)",border:"none",width:"clamp(380px, 25vw, 520px)",transitionDuration:"300ms",transitionEasing:"cubic-bezier(0.16, 1, 0.3, 1)",transitionFade:"6%",backdrop:!1,backdropColor:"rgba(0, 0, 0, 0.4)",padding:"0"},launcher:{background:fl.primary.backgroundDefault,backgroundHover:fl.primary.backgroundHover,color:fl.primary.icon,size:"56px",shadow:`0 8px 32px ${ae(k[0],.6)}`,borderRadius:"9999px"},tile:{background:ae(k[1],.6),backgroundHover:ae(k[1],.7),border:"1px solid rgba(255, 255, 255, 0.08)",borderRadius:"14px",shadow:"0 2px 12px rgba(0, 0, 0, 0.3)",titleColor:bt.primary,textColor:bt.secondary,iconBackground:`linear-gradient(135deg, ${se[3]} 0%, ${se[3]}cc 100%)`,iconShadow:`0 2px 8px ${se[3]}40`,headerPadding:"0.375rem 0.75rem",bodyPadding:"0 0.75rem 0.5rem",gap:"0.25rem"},overlay:{background:ae(k[1],.6),textColor:bt.primary,titleColor:bt.primary,arrowColor:ae(k[1],.6),arrowSize:"8px",border:"none",borderRadius:"0",scrimOpacity:"0",highlightRing:`2px solid ${se[3]}`},notification:{background:ae(k[0],.95),textColor:bt.primary,textSecondaryColor:bt.secondary,border:`1px solid ${k[5]}`,borderRadius:"12px",successColor:Ee[4],warningColor:Je[4],errorColor:Pe[4],iconBackground:ae(se[3],.15),progressGradient:`linear-gradient(90deg, ${se[3]}, ${se[4]})`},content:{background:ae(k[3],.8),backgroundHover:ae(k[5],.6),border:`1px solid ${ae(k[5],.5)}`,borderRadius:"8px",textColor:bt.primary,textSecondaryColor:bt.secondary,itemDivider:"none",itemGap:"6px",itemPadding:"12px 16px",itemFontSize:"15px",bodyPadding:"0 16px 12px 16px",bodyFontSize:"14px",categoryPadding:"8px 4px 4px 4px",categoryGap:"4px",categoryFontSize:"12px",searchBackground:ae(k[3],.8),searchColor:bt.primary,chevronColor:"currentColor"},mobile:{canvas:{backdrop:!0}}},ly={mode:"light",fontFamily:"-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Segoe UI', Roboto, sans-serif",colorPrimary:se[3],colorPrimaryHover:se[2],borderRadius:"12px",canvas:{position:"right",layout:"overlay",background:ae(k[12],.7),blur:"blur(24px)",border:"none",width:"clamp(380px, 25vw, 520px)",transitionDuration:"300ms",transitionEasing:"cubic-bezier(0.16, 1, 0.3, 1)",transitionFade:"6%",backdrop:!1,backdropColor:"rgba(0, 0, 0, 0.3)",padding:"0"},launcher:{background:se[3],backgroundHover:se[2],color:"#ffffff",size:"56px",shadow:"0 8px 32px rgba(0, 0, 0, 0.15)",borderRadius:"9999px"},tile:{background:ae(k[12],.7),backgroundHover:ae(k[12],.8),border:"1px solid rgba(0, 0, 0, 0.06)",borderRadius:"14px",shadow:"0 2px 12px rgba(0, 0, 0, 0.12)",titleColor:k[1],textColor:k[6],iconBackground:`linear-gradient(135deg, ${se[3]} 0%, ${se[3]}cc 100%)`,iconShadow:`0 2px 8px ${se[3]}40`,headerPadding:"0.375rem 0.75rem",bodyPadding:"0 0.75rem 0.5rem",gap:"0.25rem"},overlay:{background:ae(k[12],.7),textColor:k[1],titleColor:k[1],arrowColor:ae(k[12],.7),arrowSize:"8px",border:"none",borderRadius:"0",scrimOpacity:"0",highlightRing:`2px solid ${se[3]}`},notification:{background:ae(k[12],.95),textColor:k[1],textSecondaryColor:k[6],border:`1px solid ${ae(k[0],.12)}`,borderRadius:"12px",successColor:Ee[4],warningColor:Je[4],errorColor:Pe[4],iconBackground:ae(se[3],.1),progressGradient:`linear-gradient(90deg, ${se[3]}, ${se[2]})`},content:{background:ae(k[12],.8),backgroundHover:ae(k[11],.6),border:`1px solid ${k[11]}`,borderRadius:"8px",textColor:k[1],textSecondaryColor:k[6],itemDivider:"none",itemGap:"6px",itemPadding:"12px 16px",itemFontSize:"15px",bodyPadding:"0 16px 12px 16px",bodyFontSize:"14px",categoryPadding:"8px 4px 4px 4px",categoryGap:"4px",categoryFontSize:"12px",searchBackground:k[12],searchColor:k[1],chevronColor:"currentColor"},mobile:{canvas:{backdrop:!0}}};function cy(r){let e=r.mode==="light"?ly:ay;return{mode:r.mode??e.mode,fontFamily:r.fontFamily??e.fontFamily,colorPrimary:r.colorPrimary??e.colorPrimary,colorPrimaryHover:r.colorPrimaryHover??e.colorPrimaryHover,borderRadius:r.borderRadius??e.borderRadius,canvas:{...e.canvas,...r.canvas},launcher:{...e.launcher,...r.launcher},tile:{...e.tile,...r.tile},overlay:{...e.overlay,...r.overlay},notification:{...e.notification,...r.notification},content:{...e.content,...r.content},mobile:{canvas:{...e.mobile.canvas,...r.mobile?.canvas}}}}function uy(r,e){let t=e.mode??r.mode??"dark",n=t==="light"?ly:ay;return{mode:t,fontFamily:e.fontFamily??r.fontFamily??n.fontFamily,colorPrimary:e.colorPrimary??r.colorPrimary??n.colorPrimary,colorPrimaryHover:e.colorPrimaryHover??r.colorPrimaryHover??n.colorPrimaryHover,borderRadius:e.borderRadius??r.borderRadius??n.borderRadius,canvas:{...n.canvas,...r.canvas,...e.canvas},launcher:{...n.launcher,...r.launcher,...e.launcher},tile:{...n.tile,...r.tile,...e.tile},overlay:{...n.overlay,...r.overlay,...e.overlay},notification:{...n.notification,...r.notification,...e.notification},content:{...n.content,...r.content,...e.content},mobile:{canvas:{...n.mobile.canvas,...r.mobile?.canvas,...e.mobile?.canvas}}}}var iC=["canvas","launcher","tile","overlay","notification","content"];function dy(r){let e={};r.fontFamily&&(e["--sc-font-family"]=r.fontFamily),r.colorPrimary&&(e["--sc-color-primary"]=r.colorPrimary),r.colorPrimaryHover&&(e["--sc-color-primary-hover"]=r.colorPrimaryHover),r.borderRadius&&(e["--sc-border-radius"]=r.borderRadius);for(let t of iC){let n=r[t];if(n)for(let[i,s]of Object.entries(n))s!==void 0&&typeof s=="string"&&(e[`--sc-${t}-${nC(i)}`]=s)}return e}var Kr,jn,Wn,Sr,kr,Cd,gl,so=class{constructor(e,t,n){ye(this,kr);ye(this,Kr);ye(this,jn);ye(this,Wn);ye(this,Sr);oe(this,Kr,e),oe(this,jn,t??{}),oe(this,Wn,n),oe(this,Sr,we(this,kr,Cd).call(this)),e.addController(this)}get config(){return q(this,Sr).config}get mode(){return q(this,Sr).mode}get cssVariables(){return q(this,Sr).cssVariables}hostConnected(){we(this,kr,gl).call(this)}hostDisconnected(){}hostUpdated(){we(this,kr,gl).call(this)}setThemeConfig(e,t){oe(this,jn,e),oe(this,Wn,t),oe(this,Sr,we(this,kr,Cd).call(this)),we(this,kr,gl).call(this),q(this,Kr).requestUpdate()}};Kr=new WeakMap,jn=new WeakMap,Wn=new WeakMap,Sr=new WeakMap,kr=new WeakSet,Cd=function(){let e=q(this,Wn)?uy(q(this,Wn),q(this,jn)):cy(q(this,jn)),t=dy(e);return{config:e,mode:e.mode,cssVariables:t}},gl=function(){let e=q(this,Kr).shadowRoot??("renderRoot"in q(this,Kr)?q(this,Kr).renderRoot:null);if(!e||!(e instanceof ShadowRoot))return;let t=e.querySelector("#sc-theme-vars");t||(t=document.createElement("style"),t.id="sc-theme-vars",e.insertBefore(t,e.firstChild));let n=Object.entries(q(this,Sr).cssVariables).map(([i,s])=>` ${i}: ${s};`).join(`
492
492
  `);t.textContent=`:host {
493
493
  ${n}
494
- }`};var uE=new Set(["tag_name","$el_text"]);function dE(r){return uE.has(r)||r.startsWith("attr__")}function wv(r,e){return r.equals!==void 0?e===r.equals:r.contains!==void 0?typeof e=="string"&&e.includes(r.contains):!1}function pE(r){let{events:e,match:t}=r;return n=>{if(!e.includes(n.name))return!1;if(t){for(let[i,s]of Object.entries(t))if(dE(i)){let o=n.props?.elements;if(!o||!o.some(l=>wv(s,l[i])))return!1}else if(!wv(s,n.props?.[i]))return!1}return!0}}function Sv(r,e){for(let t of r.rules)for(let n of t.conditions)if(n.type==="event_count"&&n.key){let i=n.counter,s=i?pE(i):()=>!0,o=typeof n.withinMs=="number";e.register(n.key,s,o)}}function wi(r,e,t){for(let n of r){let i=n.props;if(!i)continue;let s=i.actions;if(s)for(let o of s)o.triggerWhen?.type==="rules"&&Sv(o.triggerWhen,e)}if(t)for(let n of t){let i=n;i.triggerWhen?.type==="rules"&&Sv(i.triggerWhen,e)}}var hE="syntro-runtime",kv="smart-canvas",Ev=r=>[...r].sort((e,t)=>(t.priority??0)-(e.priority??0));function Cv(r){let e=typeof window<"u"?window.SynOS?.interventionTracker:null;if(e)for(let t of r)e.trackTriggered(t.id,t.widget??"unknown")}var vt,ki,ir,Sr,Ut,Un,eo,Wn,zn,to,ro,no,qn,Zn,Gr,Kr,Yr,Gn,Ei,io,ke,Av,Rv,Ci,td,Tv,rd,nd,id,sd,Iv,od,ol,Si=class extends ye{constructor(){super();ve(this,ke);this.fetcher=void 0;this.configUri=void 0;this.configUriFeatureKey=void 0;this.configFeatureKey=void 0;this.fetchCredentials="include";this.experiments=void 0;this.telemetry=void 0;this.runtime=void 0;this.launcherLabel=void 0;this.initialBatchHandle=null;this.initialBatchActions=void 0;this.workspaceTheme=void 0;this._tiles=[];this._configActions=[];this._isLoading=!0;this._error=void 0;this._theme=void 0;this._launcher=void 0;this._canvasTitle=void 0;this._displayMode="standard";this._isOpen=!1;this._pageUrl=typeof window<"u"?window.location.href:"/";ve(this,vt);ve(this,ki,null);ve(this,ir,null);ve(this,Sr,null);ve(this,Ut,null);ve(this,Un);ve(this,eo,0);ve(this,Wn,null);ve(this,zn,"[]");ve(this,to,"[]");ve(this,ro,"null");ve(this,no,"null");ve(this,qn,null);ve(this,Zn,null);ve(this,Gr,null);ve(this,Kr,null);ve(this,Yr,null);ve(this,Gn,()=>{this._pageUrl=window.location.href});ve(this,Ei);ve(this,io);ve(this,Ci,0);ve(this,ol,t=>{q(this,vt).toggle()});oe(this,vt,mv()),oe(this,Un,!1),oe(this,Ei,new Qs(this)),oe(this,io,new _i(this,{context:hE,initialValue:null}))}connectedCallback(){super.connectedCallback(),this.style.setProperty("font-family","inherit"),oe(this,ki,q(this,vt).subscribe(t=>{this._isOpen=t.open})),this._isOpen=q(this,vt).getState().open,oe(this,ir,document.createElement("div")),q(this,ir).id="overlayContainer",Object.assign(q(this,ir).style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),this.shadowRoot.appendChild(q(this,ir)),oe(this,Sr,document.createElement("div")),q(this,Sr).id="portalRoot",this.shadowRoot.appendChild(q(this,Sr)),xe(this,ke,rd).call(this),xe(this,ke,od).call(this),xe(this,ke,id).call(this)}disconnectedCallback(){var t,n,i,s,o;super.disconnectedCallback(),(t=q(this,ki))==null||t.call(this),oe(this,ki,null),(n=q(this,Zn))==null||n.call(this),oe(this,Zn,null),(i=q(this,Gr))==null||i.call(this),oe(this,Gr,null),(s=q(this,Kr))==null||s.call(this),oe(this,Kr,null),(o=q(this,Yr))==null||o.call(this),oe(this,Yr,null),xe(this,ke,nd).call(this),q(this,Ut)&&(q(this,Ut).revertAll().catch(a=>{console.error("[SmartCanvasElementLit] Failed to revert actions on disconnect:",a)}),oe(this,Ut,null)),q(this,ir)?.remove(),oe(this,ir,null),q(this,Sr)?.remove(),oe(this,Sr,null)}updated(t){var i;t.has("runtime")&&(q(this,io).setValue(this.runtime??null),xe(this,ke,Iv).call(this),xe(this,ke,id).call(this),xe(this,ke,od).call(this),xe(this,ke,nd).call(this),xe(this,ke,rd).call(this));let n=t.has("runtime")||t.has("fetcher")||t.has("configUri")||t.has("configUriFeatureKey")||t.has("configFeatureKey")||t.has("fetchCredentials")||t.has("experiments");if(n&&(xe(this,ke,Av).call(this),(i=q(this,Zn))==null||i.call(this),this.experiments?.onFeaturesChanged&&oe(this,Zn,this.experiments.onFeaturesChanged(()=>this._loadConfig({silent:!0})))),(n||t.has("_pageUrl"))&&this._loadConfig(),(t.has("_theme")||t.has("workspaceTheme"))&&q(this,Ei).setThemeConfig(this._theme??{},this.workspaceTheme),(t.has("_configActions")||t.has("_pageUrl"))&&xe(this,ke,Tv).call(this),t.has("_tiles")||t.has("_isLoading")||t.has("_error")){let s=this._tiles.length>0&&!this._error;!this._isLoading&&!s&&q(this,vt).getState().open&&q(this,vt).setOpen(!1)}t.has("initialBatchHandle")&&this.initialBatchHandle&&(oe(this,Ut,this.initialBatchHandle),oe(this,Un,!0),this.initialBatchActions&&(this._configActions=this.initialBatchActions,oe(this,zn,JSON.stringify(this.initialBatchActions))))}render(){let t=this._tiles.length>0&&!this._error,n=this._isLoading||t;if(this._displayMode==="inline")return n?L`
494
+ }`};var sC=new Set(["tag_name","$el_text"]);function oC(r){return sC.has(r)||r.startsWith("attr__")}function py(r,e){return r.equals!==void 0?e===r.equals:r.contains!==void 0?typeof e=="string"&&e.includes(r.contains):!1}function aC(r){let{events:e,match:t}=r;return n=>{if(!e.includes(n.name))return!1;if(t){for(let[i,s]of Object.entries(t))if(oC(i)){let o=n.props?.elements;if(!o||!o.some(l=>py(s,l[i])))return!1}else if(!py(s,n.props?.[i]))return!1}return!0}}function hy(r,e){for(let t of r.rules)for(let n of t.conditions)if(n.type==="event_count"&&n.key){let i=n.counter,s=i?aC(i):()=>!0,o=typeof n.withinMs=="number";e.register(n.key,s,o)}}function Ci(r,e,t){for(let n of r){let i=n.props;if(!i)continue;let s=i.actions;if(s)for(let o of s)o.triggerWhen?.type==="rules"&&hy(o.triggerWhen,e)}if(t)for(let n of t){let i=n;i.triggerWhen?.type==="rules"&&hy(i.triggerWhen,e)}}var lC="syntro-runtime",fy="smart-canvas",gy=r=>[...r].sort((e,t)=>(t.priority??0)-(e.priority??0));function my(r){let e=typeof window<"u"?window.SynOS?.interventionTracker:null;if(e)for(let t of r)e.trackTriggered(t.id,t.widget??"unknown")}var vt,Ti,or,Er,jt,zn,oo,qn,Zn,ao,lo,co,Gn,Kn,Yr,Xr,Jr,Yn,Ri,uo,ke,vy,yy,Ii,Ad,by,Td,Rd,Id,$d,_y,Md,ml,Ai=class extends be{constructor(){super();ye(this,ke);this.fetcher=void 0;this.configUri=void 0;this.configUriFeatureKey=void 0;this.configFeatureKey=void 0;this.fetchCredentials="include";this.experiments=void 0;this.telemetry=void 0;this.runtime=void 0;this.launcherLabel=void 0;this.initialBatchHandle=null;this.initialBatchActions=void 0;this.workspaceTheme=void 0;this._tiles=[];this._configActions=[];this._isLoading=!0;this._error=void 0;this._theme=void 0;this._launcher=void 0;this._canvasTitle=void 0;this._displayMode="standard";this._isOpen=!1;this._pageUrl=typeof window<"u"?window.location.href:"/";ye(this,vt);ye(this,Ti,null);ye(this,or,null);ye(this,Er,null);ye(this,jt,null);ye(this,zn);ye(this,oo,0);ye(this,qn,null);ye(this,Zn,"[]");ye(this,ao,"[]");ye(this,lo,"null");ye(this,co,"null");ye(this,Gn,null);ye(this,Kn,null);ye(this,Yr,null);ye(this,Xr,null);ye(this,Jr,null);ye(this,Yn,()=>{this._pageUrl=window.location.href});ye(this,Ri);ye(this,uo);ye(this,Ii,0);ye(this,ml,t=>{q(this,vt).toggle()});oe(this,vt,oy()),oe(this,zn,!1),oe(this,Ri,new so(this)),oe(this,uo,new wi(this,{context:lC,initialValue:null}))}connectedCallback(){super.connectedCallback(),this.style.setProperty("font-family","inherit"),oe(this,Ti,q(this,vt).subscribe(t=>{this._isOpen=t.open})),this._isOpen=q(this,vt).getState().open,oe(this,or,document.createElement("div")),q(this,or).id="overlayContainer",Object.assign(q(this,or).style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),this.shadowRoot.appendChild(q(this,or)),oe(this,Er,document.createElement("div")),q(this,Er).id="portalRoot",this.shadowRoot.appendChild(q(this,Er)),we(this,ke,Td).call(this),we(this,ke,Md).call(this),we(this,ke,Id).call(this)}disconnectedCallback(){var t,n,i,s,o;super.disconnectedCallback(),(t=q(this,Ti))==null||t.call(this),oe(this,Ti,null),(n=q(this,Kn))==null||n.call(this),oe(this,Kn,null),(i=q(this,Yr))==null||i.call(this),oe(this,Yr,null),(s=q(this,Xr))==null||s.call(this),oe(this,Xr,null),(o=q(this,Jr))==null||o.call(this),oe(this,Jr,null),we(this,ke,Rd).call(this),q(this,jt)&&(q(this,jt).revertAll().catch(a=>{console.error("[SmartCanvasElementLit] Failed to revert actions on disconnect:",a)}),oe(this,jt,null)),q(this,or)?.remove(),oe(this,or,null),q(this,Er)?.remove(),oe(this,Er,null)}updated(t){var i;t.has("runtime")&&(q(this,uo).setValue(this.runtime??null),we(this,ke,_y).call(this),we(this,ke,Id).call(this),we(this,ke,Md).call(this),we(this,ke,Rd).call(this),we(this,ke,Td).call(this));let n=t.has("runtime")||t.has("fetcher")||t.has("configUri")||t.has("configUriFeatureKey")||t.has("configFeatureKey")||t.has("fetchCredentials")||t.has("experiments");if(n&&(we(this,ke,vy).call(this),(i=q(this,Kn))==null||i.call(this),this.experiments?.onFeaturesChanged&&oe(this,Kn,this.experiments.onFeaturesChanged(()=>this._loadConfig({silent:!0})))),(n||t.has("_pageUrl"))&&this._loadConfig(),(t.has("_theme")||t.has("workspaceTheme"))&&q(this,Ri).setThemeConfig(this._theme??{},this.workspaceTheme),(t.has("_configActions")||t.has("_pageUrl"))&&we(this,ke,by).call(this),t.has("_tiles")||t.has("_isLoading")||t.has("_error")){let s=this._tiles.length>0&&!this._error;!this._isLoading&&!s&&q(this,vt).getState().open&&q(this,vt).setOpen(!1)}t.has("initialBatchHandle")&&this.initialBatchHandle&&(oe(this,jt,this.initialBatchHandle),oe(this,zn,!0),this.initialBatchActions&&(this._configActions=this.initialBatchActions,oe(this,Zn,JSON.stringify(this.initialBatchActions))))}render(){let t=this._tiles.length>0&&!this._error,n=this._isLoading||t;if(this._displayMode==="inline")return n?N`
495
495
  <syntro-inline-shell
496
496
  .tiles=${this._tiles}
497
497
  ?isLoading=${this._isLoading}
498
498
  .error=${this._error}
499
499
  .runtimeRef=${this.runtime??null}
500
500
  ></syntro-inline-shell>
501
- `:J;let i=(q(this,Wn)?.tiles?.length??0)>0;return!n&&!i?J:L`
501
+ `:ee;let i=(q(this,qn)?.tiles?.length??0)>0;return!n&&!i?ee:N`
502
502
  <syntro-canvas-overlay
503
503
  .isOpen=${this._isOpen}
504
504
  .tiles=${this._tiles}
@@ -508,11 +508,11 @@ ${n}
508
508
  .displayMode=${this._displayMode}
509
509
  .runtimeRef=${this.runtime??null}
510
510
  .telemetry=${this.telemetry??null}
511
- .themeConfig=${q(this,Ei).config}
511
+ .themeConfig=${q(this,Ri).config}
512
512
  ?launcherAnimate=${!!this._launcher?.animate}
513
- @canvas-toggle=${q(this,ol)}
513
+ @canvas-toggle=${q(this,ml)}
514
514
  ></syntro-canvas-overlay>
515
- `}open(){this._displayMode!=="inline"&&q(this,vt).setOpen(!0)}close(){this._displayMode!=="inline"&&q(this,vt).setOpen(!1)}toggle(){this._displayMode!=="inline"&&q(this,vt).toggle()}setOverrideFetcher(t){this.fetcher=t}getMountNode(){return this.renderRoot}getController(){return q(this,vt)}getPortalRoot(){return q(this,Sr)}getOverlayContainer(){return q(this,ir)}getShadowRoot(){return this.shadowRoot}previewNotification(t){this.shadowRoot?.querySelector("syntro-canvas-overlay")?.previewNotification?.(t)}mountLitApp(t){t.fetcher!==void 0&&(this.fetcher=t.fetcher),t.configUri!==void 0&&(this.configUri=t.configUri),t.configUriFeatureKey!==void 0&&(this.configUriFeatureKey=t.configUriFeatureKey),t.configFeatureKey!==void 0&&(this.configFeatureKey=t.configFeatureKey),t.fetchCredentials!==void 0&&(this.fetchCredentials=t.fetchCredentials),t.experiments!==void 0&&(this.experiments=t.experiments),t.telemetry!==void 0&&(this.telemetry=t.telemetry),t.runtime!==void 0&&(this.runtime=t.runtime),t.launcherLabel!==void 0&&(this.launcherLabel=t.launcherLabel),t.initialBatchHandle!==void 0&&(this.initialBatchHandle=t.initialBatchHandle),t.initialBatchActions!==void 0&&(this.initialBatchActions=t.initialBatchActions),t.workspaceTheme!==void 0&&(this.workspaceTheme=t.workspaceTheme)}async _loadConfig({silent:t=!1}={}){if(!q(this,qn))return;let n=++$c(this,Ci)._;try{t||(this._isLoading=!0),this._error=void 0;let i=await q(this,qn).call(this);if(n!==q(this,Ci))return;Z("SmartCanvas Config","Raw config response",i);let s=Object.keys(i).length===0;oe(this,Wn,s?null:i);let o=i.tiles||[];if(o.length>0&&this.runtime?.accumulator&&wi(o,this.runtime.accumulator,i.actions),this.runtime){if(o=await this.runtime.filterTiles(o),n!==q(this,Ci))return;this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)))}else this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)));Cv(o),Z("SmartCanvas Config",`Tile count after filtering: ${o.length}`);let a=i.actions||[],l=JSON.stringify(a),c=l!==q(this,zn);c&&oe(this,zn,l);let u=Ev(o),p=JSON.stringify(u);p!==q(this,to)&&(oe(this,to,p),this._tiles=u),c&&(this._configActions=a),t||(this._isLoading=!1);let h=JSON.stringify(i.theme??null);h!==q(this,ro)&&(oe(this,ro,h),this._theme=i.theme);let f=JSON.stringify(i.launcher??null);f!==q(this,no)&&(oe(this,no,f),this._launcher=i.launcher),i.canvasTitle!==this._canvasTitle&&(this._canvasTitle=i.canvasTitle),xe(this,ke,sd).call(this)}catch(i){let s=i instanceof Error?i.message:"Unknown error";console.error("[SmartCanvas Config] Failed to fetch/filter config:",s,i),t||(this._isLoading=!1),this._error=s}}};vt=new WeakMap,ki=new WeakMap,ir=new WeakMap,Sr=new WeakMap,Ut=new WeakMap,Un=new WeakMap,eo=new WeakMap,Wn=new WeakMap,zn=new WeakMap,to=new WeakMap,ro=new WeakMap,no=new WeakMap,qn=new WeakMap,Zn=new WeakMap,Gr=new WeakMap,Kr=new WeakMap,Yr=new WeakMap,Gn=new WeakMap,Ei=new WeakMap,io=new WeakMap,ke=new WeakSet,Av=function(){if(this.fetcher)oe(this,qn,this.fetcher);else{let t=xe(this,ke,Rv).call(this);oe(this,qn,xi(t))}},Rv=function(){return{configUri:this.configUri,experiments:this.experiments,featureKey:this.configUriFeatureKey,configFeatureKey:this.configFeatureKey,credentials:this.fetchCredentials}},Ci=new WeakMap,td=async function(){let t=q(this,Wn);if(!t||!this.runtime)return;let n=t.tiles||[];n=await this.runtime.filterTiles(n),this.experiments&&(n=n.filter(i=>this.experiments.shouldRenderRectangle(i))),Cv(n),this._tiles=Ev(n)},Tv=async function(){if(!this.runtime?.actions||q(this,Un)&&(oe(this,Un,!1),JSON.stringify(this._configActions)===q(this,zn)))return;let t=++$c(this,eo)._,n=()=>t!==q(this,eo);if(q(this,Ut)){try{await q(this,Ut).revertAll()}catch(i){console.error("[SmartCanvasElementLit] Failed to revert actions:",i)}oe(this,Ut,null)}if(!n()&&this._configActions.length>0)try{let i=await this.runtime.actions.applyBatch(this._configActions);n()?await i.revertAll():oe(this,Ut,i)}catch(i){n()||console.error("[SmartCanvasElementLit] Failed to apply actions:",i)}},rd=function(){this.runtime||typeof window>"u"||(window.addEventListener("popstate",q(this,Gn)),window.addEventListener("hashchange",q(this,Gn)))},nd=function(){typeof window>"u"||(window.removeEventListener("popstate",q(this,Gn)),window.removeEventListener("hashchange",q(this,Gn)))},id=function(){this.runtime&&(this.runtime.accumulator&&oe(this,Gr,this.runtime.accumulator.subscribe(()=>{xe(this,ke,td).call(this)})),this.runtime.context&&oe(this,Kr,this.runtime.context.subscribe(t=>{let n=t.page?.url;n&&n!==this._pageUrl&&(this._pageUrl=n),xe(this,ke,sd).call(this),xe(this,ke,td).call(this)})))},sd=function(){let t=this.runtime?.context.get()?.surface?.mode,n=q(this,Wn)?.displayMode??"standard",i=t==="agent"?"inline":n;i!==this._displayMode&&(this._displayMode=i)},Iv=function(){var t,n;(t=q(this,Gr))==null||t.call(this),oe(this,Gr,null),(n=q(this,Kr))==null||n.call(this),oe(this,Kr,null)},od=function(){var t;(t=q(this,Yr))==null||t.call(this),oe(this,Yr,null),this.runtime&&oe(this,Yr,this.runtime.events.subscribe({names:["canvas.requestOpen"]},()=>{this._displayMode!=="inline"&&q(this,vt).setOpen(!0)}))},ol=new WeakMap,Si.shadowRootOptions={mode:"open",delegatesFocus:!0},Si.styles=gn`
515
+ `}open(){this._displayMode!=="inline"&&q(this,vt).setOpen(!0)}close(){this._displayMode!=="inline"&&q(this,vt).setOpen(!1)}toggle(){this._displayMode!=="inline"&&q(this,vt).toggle()}setOverrideFetcher(t){this.fetcher=t}getMountNode(){return this.renderRoot}getController(){return q(this,vt)}getPortalRoot(){return q(this,Er)}getOverlayContainer(){return q(this,or)}getShadowRoot(){return this.shadowRoot}previewNotification(t){this.shadowRoot?.querySelector("syntro-canvas-overlay")?.previewNotification?.(t)}mountLitApp(t){t.fetcher!==void 0&&(this.fetcher=t.fetcher),t.configUri!==void 0&&(this.configUri=t.configUri),t.configUriFeatureKey!==void 0&&(this.configUriFeatureKey=t.configUriFeatureKey),t.configFeatureKey!==void 0&&(this.configFeatureKey=t.configFeatureKey),t.fetchCredentials!==void 0&&(this.fetchCredentials=t.fetchCredentials),t.experiments!==void 0&&(this.experiments=t.experiments),t.telemetry!==void 0&&(this.telemetry=t.telemetry),t.runtime!==void 0&&(this.runtime=t.runtime),t.launcherLabel!==void 0&&(this.launcherLabel=t.launcherLabel),t.initialBatchHandle!==void 0&&(this.initialBatchHandle=t.initialBatchHandle),t.initialBatchActions!==void 0&&(this.initialBatchActions=t.initialBatchActions),t.workspaceTheme!==void 0&&(this.workspaceTheme=t.workspaceTheme)}async _loadConfig({silent:t=!1}={}){if(!q(this,Gn))return;let n=++Vc(this,Ii)._;try{t||(this._isLoading=!0),this._error=void 0;let i=await q(this,Gn).call(this);if(n!==q(this,Ii))return;Z("SmartCanvas Config","Raw config response",i);let s=Object.keys(i).length===0;oe(this,qn,s?null:i);let o=i.tiles||[];if(o.length>0&&this.runtime?.accumulator&&Ci(o,this.runtime.accumulator,i.actions),this.runtime){if(o=await this.runtime.filterTiles(o),n!==q(this,Ii))return;this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)))}else this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)));my(o),Z("SmartCanvas Config",`Tile count after filtering: ${o.length}`);let a=i.actions||[],l=JSON.stringify(a),c=l!==q(this,Zn);c&&oe(this,Zn,l);let u=gy(o),p=JSON.stringify(u);p!==q(this,ao)&&(oe(this,ao,p),this._tiles=u),c&&(this._configActions=a),t||(this._isLoading=!1);let h=JSON.stringify(i.theme??null);h!==q(this,lo)&&(oe(this,lo,h),this._theme=i.theme);let f=JSON.stringify(i.launcher??null);f!==q(this,co)&&(oe(this,co,f),this._launcher=i.launcher),i.canvasTitle!==this._canvasTitle&&(this._canvasTitle=i.canvasTitle),we(this,ke,$d).call(this)}catch(i){let s=i instanceof Error?i.message:"Unknown error";console.error("[SmartCanvas Config] Failed to fetch/filter config:",s,i),t||(this._isLoading=!1),this._error=s}}};vt=new WeakMap,Ti=new WeakMap,or=new WeakMap,Er=new WeakMap,jt=new WeakMap,zn=new WeakMap,oo=new WeakMap,qn=new WeakMap,Zn=new WeakMap,ao=new WeakMap,lo=new WeakMap,co=new WeakMap,Gn=new WeakMap,Kn=new WeakMap,Yr=new WeakMap,Xr=new WeakMap,Jr=new WeakMap,Yn=new WeakMap,Ri=new WeakMap,uo=new WeakMap,ke=new WeakSet,vy=function(){if(this.fetcher)oe(this,Gn,this.fetcher);else{let t=we(this,ke,yy).call(this);oe(this,Gn,Ei(t))}},yy=function(){return{configUri:this.configUri,experiments:this.experiments,featureKey:this.configUriFeatureKey,configFeatureKey:this.configFeatureKey,credentials:this.fetchCredentials}},Ii=new WeakMap,Ad=async function(){let t=q(this,qn);if(!t||!this.runtime)return;let n=t.tiles||[];n=await this.runtime.filterTiles(n),this.experiments&&(n=n.filter(i=>this.experiments.shouldRenderRectangle(i))),my(n),this._tiles=gy(n)},by=async function(){if(!this.runtime?.actions||q(this,zn)&&(oe(this,zn,!1),JSON.stringify(this._configActions)===q(this,Zn)))return;let t=++Vc(this,oo)._,n=()=>t!==q(this,oo);if(q(this,jt)){try{await q(this,jt).revertAll()}catch(i){console.error("[SmartCanvasElementLit] Failed to revert actions:",i)}oe(this,jt,null)}if(!n()&&this._configActions.length>0)try{let i=await this.runtime.actions.applyBatch(this._configActions);n()?await i.revertAll():oe(this,jt,i)}catch(i){n()||console.error("[SmartCanvasElementLit] Failed to apply actions:",i)}},Td=function(){this.runtime||typeof window>"u"||(window.addEventListener("popstate",q(this,Yn)),window.addEventListener("hashchange",q(this,Yn)))},Rd=function(){typeof window>"u"||(window.removeEventListener("popstate",q(this,Yn)),window.removeEventListener("hashchange",q(this,Yn)))},Id=function(){this.runtime&&(this.runtime.accumulator&&oe(this,Yr,this.runtime.accumulator.subscribe(()=>{we(this,ke,Ad).call(this)})),this.runtime.context&&oe(this,Xr,this.runtime.context.subscribe(t=>{let n=t.page?.url;n&&n!==this._pageUrl&&(this._pageUrl=n),we(this,ke,$d).call(this),we(this,ke,Ad).call(this)})))},$d=function(){let t=this.runtime?.context.get()?.surface?.mode,n=q(this,qn)?.displayMode??"standard",i=t==="agent"?"inline":n;i!==this._displayMode&&(this._displayMode=i)},_y=function(){var t,n;(t=q(this,Yr))==null||t.call(this),oe(this,Yr,null),(n=q(this,Xr))==null||n.call(this),oe(this,Xr,null)},Md=function(){var t;(t=q(this,Jr))==null||t.call(this),oe(this,Jr,null),this.runtime&&oe(this,Jr,this.runtime.events.subscribe({names:["canvas.requestOpen"]},()=>{this._displayMode!=="inline"&&q(this,vt).setOpen(!0)}))},ml=new WeakMap,Ai.shadowRootOptions={mode:"open",delegatesFocus:!0},Ai.styles=vn`
516
516
  :host {
517
517
  font: inherit;
518
518
  color: inherit;
@@ -531,25 +531,25 @@ ${n}
531
531
  *::after {
532
532
  box-sizing: border-box;
533
533
  }
534
- `,Si.properties={fetcher:{attribute:!1},configUri:{type:String},configUriFeatureKey:{type:String},configFeatureKey:{type:String},fetchCredentials:{type:String},experiments:{attribute:!1},telemetry:{attribute:!1},runtime:{attribute:!1},launcherLabel:{type:String},initialBatchHandle:{attribute:!1},initialBatchActions:{attribute:!1},workspaceTheme:{attribute:!1},_tiles:{state:!0},_configActions:{state:!0},_isLoading:{state:!0},_error:{state:!0},_theme:{state:!0},_launcher:{state:!0},_canvasTitle:{state:!0},_displayMode:{state:!0},_isOpen:{state:!0},_pageUrl:{state:!0}};var al=()=>{typeof window>"u"||customElements.get(kv)||customElements.define(kv,Si)};var ll=class extends ye{constructor(){super(...arguments);this.isOpen=!1;this.tiles=[];this.isLoading=!1;this.error=void 0;this.canvasTitle=void 0;this.displayMode="standard";this.runtimeRef=null;this.telemetry=null;this.themeConfig={canvas:{}};this._containerEl=null;this._resizeObserver=null;this._onDocumentMousedown=t=>{if(!this.isOpen)return;let n=t.composedPath();n.some(o=>o instanceof HTMLElement&&o.closest?.('[data-shadow-canvas-id="overlay-launcher"]')!=null)||n.some(o=>o instanceof HTMLElement&&(o.closest?.("[data-syntro-editor-panel]")!=null||o.closest?.("[data-syntro-tool-panel]")!=null||o.closest?.("[data-syntro-fab]")!=null))||this._containerEl&&!n.includes(this._containerEl)&&this.dispatchEvent(new CustomEvent("drawer-close",{bubbles:!0,composed:!0}))}}createRenderRoot(){return this}get _canvas(){return this.themeConfig?.canvas??{}}get _isRight(){return(this._canvas.position??"right")==="right"}get _isPush(){return this._canvas.layout==="push"}get _isFocused(){return this.displayMode==="focused"}get _canvasBorder(){return this._canvas.border??"none"}get _duration(){return this._canvas.transitionDuration??"300ms"}get _easing(){return this._canvas.transitionEasing??"cubic-bezier(0.16, 1, 0.3, 1)"}connectedCallback(){super.connectedCallback(),document.addEventListener("mousedown",this._onDocumentMousedown)}updated(t){if(this._containerEl=this.querySelector('[data-shadow-canvas-id="overlay-container"]')??null,this._isPush){let n=document.documentElement,i=this._isRight?"marginRight":"marginLeft";if(n.style.transition=`${i} ${this._duration} ${this._easing}`,this.isOpen){let s=this._containerEl?.offsetWidth??380;n.style[i]=`${s}px`}else n.style[i]="0px"}if((t.has("isOpen")||t.has("themeConfig"))&&(this._teardownResizeObserver(),this._isPush&&this.isOpen&&this._containerEl)){let n=this._isRight?"marginRight":"marginLeft";this._resizeObserver=new ResizeObserver(([i])=>{document.documentElement.style[n]=`${i.contentRect.width}px`}),this._resizeObserver.observe(this._containerEl)}}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("mousedown",this._onDocumentMousedown),this._teardownResizeObserver(),this._cleanupPushMargin()}_teardownResizeObserver(){this._resizeObserver?.disconnect(),this._resizeObserver=null}_cleanupPushMargin(){if(this._isPush){let t=document.documentElement,n=this._isRight?"marginRight":"marginLeft";t.style[n]="",t.style.transition=""}}render(){let t=this._isFocused,n=this._isRight,i=this._canvasBorder,s=this._duration,o=this._easing,a=2147483600,l=this._canvas.blur??"blur(24px)",c=t&&l!=="none"?`${l} saturate(1.2)`:l,u={};if(!t&&(!i||i==="none")){let g=this._canvas.transitionFade??"6%",m=n?`linear-gradient(to right, transparent, black ${g})`:`linear-gradient(to left, transparent, black ${g})`;u={maskImage:m,WebkitMaskImage:m}}let p={display:"flex",flexDirection:"column",width:t?"40vw":this._canvas.width??"380px",minWidth:"320px",height:"100%",maxHeight:"100%",pointerEvents:"auto",opacity:this.isOpen?"1":"0",transition:this.isOpen?`transform ${s} ${o}, opacity ${s} ease-out`:`transform ${s} ${o}, opacity ${s} ease-in`,color:"var(--sc-overlay-text-color)",background:"var(--sc-canvas-background)",backdropFilter:c,WebkitBackdropFilter:c,...u,border:i,borderRadius:"var(--sc-overlay-border-radius, 0)",boxShadow:"none",transform:this.isOpen?"translateX(0)":n?"translateX(120%)":"translateX(-120%)"},h={position:"absolute",inset:"0",display:"flex",flexDirection:n?"row-reverse":"row",alignItems:"stretch",pointerEvents:"none",padding:"0"},f={position:"fixed",inset:"0",pointerEvents:"none",zIndex:String(a)},v={flex:"1",overflowY:"auto",padding:t?"0":"1rem"};return L`
535
- <div data-shadow-canvas-id="overlay-root" style=${R(f)}>
536
- <div style=${R(h)}>
537
- <div data-shadow-canvas-id="overlay-container" style=${R(p)}>
534
+ `,Ai.properties={fetcher:{attribute:!1},configUri:{type:String},configUriFeatureKey:{type:String},configFeatureKey:{type:String},fetchCredentials:{type:String},experiments:{attribute:!1},telemetry:{attribute:!1},runtime:{attribute:!1},launcherLabel:{type:String},initialBatchHandle:{attribute:!1},initialBatchActions:{attribute:!1},workspaceTheme:{attribute:!1},_tiles:{state:!0},_configActions:{state:!0},_isLoading:{state:!0},_error:{state:!0},_theme:{state:!0},_launcher:{state:!0},_canvasTitle:{state:!0},_displayMode:{state:!0},_isOpen:{state:!0},_pageUrl:{state:!0}};var vl=()=>{typeof window>"u"||customElements.get(fy)||customElements.define(fy,Ai)};var yl=class extends be{constructor(){super(...arguments);this.isOpen=!1;this.tiles=[];this.isLoading=!1;this.error=void 0;this.canvasTitle=void 0;this.displayMode="standard";this.runtimeRef=null;this.telemetry=null;this.themeConfig={canvas:{}};this._containerEl=null;this._resizeObserver=null;this._onDocumentMousedown=t=>{if(!this.isOpen)return;let n=t.composedPath();n.some(o=>o instanceof HTMLElement&&o.closest?.('[data-shadow-canvas-id="overlay-launcher"]')!=null)||n.some(o=>o instanceof HTMLElement&&(o.closest?.("[data-syntro-editor-panel]")!=null||o.closest?.("[data-syntro-tool-panel]")!=null||o.closest?.("[data-syntro-fab]")!=null))||this._containerEl&&!n.includes(this._containerEl)&&this.dispatchEvent(new CustomEvent("drawer-close",{bubbles:!0,composed:!0}))}}createRenderRoot(){return this}get _canvas(){return this.themeConfig?.canvas??{}}get _isRight(){return(this._canvas.position??"right")==="right"}get _isPush(){return this._canvas.layout==="push"}get _isFocused(){return this.displayMode==="focused"}get _canvasBorder(){return this._canvas.border??"none"}get _duration(){return this._canvas.transitionDuration??"300ms"}get _easing(){return this._canvas.transitionEasing??"cubic-bezier(0.16, 1, 0.3, 1)"}connectedCallback(){super.connectedCallback(),document.addEventListener("mousedown",this._onDocumentMousedown)}updated(t){if(this._containerEl=this.querySelector('[data-shadow-canvas-id="overlay-container"]')??null,this._isPush){let n=document.documentElement,i=this._isRight?"marginRight":"marginLeft";if(n.style.transition=`${i} ${this._duration} ${this._easing}`,this.isOpen){let s=this._containerEl?.offsetWidth??380;n.style[i]=`${s}px`}else n.style[i]="0px"}if((t.has("isOpen")||t.has("themeConfig"))&&(this._teardownResizeObserver(),this._isPush&&this.isOpen&&this._containerEl)){let n=this._isRight?"marginRight":"marginLeft";this._resizeObserver=new ResizeObserver(([i])=>{document.documentElement.style[n]=`${i.contentRect.width}px`}),this._resizeObserver.observe(this._containerEl)}}disconnectedCallback(){super.disconnectedCallback(),document.removeEventListener("mousedown",this._onDocumentMousedown),this._teardownResizeObserver(),this._cleanupPushMargin()}_teardownResizeObserver(){this._resizeObserver?.disconnect(),this._resizeObserver=null}_cleanupPushMargin(){if(this._isPush){let t=document.documentElement,n=this._isRight?"marginRight":"marginLeft";t.style[n]="",t.style.transition=""}}render(){let t=this._isFocused,n=this._isRight,i=this._canvasBorder,s=this._duration,o=this._easing,a=2147483600,l=this._canvas.blur??"blur(24px)",c=t&&l!=="none"?`${l} saturate(1.2)`:l,u={};if(!t&&(!i||i==="none")){let g=this._canvas.transitionFade??"6%",m=n?`linear-gradient(to right, transparent, black ${g})`:`linear-gradient(to left, transparent, black ${g})`;u={maskImage:m,WebkitMaskImage:m}}let p={display:"flex",flexDirection:"column",width:t?"40vw":this._canvas.width??"380px",minWidth:"320px",height:"100%",maxHeight:"100%",pointerEvents:"auto",opacity:this.isOpen?"1":"0",transition:this.isOpen?`transform ${s} ${o}, opacity ${s} ease-out`:`transform ${s} ${o}, opacity ${s} ease-in`,color:"var(--sc-overlay-text-color)",background:"var(--sc-canvas-background)",backdropFilter:c,WebkitBackdropFilter:c,...u,border:i,borderRadius:"var(--sc-overlay-border-radius, 0)",boxShadow:"none",transform:this.isOpen?"translateX(0)":n?"translateX(120%)":"translateX(-120%)"},h={position:"absolute",inset:"0",display:"flex",flexDirection:n?"row-reverse":"row",alignItems:"stretch",pointerEvents:"none",padding:"0"},f={position:"fixed",inset:"0",pointerEvents:"none",zIndex:String(a)},v={flex:"1",overflowY:"auto",padding:t?"0":"1rem"};return N`
535
+ <div data-shadow-canvas-id="overlay-root" style=${T(f)}>
536
+ <div style=${T(h)}>
537
+ <div data-shadow-canvas-id="overlay-container" style=${T(p)}>
538
538
 
539
- ${t&&this.canvasTitle?L`
540
- <header style=${R({color:"white",padding:"1.5rem 1.5rem 0"})}>
541
- <p style=${R({margin:"0",fontSize:"0.7rem",textTransform:"uppercase",letterSpacing:"0.5em",color:"var(--sc-notification-text-secondary-color)"})}>
539
+ ${t&&this.canvasTitle?N`
540
+ <header style=${T({color:"white",padding:"1.5rem 1.5rem 0"})}>
541
+ <p style=${T({margin:"0",fontSize:"0.7rem",textTransform:"uppercase",letterSpacing:"0.5em",color:"var(--sc-notification-text-secondary-color)"})}>
542
542
  ${this.canvasTitle}
543
543
  </p>
544
- </header>`:J}
544
+ </header>`:ee}
545
545
 
546
- <div style=${R(v)}>
547
- ${this.isLoading?L`<div style=${R({color:"var(--sc-overlay-text-color)",padding:t?"1rem":"0"})}>Loading...</div>`:this.error?L`<div style=${R({color:"var(--sc-notification-error-color)",padding:t?"1rem":"0"})}>Failed to load: ${this.error}</div>`:t?this.tiles.length>0?L`<syntro-tile-card
546
+ <div style=${T(v)}>
547
+ ${this.isLoading?N`<div style=${T({color:"var(--sc-overlay-text-color)",padding:t?"1rem":"0"})}>Loading...</div>`:this.error?N`<div style=${T({color:"var(--sc-notification-error-color)",padding:t?"1rem":"0"})}>Failed to load: ${this.error}</div>`:t?this.tiles.length>0?N`<syntro-tile-card
548
548
  .config=${this.tiles[0]}
549
549
  .surface=${"overlay"}
550
550
  .runtimeRef=${this.runtimeRef}
551
- style=${R({width:"100%",height:"100%"})}
552
- ></syntro-tile-card>`:J:L`<syntro-tile-stack
551
+ style=${T({width:"100%",height:"100%"})}
552
+ ></syntro-tile-card>`:ee:N`<syntro-tile-stack
553
553
  .tiles=${this.tiles}
554
554
  .surface=${"overlay"}
555
555
  .runtimeRef=${this.runtimeRef}
@@ -559,10 +559,10 @@ ${n}
559
559
  </div>
560
560
 
561
561
  <!-- Flex spacer -->
562
- <div style=${R({flex:"1 1 auto"})}></div>
562
+ <div style=${T({flex:"1 1 auto"})}></div>
563
563
  </div>
564
564
  </div>
565
- `}};ll.properties={isOpen:{type:Boolean},tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},canvasTitle:{type:String},displayMode:{type:String},runtimeRef:{attribute:!1},telemetry:{attribute:!1},themeConfig:{attribute:!1}};customElements.define("syntro-drawer",ll);var fE="#6a59ce",gE="#887ad8",mE="#ffffff",cl=class extends ye{constructor(){super(...arguments);this.isOpen=!1;this.launcherAnimate=!1;this.notificationCount=0;this.position="right";this.launcherIcon=null;this.colorPrimary=fE;this.colorPrimaryHover=gE;this.launcherConfig={};this.hasActiveTiles=!0;this._launcherPos=null;this._hovered=!1;this._drag=null;this._styleEl=null;this._onPointerDown=t=>{let n=t.currentTarget,i=n.getBoundingClientRect();this._drag={startX:t.clientX,startY:t.clientY,startElX:i.left,startElY:i.top,dragged:!1},n.setPointerCapture(t.pointerId)};this._onPointerMove=t=>{let n=this._drag;if(!n)return;let i=t.clientX-n.startX,s=t.clientY-n.startY;(Math.abs(i)>5||Math.abs(s)>5)&&(n.dragged=!0),n.dragged&&(this._launcherPos={x:n.startElX+i,y:n.startElY+s})};this._onPointerUp=t=>{let n=this._drag;this._drag=null,n&&!n.dragged&&this.dispatchEvent(new CustomEvent("launcher-toggle",{bubbles:!0,composed:!0}))};this._onMouseEnter=t=>{this._drag?.dragged||(this._hovered=!0,t.currentTarget.style.backgroundColor=this.launcherConfig.backgroundHover??"var(--sc-launcher-background-hover)")};this._onMouseLeave=t=>{this._drag?.dragged||(this._hovered=!1,t.currentTarget.style.backgroundColor=this.launcherConfig.background??"var(--sc-launcher-background)")}}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._ensureDynamicStyles()}updated(t){(t.has("colorPrimary")||t.has("colorPrimaryHover"))&&this._ensureDynamicStyles()}disconnectedCallback(){super.disconnectedCallback(),this._styleEl&&(this._styleEl.remove(),this._styleEl=null)}_ensureDynamicStyles(){let t=`
565
+ `}};yl.properties={isOpen:{type:Boolean},tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},canvasTitle:{type:String},displayMode:{type:String},runtimeRef:{attribute:!1},telemetry:{attribute:!1},themeConfig:{attribute:!1}};customElements.define("syntro-drawer",yl);var cC="#6a59ce",uC="#887ad8",dC="#ffffff",bl=class extends be{constructor(){super(...arguments);this.isOpen=!1;this.launcherAnimate=!1;this.notificationCount=0;this.position="right";this.launcherIcon=null;this.colorPrimary=cC;this.colorPrimaryHover=uC;this.launcherConfig={};this.hasActiveTiles=!0;this._launcherPos=null;this._hovered=!1;this._drag=null;this._styleEl=null;this._onPointerDown=t=>{let n=t.currentTarget,i=n.getBoundingClientRect();this._drag={startX:t.clientX,startY:t.clientY,startElX:i.left,startElY:i.top,dragged:!1},n.setPointerCapture(t.pointerId)};this._onPointerMove=t=>{let n=this._drag;if(!n)return;let i=t.clientX-n.startX,s=t.clientY-n.startY;(Math.abs(i)>5||Math.abs(s)>5)&&(n.dragged=!0),n.dragged&&(this._launcherPos={x:n.startElX+i,y:n.startElY+s})};this._onPointerUp=t=>{let n=this._drag;this._drag=null,n&&!n.dragged&&this.dispatchEvent(new CustomEvent("launcher-toggle",{bubbles:!0,composed:!0}))};this._onMouseEnter=t=>{this._drag?.dragged||(this._hovered=!0,t.currentTarget.style.backgroundColor=this.launcherConfig.backgroundHover??"var(--sc-launcher-background-hover)")};this._onMouseLeave=t=>{this._drag?.dragged||(this._hovered=!1,t.currentTarget.style.backgroundColor=this.launcherConfig.background??"var(--sc-launcher-background)")}}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),this._ensureDynamicStyles()}updated(t){(t.has("colorPrimary")||t.has("colorPrimaryHover"))&&this._ensureDynamicStyles()}disconnectedCallback(){super.disconnectedCallback(),this._styleEl&&(this._styleEl.remove(),this._styleEl=null)}_ensureDynamicStyles(){let t=`
566
566
  @keyframes syntro-launcher-pulse {
567
567
  0%, 100% {
568
568
  box-shadow: 0 20px 45px rgba(0,0,0,0.35), 0 0 0 0 ${this.colorPrimary}66;
@@ -595,12 +595,12 @@ ${n}
595
595
  .syntro-badge-ping { animation: syntro-badge-ping 1.5s cubic-bezier(0,0,0.2,1) infinite; }
596
596
  .syntro-badge-glow { animation: syntro-badge-glow 2s ease-in-out infinite; }
597
597
  .syntro-badge-bounce { animation: syntro-badge-bounce 2s ease-in-out infinite; }
598
- `,n=this.getRootNode(),i=n instanceof ShadowRoot?n:n instanceof Document?n.head:null;i&&(this._styleEl||(this._styleEl=document.createElement("style"),this._styleEl.id="syntro-launcher-styles",i.appendChild(this._styleEl)),this._styleEl.textContent=t)}render(){let t=this.position==="right",i={position:"fixed",...this._launcherPos?{top:`${this._launcherPos.y}px`,left:`${this._launcherPos.x}px`}:{bottom:"calc(2.5rem + env(safe-area-inset-bottom, 0px))",right:t?"2.5rem":void 0,left:t?void 0:"2.5rem"},pointerEvents:"auto",display:"flex",alignItems:"center",justifyContent:"center",width:"var(--sc-launcher-size, 56px)",height:"var(--sc-launcher-size, 56px)",borderRadius:"var(--sc-launcher-border-radius, 9999px)",color:"var(--sc-launcher-color)",boxShadow:"var(--sc-launcher-shadow)",transition:this._drag?"none":"transform 0.2s ease, opacity 0.3s ease, background-color 0.2s ease",outline:"none",padding:"0",border:"none",backgroundColor:"var(--sc-launcher-background)",cursor:this._drag?.dragged?"grabbing":"pointer",touchAction:"none",opacity:!this.hasActiveTiles&&!this.isOpen?"0.3":void 0},s=this.launcherAnimate&&!this.isOpen?"syntro-launcher-animate":"",o=!this.isOpen&&this.notificationCount>0;return L`
598
+ `,n=this.getRootNode(),i=n instanceof ShadowRoot?n:n instanceof Document?n.head:null;i&&(this._styleEl||(this._styleEl=document.createElement("style"),this._styleEl.id="syntro-launcher-styles",i.appendChild(this._styleEl)),this._styleEl.textContent=t)}render(){let t=this.position==="right",i={position:"fixed",...this._launcherPos?{top:`${this._launcherPos.y}px`,left:`${this._launcherPos.x}px`}:{bottom:"calc(2.5rem + env(safe-area-inset-bottom, 0px))",right:t?"2.5rem":void 0,left:t?void 0:"2.5rem"},pointerEvents:"auto",display:"flex",alignItems:"center",justifyContent:"center",width:"var(--sc-launcher-size, 56px)",height:"var(--sc-launcher-size, 56px)",borderRadius:"var(--sc-launcher-border-radius, 9999px)",color:"var(--sc-launcher-color)",boxShadow:"var(--sc-launcher-shadow)",transition:this._drag?"none":"transform 0.2s ease, opacity 0.3s ease, background-color 0.2s ease",outline:"none",padding:"0",border:"none",backgroundColor:"var(--sc-launcher-background)",cursor:this._drag?.dragged?"grabbing":"pointer",touchAction:"none",opacity:!this.hasActiveTiles&&!this.isOpen?"0.3":void 0},s=this.launcherAnimate&&!this.isOpen?"syntro-launcher-animate":"",o=!this.isOpen&&this.notificationCount>0;return N`
599
599
  <button
600
600
  type="button"
601
601
  aria-label="Toggle shadow canvas"
602
602
  class=${s}
603
- style=${R(i)}
603
+ style=${T(i)}
604
604
  @pointerdown=${this._onPointerDown}
605
605
  @pointermove=${this._onPointerMove}
606
606
  @pointerup=${this._onPointerUp}
@@ -608,9 +608,9 @@ ${n}
608
608
  @mouseleave=${this._onMouseLeave}
609
609
  >
610
610
  ${this._renderIcon()}
611
- ${o?this._renderBadge():J}
611
+ ${o?this._renderBadge():ee}
612
612
  </button>
613
- `}_renderIcon(){let t="transition: transform 200ms ease;";return this.isOpen?L`
613
+ `}_renderIcon(){let t="transition: transform 200ms ease;";return this.isOpen?N`
614
614
  <svg
615
615
  width="24" height="24" viewBox="0 0 24 24"
616
616
  fill="none" stroke="currentColor"
@@ -621,14 +621,14 @@ ${n}
621
621
  <path d="M18 6L6 18" />
622
622
  <path d="M6 6l12 12" />
623
623
  </svg>
624
- `:this.launcherIcon?L`
624
+ `:this.launcherIcon?N`
625
625
  <img
626
626
  src=${this.launcherIcon}
627
627
  alt=""
628
628
  aria-hidden="true"
629
- style=${R({width:"60%",height:"60%",objectFit:"contain",pointerEvents:"none"})}
629
+ style=${T({width:"60%",height:"60%",objectFit:"contain",pointerEvents:"none"})}
630
630
  />
631
- `:L`
631
+ `:N`
632
632
  <svg
633
633
  width="24" height="24" viewBox="0 0 24 24"
634
634
  fill="none" stroke="currentColor"
@@ -642,28 +642,28 @@ ${n}
642
642
  <path d="M19 17v4" />
643
643
  <path d="M17 19h4" />
644
644
  </svg>
645
- `}_renderBadge(){let t=this.notificationCount,n=t>99?"99+":String(t);return L`
646
- <div style=${R({position:"absolute",top:"-2px",right:"-2px",pointerEvents:"none"})}>
645
+ `}_renderBadge(){let t=this.notificationCount,n=t>99?"99+":String(t);return N`
646
+ <div style=${T({position:"absolute",top:"-2px",right:"-2px",pointerEvents:"none"})}>
647
647
  <!-- Layer 1: Expanding ping ring -->
648
648
  <span
649
649
  class="syntro-badge-ping"
650
- style=${R({position:"absolute",inset:"0",borderRadius:"9999px",background:`${this.colorPrimaryHover}66`})}
650
+ style=${T({position:"absolute",inset:"0",borderRadius:"9999px",background:`${this.colorPrimaryHover}66`})}
651
651
  ></span>
652
652
  <!-- Layer 2: Glow pulse -->
653
653
  <span
654
654
  class="syntro-badge-glow"
655
- style=${R({position:"absolute",inset:"-4px",borderRadius:"9999px"})}
655
+ style=${T({position:"absolute",inset:"-4px",borderRadius:"9999px"})}
656
656
  ></span>
657
657
  <!-- Layer 3: Bouncing count badge -->
658
658
  <span
659
659
  class="syntro-badge-bounce"
660
- style=${R({position:"relative",display:"flex",alignItems:"center",justifyContent:"center",width:"20px",height:"20px",borderRadius:"9999px",background:this.colorPrimaryHover,color:mE,fontSize:"11px",fontWeight:"700"})}
660
+ style=${T({position:"relative",display:"flex",alignItems:"center",justifyContent:"center",width:"20px",height:"20px",borderRadius:"9999px",background:this.colorPrimaryHover,color:dC,fontSize:"11px",fontWeight:"700"})}
661
661
  >${n}</span>
662
662
  </div>
663
- `}};cl.properties={isOpen:{type:Boolean},launcherAnimate:{type:Boolean},notificationCount:{type:Number},position:{type:String},launcherIcon:{attribute:!1},colorPrimary:{type:String},colorPrimaryHover:{type:String},launcherConfig:{attribute:!1},hasActiveTiles:{type:Boolean},_launcherPos:{state:!0},_hovered:{state:!0}};customElements.define("syntro-launcher",cl);var so=class extends ye{constructor(){super(...arguments);this.tiles=[];this.intervalMs=7e3;this.telemetry=null;this.runtimeRef=null;this._index=0;this._ordered=[];this._intervalId=null;this._canvasOpenedTracked=!1}connectedCallback(){super.connectedCallback(),this._syncOrdered(),this._trackCanvasOpened(),this._trackRectangleViewed(),this._startInterval()}disconnectedCallback(){super.disconnectedCallback(),this._stopInterval(),this._canvasOpenedTracked=!1}updated(t){let n=!1;t.has("tiles")&&(this._syncOrdered(),this._index=0,n=!0),t.has("intervalMs")&&(n=!0),n&&(this._stopInterval(),this._startInterval()),(t.has("_index")||t.has("tiles"))&&this._trackRectangleViewed(),t.has("telemetry")&&!this._canvasOpenedTracked&&this._trackCanvasOpened()}_syncOrdered(){this._ordered=[...this.tiles].sort((t,n)=>(t.priority??0)-(n.priority??0))}_trackCanvasOpened(){this._canvasOpenedTracked||this.telemetry&&(this.telemetry.trackCanvasOpened("wheel"),this._canvasOpenedTracked=!0)}_trackRectangleViewed(){let t=this._ordered[this._index];t&&this.telemetry?.trackRectangleViewed(t.id,"wheel")}_startInterval(){this._ordered.length<=1||(this._intervalId=setInterval(()=>{this._index=(this._index+1)%this._ordered.length},this.intervalMs))}_stopInterval(){this._intervalId!==null&&(clearInterval(this._intervalId),this._intervalId=null)}_goTo(t){this._stopInterval(),this._index=t,this._startInterval()}render(){if(!this._ordered.length)return J;let t=R({transform:`translateX(-${this._index*100}%)`,width:`${this._ordered.length*100}%`}),n=R({width:`${100/this._ordered.length}%`});return L`
663
+ `}};bl.properties={isOpen:{type:Boolean},launcherAnimate:{type:Boolean},notificationCount:{type:Number},position:{type:String},launcherIcon:{attribute:!1},colorPrimary:{type:String},colorPrimaryHover:{type:String},launcherConfig:{attribute:!1},hasActiveTiles:{type:Boolean},_launcherPos:{state:!0},_hovered:{state:!0}};customElements.define("syntro-launcher",bl);var po=class extends be{constructor(){super(...arguments);this.tiles=[];this.intervalMs=7e3;this.telemetry=null;this.runtimeRef=null;this._index=0;this._ordered=[];this._intervalId=null;this._canvasOpenedTracked=!1}connectedCallback(){super.connectedCallback(),this._syncOrdered(),this._trackCanvasOpened(),this._trackRectangleViewed(),this._startInterval()}disconnectedCallback(){super.disconnectedCallback(),this._stopInterval(),this._canvasOpenedTracked=!1}updated(t){let n=!1;t.has("tiles")&&(this._syncOrdered(),this._index=0,n=!0),t.has("intervalMs")&&(n=!0),n&&(this._stopInterval(),this._startInterval()),(t.has("_index")||t.has("tiles"))&&this._trackRectangleViewed(),t.has("telemetry")&&!this._canvasOpenedTracked&&this._trackCanvasOpened()}_syncOrdered(){this._ordered=[...this.tiles].sort((t,n)=>(t.priority??0)-(n.priority??0))}_trackCanvasOpened(){this._canvasOpenedTracked||this.telemetry&&(this.telemetry.trackCanvasOpened("wheel"),this._canvasOpenedTracked=!0)}_trackRectangleViewed(){let t=this._ordered[this._index];t&&this.telemetry?.trackRectangleViewed(t.id,"wheel")}_startInterval(){this._ordered.length<=1||(this._intervalId=setInterval(()=>{this._index=(this._index+1)%this._ordered.length},this.intervalMs))}_stopInterval(){this._intervalId!==null&&(clearInterval(this._intervalId),this._intervalId=null)}_goTo(t){this._stopInterval(),this._index=t,this._startInterval()}render(){if(!this._ordered.length)return ee;let t=T({transform:`translateX(-${this._index*100}%)`,width:`${this._ordered.length*100}%`}),n=T({width:`${100/this._ordered.length}%`});return N`
664
664
  <div class="wheel-root" data-shadow-canvas-id="wheel">
665
665
  <div class="slide-track" style=${t}>
666
- ${this._ordered.map(i=>L`
666
+ ${this._ordered.map(i=>N`
667
667
  <div class="slide-item" style=${n}>
668
668
  <syntro-tile-card
669
669
  .config=${i}
@@ -676,11 +676,11 @@ ${n}
676
676
  </div>
677
677
 
678
678
  <div class="dot-row">
679
- ${this._ordered.map((i,s)=>L`
679
+ ${this._ordered.map((i,s)=>N`
680
680
  <button
681
681
  type="button"
682
682
  class="dot"
683
- style=${R({background:s===this._index?"var(--sc-color-primary)":"var(--sc-tile-text-color)"})}
683
+ style=${T({background:s===this._index?"var(--sc-color-primary)":"var(--sc-tile-text-color)"})}
684
684
  aria-label="Go to tile ${s+1}"
685
685
  aria-pressed=${s===this._index?"true":"false"}
686
686
  @click=${()=>this._goTo(s)}
@@ -688,7 +688,7 @@ ${n}
688
688
  `)}
689
689
  </div>
690
690
  </div>
691
- `}};so.styles=gn`
691
+ `}};po.styles=vn`
692
692
  :host {
693
693
  display: block;
694
694
  }
@@ -728,23 +728,23 @@ ${n}
728
728
  cursor: pointer;
729
729
  padding: 0;
730
730
  }
731
- `,so.properties={tiles:{type:Array},intervalMs:{type:Number},telemetry:{type:Object},runtimeRef:{type:Object},_index:{type:Number,state:!0}};customElements.define("syntro-tile-wheel",so);function vE(r,e){let t=Ps(r,{size:e});return t||`<span style="line-height:1;">${r}</span>`}var Rt,$v,Mv,Ov,Pv,Nv,oo=class extends ye{constructor(){super(...arguments);ve(this,Rt);this.notifications=[];this.position="right"}render(){if(this.notifications.length===0)return L``;let t=R({position:"fixed",bottom:"6rem",[this.position==="right"?"right":"left"]:"2.5rem",display:"flex",flexDirection:"column",gap:"8px",zIndex:"2147483648",pointerEvents:"auto",width:"280px"});return L`
731
+ `,po.properties={tiles:{type:Array},intervalMs:{type:Number},telemetry:{type:Object},runtimeRef:{type:Object},_index:{type:Number,state:!0}};customElements.define("syntro-tile-wheel",po);function pC(r,e){let t=Ds(r,{size:e});return t||`<span style="line-height:1;">${r}</span>`}var Tt,xy,wy,Sy,ky,Ey,ho=class extends be{constructor(){super(...arguments);ye(this,Tt);this.notifications=[];this.position="right"}render(){if(this.notifications.length===0)return N``;let t=T({position:"fixed",bottom:"6rem",[this.position==="right"?"right":"left"]:"2.5rem",display:"flex",flexDirection:"column",gap:"8px",zIndex:"2147483648",pointerEvents:"auto",width:"280px"});return N`
732
732
  <div
733
733
  data-testid="notification-toast-stack"
734
734
  style=${t}
735
735
  >
736
- ${this.notifications.map(n=>xe(this,Rt,Nv).call(this,n))}
736
+ ${this.notifications.map(n=>we(this,Tt,Ey).call(this,n))}
737
737
  </div>
738
- `}};Rt=new WeakSet,$v=function(t,n){n.stopPropagation(),this.dispatchEvent(new CustomEvent("notification-dismiss",{detail:{id:t},bubbles:!0,composed:!0}))},Mv=function(t){this.dispatchEvent(new CustomEvent("notification-click",{detail:{notification:t},bubbles:!0,composed:!0}))},Ov=function(t){let n=t.currentTarget;n.style.transform="translateY(-1px)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.add("paused")},Pv=function(t){let n=t.currentTarget;n.style.transform="translateY(0)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.remove("paused")},Nv=function(t){let n=R({background:"var(--sc-notification-background)",backdropFilter:"blur(12px)",WebkitBackdropFilter:"blur(12px)",border:"var(--sc-notification-border)",borderRadius:"var(--sc-notification-border-radius)",overflow:"hidden",cursor:"pointer",transition:"transform 0.15s ease"}),i=R({display:"flex",alignItems:"flex-start",gap:"10px",padding:"10px 12px"}),s=R({width:"28px",height:"28px",borderRadius:"8px",background:"var(--sc-notification-icon-background)",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0",fontSize:"14px",color:"var(--sc-notification-text-color)"}),o=R({flex:"1",minWidth:"0"}),a=R({fontSize:"13px",fontWeight:"600",color:"var(--sc-notification-text-color)",lineHeight:"1.3",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}),l=R({fontSize:"12px",color:"var(--sc-notification-text-secondary-color)",lineHeight:"1.3",marginTop:"2px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}),c=R({background:"none",border:"none",color:"var(--sc-notification-text-secondary-color)",cursor:"pointer",padding:"2px",fontSize:"14px",lineHeight:"1",flexShrink:"0"}),u=R({height:"2px",background:"rgba(0, 0, 0, 0.08)"}),p=R({height:"100%",background:"var(--sc-notification-progress-gradient)",animationDuration:`${t.ttl}ms`}),h=vE(t.icon??"\u{1F514}",14);return L`
738
+ `}};Tt=new WeakSet,xy=function(t,n){n.stopPropagation(),this.dispatchEvent(new CustomEvent("notification-dismiss",{detail:{id:t},bubbles:!0,composed:!0}))},wy=function(t){this.dispatchEvent(new CustomEvent("notification-click",{detail:{notification:t},bubbles:!0,composed:!0}))},Sy=function(t){let n=t.currentTarget;n.style.transform="translateY(-1px)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.add("paused")},ky=function(t){let n=t.currentTarget;n.style.transform="translateY(0)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.remove("paused")},Ey=function(t){let n=T({background:"var(--sc-notification-background)",backdropFilter:"blur(12px)",WebkitBackdropFilter:"blur(12px)",border:"var(--sc-notification-border)",borderRadius:"var(--sc-notification-border-radius)",overflow:"hidden",cursor:"pointer",transition:"transform 0.15s ease"}),i=T({display:"flex",alignItems:"flex-start",gap:"10px",padding:"10px 12px"}),s=T({width:"28px",height:"28px",borderRadius:"8px",background:"var(--sc-notification-icon-background)",display:"flex",alignItems:"center",justifyContent:"center",flexShrink:"0",fontSize:"14px",color:"var(--sc-notification-text-color)"}),o=T({flex:"1",minWidth:"0"}),a=T({fontSize:"13px",fontWeight:"600",color:"var(--sc-notification-text-color)",lineHeight:"1.3",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}),l=T({fontSize:"12px",color:"var(--sc-notification-text-secondary-color)",lineHeight:"1.3",marginTop:"2px",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}),c=T({background:"none",border:"none",color:"var(--sc-notification-text-secondary-color)",cursor:"pointer",padding:"2px",fontSize:"14px",lineHeight:"1",flexShrink:"0"}),u=T({height:"2px",background:"rgba(0, 0, 0, 0.08)"}),p=T({height:"100%",background:"var(--sc-notification-progress-gradient)",animationDuration:`${t.ttl}ms`}),h=pC(t.icon??"\u{1F514}",14);return N`
739
739
  <div
740
740
  class="syntro-toast-enter"
741
741
  style=${n}
742
- @mouseenter=${xe(this,Rt,Ov)}
743
- @mouseleave=${xe(this,Rt,Pv)}
742
+ @mouseenter=${we(this,Tt,Sy)}
743
+ @mouseleave=${we(this,Tt,ky)}
744
744
  >
745
745
  <div
746
746
  style=${i}
747
- @click=${()=>xe(this,Rt,Mv).call(this,t)}
747
+ @click=${()=>we(this,Tt,wy).call(this,t)}
748
748
  >
749
749
  <div
750
750
  style=${s}
@@ -753,14 +753,14 @@ ${n}
753
753
 
754
754
  <div style=${o}>
755
755
  <div style=${a}>${t.title}</div>
756
- ${t.body?L`<div style=${l}>${t.body}</div>`:""}
756
+ ${t.body?N`<div style=${l}>${t.body}</div>`:""}
757
757
  </div>
758
758
 
759
759
  <button
760
760
  type="button"
761
761
  aria-label="Dismiss notification"
762
762
  style=${c}
763
- @click=${f=>xe(this,Rt,$v).call(this,t.id,f)}
763
+ @click=${f=>we(this,Tt,xy).call(this,t.id,f)}
764
764
  >&#215;</button>
765
765
  </div>
766
766
 
@@ -771,7 +771,7 @@ ${n}
771
771
  ></div>
772
772
  </div>
773
773
  </div>
774
- `},oo.properties={notifications:{attribute:!1},position:{type:String}},oo.styles=gn`
774
+ `},ho.properties={notifications:{attribute:!1},position:{type:String}},ho.styles=vn`
775
775
  @keyframes syntro-toast-slide-in {
776
776
  from { opacity: 0; transform: translateY(12px); }
777
777
  to { opacity: 1; transform: translateY(0); }
@@ -789,15 +789,15 @@ ${n}
789
789
  .syntro-toast-progress.paused {
790
790
  animation-play-state: paused;
791
791
  }
792
- `;customElements.define("syntro-toast-stack",oo);var ad=async(r,e)=>{let t=[];if(e.applyAction)for(let n of r.actions){let i=await e.applyAction(n);t.push(i)}return{cleanup:async()=>{for(let n=t.length-1;n>=0;n--)try{await t[n].revert()}catch{}}}},ld=async(r,e)=>{let t=[];if(e.applyAction){let n=r.actions.map(i=>e.applyAction(i));if(r.waitFor==="any"){let i=await Promise.race(n);t.push(i);let s=await Promise.allSettled(n);for(let o of s)o.status==="fulfilled"&&o.value!==i&&t.push(o.value)}else{let i=await Promise.all(n);t.push(...i)}}return{cleanup:async()=>{for(let n of t)try{await n.revert()}catch{}}}},cd=async(r,e)=>{let t,n,i=!1,s={cleanup:()=>{i=!0,n&&clearTimeout(n),t&&t()}};return r.event&&e.subscribeEvent?await new Promise(o=>{t=e.subscribeEvent(r.event,()=>{i||o()}),r.durationMs!==void 0&&(n=setTimeout(()=>{i||o()},r.durationMs))}):r.durationMs!==void 0&&await new Promise(o=>{n=setTimeout(()=>{i||o()},r.durationMs)}),s};var ul=class{constructor(){this.executors=new Map;for(let{kind:e,executor:t}of Mc)this.registerCore(e,t);for(let{kind:e,executor:t}of Qc)this.registerCore(e,t);this.registerCore("core:mountWidget",async()=>{throw new Error("core:mountWidget must be handled by ActionEngine")}),this.registerCore("core:sequence",ad),this.registerCore("core:parallel",ld),this.registerCore("core:wait",cd)}registerCore(e,t,n){this.executors.set(e,{kind:e,executor:t,schema:n,source:"core",isBuiltIn:!0})}register(e,t,n,i="custom",s=!1){if(this.executors.has(e)){if(this.executors.get(e).isBuiltIn)return;console.warn(`[ExecutorRegistry] Overriding executor for kind: ${e} (source: ${i})`)}console.log(`[ExecutorRegistry] Registered executor: ${e} (source: ${i})`),this.executors.set(e,{kind:e,executor:t,schema:n,source:i,isBuiltIn:s})}unregister(e){let t=this.executors.get(e);return t?t.isBuiltIn?(console.warn(`[ExecutorRegistry] Cannot unregister built-in executor: ${e}`),!1):(this.executors.delete(e),!0):!1}unregisterBySource(e){for(let[t,n]of this.executors.entries())n.source===e&&this.executors.delete(t)}get(e){return this.executors.get(e)?.executor}getRegistration(e){return this.executors.get(e)}has(e){return this.executors.has(e)}validate(e){let t=[];if(!e||typeof e!="object")return t.push({code:"INVALID_ACTION",message:"Action must be an object"}),{valid:!1,errors:t,warnings:[]};let{kind:n}=e;if(!n||typeof n!="string")return t.push({code:"MISSING_KIND",message:"Action must have a 'kind' property"}),{valid:!1,errors:t,warnings:[]};let i=this.executors.get(n);if(!i)return t.push({code:"UNKNOWN_KIND",message:`Unknown action kind: ${n}`,field:"kind"}),{valid:!1,errors:t,warnings:[]};if(i.schema){let s=i.schema.safeParse(e);if(!s.success){for(let o of s.error.issues)t.push({code:"SCHEMA_VALIDATION_ERROR",message:o.message,field:o.path.join(".")});return{valid:!1,errors:t,warnings:[]}}}return{valid:!0,errors:[],warnings:[]}}list(){return Array.from(this.executors.keys())}listRegistrations(){return Array.from(this.executors.values())}getBuiltInKinds(){return Array.from(this.executors.entries()).filter(([,e])=>e.isBuiltIn).map(([e])=>e)}getCustomKinds(){return Array.from(this.executors.entries()).filter(([,e])=>!e.isBuiltIn).map(([e])=>e)}},kr=new ul;function yE(r){return kr.get(r)}function ud(r){return kr.has(r)}function dd(r,e,t){!r.content||typeof r.content!="string"?e.push({code:"MISSING_CONTENT",message:"Badge action requires 'content' property",field:"content"}):r.content.length>100&&t.push({code:"LONG_BADGE_CONTENT",message:"Badge content is quite long",suggestion:"Keep badge content short (under 100 characters)"})}function pd(r,e,t){if(!r.content||typeof r.content!="object"){e.push({code:"MISSING_CONTENT",message:"Tooltip action requires 'content' object",field:"content"});return}(!r.content.body||typeof r.content.body!="string")&&e.push({code:"MISSING_BODY",message:"Tooltip content requires 'body' property",field:"content.body"})}function hd(r,e,t){!r.html||typeof r.html!="string"?e.push({code:"MISSING_HTML",message:"insertHtml action requires 'html' property",field:"html"}):r.html.length>dl&&e.push({code:"HTML_TOO_LONG",message:`HTML content exceeds maximum length of ${dl}`,field:"html"});let n=["before","after","prepend","append","replace"];(!r.position||!n.includes(r.position))&&e.push({code:"INVALID_POSITION",message:`Position must be one of: ${n.join(", ")}`,field:"position"})}function fd(r,e,t){(r.text===void 0||r.text===null)&&e.push({code:"MISSING_TEXT",message:"setText action requires 'text' property",field:"text"})}function gd(r,e,t){!r.attr||typeof r.attr!="string"?e.push({code:"MISSING_ATTR",message:"setAttr action requires 'attr' property",field:"attr"}):(Ed.has(r.attr.toLowerCase())||r.attr.toLowerCase().startsWith("on"))&&e.push({code:"DANGEROUS_ATTR",message:`Event handler attributes are not allowed: ${r.attr}`,field:"attr"}),(r.value===void 0||r.value===null)&&e.push({code:"MISSING_VALUE",message:"setAttr action requires 'value' property",field:"value"})}function md(r,e,t){!r.className||typeof r.className!="string"?e.push({code:"MISSING_CLASS_NAME",message:"Class action requires 'className' property",field:"className"}):/^[a-zA-Z_-][a-zA-Z0-9_-]*$/.test(r.className)||t.push({code:"INVALID_CLASS_NAME",message:"Class name contains unusual characters",suggestion:"Use alphanumeric characters, hyphens, and underscores"})}function vd(r,e,t){if(!r.styles||typeof r.styles!="object")e.push({code:"MISSING_STYLES",message:"setStyle action requires 'styles' object",field:"styles"});else{let n=Object.keys(r.styles).length;n>pl&&e.push({code:"TOO_MANY_STYLES",message:`Too many styles (${n}). Maximum is ${pl}`,field:"styles"});for(let[i,s]of Object.entries(r.styles))typeof s=="string"&&s.includes("expression(")&&e.push({code:"DANGEROUS_STYLE",message:`Style expressions are not allowed: ${i}`,field:`styles.${i}`})}}function yd(r,e,t){(!r.slot||typeof r.slot!="string")&&e.push({code:"MISSING_SLOT",message:"mountWidget action requires 'slot' property",field:"slot"}),!r.widget||typeof r.widget!="object"?e.push({code:"MISSING_WIDGET",message:"mountWidget action requires 'widget' object",field:"widget"}):(!r.widget.widgetId||typeof r.widget.widgetId!="string")&&e.push({code:"MISSING_WIDGET_ID",message:"Widget must have a 'widgetId' property",field:"widget.widgetId"})}function bd(r,e,t){r.durationMs===void 0&&!r.event&&e.push({code:"MISSING_WAIT_CONFIG",message:"wait action requires either 'durationMs' or 'event' property"}),r.durationMs!==void 0&&r.durationMs<0&&e.push({code:"INVALID_DURATION",message:"durationMs must be a positive number",field:"durationMs"}),r.event!==void 0&&typeof r.event!="string"&&e.push({code:"INVALID_EVENT",message:"event must be a string",field:"event"})}function _d(r,e,t){if(!r.actions||!Array.isArray(r.actions)){e.push({code:"MISSING_ACTIONS",message:"sequence action requires 'actions' array",field:"actions"});return}r.actions.length===0&&t.push({code:"EMPTY_SEQUENCE",message:"sequence has no actions",suggestion:"Add at least one action to the sequence"});for(let n=0;n<r.actions.length;n++){let i=sr(r.actions[n]);for(let s of i.errors)e.push({...s,field:`actions[${n}]${s.field?`.${s.field}`:""}`});for(let s of i.warnings)t.push(s)}}function xd(r,e,t){if(!r.actions||!Array.isArray(r.actions)){e.push({code:"MISSING_ACTIONS",message:"parallel action requires 'actions' array",field:"actions"});return}r.actions.length===0&&t.push({code:"EMPTY_PARALLEL",message:"parallel has no actions",suggestion:"Add at least one action to the parallel group"}),r.waitFor&&!["all","any"].includes(r.waitFor)&&e.push({code:"INVALID_WAIT_FOR",message:"waitFor must be 'all' or 'any'",field:"waitFor"});for(let n=0;n<r.actions.length;n++){let i=sr(r.actions[n]);for(let s of i.errors)e.push({...s,field:`actions[${n}]${s.field?`.${s.field}`:""}`});for(let s of i.warnings)t.push(s)}}function wd(r,e,t){if(!r.url||typeof r.url!="string")e.push({code:"MISSING_URL",message:"navigate action requires 'url' property",field:"url"});else{let n=r.url.trim().toLowerCase();n.startsWith("javascript:")&&e.push({code:"DANGEROUS_URL",message:"javascript: URLs are not allowed",field:"url"}),n.startsWith("data:")&&t.push({code:"DATA_URL",message:"data: URLs may have limited support",suggestion:"Consider using a regular URL instead"})}}function Sd(r,e,t){if(!r.content||typeof r.content!="object"){e.push({code:"MISSING_CONTENT",message:"Modal action requires 'content' object",field:"content"});return}if((!r.content.body||typeof r.content.body!="string")&&e.push({code:"MISSING_BODY",message:"Modal content requires 'body' property",field:"content.body"}),r.size&&!["sm","md","lg"].includes(r.size)&&e.push({code:"INVALID_SIZE",message:"Modal size must be 'sm', 'md', or 'lg'",field:"size"}),r.ctaButtons)if(!Array.isArray(r.ctaButtons))e.push({code:"INVALID_CTA_BUTTONS",message:"ctaButtons must be an array",field:"ctaButtons"});else for(let n=0;n<r.ctaButtons.length;n++){let i=r.ctaButtons[n];(!i.label||typeof i.label!="string")&&e.push({code:"MISSING_BUTTON_LABEL",message:`CTA button at index ${n} requires 'label' property`,field:`ctaButtons[${n}].label`}),(!i.actionId||typeof i.actionId!="string")&&e.push({code:"MISSING_BUTTON_ACTION_ID",message:`CTA button at index ${n} requires 'actionId' property`,field:`ctaButtons[${n}].actionId`})}}function kd(r,e,t){if((!r.tourId||typeof r.tourId!="string")&&e.push({code:"MISSING_TOUR_ID",message:"Tour action requires 'tourId' property",field:"tourId"}),!r.steps||!Array.isArray(r.steps)){e.push({code:"MISSING_STEPS",message:"Tour action requires 'steps' array",field:"steps"});return}r.steps.length===0&&e.push({code:"EMPTY_STEPS",message:"Tour must have at least one step",field:"steps"});let n=new Set;for(let i=0;i<r.steps.length;i++){let s=r.steps[i];if(!s.id||typeof s.id!="string"?e.push({code:"MISSING_STEP_ID",message:`Step at index ${i} requires 'id' property`,field:`steps[${i}].id`}):(n.has(s.id)&&e.push({code:"DUPLICATE_STEP_ID",message:`Duplicate step ID: ${s.id}`,field:`steps[${i}].id`}),n.add(s.id)),!s.action)e.push({code:"MISSING_STEP_ACTION",message:`Step at index ${i} requires 'action' property`,field:`steps[${i}].action`});else{let o=sr(s.action);for(let a of o.errors)e.push({...a,field:`steps[${i}].action${a.field?`.${a.field}`:""}`});for(let a of o.warnings)t.push(a)}if(s.onAction)for(let[o,a]of Object.entries(s.onAction))a!=="end"&&!r.steps.some(l=>l.id===a)&&t.push({code:"UNKNOWN_TARGET_STEP",message:`Step "${s.id}" references unknown target step: ${a}`,suggestion:`Make sure step "${a}" exists in the tour`})}}var Ed=new Set(["onclick","onerror","onload","onmouseover","onfocus","onblur","onchange","onsubmit","onkeydown","onkeyup","onkeypress"]),dl=5e4,pl=50;function sr(r){let e=[],t=[];if(!r||typeof r!="object")return e.push({code:"INVALID_ACTION",message:"Action must be an object"}),{valid:!1,errors:e,warnings:t};let{kind:n}=r;if(!n||typeof n!="string")return e.push({code:"MISSING_KIND",message:"Action must have a 'kind' property"}),{valid:!1,errors:e,warnings:t};if(!ud(n)&&n!=="core:mountWidget"){let i=kr.list();return console.error(`[ActionValidation] Unknown action kind: "${n}". Registered kinds (${i.length}): [${i.join(", ")}]. This usually means the app that provides "${n}" hasn't been activated yet, or the executor was never registered in ExecutorRegistry.`),e.push({code:"UNKNOWN_KIND",message:`Unknown action kind: ${n}`,field:"kind"}),{valid:!1,errors:e,warnings:t}}switch(n){case"overlays:highlight":case"overlays:pulse":case"navigation:scrollTo":Er(r,e,t);break;case"overlays:badge":Er(r,e,t),dd(r,e,t);break;case"overlays:tooltip":Er(r,e,t),pd(r,e,t);break;case"overlays:modal":Sd(r,e,t);break;case"content:insertHtml":Er(r,e,t),hd(r,e,t);break;case"content:setText":Er(r,e,t),fd(r,e,t);break;case"content:setAttr":Er(r,e,t),gd(r,e,t);break;case"content:addClass":case"content:removeClass":Er(r,e,t),md(r,e,t);break;case"content:setStyle":Er(r,e,t),vd(r,e,t);break;case"core:mountWidget":yd(r,e,t);break;case"core:wait":bd(r,e,t);break;case"core:sequence":_d(r,e,t);break;case"core:parallel":xd(r,e,t);break;case"overlays:tour":kd(r,e,t);break;case"navigation:navigate":wd(r,e,t);break}return{valid:e.length===0,errors:e,warnings:t}}function Er(r,e,t){let n=r.anchorId;if(!n||typeof n!="object"){e.push({code:"MISSING_ANCHOR_ID",message:"Action requires an 'anchorId' object with a 'selector' string",field:"anchorId"});return}if(!n.selector||typeof n.selector!="string"?e.push({code:"MISSING_ANCHOR_SELECTOR",message:"anchorId requires a 'selector' string",field:"anchorId.selector"}):n.selector.length>200&&t.push({code:"LONG_ANCHOR_ID",message:"Anchor selector is unusually long",suggestion:"Consider using a shorter, more descriptive selector"}),n.route===void 0||n.route===null)e.push({code:"MISSING_ANCHOR_ROUTE",message:`anchorId requires a 'route' (string or array of strings). Use "**" for all routes.`,field:"anchorId.route"});else{let i=Array.isArray(n.route)?n.route:[n.route];for(let s of i)if(typeof s!="string"){e.push({code:"INVALID_ANCHOR_ROUTE",message:"anchorId.route must be a string or array of strings",field:"anchorId.route"});break}}}function hl(r){let e=[],t=[];if(!Array.isArray(r))return console.error("[ActionValidation] validateActions called with non-array:",typeof r),e.push({code:"INVALID_ACTIONS",message:"Actions must be an array"}),{valid:!1,errors:e,warnings:t};for(let n=0;n<r.length;n++){let i=sr(r[n]);if(!i.valid){let s=r[n];console.error(`[ActionValidation] Action [${n}] failed validation:`,`kind="${s?.kind??"undefined"}"`,i.errors.map(o=>`${o.code}: ${o.message}`).join("; "),s)}for(let s of i.errors)e.push({...s,field:s.field?`[${n}].${s.field}`:`[${n}]`});for(let s of i.warnings)t.push({...s,suggestion:s.suggestion?`Action ${n}: ${s.suggestion}`:void 0})}return e.length>0&&console.error(`[ActionValidation] Batch validation failed: ${e.length} error(s) in ${r.length} action(s).`,e.map(n=>`${n.field??"?"}: ${n.message}`).join(" | ")),{valid:e.length===0,errors:e,warnings:t}}var bE=0;function Cd(r){let{overlayRoot:e,eventBus:t,surfaces:n,anchorResolver:i,waitForAnchor:s,adaptiveId:o,executorRegistry:a=kr,subscribeNavigation:l,runtime:c}=r,u=new Map,p=new Map;function h(){return`action-${++bE}`}function f(_,A){t&&t.publish(_,A)}function v(){return{overlayRoot:e,resolveAnchor:i,waitForAnchor:s,generateId:h,publishEvent:f,adaptiveId:o,applyAction:x,subscribeEvent:t?(_,A)=>t.subscribe({names:[_]},$=>A($.props)):void 0,subscribeNavigation:l}}async function g(_,A){if(!n)throw new Error("Surfaces provider required for core:mountWidget actions");let $=n.mount(_.slot,{type:"widget",widgetId:_.widget.widgetId,config:_.widget.props},{priority:_.widget.priority});return A.publishEvent("action.applied",{id:A.generateId(),kind:"core:mountWidget",slot:_.slot,widgetId:_.widget.widgetId}),{cleanup:()=>{$.unmount()},updateFn:T=>{if("widget"in T&&T.widget){let O=T.widget;O.props&&$.update({type:"widget",widgetId:_.widget.widgetId,config:O.props})}}}}async function m(_,A){if(_.kind==="core:mountWidget")return g(_,A);let $=a.get(_.kind);if(!$){let T="list"in a?a.list():"(list unavailable)";throw console.error(`[ActionEngine] No executor for kind="${_.kind}".`,`Registered: [${T}]`),new Error(`No executor for action kind: ${_.kind}`)}return $(_,A)}function y(_,A,$,T){if(!c)return;let O=[],Y=!1,F=async()=>{if(Y)return;let N=u.get(_);if(N){Y=!0;try{let K=c.evaluateSync($).value;if(N.state==="applied"&&!K){try{await N.cleanup()}catch(le){console.error(`[ActionEngine] Error reverting conditional action ${_}:`,le)}N.state="deferred",N.cleanup=()=>{},N.updateFn=void 0,f("action.deferred",{id:_,kind:A.kind})}else if(N.state==="deferred"&&K)try{let le=v(),U=await m(A,le);N.state="applied",N.cleanup=U.cleanup,N.updateFn=U.updateFn,N.appliedTs=Date.now()}catch(le){console.error(`[ActionEngine] Error applying deferred action ${_}:`,le),N.state="failed"}}finally{Y=!1}}};c.context&&O.push(c.context.subscribe(F)),c.accumulator&&O.push(c.accumulator.subscribe(F)),c.sessionMetrics&&O.push(c.sessionMetrics.subscribe(F)),c.events&&O.push(c.events.subscribe(F)),p.set(_,O)}async function x(_){let A=sr(_);if(!A.valid){let G=A.errors.map(K=>K.message).join("; ");throw console.error(`[ActionEngine] Validation failed for action kind="${_?.kind}":`,G,_),new Error(`Action validation failed: ${G}`)}let $=h(),T=_.triggerWhen;if(T&&c&&!c.evaluateSync(T).value){let K={id:$,action:_,adaptiveId:o,appliedTs:Date.now(),state:"deferred",cleanup:()=>{}};u.set($,K);let le={id:$,action:_,async revert(){let U=u.get($);if(!U)return;let Q=p.get($);if(Q){for(let De of Q)De();p.delete($)}U.state="reverted",u.delete($)},isApplied(){return u.get($)?.state==="applied"},async update(U){let Q=u.get($);if(!Q||Q.state!=="applied")throw new Error("Cannot update action that is not applied");if(Q.updateFn)await Q.updateFn(U);else throw new Error(`Action kind ${_.kind} does not support updates`)},getState(){return u.get($)?.state??"reverted"}};return y($,_,T,le),le}let O=v(),Y=await m(_,O),F={id:$,action:_,adaptiveId:o,appliedTs:Date.now(),state:"applied",cleanup:Y.cleanup,updateFn:Y.updateFn};u.set($,F);let N={id:$,action:_,async revert(){let G=u.get($);if(!G||G.state!=="applied")return;let K=p.get($);if(K){for(let le of K)le();p.delete($)}try{await G.cleanup(),G.state="reverted",f("action.reverted",{id:$,kind:_.kind})}catch(le){console.warn(`[ActionEngine] Cleanup error for ${_.kind} (${$}), ignoring:`,le),G.state="reverted",f("action.reverted",{id:$,kind:_.kind})}finally{u.delete($)}},isApplied(){return u.get($)?.state==="applied"},async update(G){let K=u.get($);if(!K||K.state!=="applied")throw new Error("Cannot update action that is not applied");if(K.updateFn)await K.updateFn(G);else throw new Error(`Action kind ${_.kind} does not support updates`)},getState(){return u.get($)?.state??"reverted"}};return T&&c&&y($,_,T,N),N}async function S(_){console.log(`[ActionEngine] applyBatch: ${_.length} action(s)`,_.map(F=>F.kind).join(", "));let A=hl(_);if(!A.valid){let F=A.errors.map(N=>N.message).join("; ");throw console.error(`[ActionEngine] Batch validation FAILED for ${_.length} action(s):`,F,`
793
- Actions:`,_.map((N,G)=>` [${G}] ${N.kind} ${N.anchorId?`anchor="${N.anchorId.selector}"`:""} ${N.label?`label="${N.label}"`:""}`).join(`
794
- `)),new Error(`Batch validation failed: ${F}`)}let $=h(),T=[],O=[];try{let F=await Promise.allSettled(_.map(G=>x(G))),N=[];for(let G of F)G.status==="fulfilled"?(T.push(G.value),O.push(G.value)):N.push(G.reason instanceof Error?G.reason:new Error(String(G.reason)));if(N.length>0&&O.length===0)throw N[0];N.length>0&&console.warn(`[ActionEngine] ${N.length}/${_.length} action(s) failed in batch:`,N.map(G=>G.message).join("; "))}catch(F){console.error(`[ActionEngine] Batch apply FAILED. Successfully applied: ${O.length}. Rolling back...`,F);for(let N of O)try{await N.revert()}catch{}throw F}return{id:$,handles:T,async revertAll(){for(let F=T.length-1;F>=0;F--)try{await T[F].revert()}catch(N){console.error(`[ActionEngine] Error reverting action ${T[F].id}:`,N)}},isApplied(){return T.every(F=>F.isApplied())}}}function b(_){return sr(_)}function w(){return Array.from(u.values()).map(_=>({id:_.id,action:_.action,adaptiveId:_.adaptiveId,appliedTs:_.appliedTs,state:_.state}))}async function C(){for(let A of p.values())for(let $ of A)try{$()}catch{}p.clear();let _=[];for(let A of u.values())if(A.state==="applied")try{let $=A.cleanup();$&&typeof $.then=="function"&&_.push($.catch(T=>{console.error("[ActionEngine] Error during async cleanup:",T)}))}catch($){console.error("[ActionEngine] Error during cleanup:",$)}u.clear(),_.length>0&&await Promise.all(_)}return{apply:x,applyBatch:S,validate:b,getActive:w,destroy:C}}var Lv=d.object({include:d.array(d.string()).optional().describe("URL patterns where this tile appears. Supports *, **, :param wildcards. Use sparingly \u2014 mostly to isolate to specific webapp functionality. Omit to appear on all routes."),exclude:d.array(d.string()).optional().describe("URL patterns where this tile should NOT appear. Evaluated before include.")}),fl=d.object({routes:Lv,onlyIfPopulated:d.boolean().optional().describe("When true, tile is hidden if none of its props.actions[] have an active triggerWhen. Useful for tiles with all-deferred FAQ questions or nav tips. Default: false.")});function v4(r){return zr.safeParse(r)}function y4(r){return js.safeParse(r)}function b4(r){return fl.safeParse(r)}var _4=[{defName:"matchOp",schema:Ns},{defName:"counterDef",schema:Ls},{defName:"activationConfig",schema:fl},{defName:"routeFilter",schema:Lv},{defName:"ruleStrategy",schema:Ds},{defName:"scoreStrategy",schema:Hs},{defName:"modelStrategy",schema:Bs},{defName:"externalStrategy",schema:Vs},{defName:"rule",schema:Fs},{defName:"condition",schema:zr}];var Ad=d.object({tileId:d.string(),itemId:d.string().optional()}).strict(),_E=d.object({on:d.string(),title:d.string(),body:d.string().optional(),icon:d.string().optional(),ttl:d.number().optional(),cooldown:d.number().optional(),deepLink:Ad.optional()}).strict(),xE=d.object({id:d.string(),title:d.string().optional(),subtitle:d.string().optional(),icon:d.string().optional(),priority:d.number().optional(),widget:d.string(),props:d.record(d.unknown()).optional(),activation:fl.optional(),notifications:d.array(_E).optional()}).strict(),Fv=d.object({position:d.enum(["left","right"]).optional(),layout:d.enum(["overlay","push"]).optional(),background:d.string().optional(),blur:d.string().optional(),border:d.string().optional(),width:d.string().optional(),padding:d.string().optional(),transitionDuration:d.string().optional(),transitionEasing:d.string().optional(),transitionFade:d.string().optional(),backdrop:d.boolean().optional(),backdropColor:d.string().optional()}),wE=d.object({canvas:Fv.optional()}),SE=d.object({background:d.string().optional(),backgroundHover:d.string().optional(),color:d.string().optional(),size:d.string().optional(),shadow:d.string().optional(),borderRadius:d.string().optional(),icon:d.string().optional()}),kE=d.object({background:d.string().optional(),backgroundHover:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),shadow:d.string().optional(),titleColor:d.string().optional(),textColor:d.string().optional(),iconBackground:d.string().optional(),iconShadow:d.string().optional(),headerPadding:d.string().optional(),bodyPadding:d.string().optional(),gap:d.string().optional()}),EE=d.object({background:d.string().optional(),textColor:d.string().optional(),titleColor:d.string().optional(),arrowColor:d.string().optional(),arrowSize:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),scrimOpacity:d.string().optional(),highlightRing:d.string().optional()}),CE=d.object({background:d.string().optional(),textColor:d.string().optional(),textSecondaryColor:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),successColor:d.string().optional(),warningColor:d.string().optional(),errorColor:d.string().optional(),iconBackground:d.string().optional(),progressGradient:d.string().optional()}),AE=d.object({background:d.string().optional(),backgroundHover:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),textColor:d.string().optional(),textSecondaryColor:d.string().optional(),itemDivider:d.string().optional(),itemGap:d.string().optional(),itemPadding:d.string().optional(),itemFontSize:d.string().optional(),bodyPadding:d.string().optional(),bodyFontSize:d.string().optional(),categoryPadding:d.string().optional(),categoryGap:d.string().optional(),categoryFontSize:d.string().optional(),searchBackground:d.string().optional(),searchColor:d.string().optional(),chevronColor:d.string().optional()}),RE=d.object({mode:d.enum(["dark","light"]).optional(),fontFamily:d.string().optional(),colorPrimary:d.string().optional(),colorPrimaryHover:d.string().optional(),borderRadius:d.string().optional(),canvas:Fv.optional(),launcher:SE.optional(),tile:kE.optional(),overlay:EE.optional(),notification:CE.optional(),content:AE.optional(),mobile:wE.optional()}).strict(),TE=d.object({enabled:d.boolean().optional(),label:d.string().optional(),position:d.string().optional(),animate:d.boolean().optional(),animationStyle:d.enum(["pulse","bounce","glow"]).optional(),notificationCount:d.number().optional()}).strict(),E4=d.object({schemaVersion:d.string().optional(),fetchedAt:d.string().datetime(),configVersion:d.string().optional(),canvasTitle:d.string().optional(),displayMode:d.enum(["standard","focused","inline"]).optional(),tiles:d.array(xE),actions:d.array(d.any()),theme:RE.optional(),launcher:TE.optional(),meta:d.object({verificationSteps:d.array(d.union([d.string(),d.object({text:d.string(),check:zr.optional()})])).optional()}).passthrough().optional()}).strict();var Ge={triggerWhen:ja},Tt=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),Dv=d.object({color:d.string().optional(),scrimOpacity:d.number().min(0).max(1).optional(),paddingPx:d.number().optional(),radiusPx:d.number().optional()}).strict(),Hv=d.enum(["top-left","top-right","bottom-left","bottom-right"]),Bv=d.enum(["top","top-start","top-end","bottom","bottom-start","bottom-end","left","left-start","left-end","right","right-start","right-end"]),Td=d.object({label:d.string(),actionId:d.string(),primary:d.boolean().optional()}).strict(),Vv=d.object({title:d.string().optional(),body:d.string(),ctaButtons:d.array(Td).optional()}).strict(),jv=d.object({title:d.string().optional(),body:d.string()}).strict(),Uv=d.enum(["before","after","prepend","append","replace"]),Wv=d.enum(["immediate","hover","click"]),zv=d.object({widgetId:d.string(),props:d.record(d.unknown()).optional(),priority:d.number().optional()}).strict(),qv=d.object({id:d.string(),action:d.any(),route:d.string().optional(),onAction:d.record(d.string()).optional()}).passthrough(),Zv=d.enum(["auto","smooth","instant"]),Rd=d.enum(["start","center","end","nearest"]),Gv=d.object({kind:d.literal("content:setText"),anchorId:Tt,text:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Kv=d.object({kind:d.literal("content:setAttr"),anchorId:Tt,attr:d.string(),value:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Yv=d.object({kind:d.literal("content:addClass"),anchorId:Tt,className:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Xv=d.object({kind:d.literal("content:removeClass"),anchorId:Tt,className:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Jv=d.object({kind:d.literal("content:setStyle"),anchorId:Tt,styles:d.record(d.string()),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Qv=d.object({kind:d.literal("content:insertHtml"),anchorId:Tt,html:d.string(),position:Uv,deepLink:Ad.optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),ey=d.object({kind:d.literal("overlays:highlight"),anchorId:Tt,style:Dv.optional(),duration:d.number().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),ty=d.object({kind:d.literal("overlays:pulse"),anchorId:Tt,duration:d.number().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),ry=d.object({kind:d.literal("overlays:badge"),anchorId:Tt,content:d.string(),position:Hv.optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),ny=d.object({kind:d.literal("overlays:tooltip"),anchorId:Tt,content:Vv,trigger:Wv.optional(),placement:Bv.optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),iy=d.object({kind:d.literal("overlays:modal"),content:jv,size:d.enum(["sm","md","lg"]).optional(),blocking:d.boolean().optional(),scrim:d.object({opacity:d.number().min(0).max(1).optional()}).strict().optional(),dismiss:d.object({onEsc:d.boolean().optional(),closeButton:d.boolean().optional(),timeoutMs:d.number().min(0).optional()}).strict().optional(),ctaButtons:d.array(Td).optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),sy=d.object({kind:d.literal("navigation:scrollTo"),anchorId:Tt,behavior:Zv.optional(),block:Rd.optional(),inline:Rd.optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),oy=d.object({kind:d.literal("navigation:navigate"),url:d.string(),target:d.enum(["_self","_blank"]).optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),ay=d.object({kind:d.literal("core:mountWidget"),slot:d.string(),widget:zv,label:d.string().optional()}).extend(Ge).extend(Ve).strict(),ly=d.object({kind:d.literal("core:wait"),durationMs:d.number().min(0).optional(),event:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),cy=d.object({kind:d.literal("core:sequence"),actions:d.array(d.any()),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),uy=d.object({kind:d.literal("core:parallel"),actions:d.array(d.any()),waitFor:d.enum(["all","any"]).optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),dy=d.object({kind:d.literal("overlays:tour"),tourId:d.string(),steps:d.array(qv).min(1),startStep:d.string().optional(),autoStart:d.boolean().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).passthrough(),IE=[{defName:"setText",schema:Gv},{defName:"setAttr",schema:Kv},{defName:"addClass",schema:Yv},{defName:"removeClass",schema:Xv},{defName:"setStyle",schema:Jv},{defName:"insertHtml",schema:Qv},{defName:"highlight",schema:ey},{defName:"pulse",schema:ty},{defName:"badge",schema:ry},{defName:"tooltip",schema:ny},{defName:"modal",schema:iy},{defName:"scrollTo",schema:sy},{defName:"navigate",schema:oy},{defName:"mountWidget",schema:ay},{defName:"wait",schema:ly},{defName:"sequence",schema:cy},{defName:"parallel",schema:uy},{defName:"tour",schema:dy}];function Id(r){let e=r?.root??(typeof document<"u"?document.body:null),t=r?.defaultTimeoutMs??5e3,n=new Map,i=new Map,s=null,o=!1;function a(m){if(!e)return null;try{return e.matches(m)?e:e.querySelector(m)}catch{return null}}function l(){for(let[m,y]of n){let x=a(m);if(x){for(let S of y)clearTimeout(S.timer),S.resolve(x);n.delete(m)}}for(let[m,y]of i){let x=a(m);if(x){for(let S of y)S.cancelled||S.cb(x);i.delete(m)}}n.size===0&&i.size===0&&u()}function c(){s||o||typeof MutationObserver>"u"||!e||(s=new MutationObserver(()=>{l()}),s.observe(e,{childList:!0,subtree:!0}))}function u(){s&&(s.disconnect(),s=null)}function p(m,y){let x=n.get(m);x&&(x.delete(y),x.size===0&&n.delete(m)),n.size===0&&i.size===0&&u()}function h(m,y){if(o)return Promise.reject(new Error("AnchorResolver destroyed"));let x=a(m);if(x)return Promise.resolve(x);let S=y??t;return new Promise((b,w)=>{let C={resolve:b,reject:w,timer:setTimeout(()=>{p(m,C),w(new Error(`waitFor("${m}") timed out after ${S}ms`))},S)},_=n.get(m);_||(_=new Set,n.set(m,_)),_.add(C),c()})}function f(m,y){if(o)return()=>{};let x=a(m);if(x)return y(x),()=>{};let S={cb:y,cancelled:!1},b=i.get(m);return b||(b=new Set,i.set(m,b)),b.add(S),c(),()=>{S.cancelled=!0;let w=i.get(m);w&&(w.delete(S),w.size===0&&i.delete(m)),n.size===0&&i.size===0&&u()}}function v(){let m=0;for(let y of n.values())m+=y.size;return m}function g(){o=!0,u();let m=new Error("AnchorResolver destroyed");for(let y of n.values())for(let x of y)clearTimeout(x.timer),x.reject(m);n.clear(),i.clear()}return{resolve:a,waitFor:h,onAppear:f,pendingCount:v,destroy:g}}var py={timeout:300,className:"sc-anti-flicker",style:"opacity: 0 !important",hostLoadingSelector:"",waitForHostReady:""};function hy(r={}){let{timeout:e,className:t,style:n,hostLoadingSelector:i,waitForHostReady:s}={...py,...r};if(i&&document.querySelector(i))return()=>{};let o=document.createElement("style");o.textContent=`.${t} { ${n} }`,document.head.appendChild(o),document.documentElement.classList.add(t);let a=!1,l=()=>{a||(a=!0,clearTimeout(u),document.documentElement.classList.remove(t),o.remove(),s&&c&&document.removeEventListener(s,c))},c;s&&(c=()=>l(),document.addEventListener(s,c));let u=setTimeout(()=>{l()},e);return()=>{l()}}function $E(r={}){let{className:e,style:t}={...py,...r};return`
792
+ `;customElements.define("syntro-toast-stack",ho);var Pd=async(r,e)=>{let t=[];if(e.applyAction)for(let n of r.actions){let i=await e.applyAction(n);t.push(i)}return{cleanup:async()=>{for(let n=t.length-1;n>=0;n--)try{await t[n].revert()}catch{}}}},Od=async(r,e)=>{let t=[];if(e.applyAction){let n=r.actions.map(i=>e.applyAction(i));if(r.waitFor==="any"){let i=await Promise.race(n);t.push(i);let s=await Promise.allSettled(n);for(let o of s)o.status==="fulfilled"&&o.value!==i&&t.push(o.value)}else{let i=await Promise.all(n);t.push(...i)}}return{cleanup:async()=>{for(let n of t)try{await n.revert()}catch{}}}},Ld=async(r,e)=>{let t,n,i=!1,s={cleanup:()=>{i=!0,n&&clearTimeout(n),t&&t()}};return r.event&&e.subscribeEvent?await new Promise(o=>{t=e.subscribeEvent(r.event,()=>{i||o()}),r.durationMs!==void 0&&(n=setTimeout(()=>{i||o()},r.durationMs))}):r.durationMs!==void 0&&await new Promise(o=>{n=setTimeout(()=>{i||o()},r.durationMs)}),s};var _l=class{constructor(){this.executors=new Map;for(let{kind:e,executor:t}of Uc)this.registerCore(e,t);for(let{kind:e,executor:t}of cu)this.registerCore(e,t);this.registerCore("core:mountWidget",async()=>{throw new Error("core:mountWidget must be handled by ActionEngine")}),this.registerCore("core:sequence",Pd),this.registerCore("core:parallel",Od),this.registerCore("core:wait",Ld)}registerCore(e,t,n){this.executors.set(e,{kind:e,executor:t,schema:n,source:"core",isBuiltIn:!0})}register(e,t,n,i="custom",s=!1){if(this.executors.has(e)){if(this.executors.get(e).isBuiltIn)return;console.warn(`[ExecutorRegistry] Overriding executor for kind: ${e} (source: ${i})`)}console.log(`[ExecutorRegistry] Registered executor: ${e} (source: ${i})`),this.executors.set(e,{kind:e,executor:t,schema:n,source:i,isBuiltIn:s})}unregister(e){let t=this.executors.get(e);return t?t.isBuiltIn?(console.warn(`[ExecutorRegistry] Cannot unregister built-in executor: ${e}`),!1):(this.executors.delete(e),!0):!1}unregisterBySource(e){for(let[t,n]of this.executors.entries())n.source===e&&this.executors.delete(t)}get(e){return this.executors.get(e)?.executor}getRegistration(e){return this.executors.get(e)}has(e){return this.executors.has(e)}validate(e){let t=[];if(!e||typeof e!="object")return t.push({code:"INVALID_ACTION",message:"Action must be an object"}),{valid:!1,errors:t,warnings:[]};let{kind:n}=e;if(!n||typeof n!="string")return t.push({code:"MISSING_KIND",message:"Action must have a 'kind' property"}),{valid:!1,errors:t,warnings:[]};let i=this.executors.get(n);if(!i)return t.push({code:"UNKNOWN_KIND",message:`Unknown action kind: ${n}`,field:"kind"}),{valid:!1,errors:t,warnings:[]};if(i.schema){let s=i.schema.safeParse(e);if(!s.success){for(let o of s.error.issues)t.push({code:"SCHEMA_VALIDATION_ERROR",message:o.message,field:o.path.join(".")});return{valid:!1,errors:t,warnings:[]}}}return{valid:!0,errors:[],warnings:[]}}list(){return Array.from(this.executors.keys())}listRegistrations(){return Array.from(this.executors.values())}getBuiltInKinds(){return Array.from(this.executors.entries()).filter(([,e])=>e.isBuiltIn).map(([e])=>e)}getCustomKinds(){return Array.from(this.executors.entries()).filter(([,e])=>!e.isBuiltIn).map(([e])=>e)}},Cr=new _l;function hC(r){return Cr.get(r)}function Nd(r){return Cr.has(r)}function Fd(r,e,t){!r.content||typeof r.content!="string"?e.push({code:"MISSING_CONTENT",message:"Badge action requires 'content' property",field:"content"}):r.content.length>100&&t.push({code:"LONG_BADGE_CONTENT",message:"Badge content is quite long",suggestion:"Keep badge content short (under 100 characters)"})}function Dd(r,e,t){if(!r.content||typeof r.content!="object"){e.push({code:"MISSING_CONTENT",message:"Tooltip action requires 'content' object",field:"content"});return}(!r.content.body||typeof r.content.body!="string")&&e.push({code:"MISSING_BODY",message:"Tooltip content requires 'body' property",field:"content.body"})}function Hd(r,e,t){!r.html||typeof r.html!="string"?e.push({code:"MISSING_HTML",message:"insertHtml action requires 'html' property",field:"html"}):r.html.length>xl&&e.push({code:"HTML_TOO_LONG",message:`HTML content exceeds maximum length of ${xl}`,field:"html"});let n=["before","after","prepend","append","replace"];(!r.position||!n.includes(r.position))&&e.push({code:"INVALID_POSITION",message:`Position must be one of: ${n.join(", ")}`,field:"position"})}function Bd(r,e,t){(r.text===void 0||r.text===null)&&e.push({code:"MISSING_TEXT",message:"setText action requires 'text' property",field:"text"})}function Vd(r,e,t){!r.attr||typeof r.attr!="string"?e.push({code:"MISSING_ATTR",message:"setAttr action requires 'attr' property",field:"attr"}):(Xd.has(r.attr.toLowerCase())||r.attr.toLowerCase().startsWith("on"))&&e.push({code:"DANGEROUS_ATTR",message:`Event handler attributes are not allowed: ${r.attr}`,field:"attr"}),(r.value===void 0||r.value===null)&&e.push({code:"MISSING_VALUE",message:"setAttr action requires 'value' property",field:"value"})}function Ud(r,e,t){!r.className||typeof r.className!="string"?e.push({code:"MISSING_CLASS_NAME",message:"Class action requires 'className' property",field:"className"}):/^[a-zA-Z_-][a-zA-Z0-9_-]*$/.test(r.className)||t.push({code:"INVALID_CLASS_NAME",message:"Class name contains unusual characters",suggestion:"Use alphanumeric characters, hyphens, and underscores"})}function jd(r,e,t){if(!r.styles||typeof r.styles!="object")e.push({code:"MISSING_STYLES",message:"setStyle action requires 'styles' object",field:"styles"});else{let n=Object.keys(r.styles).length;n>wl&&e.push({code:"TOO_MANY_STYLES",message:`Too many styles (${n}). Maximum is ${wl}`,field:"styles"});for(let[i,s]of Object.entries(r.styles))typeof s=="string"&&s.includes("expression(")&&e.push({code:"DANGEROUS_STYLE",message:`Style expressions are not allowed: ${i}`,field:`styles.${i}`})}}function Wd(r,e,t){(!r.slot||typeof r.slot!="string")&&e.push({code:"MISSING_SLOT",message:"mountWidget action requires 'slot' property",field:"slot"}),!r.widget||typeof r.widget!="object"?e.push({code:"MISSING_WIDGET",message:"mountWidget action requires 'widget' object",field:"widget"}):(!r.widget.widgetId||typeof r.widget.widgetId!="string")&&e.push({code:"MISSING_WIDGET_ID",message:"Widget must have a 'widgetId' property",field:"widget.widgetId"})}function zd(r,e,t){r.durationMs===void 0&&!r.event&&e.push({code:"MISSING_WAIT_CONFIG",message:"wait action requires either 'durationMs' or 'event' property"}),r.durationMs!==void 0&&r.durationMs<0&&e.push({code:"INVALID_DURATION",message:"durationMs must be a positive number",field:"durationMs"}),r.event!==void 0&&typeof r.event!="string"&&e.push({code:"INVALID_EVENT",message:"event must be a string",field:"event"})}function qd(r,e,t){if(!r.actions||!Array.isArray(r.actions)){e.push({code:"MISSING_ACTIONS",message:"sequence action requires 'actions' array",field:"actions"});return}r.actions.length===0&&t.push({code:"EMPTY_SEQUENCE",message:"sequence has no actions",suggestion:"Add at least one action to the sequence"});for(let n=0;n<r.actions.length;n++){let i=ar(r.actions[n]);for(let s of i.errors)e.push({...s,field:`actions[${n}]${s.field?`.${s.field}`:""}`});for(let s of i.warnings)t.push(s)}}function Zd(r,e,t){if(!r.actions||!Array.isArray(r.actions)){e.push({code:"MISSING_ACTIONS",message:"parallel action requires 'actions' array",field:"actions"});return}r.actions.length===0&&t.push({code:"EMPTY_PARALLEL",message:"parallel has no actions",suggestion:"Add at least one action to the parallel group"}),r.waitFor&&!["all","any"].includes(r.waitFor)&&e.push({code:"INVALID_WAIT_FOR",message:"waitFor must be 'all' or 'any'",field:"waitFor"});for(let n=0;n<r.actions.length;n++){let i=ar(r.actions[n]);for(let s of i.errors)e.push({...s,field:`actions[${n}]${s.field?`.${s.field}`:""}`});for(let s of i.warnings)t.push(s)}}function Gd(r,e,t){if(!r.url||typeof r.url!="string")e.push({code:"MISSING_URL",message:"navigate action requires 'url' property",field:"url"});else{let n=r.url.trim().toLowerCase();n.startsWith("javascript:")&&e.push({code:"DANGEROUS_URL",message:"javascript: URLs are not allowed",field:"url"}),n.startsWith("data:")&&t.push({code:"DATA_URL",message:"data: URLs may have limited support",suggestion:"Consider using a regular URL instead"})}}function Kd(r,e,t){if(!r.content||typeof r.content!="object"){e.push({code:"MISSING_CONTENT",message:"Modal action requires 'content' object",field:"content"});return}if((!r.content.body||typeof r.content.body!="string")&&e.push({code:"MISSING_BODY",message:"Modal content requires 'body' property",field:"content.body"}),r.size&&!["sm","md","lg"].includes(r.size)&&e.push({code:"INVALID_SIZE",message:"Modal size must be 'sm', 'md', or 'lg'",field:"size"}),r.ctaButtons)if(!Array.isArray(r.ctaButtons))e.push({code:"INVALID_CTA_BUTTONS",message:"ctaButtons must be an array",field:"ctaButtons"});else for(let n=0;n<r.ctaButtons.length;n++){let i=r.ctaButtons[n];(!i.label||typeof i.label!="string")&&e.push({code:"MISSING_BUTTON_LABEL",message:`CTA button at index ${n} requires 'label' property`,field:`ctaButtons[${n}].label`}),(!i.actionId||typeof i.actionId!="string")&&e.push({code:"MISSING_BUTTON_ACTION_ID",message:`CTA button at index ${n} requires 'actionId' property`,field:`ctaButtons[${n}].actionId`})}}function Yd(r,e,t){if((!r.tourId||typeof r.tourId!="string")&&e.push({code:"MISSING_TOUR_ID",message:"Tour action requires 'tourId' property",field:"tourId"}),!r.steps||!Array.isArray(r.steps)){e.push({code:"MISSING_STEPS",message:"Tour action requires 'steps' array",field:"steps"});return}r.steps.length===0&&e.push({code:"EMPTY_STEPS",message:"Tour must have at least one step",field:"steps"});let n=new Set;for(let i=0;i<r.steps.length;i++){let s=r.steps[i];if(!s.id||typeof s.id!="string"?e.push({code:"MISSING_STEP_ID",message:`Step at index ${i} requires 'id' property`,field:`steps[${i}].id`}):(n.has(s.id)&&e.push({code:"DUPLICATE_STEP_ID",message:`Duplicate step ID: ${s.id}`,field:`steps[${i}].id`}),n.add(s.id)),!s.action)e.push({code:"MISSING_STEP_ACTION",message:`Step at index ${i} requires 'action' property`,field:`steps[${i}].action`});else{let o=ar(s.action);for(let a of o.errors)e.push({...a,field:`steps[${i}].action${a.field?`.${a.field}`:""}`});for(let a of o.warnings)t.push(a)}if(s.onAction)for(let[o,a]of Object.entries(s.onAction))a!=="end"&&!r.steps.some(l=>l.id===a)&&t.push({code:"UNKNOWN_TARGET_STEP",message:`Step "${s.id}" references unknown target step: ${a}`,suggestion:`Make sure step "${a}" exists in the tour`})}}var Xd=new Set(["onclick","onerror","onload","onmouseover","onfocus","onblur","onchange","onsubmit","onkeydown","onkeyup","onkeypress"]),xl=5e4,wl=50;function ar(r){let e=[],t=[];if(!r||typeof r!="object")return e.push({code:"INVALID_ACTION",message:"Action must be an object"}),{valid:!1,errors:e,warnings:t};let{kind:n}=r;if(!n||typeof n!="string")return e.push({code:"MISSING_KIND",message:"Action must have a 'kind' property"}),{valid:!1,errors:e,warnings:t};if(!Nd(n)&&n!=="core:mountWidget"){let i=Cr.list();return console.error(`[ActionValidation] Unknown action kind: "${n}". Registered kinds (${i.length}): [${i.join(", ")}]. This usually means the app that provides "${n}" hasn't been activated yet, or the executor was never registered in ExecutorRegistry.`),e.push({code:"UNKNOWN_KIND",message:`Unknown action kind: ${n}`,field:"kind"}),{valid:!1,errors:e,warnings:t}}switch(n){case"overlays:highlight":case"overlays:pulse":case"navigation:scrollTo":Ar(r,e,t);break;case"overlays:badge":Ar(r,e,t),Fd(r,e,t);break;case"overlays:tooltip":Ar(r,e,t),Dd(r,e,t);break;case"overlays:modal":Kd(r,e,t);break;case"content:insertHtml":Ar(r,e,t),Hd(r,e,t);break;case"content:setText":Ar(r,e,t),Bd(r,e,t);break;case"content:setAttr":Ar(r,e,t),Vd(r,e,t);break;case"content:addClass":case"content:removeClass":Ar(r,e,t),Ud(r,e,t);break;case"content:setStyle":Ar(r,e,t),jd(r,e,t);break;case"core:mountWidget":Wd(r,e,t);break;case"core:wait":zd(r,e,t);break;case"core:sequence":qd(r,e,t);break;case"core:parallel":Zd(r,e,t);break;case"overlays:tour":Yd(r,e,t);break;case"navigation:navigate":Gd(r,e,t);break}return{valid:e.length===0,errors:e,warnings:t}}function Ar(r,e,t){let n=r.anchorId;if(!n||typeof n!="object"){e.push({code:"MISSING_ANCHOR_ID",message:"Action requires an 'anchorId' object with a 'selector' string",field:"anchorId"});return}if(!n.selector||typeof n.selector!="string"?e.push({code:"MISSING_ANCHOR_SELECTOR",message:"anchorId requires a 'selector' string",field:"anchorId.selector"}):n.selector.length>200&&t.push({code:"LONG_ANCHOR_ID",message:"Anchor selector is unusually long",suggestion:"Consider using a shorter, more descriptive selector"}),n.route===void 0||n.route===null)e.push({code:"MISSING_ANCHOR_ROUTE",message:`anchorId requires a 'route' (string or array of strings). Use "**" for all routes.`,field:"anchorId.route"});else{let i=Array.isArray(n.route)?n.route:[n.route];for(let s of i)if(typeof s!="string"){e.push({code:"INVALID_ANCHOR_ROUTE",message:"anchorId.route must be a string or array of strings",field:"anchorId.route"});break}}}function Sl(r){let e=[],t=[];if(!Array.isArray(r))return console.error("[ActionValidation] validateActions called with non-array:",typeof r),e.push({code:"INVALID_ACTIONS",message:"Actions must be an array"}),{valid:!1,errors:e,warnings:t};for(let n=0;n<r.length;n++){let i=ar(r[n]);if(!i.valid){let s=r[n];console.error(`[ActionValidation] Action [${n}] failed validation:`,`kind="${s?.kind??"undefined"}"`,i.errors.map(o=>`${o.code}: ${o.message}`).join("; "),s)}for(let s of i.errors)e.push({...s,field:s.field?`[${n}].${s.field}`:`[${n}]`});for(let s of i.warnings)t.push({...s,suggestion:s.suggestion?`Action ${n}: ${s.suggestion}`:void 0})}return e.length>0&&console.error(`[ActionValidation] Batch validation failed: ${e.length} error(s) in ${r.length} action(s).`,e.map(n=>`${n.field??"?"}: ${n.message}`).join(" | ")),{valid:e.length===0,errors:e,warnings:t}}var fC=0;function Jd(r){let{overlayRoot:e,eventBus:t,surfaces:n,anchorResolver:i,waitForAnchor:s,adaptiveId:o,executorRegistry:a=Cr,subscribeNavigation:l,runtime:c}=r,u=new Map,p=new Map;function h(){return`action-${++fC}`}function f(_,C){t&&t.publish(_,C)}function v(){return{overlayRoot:e,resolveAnchor:i,waitForAnchor:s,generateId:h,publishEvent:f,adaptiveId:o,applyAction:x,subscribeEvent:t?(_,C)=>t.subscribe({names:[_]},I=>C(I.props)):void 0,subscribeNavigation:l}}async function g(_,C){if(!n)throw new Error("Surfaces provider required for core:mountWidget actions");let I=n.mount(_.slot,{type:"widget",widgetId:_.widget.widgetId,config:_.widget.props},{priority:_.widget.priority});return C.publishEvent("action.applied",{id:C.generateId(),kind:"core:mountWidget",slot:_.slot,widgetId:_.widget.widgetId}),{cleanup:()=>{I.unmount()},updateFn:R=>{if("widget"in R&&R.widget){let P=R.widget;P.props&&I.update({type:"widget",widgetId:_.widget.widgetId,config:P.props})}}}}async function m(_,C){if(_.kind==="core:mountWidget")return g(_,C);let I=a.get(_.kind);if(!I){let R="list"in a?a.list():"(list unavailable)";throw console.error(`[ActionEngine] No executor for kind="${_.kind}".`,`Registered: [${R}]`),new Error(`No executor for action kind: ${_.kind}`)}return I(_,C)}function y(_,C,I,R){if(!c)return;let P=[],Y=!1,F=async()=>{if(Y)return;let L=u.get(_);if(L){Y=!0;try{let K=c.evaluateSync(I).value;if(L.state==="applied"&&!K){try{await L.cleanup()}catch(le){console.error(`[ActionEngine] Error reverting conditional action ${_}:`,le)}L.state="deferred",L.cleanup=()=>{},L.updateFn=void 0,f("action.deferred",{id:_,kind:C.kind})}else if(L.state==="deferred"&&K)try{let le=v(),j=await m(C,le);L.state="applied",L.cleanup=j.cleanup,L.updateFn=j.updateFn,L.appliedTs=Date.now()}catch(le){console.error(`[ActionEngine] Error applying deferred action ${_}:`,le),L.state="failed"}}finally{Y=!1}}};c.context&&P.push(c.context.subscribe(F)),c.accumulator&&P.push(c.accumulator.subscribe(F)),c.sessionMetrics&&P.push(c.sessionMetrics.subscribe(F)),c.events&&P.push(c.events.subscribe(F)),p.set(_,P)}async function x(_){let C=ar(_);if(!C.valid){let G=C.errors.map(K=>K.message).join("; ");throw console.error(`[ActionEngine] Validation failed for action kind="${_?.kind}":`,G,_),new Error(`Action validation failed: ${G}`)}let I=h(),R=_.triggerWhen;if(R&&c&&!c.evaluateSync(R).value){let K={id:I,action:_,adaptiveId:o,appliedTs:Date.now(),state:"deferred",cleanup:()=>{}};u.set(I,K);let le={id:I,action:_,async revert(){let j=u.get(I);if(!j)return;let te=p.get(I);if(te){for(let De of te)De();p.delete(I)}j.state="reverted",u.delete(I)},isApplied(){return u.get(I)?.state==="applied"},async update(j){let te=u.get(I);if(!te||te.state!=="applied")throw new Error("Cannot update action that is not applied");if(te.updateFn)await te.updateFn(j);else throw new Error(`Action kind ${_.kind} does not support updates`)},getState(){return u.get(I)?.state??"reverted"}};return y(I,_,R,le),le}let P=v(),Y=await m(_,P),F={id:I,action:_,adaptiveId:o,appliedTs:Date.now(),state:"applied",cleanup:Y.cleanup,updateFn:Y.updateFn};u.set(I,F);let L={id:I,action:_,async revert(){let G=u.get(I);if(!G||G.state!=="applied")return;let K=p.get(I);if(K){for(let le of K)le();p.delete(I)}try{await G.cleanup(),G.state="reverted",f("action.reverted",{id:I,kind:_.kind})}catch(le){console.warn(`[ActionEngine] Cleanup error for ${_.kind} (${I}), ignoring:`,le),G.state="reverted",f("action.reverted",{id:I,kind:_.kind})}finally{u.delete(I)}},isApplied(){return u.get(I)?.state==="applied"},async update(G){let K=u.get(I);if(!K||K.state!=="applied")throw new Error("Cannot update action that is not applied");if(K.updateFn)await K.updateFn(G);else throw new Error(`Action kind ${_.kind} does not support updates`)},getState(){return u.get(I)?.state??"reverted"}};return R&&c&&y(I,_,R,L),L}async function S(_){console.log(`[ActionEngine] applyBatch: ${_.length} action(s)`,_.map(F=>F.kind).join(", "));let C=Sl(_);if(!C.valid){let F=C.errors.map(L=>L.message).join("; ");throw console.error(`[ActionEngine] Batch validation FAILED for ${_.length} action(s):`,F,`
793
+ Actions:`,_.map((L,G)=>` [${G}] ${L.kind} ${L.anchorId?`anchor="${L.anchorId.selector}"`:""} ${L.label?`label="${L.label}"`:""}`).join(`
794
+ `)),new Error(`Batch validation failed: ${F}`)}let I=h(),R=[],P=[];try{let F=await Promise.allSettled(_.map(G=>x(G))),L=[];for(let G of F)G.status==="fulfilled"?(R.push(G.value),P.push(G.value)):L.push(G.reason instanceof Error?G.reason:new Error(String(G.reason)));if(L.length>0&&P.length===0)throw L[0];L.length>0&&console.warn(`[ActionEngine] ${L.length}/${_.length} action(s) failed in batch:`,L.map(G=>G.message).join("; "))}catch(F){console.error(`[ActionEngine] Batch apply FAILED. Successfully applied: ${P.length}. Rolling back...`,F);for(let L of P)try{await L.revert()}catch{}throw F}return{id:I,handles:R,async revertAll(){for(let F=R.length-1;F>=0;F--)try{await R[F].revert()}catch(L){console.error(`[ActionEngine] Error reverting action ${R[F].id}:`,L)}},isApplied(){return R.every(F=>F.isApplied())}}}function b(_){return ar(_)}function w(){return Array.from(u.values()).map(_=>({id:_.id,action:_.action,adaptiveId:_.adaptiveId,appliedTs:_.appliedTs,state:_.state}))}async function A(){for(let C of p.values())for(let I of C)try{I()}catch{}p.clear();let _=[];for(let C of u.values())if(C.state==="applied")try{let I=C.cleanup();I&&typeof I.then=="function"&&_.push(I.catch(R=>{console.error("[ActionEngine] Error during async cleanup:",R)}))}catch(I){console.error("[ActionEngine] Error during cleanup:",I)}u.clear(),_.length>0&&await Promise.all(_)}return{apply:x,applyBatch:S,validate:b,getActive:w,destroy:A}}var Cy=d.object({include:d.array(d.string()).optional().describe("URL patterns where this tile appears. Supports *, **, :param wildcards. Use sparingly \u2014 mostly to isolate to specific webapp functionality. Omit to appear on all routes."),exclude:d.array(d.string()).optional().describe("URL patterns where this tile should NOT appear. Evaluated before include.")}),kl=d.object({routes:Cy,onlyIfPopulated:d.boolean().optional().describe("When true, tile is hidden if none of its props.actions[] have an active triggerWhen. Useful for tiles with all-deferred FAQ questions or nav tips. Default: false.")});function w5(r){return Zr.safeParse(r)}function S5(r){return qs.safeParse(r)}function k5(r){return kl.safeParse(r)}var E5=[{defName:"matchOp",schema:Hs},{defName:"counterDef",schema:Bs},{defName:"activationConfig",schema:kl},{defName:"routeFilter",schema:Cy},{defName:"ruleStrategy",schema:Us},{defName:"scoreStrategy",schema:js},{defName:"modelStrategy",schema:Ws},{defName:"externalStrategy",schema:zs},{defName:"rule",schema:Vs},{defName:"condition",schema:Zr}];var Qd=d.object({tileId:d.string(),itemId:d.string().optional()}).strict(),gC=d.object({on:d.string(),title:d.string(),body:d.string().optional(),icon:d.string().optional(),ttl:d.number().optional(),cooldown:d.number().optional(),deepLink:Qd.optional()}).strict(),mC=d.object({id:d.string(),title:d.string().optional(),subtitle:d.string().optional(),icon:d.string().optional(),priority:d.number().optional(),widget:d.string(),props:d.record(d.unknown()).optional(),activation:kl.optional(),notifications:d.array(gC).optional()}).strict(),Ay=d.object({position:d.enum(["left","right"]).optional(),layout:d.enum(["overlay","push"]).optional(),background:d.string().optional(),blur:d.string().optional(),border:d.string().optional(),width:d.string().optional(),padding:d.string().optional(),transitionDuration:d.string().optional(),transitionEasing:d.string().optional(),transitionFade:d.string().optional(),backdrop:d.boolean().optional(),backdropColor:d.string().optional()}),vC=d.object({canvas:Ay.optional()}),yC=d.object({background:d.string().optional(),backgroundHover:d.string().optional(),color:d.string().optional(),size:d.string().optional(),shadow:d.string().optional(),borderRadius:d.string().optional(),icon:d.string().optional()}),bC=d.object({background:d.string().optional(),backgroundHover:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),shadow:d.string().optional(),titleColor:d.string().optional(),textColor:d.string().optional(),iconBackground:d.string().optional(),iconShadow:d.string().optional(),headerPadding:d.string().optional(),bodyPadding:d.string().optional(),gap:d.string().optional()}),_C=d.object({background:d.string().optional(),textColor:d.string().optional(),titleColor:d.string().optional(),arrowColor:d.string().optional(),arrowSize:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),scrimOpacity:d.string().optional(),highlightRing:d.string().optional()}),xC=d.object({background:d.string().optional(),textColor:d.string().optional(),textSecondaryColor:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),successColor:d.string().optional(),warningColor:d.string().optional(),errorColor:d.string().optional(),iconBackground:d.string().optional(),progressGradient:d.string().optional()}),wC=d.object({background:d.string().optional(),backgroundHover:d.string().optional(),border:d.string().optional(),borderRadius:d.string().optional(),textColor:d.string().optional(),textSecondaryColor:d.string().optional(),itemDivider:d.string().optional(),itemGap:d.string().optional(),itemPadding:d.string().optional(),itemFontSize:d.string().optional(),bodyPadding:d.string().optional(),bodyFontSize:d.string().optional(),categoryPadding:d.string().optional(),categoryGap:d.string().optional(),categoryFontSize:d.string().optional(),searchBackground:d.string().optional(),searchColor:d.string().optional(),chevronColor:d.string().optional()}),SC=d.object({mode:d.enum(["dark","light"]).optional(),fontFamily:d.string().optional(),colorPrimary:d.string().optional(),colorPrimaryHover:d.string().optional(),borderRadius:d.string().optional(),canvas:Ay.optional(),launcher:yC.optional(),tile:bC.optional(),overlay:_C.optional(),notification:xC.optional(),content:wC.optional(),mobile:vC.optional()}).strict(),kC=d.object({enabled:d.boolean().optional(),label:d.string().optional(),position:d.string().optional(),animate:d.boolean().optional(),animationStyle:d.enum(["pulse","bounce","glow"]).optional(),notificationCount:d.number().optional()}).strict(),I5=d.object({schemaVersion:d.string().optional(),fetchedAt:d.string().datetime(),configVersion:d.string().optional(),canvasTitle:d.string().optional(),displayMode:d.enum(["standard","focused","inline"]).optional(),tiles:d.array(mC),actions:d.array(d.any()),theme:SC.optional(),launcher:kC.optional(),meta:d.object({verificationSteps:d.array(d.union([d.string(),d.object({text:d.string(),check:Zr.optional()})])).optional()}).passthrough().optional()}).strict();var Ge={triggerWhen:Ga},Rt=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),Ty=d.object({color:d.string().optional(),scrimOpacity:d.number().min(0).max(1).optional(),paddingPx:d.number().optional(),radiusPx:d.number().optional()}).strict(),Ry=d.enum(["top-left","top-right","bottom-left","bottom-right"]),Iy=d.enum(["top","top-start","top-end","bottom","bottom-start","bottom-end","left","left-start","left-end","right","right-start","right-end"]),EC=/^(?:[/.#?]|[hH][tT][tT][pP][sS]?:\/\/|[mM][aA][iI][lL][tT][oO]:|[tT][eE][lL]:)/,CC=d.string().min(1).regex(EC,{message:"href must start with /, ./, ../, #, ?, http(s)://, mailto:, or tel: \u2014 javascript:, data:, and vbscript: are not allowed"}).refine(r=>{try{let e=new URL(r,"https://syntro.local/");return["http:","https:","mailto:","tel:"].includes(e.protocol)}catch{return!1}},{message:"href resolves to an unsupported protocol"}),tp=d.object({label:d.string().describe("Visible button label."),actionId:d.string().describe('Identifier emitted on action.modal_cta_clicked / action.tooltip_cta_clicked. Use "dismiss" to close the overlay without publishing an event or navigating, even if href is set.'),primary:d.boolean().optional().describe("When true, renders as the primary (filled) button. Defaults to false."),href:CC.optional().describe('URL to navigate to when the button is clicked. Use this to drive users to a destination (product page, signup, etc.) \u2014 set href on a non-dismiss button rather than relying on actionId conventions or content:setAttr tricks. Accepts relative paths ("/product/x"), fragments ("#section"), query strings, and absolute http(s) URLs. javascript:/data:/vbscript: are rejected.'),target:d.enum(["_self","_blank"]).optional().describe('Navigation target. "_self" (default) replaces the current tab; "_blank" opens a new tab with noopener,noreferrer.')}).strict(),$y=d.object({title:d.string().optional(),body:d.string(),ctaButtons:d.array(tp).optional()}).strict(),My=d.object({title:d.string().optional(),body:d.string()}).strict(),Py=d.enum(["before","after","prepend","append","replace"]),Oy=d.enum(["immediate","hover","click"]),Ly=d.object({widgetId:d.string(),props:d.record(d.unknown()).optional(),priority:d.number().optional()}).strict(),Ny=d.object({id:d.string(),action:d.any(),route:d.string().optional(),onAction:d.record(d.string()).optional()}).passthrough(),Fy=d.enum(["auto","smooth","instant"]),ep=d.enum(["start","center","end","nearest"]),Dy=d.object({kind:d.literal("content:setText"),anchorId:Rt,text:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Hy=d.object({kind:d.literal("content:setAttr"),anchorId:Rt,attr:d.string(),value:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),By=d.object({kind:d.literal("content:addClass"),anchorId:Rt,className:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Vy=d.object({kind:d.literal("content:removeClass"),anchorId:Rt,className:d.string(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Uy=d.object({kind:d.literal("content:setStyle"),anchorId:Rt,styles:d.record(d.string()),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),jy=d.object({kind:d.literal("content:insertHtml"),anchorId:Rt,html:d.string(),position:Py,deepLink:Qd.optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Wy=d.object({kind:d.literal("overlays:highlight"),anchorId:Rt,style:Ty.optional(),duration:d.number().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),zy=d.object({kind:d.literal("overlays:pulse"),anchorId:Rt,duration:d.number().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),qy=d.object({kind:d.literal("overlays:badge"),anchorId:Rt,content:d.string(),position:Ry.optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Zy=d.object({kind:d.literal("overlays:tooltip"),anchorId:Rt,content:$y,trigger:Oy.optional(),placement:Iy.optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Gy=d.object({kind:d.literal("overlays:modal"),content:My,size:d.enum(["sm","md","lg"]).optional(),blocking:d.boolean().optional(),scrim:d.object({opacity:d.number().min(0).max(1).optional()}).strict().optional(),dismiss:d.object({onEsc:d.boolean().optional(),closeButton:d.boolean().optional(),timeoutMs:d.number().min(0).optional()}).strict().optional(),ctaButtons:d.array(tp).optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Ky=d.object({kind:d.literal("navigation:scrollTo"),anchorId:Rt,behavior:Fy.optional(),block:ep.optional(),inline:ep.optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Yy=d.object({kind:d.literal("navigation:navigate"),url:d.string(),target:d.enum(["_self","_blank"]).optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Xy=d.object({kind:d.literal("core:mountWidget"),slot:d.string(),widget:Ly,label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Jy=d.object({kind:d.literal("core:wait"),durationMs:d.number().min(0).optional(),event:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),Qy=d.object({kind:d.literal("core:sequence"),actions:d.array(d.any()),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),eb=d.object({kind:d.literal("core:parallel"),actions:d.array(d.any()),waitFor:d.enum(["all","any"]).optional(),label:d.string().optional()}).extend(Ge).extend(Ve).strict(),tb=d.object({kind:d.literal("overlays:tour"),tourId:d.string(),steps:d.array(Ny).min(1),startStep:d.string().optional(),autoStart:d.boolean().optional(),label:d.string().optional()}).extend(Ge).extend(Ve).passthrough(),AC=[{defName:"setText",schema:Dy},{defName:"setAttr",schema:Hy},{defName:"addClass",schema:By},{defName:"removeClass",schema:Vy},{defName:"setStyle",schema:Uy},{defName:"insertHtml",schema:jy},{defName:"highlight",schema:Wy},{defName:"pulse",schema:zy},{defName:"badge",schema:qy},{defName:"tooltip",schema:Zy},{defName:"modal",schema:Gy},{defName:"scrollTo",schema:Ky},{defName:"navigate",schema:Yy},{defName:"mountWidget",schema:Xy},{defName:"wait",schema:Jy},{defName:"sequence",schema:Qy},{defName:"parallel",schema:eb},{defName:"tour",schema:tb}];function rp(r){let e=r?.root??(typeof document<"u"?document.body:null),t=r?.defaultTimeoutMs??5e3,n=new Map,i=new Map,s=null,o=!1;function a(m){if(!e)return null;try{return e.matches(m)?e:e.querySelector(m)}catch{return null}}function l(){for(let[m,y]of n){let x=a(m);if(x){for(let S of y)clearTimeout(S.timer),S.resolve(x);n.delete(m)}}for(let[m,y]of i){let x=a(m);if(x){for(let S of y)S.cancelled||S.cb(x);i.delete(m)}}n.size===0&&i.size===0&&u()}function c(){s||o||typeof MutationObserver>"u"||!e||(s=new MutationObserver(()=>{l()}),s.observe(e,{childList:!0,subtree:!0}))}function u(){s&&(s.disconnect(),s=null)}function p(m,y){let x=n.get(m);x&&(x.delete(y),x.size===0&&n.delete(m)),n.size===0&&i.size===0&&u()}function h(m,y){if(o)return Promise.reject(new Error("AnchorResolver destroyed"));let x=a(m);if(x)return Promise.resolve(x);let S=y??t;return new Promise((b,w)=>{let A={resolve:b,reject:w,timer:setTimeout(()=>{p(m,A),w(new Error(`waitFor("${m}") timed out after ${S}ms`))},S)},_=n.get(m);_||(_=new Set,n.set(m,_)),_.add(A),c()})}function f(m,y){if(o)return()=>{};let x=a(m);if(x)return y(x),()=>{};let S={cb:y,cancelled:!1},b=i.get(m);return b||(b=new Set,i.set(m,b)),b.add(S),c(),()=>{S.cancelled=!0;let w=i.get(m);w&&(w.delete(S),w.size===0&&i.delete(m)),n.size===0&&i.size===0&&u()}}function v(){let m=0;for(let y of n.values())m+=y.size;return m}function g(){o=!0,u();let m=new Error("AnchorResolver destroyed");for(let y of n.values())for(let x of y)clearTimeout(x.timer),x.reject(m);n.clear(),i.clear()}return{resolve:a,waitFor:h,onAppear:f,pendingCount:v,destroy:g}}var rb={timeout:300,className:"sc-anti-flicker",style:"opacity: 0 !important",hostLoadingSelector:"",waitForHostReady:""};function nb(r={}){let{timeout:e,className:t,style:n,hostLoadingSelector:i,waitForHostReady:s}={...rb,...r};if(i&&document.querySelector(i))return()=>{};let o=document.createElement("style");o.textContent=`.${t} { ${n} }`,document.head.appendChild(o),document.documentElement.classList.add(t);let a=!1,l=()=>{a||(a=!0,clearTimeout(u),document.documentElement.classList.remove(t),o.remove(),s&&c&&document.removeEventListener(s,c))},c;s&&(c=()=>l(),document.addEventListener(s,c));let u=setTimeout(()=>{l()},e);return()=>{l()}}function TC(r={}){let{className:e,style:t}={...rb,...r};return`
795
795
  (function() {
796
796
  var s = document.createElement('style');
797
797
  s.textContent = '.${e} { ${t} }';
798
798
  document.head.appendChild(s);
799
799
  document.documentElement.className += ' ${e}';
800
- })();`}var ME=["cdn.syntrologie.com","api.syntrologie.com","dev-api.syntrologie.com","localhost","127.0.0.1",".syntrologie.com"];function fy(r){if(typeof window>"u")return null;let t=new URLSearchParams(window.location.search).get(r);if(!t)return null;try{let n=t.replace(/-/g,"+").replace(/_/g,"/");return JSON.parse(atob(n))}catch(n){return Ze("Syntro Runtime",`Failed to decode ${r}:`,n),null}}var $d="__syntro_rt_editor_source",Md="__syntro_rt_editor_conf";function gl(r,e){try{sessionStorage.setItem(r,JSON.stringify(e))}catch{}}function gy(r){try{let e=sessionStorage.getItem(r);return e?JSON.parse(e):null}catch{return null}}var Xr,Jr;function lo(){if(Xr==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.token)Xr={token:r.token,api_base:r.apiBase||""},gl($d,Xr),console.log(`[DIAG] getEditorSource: from __SYNTRO_EDITOR_PARAMS__ (token=${Xr.token.slice(0,15)}...)`);else{let e=fy("editor_source");if(e)Xr=e,gl($d,e);else{let t=gy($d);t?.token&&(Xr=t,console.log(`[DIAG] getEditorSource: restored from sessionStorage (token=${t.token.slice(0,15)}...)`))}console.log(`[DIAG] getEditorSource: from URL param \u2192 ${e?`token=${e.token?.slice(0,15)}...`:"NULL"}`),!e&&typeof window<"u"&&console.log(`[DIAG] getEditorSource: URL search = ${window.location.search.slice(0,200)}`)}}return Xr??null}function ml(){if(Jr==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.mode)Jr={mode:r.mode,audit_session_id:r.auditSessionId,syntro_token:r.syntroToken,workspace_id:r.workspaceId},gl(Md,Jr),console.log(`[DIAG] getEditorConf: from __SYNTRO_EDITOR_PARAMS__ (mode=${Jr.mode})`);else{let e=fy("editor_conf");if(e)Jr=e,gl(Md,e);else{let t=gy(Md);t?.mode&&(Jr=t,console.log(`[DIAG] getEditorConf: restored from sessionStorage (mode=${t.mode})`))}console.log(`[DIAG] getEditorConf: from URL param \u2192 ${e?`mode=${e.mode}`:"NULL"}`)}}return Jr??null}function OE(r){Z("Syntro Runtime","Validating editor URL:",r);try{if(r.startsWith("/"))return Z("Syntro Runtime","\u2713 Relative URL allowed (same-origin):",r),!0;let e=new URL(r),t=/^(localhost|127\.0\.0\.1)$/.test(e.hostname);return e.protocol!=="https:"&&!t?(Ze("Syntro Runtime","\u274C Editor URL must use HTTPS:",r),!1):ME.some(i=>i.startsWith(".")?e.hostname.endsWith(i)||e.hostname===i.slice(1):e.hostname===i)?(Z("Syntro Runtime","\u2713 Editor URL validated"),!0):(Ze("Syntro Runtime","\u274C Editor URL host not in allowlist:",e.hostname),!1)}catch(e){return Ze("Syntro Runtime",`\u274C Invalid editor URL: ${r}`,e),!1}}var vl=()=>{let r=ml();return!lo()?.token||!r?.mode?null:r.mode};function PE(){return lo()?.token??null}function NE(){return lo()?.api_base??null}var ao=null,my=async r=>{if(Z("Syntro Runtime","====== LOAD EDITOR SDK ======"),typeof window>"u"){Z("Syntro Runtime","Not in browser - skipping editor SDK load");return}if(window.SyntroEditor){Z("Syntro Runtime","Editor SDK already loaded (window.SyntroEditor exists)");return}if(ao)return Z("Syntro Runtime","Editor SDK load already in progress, waiting..."),ao;let e=typeof r=="string"?{editorUrl:r}:r??{};if(e.editorUrl==="skip"){Z("Syntro Runtime",'editorUrl="skip" \u2014 deferring to caller'),Z("Syntro Runtime","================================");return}let t=NE(),i=(t?`${t}/api/editor/sdk/editor-sdk.js`:null)||e.editorUrl;if(!i){Ze("Syntro Runtime","\u274C No editor SDK URL available (no api_base, no editorUrl option)"),Z("Syntro Runtime","================================");return}let s=PE(),o=s?`${i}?token=${encodeURIComponent(s)}`:i;if(Z("Syntro Runtime","Editor URL:",o),Z("Syntro Runtime","Options:",{hasIntegrity:!!e.integrity,hasEditorUrl:!!i,hasApiBase:!!t,tokenPrefix:s?`${s.slice(0,10)}...`:"none"}),!OE(i)){console.error("[Syntro Runtime] \u274C BLOCKED: Editor from untrusted URL:",i),Z("Syntro Runtime","================================");return}return Z("Syntro Runtime","\u2713 URL validated, injecting script tag..."),ao=new Promise((a,l)=>{let c=document.createElement("script");c.src=o,c.async=!0,e.integrity&&(c.integrity=e.integrity,c.crossOrigin="anonymous",Z("Syntro Runtime","SRI integrity check enabled")),c.onload=()=>{Z("Syntro Runtime","\u2713 Editor SDK script loaded successfully"),Z("Syntro Runtime","================================"),a()},c.onerror=u=>{console.error("[Syntro Runtime] \u274C Failed to load Editor SDK:",u),console.error("[Syntro Runtime] URL attempted:",o),Z("Syntro Runtime","================================"),ao=null,l(u)},document.head.appendChild(c),Z("Syntro Runtime","Script tag appended to <head>")}),ao};var or=null;function yy(r){or&&or!==r?r.appendChild(or):or=r;let e=r.getRootNode();e instanceof ShadowRoot&&LE(e)}function by(){return or||(or=document.createElement("div"),or.id="syntro-overlays",Object.assign(or.style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),document.body.appendChild(or)),or}var vy=!1;function LE(r){if(vy)return;let e=`
800
+ })();`}var RC=["cdn.syntrologie.com","api.syntrologie.com","dev-api.syntrologie.com","localhost","127.0.0.1",".syntrologie.com"];function ib(r){if(typeof window>"u")return null;let t=new URLSearchParams(window.location.search).get(r);if(!t)return null;try{let n=t.replace(/-/g,"+").replace(/_/g,"/");return JSON.parse(atob(n))}catch(n){return Ze("Syntro Runtime",`Failed to decode ${r}:`,n),null}}var np="__syntro_rt_editor_source",ip="__syntro_rt_editor_conf";function El(r,e){try{sessionStorage.setItem(r,JSON.stringify(e))}catch{}}function sb(r){try{let e=sessionStorage.getItem(r);return e?JSON.parse(e):null}catch{return null}}var Qr,en;function go(){if(Qr==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.token)Qr={token:r.token,api_base:r.apiBase||""},El(np,Qr),console.log(`[DIAG] getEditorSource: from __SYNTRO_EDITOR_PARAMS__ (token=${Qr.token.slice(0,15)}...)`);else{let e=ib("editor_source");if(e)Qr=e,El(np,e);else{let t=sb(np);t?.token&&(Qr=t,console.log(`[DIAG] getEditorSource: restored from sessionStorage (token=${t.token.slice(0,15)}...)`))}console.log(`[DIAG] getEditorSource: from URL param \u2192 ${e?`token=${e.token?.slice(0,15)}...`:"NULL"}`),!e&&typeof window<"u"&&console.log(`[DIAG] getEditorSource: URL search = ${window.location.search.slice(0,200)}`)}}return Qr??null}function Cl(){if(en==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.mode)en={mode:r.mode,audit_session_id:r.auditSessionId,syntro_token:r.syntroToken,workspace_id:r.workspaceId},El(ip,en),console.log(`[DIAG] getEditorConf: from __SYNTRO_EDITOR_PARAMS__ (mode=${en.mode})`);else{let e=ib("editor_conf");if(e)en=e,El(ip,e);else{let t=sb(ip);t?.mode&&(en=t,console.log(`[DIAG] getEditorConf: restored from sessionStorage (mode=${t.mode})`))}console.log(`[DIAG] getEditorConf: from URL param \u2192 ${e?`mode=${e.mode}`:"NULL"}`)}}return en??null}function IC(r){Z("Syntro Runtime","Validating editor URL:",r);try{if(r.startsWith("/"))return Z("Syntro Runtime","\u2713 Relative URL allowed (same-origin):",r),!0;let e=new URL(r),t=/^(localhost|127\.0\.0\.1)$/.test(e.hostname);return e.protocol!=="https:"&&!t?(Ze("Syntro Runtime","\u274C Editor URL must use HTTPS:",r),!1):RC.some(i=>i.startsWith(".")?e.hostname.endsWith(i)||e.hostname===i.slice(1):e.hostname===i)?(Z("Syntro Runtime","\u2713 Editor URL validated"),!0):(Ze("Syntro Runtime","\u274C Editor URL host not in allowlist:",e.hostname),!1)}catch(e){return Ze("Syntro Runtime",`\u274C Invalid editor URL: ${r}`,e),!1}}var Al=()=>{let r=Cl();return!go()?.token||!r?.mode?null:r.mode};function $C(){return go()?.token??null}function MC(){return go()?.api_base??null}var fo=null,ob=async r=>{if(Z("Syntro Runtime","====== LOAD EDITOR SDK ======"),typeof window>"u"){Z("Syntro Runtime","Not in browser - skipping editor SDK load");return}if(window.SyntroEditor){Z("Syntro Runtime","Editor SDK already loaded (window.SyntroEditor exists)");return}if(fo)return Z("Syntro Runtime","Editor SDK load already in progress, waiting..."),fo;let e=typeof r=="string"?{editorUrl:r}:r??{};if(e.editorUrl==="skip"){Z("Syntro Runtime",'editorUrl="skip" \u2014 deferring to caller'),Z("Syntro Runtime","================================");return}let t=MC(),i=(t?`${t}/api/editor/sdk/editor-sdk.js`:null)||e.editorUrl;if(!i){Ze("Syntro Runtime","\u274C No editor SDK URL available (no api_base, no editorUrl option)"),Z("Syntro Runtime","================================");return}let s=$C(),o=s?`${i}?token=${encodeURIComponent(s)}`:i;if(Z("Syntro Runtime","Editor URL:",o),Z("Syntro Runtime","Options:",{hasIntegrity:!!e.integrity,hasEditorUrl:!!i,hasApiBase:!!t,tokenPrefix:s?`${s.slice(0,10)}...`:"none"}),!IC(i)){console.error("[Syntro Runtime] \u274C BLOCKED: Editor from untrusted URL:",i),Z("Syntro Runtime","================================");return}return Z("Syntro Runtime","\u2713 URL validated, injecting script tag..."),fo=new Promise((a,l)=>{let c=document.createElement("script");c.src=o,c.async=!0,e.integrity&&(c.integrity=e.integrity,c.crossOrigin="anonymous",Z("Syntro Runtime","SRI integrity check enabled")),c.onload=()=>{Z("Syntro Runtime","\u2713 Editor SDK script loaded successfully"),Z("Syntro Runtime","================================"),a()},c.onerror=u=>{console.error("[Syntro Runtime] \u274C Failed to load Editor SDK:",u),console.error("[Syntro Runtime] URL attempted:",o),Z("Syntro Runtime","================================"),fo=null,l(u)},document.head.appendChild(c),Z("Syntro Runtime","Script tag appended to <head>")}),fo};var lr=null;function lb(r){lr&&lr!==r?r.appendChild(lr):lr=r;let e=r.getRootNode();e instanceof ShadowRoot&&PC(e)}function cb(){return lr||(lr=document.createElement("div"),lr.id="syntro-overlays",Object.assign(lr.style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),document.body.appendChild(lr)),lr}var ab=!1;function PC(r){if(ab)return;let e=`
801
801
  :host {
802
802
  --syntro-surface: var(--sc-overlay-background, #0f1318);
803
803
  --syntro-fg: var(--sc-overlay-text-color, #cbd0d7);
@@ -1059,10 +1059,10 @@ Actions:`,_.map((N,G)=>` [${G}] ${N.kind} ${N.anchorId?`anchor="${N.anchorId.se
1059
1059
  .syntro-modal-btn-primary:hover {
1060
1060
  background: var(--syntro-accent-hover, #d44844);
1061
1061
  }
1062
- `,t=document.createElement("style");t.setAttribute("data-syntro","base-overlay"),t.textContent=e,r.appendChild(t),vy=!0}var Od=async(r={})=>{if(typeof window>"u"||typeof document>"u")throw new Error("SmartCanvas can only be created in a browser-like environment");let e=null;if(r.antiFlicker){let m=typeof r.antiFlicker=="object"?r.antiFlicker:{};e=hy(m)}let t=null,n=null,i=null,{runtime:s}=r;async function o(m){!s?.actions||m.length===0||(i?.isApplied()&&await i.revertAll(),i=await s.actions.applyBatch(m))}async function a(){i?.isApplied()&&(await i.revertAll(),i=null)}if(r.fetcher)try{n=r.fetcher,console.log("[SmartCanvas] Fetching initial config...");let m=await r.fetcher();t=m,console.log("[SmartCanvas] Config fetched:",`tiles=${m.tiles?.length??0},`,`actions=${m.actions?.length??0},`,`theme=${m.theme?.mode??"default"}`),m.actions?.length&&console.log("[SmartCanvas] Actions to apply:",m.actions.map((y,x)=>`[${x}] ${y.kind}${y.anchorId?` anchor="${y.anchorId.selector}"`:""}${y.label?` "${y.label}"`:""}`).join(", ")),m.actions&&m.actions.length>0&&s?.actions&&(await o(m.actions),console.log("[SmartCanvas] Initial actions applied successfully")),m.tiles&&s?.accumulator&&wi(m.tiles,s.accumulator,m.actions)}catch(m){console.error("[SmartCanvas] Error fetching/applying initial config:",m)}e&&e();let l=vl();al();let c=document.createElement("smart-canvas");if(r.tokens)for(let[m,y]of Object.entries(r.tokens))c.style.setProperty(m,y);let u=r.integrations?.experiments,p=r.integrations?.telemetry,h=r.fetcher??xi({configUri:r.configUri,experiments:u,featureKey:r.configUriFeatureKey,credentials:r.fetchCredentials});n||(n=h);let f={fetcher:h,configUri:r.configUri,configUriFeatureKey:r.configUriFeatureKey,fetchCredentials:r.fetchCredentials,experiments:u,telemetry:p,runtime:s,initialBatchHandle:i,initialBatchActions:i?t?.actions??[]:void 0,workspaceTheme:r.workspaceTheme};c.mountLitApp(f),r.defaultOpen&&c.open();let v=()=>{let m=r.target??document.body;if(m){m.appendChild(c);let y=c.getOverlayContainer();y&&yy(y)}};document.body?v():document.addEventListener("DOMContentLoaded",v,{once:!0}),(l||r.editorUrl)&&(console.log(`[SmartCanvas] Loading editor SDK for ${l??"config"} mode`),my(r.editorUrl).catch(console.error));let g={el:c,open:()=>c.open(),close:()=>c.close(),destroy:()=>{a(),c.remove()},setTokens:m=>{for(let[y,x]of Object.entries(m))c.style.setProperty(y,x)},getConfig:async()=>{if(n)try{let m=await n();return t=m,m}catch(m){console.error("[SmartCanvas] Error fetching config:",m)}return t??{tiles:[],actions:[],fetchedAt:""}},setEnabled:async m=>{m?t&&await o(t.actions):await a()},setOverrideFetcher:m=>{n=m,c.setOverrideFetcher(m),s?.accumulator&&m().then(y=>{y?.tiles&&wi(y.tiles,s.accumulator,y.actions)}).catch(()=>{})},registerTelemetryProperties:m=>{p?.register?.(m)},getSessionId:()=>p?.getSessionId?.(),startSessionRecording:()=>{p?.startSessionRecording?.()},track:(m,y)=>p?.track?(p.track(m,y),!0):!1,previewNotification:m=>c.previewNotification(m),runtime:s};if(typeof window<"u"){let m=window.SynOS;m&&(m.handle=g)}return g};typeof window<"u"&&(window.SmartCanvas={async create(r){return Od(r)}});var Pd="syn_";function co(r){if(!r.startsWith(Pd))throw new Error("Invalid Syntro token: must start with 'syn_'");let t=r.slice(Pd.length).replace(/-/g,"+").replace(/_/g,"/"),n=atob(t),i=JSON.parse(n);if(i.v!==1)throw new Error(`Unsupported token version: ${i.v}`);return i}function Nd(r){let e=JSON.stringify(r),t=btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"");return Pd+t}function It(r){if(typeof process<"u"&&process.env)return process.env[r];if(typeof import.meta.env<"u"&&import.meta.env)return import.meta.env[r]}var xy="syntro_segment_attributes";function wy(){if(typeof window>"u")return{};try{let r=localStorage.getItem(xy);if(r){let e=JSON.parse(r);return Z("Syntro Bootstrap","Loaded cached segment attributes:",e),e}}catch(r){Ze("Syntro Bootstrap","Failed to load cached segment attributes:",r)}return{}}function Sy(r){if(!(typeof window>"u"))try{localStorage.setItem(xy,JSON.stringify(r)),Z("Syntro Bootstrap","Cached segment attributes:",r)}catch(e){Ze("Syntro Bootstrap","Failed to cache segment attributes:",e)}}function ky(r){if(!r)return{};let e={};for(let[t,n]of Object.entries(r))t.startsWith("in_segment_")&&(e[t]=n===!0);return e}function Ld(){if(typeof window>"u")return{};let r={};try{let e=new URLSearchParams(window.location.search);for(let t of["utm_source","utm_medium","utm_campaign","utm_content","utm_term"]){let n=e.get(t);n&&(r[t]=n)}}catch{}try{navigator.language&&(r.browser_language=navigator.language),navigator.languages?.length&&(r.browser_languages=[...navigator.languages])}catch{}try{let e=window.innerWidth;r.device_type=e<768?"mobile":e<1024?"tablet":"desktop"}catch{}try{if(document.referrer){r.referrer=document.referrer;try{r.referrer_hostname=new URL(document.referrer).hostname}catch{}}}catch{}try{let e=navigator.userAgent;e.includes("Edg/")?r.browser="Edge":e.includes("OPR/")||e.includes("Opera")?r.browser="Opera":e.includes("Chrome/")&&!e.includes("Chromium")?r.browser="Chrome":e.includes("Safari/")&&!e.includes("Chrome")?r.browser="Safari":e.includes("Firefox/")&&(r.browser="Firefox"),e.includes("Windows")?r.os="Windows":e.includes("iPhone")||e.includes("iPad")?r.os="iOS":e.includes("Mac OS X")||e.includes("Macintosh")?r.os="macOS":e.includes("Android")?r.os="Android":e.includes("Linux")&&(r.os="Linux")}catch{}try{r.page_url=window.location.href,r.page_path=window.location.pathname,r.page_host=window.location.hostname,window.location.search&&(r.page_query=window.location.search)}catch{}try{let e=window.Telegram?.WebApp;e?(r.surface_type="telegram",r.surface_host=e.platform||"unknown"):(r.surface_type="web",r.surface_host="web")}catch{r.surface_type="web",r.surface_host="web"}try{let e=r.surface_type;e==="telegram"||e==="mcp-app"?r.surface="personal_agent":r.device_type==="mobile"?r.surface="mobile":r.surface="desktop"}catch{r.surface="desktop"}return r}var _y="syntro_geo",Ey="https://geo.syntrologie.com";async function Fd(r){if(typeof window>"u")return{};try{let e=localStorage.getItem(_y);if(e){let t=JSON.parse(e);return Z("Syntro Bootstrap","Geo: using cached data:",t),t}}catch{}try{let e=await fetch(r,{signal:AbortSignal.timeout(2e3)});if(e.ok){let t=await e.json(),n={};for(let[i,s]of Object.entries(t))typeof s=="string"&&s&&(n[i]=s);try{localStorage.setItem(_y,JSON.stringify(n))}catch{}return Z("Syntro Bootstrap","Geo: fetched from worker:",n),n}}catch{}return{}}var Dd=null;if(typeof document<"u")try{let r=document.currentScript instanceof HTMLScriptElement?document.currentScript.src:null;if(r){let e=new URL(r),t=e.pathname.replace(/\/[^/]*$/,"");Dd=`${e.origin}${t}`}}catch{Dd=null}function Cy(){return Dd}var Ay=["fbclid","ttclid","gclid","gbraid","wbraid","msclkid","twclid","li_fat_id","epik","ScCid","yclid","_kx","mc_eid","mc_cid"];function Hd(r){if(typeof window>"u"||!r.setPersonPropertiesOnce)return;let e=new URLSearchParams(window.location.search),t={};for(let n of Ay){let i=e.get(n);i&&(t[`$initial_${n}`]=i)}Object.keys(t).length>0&&r.setPersonPropertiesOnce(t)}var FE=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,DE=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,HE=[/@yopmail\.com$/i,/@mailinator\.com$/i,/@guerrillamail\.(com|info|net|org|biz)$/i,/@10minutemail\.com$/i,/^test@/i,/^noreply@/i,/^no-reply@/i];function yl(r){return r?DE.test(r):!1}function Ry(r){return HE.some(e=>e.test(r))}function BE(r){if(r.type==="email")return!0;let e=(r.name||"").toLowerCase(),t=(r.id||"").toLowerCase();return!!(/email/.test(e)||/email/.test(t))}function VE(r){return r.closest("[data-syntro-no-identify]")!==null}function jE(r){return r?FE.test(r):!0}function Bd(r,e){if(typeof document>"u")return()=>{};if(!r.identify&&!r.alias)return()=>{};let t=new Set,n=s=>{let o=r.getDistinctId?.();if(o===s){t.add(s);return}jE(o)?r.identify?.(s,{email:s}):r.alias?.(s),t.add(s)},i=s=>{let o=s.target;if(!(o instanceof HTMLInputElement)||VE(o)||!BE(o))return;let a=(o.value??"").trim().toLowerCase();if(!yl(a)||Ry(a)||t.has(a))return;if(!e){n(a);return}let l=e.getStatus();if(l==="granted"){n(a);return}l!=="denied"&&e.resolvePending().then(c=>{c==="granted"&&n(a)})};return document.addEventListener("change",i,!0),()=>{document.removeEventListener("change",i,!0),t.clear()}}var Ty="_syu",UE=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function WE(r){return r?UE.test(r):!0}function Vd(r,e){if(typeof window>"u"||!r.identify&&!r.alias)return;let t=new URLSearchParams(window.location.search).get(Ty);if(!t)return;let n=t.trim();if(!n)return;let i=()=>{let a=r.getDistinctId?.();if(a===n)return;let l=yl(n)?{email:n}:void 0;WE(a)?r.identify?.(n,l):r.alias?.(n)};if(!e){i();return}if(e.getStatus()==="granted"){i();return}let s=!1,o=e.subscribe(a=>{s||a==="granted"&&(s=!0,o(),i())})}var zE=["utm_source","utm_medium","utm_campaign","utm_content","utm_term"];function qE(r){return r.is_eu==="true"||r.country_code==="GB"||r.country_code==="CH"||!r.is_eu&&!r.country_code}function ZE(r){if(!r)return"";try{return new URL(r).hostname}catch{return""}}function jd(){return typeof window>"u"?"":`${window.location.origin}${window.location.pathname}`}function Ud(r,e){if(typeof window>"u"||typeof document>"u"||!r.setPersonPropertiesOnce)return;let t=document.referrer||"",n=new URLSearchParams(window.location.search),i={$initial_pathname:window.location.pathname,$initial_referrer:t,$initial_referring_domain:ZE(t)};for(let s of zE){let o=n.get(s);o&&(i[`$initial_${s}`]=o)}if(r.setPersonPropertiesOnce(i),!e){r.setPersonPropertiesOnce({$initial_url:jd()});return}e.then(s=>{let o=qE(s)?jd():window.location.href;r.setPersonPropertiesOnce?.({$initial_url:o})}).catch(()=>{r.setPersonPropertiesOnce?.({$initial_url:jd()})})}var Iy=new Set(["email","telephone","streetAddress","addressLocality","addressRegion","postalCode","givenName","familyName"]),$y=500,Wd=3;function bl(r){if(Array.isArray(r))return r.map(bl);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))Iy.has(t)||(e[t]=bl(n));return e}return r}function _l(r){if(Array.isArray(r))return r.map(_l);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))if(!(t==="description"&&typeof n=="string"&&n.length>$y)){if(t==="image"&&Array.isArray(n)&&n.length>Wd){e[t]=n.slice(0,Wd);continue}e[t]=_l(n)}return e}return r}function GE(){return typeof document>"u"?[]:Array.from(document.querySelectorAll('script[type="application/ld+json"]')).filter(r=>!r.hasAttribute("data-syntro-no-jsonld")).map(r=>{try{return JSON.parse(r.textContent??"")}catch{return null}}).filter(r=>r!==null)}function zd(r){if(!r.register)return;let e=GE().map(_l).map(bl);e.length!==0&&r.register({json_ld:e})}function My(r,e,t={}){Ud(r,t.geoPromise),Hd(r),zd(r),Vd(r,e);let n=Bd(r,e);return()=>{n()}}var Oy="app:",KE="syntro:",YE=/^[a-z][a-z0-9_]*$/;function qd(r){if(!r)return{valid:!1,reason:"Event name cannot be empty"};if(r.startsWith(KE))return{valid:!1,reason:'"syntro:" prefix is reserved for internal SDK events'};if(!r.startsWith(Oy))return{valid:!1,reason:`Custom events must start with "app:" prefix. Got: "${r}"`};let e=r.slice(Oy.length).split(":");if(e.length<2)return{valid:!1,reason:`Event name must have at least 2 segments after "app:" (app:{category}:{action}). Got: "${r}"`};for(let t of e)if(!YE.test(t))return{valid:!1,reason:`Segment "${t}" must be lowercase alphanumeric + underscores. Got: "${r}"`};return{valid:!0}}function XE(r){return typeof r=="string"||typeof r=="number"||typeof r=="boolean"||r===null}function Py(r,e,t=0){if(t>=e)return!1;for(let n of Object.values(r))if(n!==null&&typeof n=="object"&&!Array.isArray(n)&&!Py(n,e,t+1))return!1;return!0}function Zd(r){if(r===void 0)return{valid:!0};if(r===null||typeof r!="object"||Array.isArray(r))return{valid:!1,reason:"Props must be a plain object"};if(!Py(r,2))return{valid:!1,reason:"Props nesting depth exceeds 2 levels"};let e=[];for(let[t,n]of Object.entries(r))n!==null&&typeof n=="object"||XE(n)||e.push(t);return e.length>0?{valid:!0,stripped:e}:{valid:!0}}function xl(r,e){return e?!(e.names&&e.names.length>0&&!e.names.includes(r.name)||e.patterns&&e.patterns.length>0&&!e.patterns.some(n=>{try{return new RegExp(n).test(r.name)}catch{return!1}})||e.sources&&e.sources.length>0&&!e.sources.includes(r.source)):!0}var wl=class{constructor(e={}){this.subscriptions=new Set;this.history=[];this.maxHistorySize=e.maxHistorySize??100,this.debug=e.debug??!1,this.emitHistory=e.history??null,this.posthogCapture=e.posthogCapture??null,this.testMode=e.testMode??!1}subscribe(e,t){let n,i;typeof e=="function"?(n=void 0,i=e):(n=e,i=t);let s={filter:n,callback:i};return this.subscriptions.add(s),()=>{this.subscriptions.delete(s)}}publish(e,t,n="canvas"){let i={ts:Date.now(),name:e,source:n,props:t,schemaVersion:Le};this.publishEvent(i)}publishEvent(e){this.history.push(e),this.history.length>this.maxHistorySize&&this.history.shift();for(let t of this.subscriptions)if(xl(e,t.filter))try{t.callback(e)}catch(n){console.error("[EventBus] Subscriber error:",n)}}emit(e,t){let n=qd(e);if(!n.valid)return console.warn(`[EventBus] emit() rejected: ${n.reason}`),this.debug?{delivered:!1,matchedRules:[],posthogCaptured:!1,listenersNotified:0}:void 0;let i=Zd(t);if(!i.valid)return console.warn(`[EventBus] emit() rejected props: ${i.reason}`),this.debug?{delivered:!1,matchedRules:[],posthogCaptured:!1,listenersNotified:0}:void 0;let s={ts:Date.now(),name:e,source:"custom",props:t,schemaVersion:Le};this.history.push(s),this.history.length>this.maxHistorySize&&this.history.shift();let o=0;for(let l of this.subscriptions)if(xl(s,l.filter))try{l.callback(s),o++}catch(c){console.error("[EventBus] Subscriber error:",c),o++}let a=!1;if(this.posthogCapture&&!this.testMode)try{this.posthogCapture(e,t),a=!0}catch(l){console.error("[EventBus] PostHog capture error:",l)}if(this.emitHistory&&this.emitHistory.record({name:e,props:t,source:"custom",timestamp:s.ts,matchedRules:[]}),this.debug)return console.debug("[EventBus] emit()",{name:e,props:t,listenersNotified:o,posthogCaptured:a}),{delivered:!0,matchedRules:[],posthogCaptured:a,listenersNotified:o}}setPosthogCapture(e){this.posthogCapture=e}getRecent(e,t){let n=this.history;return e&&(n=n.filter(i=>xl(i,e))),t&&t>0&&(n=n.slice(-t)),n}hasRecentEvent(e,t,n){let i=Date.now()-t;return this.history.some(s=>s.name===e&&s.ts>=i&&(n===void 0||s.source===n))}countRecentEvents(e,t){let n=this.history.filter(i=>xl(i,e));if(t!==void 0){let i=Date.now()-t;n=n.filter(s=>s.ts>=i)}return n.length}clearHistory(){this.history=[]}getSubscriberCount(){return this.subscriptions.size}};function uo(r={}){return new wl(r)}var po=class{constructor(e=100){this.entries=[];this.maxSize=e}record(e){this.entries.push(e),this.maxSize>0&&this.entries.length>this.maxSize&&this.entries.shift()}getAll(){return[...this.entries]}clear(){this.entries=[]}};var Ly={fetch:globalThis.fetch?globalThis.fetch.bind(globalThis):void 0,SubtleCrypto:globalThis.crypto?globalThis.crypto.subtle:void 0,EventSource:globalThis.EventSource};function Fy(){return Ly}function Gd(r){let e=2166136261,t=r.length;for(let n=0;n<t;n++)e^=r.charCodeAt(n),e+=(e<<1)+(e<<4)+(e<<7)+(e<<8)+(e<<24);return e>>>0}function ho(r,e,t){return t===2?Gd(Gd(r+e)+"")%1e4/1e4:t===1?Gd(e+r)%1e3/1e3:null}function JE(r){return r<=0?[]:new Array(r).fill(1/r)}function Sl(r,e){return r>=e[0]&&r<e[1]}function Dy(r,e){let t=ho("__"+e[0],r,1);return t===null?!1:t>=e[1]&&t<e[2]}function Hy(r,e){for(let t=0;t<e.length;t++)if(Sl(r,e[t]))return t;return-1}function Yd(r){try{let e=r.replace(/([^\\])\//g,"$1\\/");return new RegExp(e)}catch(e){console.error(e);return}}function kl(r,e){if(!e.length)return!1;let t=!1,n=!1;for(let i=0;i<e.length;i++){let s=tC(r,e[i].type,e[i].pattern);if(e[i].include===!1){if(s)return!1}else t=!0,s&&(n=!0)}return n||!t}function QE(r,e,t){try{let n=e.replace(/[*.+?^${}()|[\]\\]/g,"\\$&").replace(/_____/g,".*");return t&&(n="\\/?"+n.replace(/(^\/|\/$)/g,"")+"\\/?"),new RegExp("^"+n+"$","i").test(r)}catch{return!1}}function eC(r,e){try{let t=new URL(e.replace(/^([^:/?]*)\./i,"https://$1.").replace(/\*/g,"_____"),"https://_____"),n=[[r.host,t.host,!1],[r.pathname,t.pathname,!0]];return t.hash&&n.push([r.hash,t.hash,!1]),t.searchParams.forEach((i,s)=>{n.push([r.searchParams.get(s)||"",i,!1])}),!n.some(i=>!QE(i[0],i[1],i[2]))}catch{return!1}}function tC(r,e,t){try{let n=new URL(r,"https://_");if(e==="regex"){let i=Yd(t);return i?i.test(n.href)||i.test(n.href.substring(n.origin.length)):!1}else if(e==="simple")return eC(n,t);return!1}catch{return!1}}function By(r,e,t){e=e===void 0?1:e,e<0?e=0:e>1&&(e=1);let n=JE(r);t=t||n,t.length!==r&&(t=n);let i=t.reduce((o,a)=>a+o,0);(i<.99||i>1.01)&&(t=n);let s=0;return t.map(o=>{let a=s;return s+=o,[a,a+e*o]})}function Vy(r,e,t){if(!e)return null;let n=e.split("?")[1];if(!n)return null;let i=n.replace(/#.*/,"").split("&").map(s=>s.split("=",2)).filter(([s])=>s===r).map(([,s])=>parseInt(s));return i.length>0&&i[0]>=0&&i[0]<t?i[0]:null}function jy(r){try{return r()}catch(e){return console.error(e),!1}}var Kd=r=>Uint8Array.from(atob(r),e=>e.charCodeAt(0));async function Kn(r,e,t){if(e=e||"",t=t||globalThis.crypto&&globalThis.crypto.subtle||Ly.SubtleCrypto,!t)throw new Error("No SubtleCrypto implementation found");try{let n=await t.importKey("raw",Kd(e),{name:"AES-CBC",length:128},!0,["encrypt","decrypt"]),[i,s]=r.split("."),o=await t.decrypt({name:"AES-CBC",iv:Kd(i)},n,Kd(s));return new TextDecoder().decode(o)}catch{throw new Error("Failed to decrypt")}}function fo(r){return typeof r=="string"?r:JSON.stringify(r)}function _t(r){typeof r=="number"&&(r=r+""),(!r||typeof r!="string")&&(r="0");let e=r.replace(/(^v|\+.*$)/g,"").split(/[-.]/);return e.length===3&&e.push("~"),e.map(t=>t.match(/^[0-9]+$/)?t.padStart(5," "):t).join("-")}function Uy(){let r;try{r="1.6.4"}catch{r=""}return r}function Wy(r,e){let t,n;try{t=new URL(r),n=new URL(e)}catch(i){return console.error(`Unable to merge query strings: ${i}`),e}return t.searchParams.forEach((i,s)=>{n.searchParams.has(s)||n.searchParams.set(s,i)}),n.toString()}function Ny(r){return typeof r=="object"&&r!==null}function El(r){return r.urlPatterns&&r.variations.some(e=>Ny(e)&&"urlRedirect"in e)?"redirect":r.variations.some(e=>Ny(e)&&(e.domMutations||"js"in e||"css"in e))?"visual":"unknown"}async function Cl(r,e){return new Promise(t=>{let n=!1,i,s=o=>{n||(n=!0,i&&clearTimeout(i),t(o||null))};e&&(i=setTimeout(()=>s(),e)),r.then(o=>s(o)).catch(()=>s())})}var it={staleTTL:1e3*60,maxAge:1e3*60*60*4,cacheKey:"gbFeaturesCache",backgroundSync:!0,maxEntries:10,disableIdleStreams:!1,idleStreamInterval:2e4,disableCache:!1},ar=Fy(),Ai={fetchFeaturesCall:({host:r,clientKey:e,headers:t})=>ar.fetch(`${r}/api/features/${e}`,{headers:t}),fetchRemoteEvalCall:({host:r,clientKey:e,payload:t,headers:n})=>{let i={method:"POST",headers:{"Content-Type":"application/json",...n},body:JSON.stringify(t)};return ar.fetch(`${r}/api/eval/${e}`,i)},eventSourceCall:({host:r,clientKey:e,headers:t})=>t?new ar.EventSource(`${r}/sub/${e}`,{headers:t}):new ar.EventSource(`${r}/sub/${e}`),startIdleListener:()=>{let r;if(!(typeof window<"u"&&typeof document<"u"))return;let t=()=>{document.visibilityState==="visible"?(window.clearTimeout(r),iC()):document.visibilityState==="hidden"&&(r=window.setTimeout(nC,it.idleStreamInterval))};return document.addEventListener("visibilitychange",t),()=>document.removeEventListener("visibilitychange",t)},stopIdleListener:()=>{}};try{globalThis.localStorage&&(ar.localStorage=globalThis.localStorage)}catch{}var Ri=new Map,zy=!1,Cr=new Map,Al=new Map,Ti=new Map,Ii=new Set;function Zy(r){Object.assign(it,r),it.backgroundSync||rp()}async function Gy({instance:r,timeout:e,skipCache:t,allowStale:n,backgroundSync:i}){return i||(it.backgroundSync=!1),sC({instance:r,allowStale:n,timeout:e,skipCache:t})}function rC(r){let e=go(r),t=Ri.get(e)||new Set;t.add(r),Ri.set(e,t)}function Ky(r){Ri.forEach(e=>e.delete(r))}function nC(){Ti.forEach(r=>{r&&(r.state="idle",ep(r))})}function iC(){Ti.forEach(r=>{r&&r.state==="idle"&&tp(r)})}async function qy(){try{if(!ar.localStorage)return;await ar.localStorage.setItem(it.cacheKey,JSON.stringify(Array.from(Cr.entries())))}catch{}}async function sC({instance:r,allowStale:e,timeout:t,skipCache:n}){let i=go(r),s=Jd(r),o=new Date,a=new Date(o.getTime()-it.maxAge+it.staleTTL);await oC();let l=!it.disableCache&&!n?Cr.get(s):void 0;return l&&(e||l.staleAt>o)&&l.staleAt>a?(l.sse&&Ii.add(i),l.staleAt<o?Xd(r):Qd(r),{data:l.data,success:!0,source:"cache"}):await Cl(Xd(r),t)||{data:null,success:!1,source:"timeout",error:new Error("Timeout")}}function go(r){let[e,t]=r.getApiInfo();return`${e}||${t}`}function Jd(r){let e=go(r);if(!("isRemoteEval"in r)||!r.isRemoteEval())return e;let t=r.getAttributes(),n=r.getCacheKeyAttributes()||Object.keys(r.getAttributes()),i={};n.forEach(a=>{i[a]=t[a]});let s=r.getForcedVariations(),o=r.getUrl();return`${e}||${JSON.stringify({ca:i,fv:s,url:o})}`}async function oC(){if(!zy){zy=!0;try{if(ar.localStorage){let r=await ar.localStorage.getItem(it.cacheKey);if(!it.disableCache&&r){let e=JSON.parse(r);e&&Array.isArray(e)&&e.forEach(([t,n])=>{Cr.set(t,{...n,staleAt:new Date(n.staleAt)})}),Yy()}}}catch{}if(!it.disableIdleStreams){let r=Ai.startIdleListener();r&&(Ai.stopIdleListener=r)}}}function Yy(){let r=Array.from(Cr.entries()).map(([t,n])=>({key:t,staleAt:n.staleAt.getTime()})).sort((t,n)=>t.staleAt-n.staleAt),e=Math.min(Math.max(0,Cr.size-it.maxEntries),Cr.size);for(let t=0;t<e;t++)Cr.delete(r[t].key)}function Xy(r,e,t){let n=t.dateUpdated||"",i=new Date(Date.now()+it.staleTTL),s=it.disableCache?void 0:Cr.get(e);if(s&&n&&s.version===n){s.staleAt=i,qy();return}it.disableCache||(Cr.set(e,{data:t,version:n,staleAt:i,sse:Ii.has(r)}),Yy()),qy();let o=Ri.get(r);o&&o.forEach(a=>aC(a,t))}async function aC(r,e){await r.setPayload(e||r.getPayload())}async function Xd(r){let{apiHost:e,apiRequestHeaders:t}=r.getApiHosts(),n=r.getClientKey(),i="isRemoteEval"in r&&r.isRemoteEval(),s=go(r),o=Jd(r),a=Al.get(o);return a||(a=(i?Ai.fetchRemoteEvalCall({host:e,clientKey:n,payload:{attributes:r.getAttributes(),forcedVariations:r.getForcedVariations(),forcedFeatures:Array.from(r.getForcedFeatures().entries()),url:r.getUrl()},headers:t}):Ai.fetchFeaturesCall({host:e,clientKey:n,headers:t})).then(c=>{if(!c.ok)throw new Error(`HTTP error: ${c.status}`);return c.headers.get("x-sse-support")==="enabled"&&Ii.add(s),c.json()}).then(c=>(Xy(s,o,c),Qd(r),Al.delete(o),{data:c,success:!0,source:"network"})).catch(c=>(Al.delete(o),{data:null,source:"error",success:!1,error:c})),Al.set(o,a)),a}function Qd(r,e=!1){let t=go(r),n=Jd(r),{streamingHost:i,streamingHostRequestHeaders:s}=r.getApiHosts(),o=r.getClientKey();if(e&&Ii.add(t),it.backgroundSync&&Ii.has(t)&&ar.EventSource){if(Ti.has(t))return;let a={src:null,host:i,clientKey:o,headers:s,cb:l=>{try{if(l.type==="features-updated"){let c=Ri.get(t);c&&c.forEach(u=>{Xd(u)})}else if(l.type==="features"){let c=JSON.parse(l.data);Xy(t,n,c)}a.errors=0}catch{Jy(a)}},errors:0,state:"active"};Ti.set(t,a),tp(a)}}function Jy(r){if(r.state!=="idle"&&(r.errors++,r.errors>3||r.src&&r.src.readyState===2)){let e=Math.pow(3,r.errors-3)*(1e3+Math.random()*1e3);ep(r),setTimeout(()=>{["idle","active"].includes(r.state)||tp(r)},Math.min(e,3e5))}}function ep(r){r.src&&(r.src.onopen=null,r.src.onerror=null,r.src.close(),r.src=null,r.state==="active"&&(r.state="disabled"))}function tp(r){r.src=Ai.eventSourceCall({host:r.host,clientKey:r.clientKey,headers:r.headers}),r.state="active",r.src.addEventListener("features",r.cb),r.src.addEventListener("features-updated",r.cb),r.src.onerror=()=>Jy(r),r.src.onopen=()=>{r.errors=0}}function lC(r,e){ep(r),Ti.delete(e)}function rp(){Ii.clear(),Ti.forEach(lC),Ri.clear(),Ai.stopIdleListener()}function Rl(r,e){if(e.streaming){if(!r.getClientKey())throw new Error("Must specify clientKey to enable streaming");e.payload&&Qd(r,!0),rC(r)}}var cC=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,sp={revert:function(){}},Ml=new Map,op=new Set;function uC(r){return r==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[r]}}function Ol(r){var e=Ml.get(r);return e||(e={element:r,attributes:{}},Ml.set(r,e)),e}function Pl(r,e,t,n,i){var s=t(r),o={isDirty:!1,originalValue:s,virtualValue:s,mutations:[],el:r,_positionTimeout:null,observer:new MutationObserver(function(){if(!(e==="position"&&o._positionTimeout)){e==="position"&&(o._positionTimeout=setTimeout(function(){o._positionTimeout=null},1e3));var a=t(r);e==="position"&&a.parentNode===o.virtualValue.parentNode&&a.insertBeforeNode===o.virtualValue.insertBeforeNode||a!==o.virtualValue&&(o.originalValue=a,i(o))}}),mutationRunner:i,setValue:n,getCurrentValue:t};return e==="position"&&r.parentNode?o.observer.observe(r.parentNode,{childList:!0,subtree:!0,attributes:!1,characterData:!1}):o.observer.observe(r,uC(e)),o}function Nl(r,e){var t=e.getCurrentValue(e.el);e.virtualValue=r,r&&typeof r!="string"?(!t||r.parentNode!==t.parentNode||r.insertBeforeNode!==t.insertBeforeNode)&&(e.isDirty=!0,Qy()):r!==t&&(e.isDirty=!0,Qy())}function dC(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),Nl(EC(e),r)}function pC(r){var e=new Set(r.originalValue.split(/\s+/).filter(Boolean));r.mutations.forEach(function(t){return t.mutate(e)}),Nl(Array.from(e).filter(Boolean).join(" "),r)}function hC(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),Nl(e,r)}function fC(r){var e=r.parentSelector,t=r.insertBeforeSelector,n=document.querySelector(e);if(!n)return null;var i=t?document.querySelector(t):null;return t&&!i?null:{parentNode:n,insertBeforeNode:i}}function gC(r){var e=r.originalValue;r.mutations.forEach(function(t){var n=t.mutate(),i=fC(n);e=i||e}),Nl(e,r)}var mC=function(e){return e.innerHTML},vC=function(e,t){return e.innerHTML=t};function tb(r){var e=Ol(r);return e.html||(e.html=Pl(r,"html",mC,vC,dC)),e.html}var yC=function(e){return{parentNode:e.parentElement,insertBeforeNode:e.nextElementSibling}},bC=function(e,t){t.insertBeforeNode&&!t.parentNode.contains(t.insertBeforeNode)||t.parentNode.insertBefore(e,t.insertBeforeNode)};function rb(r){var e=Ol(r);return e.position||(e.position=Pl(r,"position",yC,bC,gC)),e.position}var _C=function(e,t){return t?e.className=t:e.removeAttribute("class")},xC=function(e){return e.className};function nb(r){var e=Ol(r);return e.classes||(e.classes=Pl(r,"class",xC,_C,pC)),e.classes}var wC=function(e){return function(t){var n;return(n=t.getAttribute(e))!=null?n:null}},SC=function(e){return function(t,n){return n!==null?t.setAttribute(e,n):t.removeAttribute(e)}};function ib(r,e){var t=Ol(r);return t.attributes[e]||(t.attributes[e]=Pl(r,e,wC(e),SC(e),hC)),t.attributes[e]}function kC(r,e){var t=Ml.get(r);if(t)if(e==="html"){var n,i;(n=t.html)==null||(i=n.observer)==null||i.disconnect(),delete t.html}else if(e==="class"){var s,o;(s=t.classes)==null||(o=s.observer)==null||o.disconnect(),delete t.classes}else if(e==="position"){var a,l;(a=t.position)==null||(l=a.observer)==null||l.disconnect(),delete t.position}else{var c,u,p;(c=t.attributes)==null||(u=c[e])==null||(p=u.observer)==null||p.disconnect(),delete t.attributes[e]}}var Tl;function EC(r){return Tl||(Tl=document.createElement("div")),Tl.innerHTML=r,Tl.innerHTML}function Il(r,e,t){if(t.isDirty){t.isDirty=!1;var n=t.virtualValue;t.mutations.length||kC(r,e),t.setValue(r,n)}}function CC(r,e){r.html&&Il(e,"html",r.html),r.classes&&Il(e,"class",r.classes),r.position&&Il(e,"position",r.position),Object.keys(r.attributes).forEach(function(t){Il(e,t,r.attributes[t])})}function Qy(){Ml.forEach(CC)}function AC(r,e){var t=null;r.kind==="html"?t=tb(e):r.kind==="class"?t=nb(e):r.kind==="attribute"?t=ib(e,r.attribute):r.kind==="position"&&(t=rb(e)),t&&(t.mutations.push(r),t.mutationRunner(t))}function RC(r,e){var t=null;if(r.kind==="html"?t=tb(e):r.kind==="class"?t=nb(e):r.kind==="attribute"?t=ib(e,r.attribute):r.kind==="position"&&(t=rb(e)),!!t){var n=t.mutations.indexOf(r);n!==-1&&t.mutations.splice(n,1),t.mutationRunner(t)}}function sb(r){if(!(r.kind==="position"&&r.elements.size===1)){var e=new Set(r.elements),t=document.querySelectorAll(r.selector);t.forEach(function(n){e.has(n)||(r.elements.add(n),AC(r,n))})}}function TC(r){r.elements.forEach(function(e){return RC(r,e)}),r.elements.clear(),op.delete(r)}function eb(){op.forEach(sb)}var np;function IC(){typeof document>"u"||(np||(np=new MutationObserver(function(){eb()})),eb(),np.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}IC();function Ll(r){return typeof document>"u"?sp:(op.add(r),sb(r),{revert:function(){TC(r)}})}function ip(r,e){return Ll({kind:"html",elements:new Set,mutate:e,selector:r})}function ob(r,e){return Ll({kind:"position",elements:new Set,mutate:e,selector:r})}function mo(r,e){return Ll({kind:"class",elements:new Set,mutate:e,selector:r})}function $l(r,e,t){return cC.test(e)?e==="class"||e==="className"?mo(r,function(n){var i=t(Array.from(n).join(" "));n.clear(),i&&i.split(/\s+/g).filter(Boolean).forEach(function(s){return n.add(s)})}):Ll({kind:"attribute",attribute:e,elements:new Set,mutate:t,selector:r}):sp}function $C(r){var e=r.selector,t=r.action,n=r.value,i=r.attribute,s=r.parentSelector,o=r.insertBeforeSelector;if(i==="html"){if(t==="append")return ip(e,function(a){return a+(n??"")});if(t==="set")return ip(e,function(){return n??""})}else if(i==="class"){if(t==="append")return mo(e,function(a){n&&a.add(n)});if(t==="remove")return mo(e,function(a){n&&a.delete(n)});if(t==="set")return mo(e,function(a){a.clear(),n&&a.add(n)})}else if(i==="position"){if(t==="set"&&s)return ob(e,function(){return{insertBeforeSelector:o,parentSelector:s}})}else{if(t==="append")return $l(e,i,function(a){return a!==null?a+(n??""):n??""});if(t==="set")return $l(e,i,function(){return n??""});if(t==="remove")return $l(e,i,function(){return null})}return sp}var MC={html:ip,classes:mo,attribute:$l,position:ob,declarative:$C},ab=MC;var ap={};function Qr(r,e,t){t=t||{};for(let[n,i]of Object.entries(e))switch(n){case"$or":if(!ub(r,i,t))return!1;break;case"$nor":if(ub(r,i,t))return!1;break;case"$and":if(!FC(r,i,t))return!1;break;case"$not":if(Qr(r,i,t))return!1;break;default:if(!vo(i,OC(r,n),t))return!1}return!0}function OC(r,e){let t=e.split("."),n=r;for(let i=0;i<t.length;i++)if(n&&typeof n=="object"&&t[i]in n)n=n[t[i]];else return null;return n}function lb(r,e=!1){let t=`${r}${e?"/i":""}`;return ap[t]||(ap[t]=new RegExp(r.replace(/([^\\])\//g,"$1\\/"),e?"i":void 0)),ap[t]}function vo(r,e,t,n=!1){if(typeof r=="string")return n?String(e).toLowerCase()===r.toLowerCase():e+""===r;if(typeof r=="number")return e*1===r;if(typeof r=="boolean")return e!==null&&!!e===r;if(r===null)return e===null;if(Array.isArray(r)||!db(r))return JSON.stringify(e)===JSON.stringify(r);for(let i in r)if(!LC(i,e,r[i],t))return!1;return!0}function db(r){let e=Object.keys(r);return e.length>0&&e.filter(t=>t[0]==="$").length===e.length}function PC(r){if(r===null)return"null";if(Array.isArray(r))return"array";let e=typeof r;return["string","number","boolean","object","undefined"].includes(e)?e:"unknown"}function NC(r,e,t){if(!Array.isArray(r))return!1;let n=db(e)?i=>vo(e,i,t):i=>Qr(i,e,t);for(let i=0;i<r.length;i++)if(r[i]&&n(r[i]))return!0;return!1}function $i(r,e,t=!1){if(t){let n=i=>typeof i=="string"?i.toLowerCase():i;return Array.isArray(r)?r.some(i=>e.some(s=>n(i)===n(s))):e.some(i=>n(r)===n(i))}return Array.isArray(r)?r.some(n=>e.includes(n)):e.includes(r)}function cb(r,e,t,n=!1){if(!Array.isArray(r))return!1;for(let i=0;i<e.length;i++){let s=!1;for(let o=0;o<r.length;o++)if(vo(e[i],r[o],t,n)){s=!0;break}if(!s)return!1}return!0}function LC(r,e,t,n){switch(r){case"$veq":return _t(e)===_t(t);case"$vne":return _t(e)!==_t(t);case"$vgt":return _t(e)>_t(t);case"$vgte":return _t(e)>=_t(t);case"$vlt":return _t(e)<_t(t);case"$vlte":return _t(e)<=_t(t);case"$eq":return e===t;case"$ne":return e!==t;case"$lt":return e<t;case"$lte":return e<=t;case"$gt":return e>t;case"$gte":return e>=t;case"$exists":return t?e!=null:e==null;case"$in":return Array.isArray(t)?$i(e,t):!1;case"$ini":return Array.isArray(t)?$i(e,t,!0):!1;case"$inGroup":return $i(e,n[t]||[]);case"$notInGroup":return!$i(e,n[t]||[]);case"$nin":return Array.isArray(t)?!$i(e,t):!1;case"$nini":return Array.isArray(t)?!$i(e,t,!0):!1;case"$not":return!vo(t,e,n);case"$size":return Array.isArray(e)?vo(t,e.length,n):!1;case"$elemMatch":return NC(e,t,n);case"$all":return Array.isArray(t)?cb(e,t,n):!1;case"$alli":return Array.isArray(t)?cb(e,t,n,!0):!1;case"$regex":try{return lb(t).test(e)}catch{return!1}case"$regexi":try{return lb(t,!0).test(e)}catch{return!1}case"$type":return PC(e)===t;default:return console.error("Unknown operator: "+r),!1}}function ub(r,e,t){if(!e.length)return!0;for(let n=0;n<e.length;n++)if(Qr(r,e[n],t))return!0;return!1}function FC(r,e,t){for(let n=0;n<e.length;n++)if(!Qr(r,e[n],t))return!1;return!0}var DC="Feature Evaluated",HC="Experiment Viewed";function BC(r){let e=new Map;return r.global.forcedFeatureValues&&r.global.forcedFeatureValues.forEach((t,n)=>e.set(n,t)),r.user.forcedFeatureValues&&r.user.forcedFeatureValues.forEach((t,n)=>e.set(n,t)),e}function VC(r){return r.global.forcedVariations&&r.user.forcedVariations?{...r.global.forcedVariations,...r.user.forcedVariations}:r.global.forcedVariations?r.global.forcedVariations:r.user.forcedVariations?r.user.forcedVariations:{}}async function Mi(r){try{await r()}catch{}}function pb(r,e,t){if(r.user.trackedExperiments){let i=Hl(e,t);if(r.user.trackedExperiments.has(i))return[];r.user.trackedExperiments.add(i)}r.user.enableDevMode&&r.user.devLogs&&r.user.devLogs.push({experiment:e,result:t,timestamp:Date.now().toString(),logType:"experiment"});let n=[];if(r.global.trackingCallback){let i=r.global.trackingCallback;n.push(Mi(()=>i(e,t,r.user)))}if(r.user.trackingCallback){let i=r.user.trackingCallback;n.push(Mi(()=>i(e,t)))}if(r.global.eventLogger){let i=r.global.eventLogger;n.push(Mi(()=>i(HC,{experimentId:e.key,variationId:t.key,hashAttribute:t.hashAttribute,hashValue:t.hashValue},r.user)))}return n}function jC(r,e,t){if(r.user.trackedFeatureUsage){let n=JSON.stringify(t.value);if(r.user.trackedFeatureUsage[e]===n)return;r.user.trackedFeatureUsage[e]=n,r.user.enableDevMode&&r.user.devLogs&&r.user.devLogs.push({featureKey:e,result:t,timestamp:Date.now().toString(),logType:"feature"})}if(r.global.onFeatureUsage){let n=r.global.onFeatureUsage;Mi(()=>n(e,t,r.user))}if(r.user.onFeatureUsage){let n=r.user.onFeatureUsage;Mi(()=>n(e,t))}if(r.global.eventLogger){let n=r.global.eventLogger;Mi(()=>n(DC,{feature:e,source:t.source,value:t.value,ruleId:t.source==="defaultValue"?"$default":t.ruleId||"",variationId:t.experimentResult?t.experimentResult.key:""},r.user))}}function Fl(r,e){if(e.stack.evaluatedFeatures.has(r))return en(e,r,null,"cyclicPrerequisite");e.stack.evaluatedFeatures.add(r),e.stack.id=r;let t=BC(e);if(t.has(r))return en(e,r,t.get(r),"override");if(!e.global.features||!e.global.features[r])return en(e,r,null,"unknownFeature");let n=e.global.features[r];if(n.rules){let i=new Set(e.stack.evaluatedFeatures);e:for(let s of n.rules){if(s.parentConditions)for(let l of s.parentConditions){e.stack.evaluatedFeatures=new Set(i);let c=Fl(l.id,e);if(c.source==="cyclicPrerequisite")return en(e,r,null,"cyclicPrerequisite");let u={value:c.value};if(!Qr(u,l.condition||{})){if(l.gate)return en(e,r,null,"prerequisite");continue e}}if(s.filters&&gb(s.filters,e))continue;if("force"in s){if(s.condition&&!fb(s.condition,e)||!UC(e,s.seed||r,s.hashAttribute,e.user.saveStickyBucketAssignmentDoc&&!s.disableStickyBucketing?s.fallbackAttribute:void 0,s.range,s.coverage,s.hashVersion))continue;return s.tracks&&s.tracks.forEach(l=>{!pb(e,l.experiment,l.result).length&&e.global.saveDeferredTrack&&e.global.saveDeferredTrack({experiment:l.experiment,result:l.result})}),en(e,r,s.force,"force",s.id)}if(!s.variations)continue;let o={variations:s.variations,key:s.key||r};"coverage"in s&&(o.coverage=s.coverage),s.weights&&(o.weights=s.weights),s.hashAttribute&&(o.hashAttribute=s.hashAttribute),s.fallbackAttribute&&(o.fallbackAttribute=s.fallbackAttribute),s.disableStickyBucketing&&(o.disableStickyBucketing=s.disableStickyBucketing),s.bucketVersion!==void 0&&(o.bucketVersion=s.bucketVersion),s.minBucketVersion!==void 0&&(o.minBucketVersion=s.minBucketVersion),s.namespace&&(o.namespace=s.namespace),s.meta&&(o.meta=s.meta),s.ranges&&(o.ranges=s.ranges),s.name&&(o.name=s.name),s.phase&&(o.phase=s.phase),s.seed&&(o.seed=s.seed),s.hashVersion&&(o.hashVersion=s.hashVersion),s.filters&&(o.filters=s.filters),s.condition&&(o.condition=s.condition);let{result:a}=Dl(o,r,e);if(e.global.onExperimentEval&&e.global.onExperimentEval(o,a),a.inExperiment&&!a.passthrough)return en(e,r,a.value,"experiment",s.id,o,a)}}return en(e,r,n.defaultValue===void 0?null:n.defaultValue,"defaultValue")}function Dl(r,e,t){let n=r.key,i=r.variations.length;if(i<2)return{result:$e(t,r,-1,!1,e)};if(t.global.enabled===!1||t.user.enabled===!1)return{result:$e(t,r,-1,!1,e)};if(r=WC(r,t),r.urlPatterns&&!kl(t.user.url||"",r.urlPatterns))return{result:$e(t,r,-1,!1,e)};let s=Vy(n,t.user.url||"",i);if(s!==null)return{result:$e(t,r,s,!1,e)};let o=VC(t);if(n in o){let m=o[n];return{result:$e(t,r,m,!1,e)}}if(r.status==="draft"||r.active===!1)return{result:$e(t,r,-1,!1,e)};let{hashAttribute:a,hashValue:l}=Yn(t,r.hashAttribute,t.user.saveStickyBucketAssignmentDoc&&!r.disableStickyBucketing?r.fallbackAttribute:void 0);if(!l)return{result:$e(t,r,-1,!1,e)};let c=-1,u=!1,p=!1;if(t.user.saveStickyBucketAssignmentDoc&&!r.disableStickyBucketing){let{variation:m,versionIsBlocked:y}=ZC({ctx:t,expKey:r.key,expBucketVersion:r.bucketVersion,expHashAttribute:r.hashAttribute,expFallbackAttribute:r.fallbackAttribute,expMinBucketVersion:r.minBucketVersion,expMeta:r.meta});u=m>=0,c=m,p=!!y}if(!u){if(r.filters){if(gb(r.filters,t))return{result:$e(t,r,-1,!1,e)}}else if(r.namespace&&!Dy(l,r.namespace))return{result:$e(t,r,-1,!1,e)};if(r.include&&!jy(r.include))return{result:$e(t,r,-1,!1,e)};if(r.condition&&!fb(r.condition,t))return{result:$e(t,r,-1,!1,e)};if(r.parentConditions){let m=new Set(t.stack.evaluatedFeatures);for(let y of r.parentConditions){t.stack.evaluatedFeatures=new Set(m);let x=Fl(y.id,t);if(x.source==="cyclicPrerequisite")return{result:$e(t,r,-1,!1,e)};let S={value:x.value};if(!Qr(S,y.condition||{}))return{result:$e(t,r,-1,!1,e)}}}if(r.groups&&!qC(r.groups,t))return{result:$e(t,r,-1,!1,e)}}if(r.url&&!zC(r.url,t))return{result:$e(t,r,-1,!1,e)};let h=ho(r.seed||n,l,r.hashVersion||1);if(h===null)return{result:$e(t,r,-1,!1,e)};if(!u){let m=r.ranges||By(i,r.coverage===void 0?1:r.coverage,r.weights);c=Hy(h,m)}if(p)return{result:$e(t,r,-1,!1,e,void 0,!0)};if(c<0)return{result:$e(t,r,-1,!1,e)};if("force"in r)return{result:$e(t,r,r.force===void 0?-1:r.force,!1,e)};if(t.global.qaMode||t.user.qaMode)return{result:$e(t,r,-1,!1,e)};if(r.status==="stopped")return{result:$e(t,r,-1,!1,e)};let f=$e(t,r,c,!0,e,h,u);if(t.user.saveStickyBucketAssignmentDoc&&!r.disableStickyBucketing){let{changed:m,key:y,doc:x}=KC(t,a,fo(l),{[lp(r.key,r.bucketVersion)]:f.key});m&&(t.user.stickyBucketAssignmentDocs=t.user.stickyBucketAssignmentDocs||{},t.user.stickyBucketAssignmentDocs[y]=x,t.user.saveStickyBucketAssignmentDoc(x))}let v=pb(t,r,f);v.length===0&&t.global.saveDeferredTrack&&t.global.saveDeferredTrack({experiment:r,result:f});let g=v.length?v.length===1?v[0]:Promise.all(v).then(()=>{}):void 0;return"changeId"in r&&r.changeId&&t.global.recordChangeId&&t.global.recordChangeId(r.changeId),{result:f,trackingCall:g}}function en(r,e,t,n,i,s,o){let a={value:t,on:!!t,off:!t,source:n,ruleId:i||""};return s&&(a.experiment=s),o&&(a.experimentResult=o),n!=="override"&&jC(r,e,a),a}function hb(r){return{...r.user.attributes,...r.user.attributeOverrides}}function fb(r,e){return Qr(hb(e),r,e.global.savedGroups||{})}function gb(r,e){return r.some(t=>{let{hashValue:n}=Yn(e,t.attribute);if(!n)return!0;let i=ho(t.seed,n,t.hashVersion||2);return i===null?!0:!t.ranges.some(s=>Sl(i,s))})}function UC(r,e,t,n,i,s,o){if(!i&&s===void 0)return!0;if(!i&&s===0)return!1;let{hashValue:a}=Yn(r,t,n);if(!a)return!1;let l=ho(e,a,o||1);return l===null?!1:i?Sl(l,i):s!==void 0?l<=s:!0}function $e(r,e,t,n,i,s,o){let a=!0;(t<0||t>=e.variations.length)&&(t=0,a=!1);let{hashAttribute:l,hashValue:c}=Yn(r,e.hashAttribute,r.user.saveStickyBucketAssignmentDoc&&!e.disableStickyBucketing?e.fallbackAttribute:void 0),u=e.meta?e.meta[t]:{},p={key:u.key||""+t,featureId:i,inExperiment:a,hashUsed:n,variationId:t,value:e.variations[t],hashAttribute:l,hashValue:c,stickyBucketUsed:!!o};return u.name&&(p.name=u.name),s!==void 0&&(p.bucket=s),u.passthrough&&(p.passthrough=u.passthrough),p}function WC(r,e){let t=r.key,n=e.global.overrides;return n&&n[t]&&(r=Object.assign({},r,n[t]),typeof r.url=="string"&&(r.url=Yd(r.url))),r}function Yn(r,e,t){let n=e||"id",i="",s=hb(r);return s[n]&&(i=s[n]),!i&&t&&(s[t]&&(i=s[t]),i&&(n=t)),{hashAttribute:n,hashValue:i}}function zC(r,e){let t=e.user.url;if(!t)return!1;let n=t.replace(/^https?:\/\//,"").replace(/^[^/]*\//,"/");return!!(r.test(t)||r.test(n))}function qC(r,e){let t=e.global.groups||{};for(let n=0;n<r.length;n++)if(t[r[n]])return!0;return!1}function ZC({ctx:r,expKey:e,expBucketVersion:t,expHashAttribute:n,expFallbackAttribute:i,expMinBucketVersion:s,expMeta:o}){t=t||0,s=s||0,n=n||"id",o=o||[];let a=lp(e,t),l=GC(r,n,i);if(s>0)for(let p=0;p<s;p++){let h=lp(e,p);if(l[h]!==void 0)return{variation:-1,versionIsBlocked:!0}}let c=l[a];if(c===void 0)return{variation:-1};let u=o.findIndex(p=>p.key===c);return u<0?{variation:-1}:{variation:u}}function lp(r,e){return e=e||0,`${r}__${e}`}function cp(r,e){return`${r}||${e}`}function GC(r,e,t){if(!r.user.stickyBucketAssignmentDocs)return{};let{hashAttribute:n,hashValue:i}=Yn(r,e),s=cp(n,fo(i)),{hashAttribute:o,hashValue:a}=Yn(r,t),l=a?cp(o,fo(a)):null,c={};return l&&r.user.stickyBucketAssignmentDocs[l]&&Object.assign(c,r.user.stickyBucketAssignmentDocs[l].assignments||{}),r.user.stickyBucketAssignmentDocs[s]&&Object.assign(c,r.user.stickyBucketAssignmentDocs[s].assignments||{}),c}function KC(r,e,t,n){let i=cp(e,t),s=r.user.stickyBucketAssignmentDocs&&r.user.stickyBucketAssignmentDocs[i]?r.user.stickyBucketAssignmentDocs[i].assignments||{}:{},o={...s,...n},a=JSON.stringify(s)!==JSON.stringify(o);return{key:i,doc:{attributeName:e,attributeValue:t,assignments:o},changed:a}}function YC(r,e){let t=new Set,n=e&&e.features?e.features:r.global.features||{},i=e&&e.experiments?e.experiments:r.global.experiments||[];return Object.keys(n).forEach(s=>{let o=n[s];if(o.rules)for(let a of o.rules)a.variations&&(t.add(a.hashAttribute||"id"),a.fallbackAttribute&&t.add(a.fallbackAttribute))}),i.map(s=>{t.add(s.hashAttribute||"id"),s.fallbackAttribute&&t.add(s.fallbackAttribute)}),Array.from(t)}async function mb(r,e,t){let n=up(r,t);return e.getAllAssignments(n)}function up(r,e){let t={};return YC(r,e).forEach(i=>{let{hashValue:s}=Yn(r,i);t[i]=fo(s)}),t}async function vb(r,e,t){if(r={...r},r.encryptedFeatures){try{r.features=JSON.parse(await Kn(r.encryptedFeatures,e,t))}catch(n){console.error(n)}delete r.encryptedFeatures}if(r.encryptedExperiments){try{r.experiments=JSON.parse(await Kn(r.encryptedExperiments,e,t))}catch(n){console.error(n)}delete r.encryptedExperiments}if(r.encryptedSavedGroups){try{r.savedGroups=JSON.parse(await Kn(r.encryptedSavedGroups,e,t))}catch(n){console.error(n)}delete r.encryptedSavedGroups}return r}function yb(r){let e=r.apiHost||"https://cdn.growthbook.io";return{apiHost:e.replace(/\/*$/,""),streamingHost:(r.streamingHost||e).replace(/\/*$/,""),apiRequestHeaders:r.apiHostRequestHeaders,streamingHostRequestHeaders:r.streamingHostRequestHeaders}}function Hl(r,e){return e.hashAttribute+e.hashValue+r.key+e.variationId}var Oi=typeof window<"u"&&typeof document<"u",XC=Uy(),yo=class{constructor(e){if(e=e||{},this.version=XC,this._options=this.context=e,this._renderer=e.renderer||null,this._trackedExperiments=new Set,this._completedChangeIds=new Set,this._trackedFeatures={},this.debug=!!e.debug,this._subscriptions=new Set,this.ready=!1,this._assigned=new Map,this._activeAutoExperiments=new Map,this._triggeredExpKeys=new Set,this._initialized=!1,this._redirectedUrl="",this._deferredTrackingCalls=new Map,this._autoExperimentsAllowed=!e.disableExperimentsOnLoad,this._destroyCallbacks=[],this.logs=[],this.log=this.log.bind(this),this._saveDeferredTrack=this._saveDeferredTrack.bind(this),this._onExperimentEval=this._onExperimentEval.bind(this),this._fireSubscriptions=this._fireSubscriptions.bind(this),this._recordChangedId=this._recordChangedId.bind(this),e.remoteEval){if(e.decryptionKey)throw new Error("Encryption is not available for remoteEval");if(!e.clientKey)throw new Error("Missing clientKey");let t=!1;try{t=!!new URL(e.apiHost||"").hostname.match(/growthbook\.io$/i)}catch{}if(t)throw new Error("Cannot use remoteEval on GrowthBook Cloud")}else if(e.cacheKeyAttributes)throw new Error("cacheKeyAttributes are only used for remoteEval");if(e.stickyBucketService){let t=e.stickyBucketService;this._saveStickyBucketAssignmentDoc=n=>t.saveAssignments(n)}if(e.plugins)for(let t of e.plugins)t(this);if(e.features&&(this.ready=!0),Oi&&e.enableDevMode&&(window._growthbook=this,document.dispatchEvent(new Event("gbloaded"))),e.experiments&&(this.ready=!0,this._updateAllAutoExperiments()),this._options.stickyBucketService&&this._options.stickyBucketAssignmentDocs)for(let t in this._options.stickyBucketAssignmentDocs){let n=this._options.stickyBucketAssignmentDocs[t];n&&this._options.stickyBucketService.saveAssignments(n).catch(()=>{})}this.ready&&this.refreshStickyBuckets(this.getPayload())}async setPayload(e){this._payload=e;let t=await vb(e,this._options.decryptionKey);this._decryptedPayload=t,await this.refreshStickyBuckets(t),t.features&&(this._options.features=t.features),t.savedGroups&&(this._options.savedGroups=t.savedGroups),t.experiments&&(this._options.experiments=t.experiments,this._updateAllAutoExperiments()),this.ready=!0,this._render()}initSync(e){this._initialized=!0;let t=e.payload;if(t.encryptedExperiments||t.encryptedFeatures)throw new Error("initSync does not support encrypted payloads");return this._options.stickyBucketService&&!this._options.stickyBucketAssignmentDocs&&(this._options.stickyBucketAssignmentDocs=this.generateStickyBucketAssignmentDocsSync(this._options.stickyBucketService,t)),this._payload=t,this._decryptedPayload=t,t.features&&(this._options.features=t.features),t.experiments&&(this._options.experiments=t.experiments,this._updateAllAutoExperiments()),this.ready=!0,Rl(this,e),this}async init(e){if(this._initialized=!0,e=e||{},e.cacheSettings&&Zy(e.cacheSettings),e.payload)return await this.setPayload(e.payload),Rl(this,e),{success:!0,source:"init"};{let{data:t,...n}=await this._refresh({...e,allowStale:!0});return Rl(this,e),await this.setPayload(t||{}),n}}async loadFeatures(e){e=e||{},await this.init({skipCache:e.skipCache,timeout:e.timeout,streaming:(this._options.backgroundSync??!0)&&(e.autoRefresh||this._options.subscribeToChanges)})}async refreshFeatures(e){let t=await this._refresh({...e||{},allowStale:!1});t.data&&await this.setPayload(t.data)}getApiInfo(){return[this.getApiHosts().apiHost,this.getClientKey()]}getApiHosts(){return yb(this._options)}getClientKey(){return this._options.clientKey||""}getPayload(){return this._payload||{features:this.getFeatures(),experiments:this.getExperiments()}}getDecryptedPayload(){return this._decryptedPayload||this.getPayload()}isRemoteEval(){return this._options.remoteEval||!1}getCacheKeyAttributes(){return this._options.cacheKeyAttributes}async _refresh({timeout:e,skipCache:t,allowStale:n,streaming:i}){if(!this._options.clientKey)throw new Error("Missing clientKey");return Gy({instance:this,timeout:e,skipCache:t||this._options.disableCache,allowStale:n,backgroundSync:i??this._options.backgroundSync??!0})}_render(){if(this._renderer)try{this._renderer()}catch(e){console.error("Failed to render",e)}}setFeatures(e){this._options.features=e,this.ready=!0,this._render()}async setEncryptedFeatures(e,t,n){let i=await Kn(e,t||this._options.decryptionKey,n);this.setFeatures(JSON.parse(i))}setExperiments(e){this._options.experiments=e,this.ready=!0,this._updateAllAutoExperiments()}async setEncryptedExperiments(e,t,n){let i=await Kn(e,t||this._options.decryptionKey,n);this.setExperiments(JSON.parse(i))}async setAttributes(e){if(this._options.attributes=e,this._options.stickyBucketService&&await this.refreshStickyBuckets(),this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}async updateAttributes(e){return this.setAttributes({...this._options.attributes,...e})}async setAttributeOverrides(e){if(this._options.attributeOverrides=e,this._options.stickyBucketService&&await this.refreshStickyBuckets(),this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}async setForcedVariations(e){if(this._options.forcedVariations=e||{},this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}setForcedFeatures(e){this._options.forcedFeatureValues=e,this._render()}async setURL(e){if(e!==this._options.url){if(this._options.url=e,this._redirectedUrl="",this._options.remoteEval){await this._refreshForRemoteEval(),this._updateAllAutoExperiments(!0);return}this._updateAllAutoExperiments(!0)}}getAttributes(){return{...this._options.attributes,...this._options.attributeOverrides}}getForcedVariations(){return this._options.forcedVariations||{}}getForcedFeatures(){return this._options.forcedFeatureValues||new Map}getStickyBucketAssignmentDocs(){return this._options.stickyBucketAssignmentDocs||{}}getUrl(){return this._options.url||""}getFeatures(){return this._options.features||{}}getExperiments(){return this._options.experiments||[]}getCompletedChangeIds(){return Array.from(this._completedChangeIds)}subscribe(e){return this._subscriptions.add(e),()=>{this._subscriptions.delete(e)}}async _refreshForRemoteEval(){if(!this._options.remoteEval||!this._initialized)return;let e=await this._refresh({allowStale:!1});e.data&&await this.setPayload(e.data)}getAllResults(){return new Map(this._assigned)}onDestroy(e){this._destroyCallbacks.push(e)}isDestroyed(){return!!this._destroyed}destroy(e){e=e||{},this._destroyed=!0,this._destroyCallbacks.forEach(t=>{try{t()}catch(n){console.error(n)}}),this._subscriptions.clear(),this._assigned.clear(),this._trackedExperiments.clear(),this._completedChangeIds.clear(),this._deferredTrackingCalls.clear(),this._trackedFeatures={},this._destroyCallbacks=[],this._payload=void 0,this._saveStickyBucketAssignmentDoc=void 0,Ky(this),e.destroyAllStreams&&rp(),this.logs=[],Oi&&window._growthbook===this&&delete window._growthbook,this._activeAutoExperiments.forEach(t=>{t.undo()}),this._activeAutoExperiments.clear(),this._triggeredExpKeys.clear()}setRenderer(e){this._renderer=e}forceVariation(e,t){if(this._options.forcedVariations=this._options.forcedVariations||{},this._options.forcedVariations[e]=t,this._options.remoteEval){this._refreshForRemoteEval();return}this._updateAllAutoExperiments(),this._render()}run(e){let{result:t}=Dl(e,null,this._getEvalContext());return this._onExperimentEval(e,t),t}triggerExperiment(e){return this._triggeredExpKeys.add(e),this._options.experiments?this._options.experiments.filter(n=>n.key===e).map(n=>this._runAutoExperiment(n)).filter(n=>n!==null):null}triggerAutoExperiments(){this._autoExperimentsAllowed=!0,this._updateAllAutoExperiments(!0)}_getEvalContext(){return{user:this._getUserContext(),global:this._getGlobalContext(),stack:{evaluatedFeatures:new Set}}}_getUserContext(){return{attributes:this._options.user?{...this._options.user,...this._options.attributes}:this._options.attributes,enableDevMode:this._options.enableDevMode,blockedChangeIds:this._options.blockedChangeIds,stickyBucketAssignmentDocs:this._options.stickyBucketAssignmentDocs,url:this._getContextUrl(),forcedVariations:this._options.forcedVariations,forcedFeatureValues:this._options.forcedFeatureValues,attributeOverrides:this._options.attributeOverrides,saveStickyBucketAssignmentDoc:this._saveStickyBucketAssignmentDoc,trackingCallback:this._options.trackingCallback,onFeatureUsage:this._options.onFeatureUsage,devLogs:this.logs,trackedExperiments:this._trackedExperiments,trackedFeatureUsage:this._trackedFeatures}}_getGlobalContext(){return{features:this._options.features,experiments:this._options.experiments,log:this.log,enabled:this._options.enabled,qaMode:this._options.qaMode,savedGroups:this._options.savedGroups,groups:this._options.groups,overrides:this._options.overrides,onExperimentEval:this._onExperimentEval,recordChangeId:this._recordChangedId,saveDeferredTrack:this._saveDeferredTrack,eventLogger:this._options.eventLogger}}_runAutoExperiment(e,t){let n=this._activeAutoExperiments.get(e);if(e.manual&&!this._triggeredExpKeys.has(e.key)&&!n)return null;let i=this._isAutoExperimentBlockedByContext(e),s,o;i?s=$e(this._getEvalContext(),e,-1,!1,""):({result:s,trackingCall:o}=Dl(e,null,this._getEvalContext()),this._onExperimentEval(e,s));let a=JSON.stringify(s.value);if(!t&&s.inExperiment&&n&&n.valueHash===a)return s;if(n&&this._undoActiveAutoExperiment(e),s.inExperiment){let l=El(e);if(l==="redirect"&&s.value.urlRedirect&&e.urlPatterns){let c=e.persistQueryString?Wy(this._getContextUrl(),s.value.urlRedirect):s.value.urlRedirect;if(kl(c,e.urlPatterns))return this.log("Skipping redirect because original URL matches redirect URL",{id:e.key}),s;this._redirectedUrl=c;let{navigate:u,delay:p}=this._getNavigateFunction();if(u)if(Oi)Promise.all([...o?[Cl(o,this._options.maxNavigateDelay??1e3)]:[],new Promise(h=>window.setTimeout(h,this._options.navigateDelay??p))]).then(()=>{try{u(c)}catch(h){console.error(h)}});else try{u(c)}catch(h){console.error(h)}}else if(l==="visual"){let c=this._options.applyDomChangesCallback?this._options.applyDomChangesCallback(s.value):this._applyDOMChanges(s.value);c&&this._activeAutoExperiments.set(e,{undo:c,valueHash:a})}}return s}_undoActiveAutoExperiment(e){let t=this._activeAutoExperiments.get(e);t&&(t.undo(),this._activeAutoExperiments.delete(e))}_updateAllAutoExperiments(e){if(!this._autoExperimentsAllowed)return;let t=this._options.experiments||[],n=new Set(t);this._activeAutoExperiments.forEach((i,s)=>{n.has(s)||(i.undo(),this._activeAutoExperiments.delete(s))});for(let i of t){let s=this._runAutoExperiment(i,e);if(s&&s.inExperiment&&El(i)==="redirect")break}}_onExperimentEval(e,t){let n=this._assigned.get(e.key);this._assigned.set(e.key,{experiment:e,result:t}),this._subscriptions.size>0&&this._fireSubscriptions(e,t,n)}_fireSubscriptions(e,t,n){(!n||n.result.inExperiment!==t.inExperiment||n.result.variationId!==t.variationId)&&this._subscriptions.forEach(i=>{try{i(e,t)}catch(s){console.error(s)}})}_recordChangedId(e){this._completedChangeIds.add(e)}isOn(e){return this.evalFeature(e).on}isOff(e){return this.evalFeature(e).off}getFeatureValue(e,t){let n=this.evalFeature(e).value;return n===null?t:n}feature(e){return this.evalFeature(e)}evalFeature(e){return Fl(e,this._getEvalContext())}log(e,t){this.debug&&(this._options.log?this._options.log(e,t):console.log(e,t))}getDeferredTrackingCalls(){return Array.from(this._deferredTrackingCalls.values())}setDeferredTrackingCalls(e){this._deferredTrackingCalls=new Map(e.filter(t=>t&&t.experiment&&t.result).map(t=>[Hl(t.experiment,t.result),t]))}async fireDeferredTrackingCalls(){if(!this._options.trackingCallback)return;let e=[];this._deferredTrackingCalls.forEach(t=>{!t||!t.experiment||!t.result?console.error("Invalid deferred tracking call",{call:t}):e.push(this._options.trackingCallback(t.experiment,t.result))}),this._deferredTrackingCalls.clear(),await Promise.all(e)}setTrackingCallback(e){this._options.trackingCallback=e,this.fireDeferredTrackingCalls()}setEventLogger(e){this._options.eventLogger=e}async logEvent(e,t){if(this._destroyed){console.error("Cannot log event to destroyed GrowthBook instance");return}if(this._options.enableDevMode&&this.logs.push({eventName:e,properties:t,timestamp:Date.now().toString(),logType:"event"}),this._options.eventLogger)try{await this._options.eventLogger(e,t||{},this._getUserContext())}catch(n){console.error(n)}else console.error("No event logger configured")}_saveDeferredTrack(e){this._deferredTrackingCalls.set(Hl(e.experiment,e.result),e)}_getContextUrl(){return this._options.url||(Oi?window.location.href:"")}_isAutoExperimentBlockedByContext(e){let t=El(e);if(t==="visual"){if(this._options.disableVisualExperiments||this._options.disableJsInjection&&e.variations.some(n=>n.js))return!0}else if(t==="redirect"){if(this._options.disableUrlRedirectExperiments)return!0;try{let n=new URL(this._getContextUrl());for(let i of e.variations){if(!i||!i.urlRedirect)continue;let s=new URL(i.urlRedirect);if(this._options.disableCrossOriginUrlRedirectExperiments&&(s.protocol!==n.protocol||s.host!==n.host))return!0}}catch(n){return this.log("Error parsing current or redirect URL",{id:e.key,error:n}),!0}}else return!0;return!!(e.changeId&&(this._options.blockedChangeIds||[]).includes(e.changeId))}getRedirectUrl(){return this._redirectedUrl}_getNavigateFunction(){return this._options.navigate?{navigate:this._options.navigate,delay:0}:Oi?{navigate:e=>{window.location.replace(e)},delay:100}:{navigate:null,delay:0}}_applyDOMChanges(e){if(!Oi)return;let t=[];if(e.css){let n=document.createElement("style");n.innerHTML=e.css,document.head.appendChild(n),t.push(()=>n.remove())}if(e.js){let n=document.createElement("script");n.innerHTML=e.js,this._options.jsInjectionNonce&&(n.nonce=this._options.jsInjectionNonce),document.head.appendChild(n),t.push(()=>n.remove())}return e.domMutations&&e.domMutations.forEach(n=>{t.push(ab.declarative(n).revert)}),()=>{t.forEach(n=>n())}}async refreshStickyBuckets(e){if(this._options.stickyBucketService){let t=this._getEvalContext(),n=await mb(t,this._options.stickyBucketService,e);this._options.stickyBucketAssignmentDocs=n}}generateStickyBucketAssignmentDocsSync(e,t){if(!("getAllAssignmentsSync"in e)){console.error("generating StickyBucketAssignmentDocs docs requires StickyBucketServiceSync");return}let n=this._getEvalContext(),i=up(n,t);return e.getAllAssignmentsSync(i)}inDevMode(){return!!this._options.enableDevMode}};var JC="https://experiment.syntrologie.com",dp=class{constructor(e={}){this.featureListeners=new Set;if(e.client)this.gb=e.client;else{let t=e.onExperimentViewed?(n,i)=>{e.onExperimentViewed(n.key,i.variationId,typeof i.value=="string"?i.value:`variation_${i.variationId}`)}:void 0;this.gb=new yo({...e,apiHost:e.apiHost??JC,enableDevMode:e.enableDevMode??!0,trackingCallback:t}),e.autoInit&&this.gb.init({streaming:!0})}}get _internal(){return this.gb}async refreshFeatures(){await this.gb.loadFeatures()}setAttributes(e){this.gb.setAttributes({...this.gb.getAttributes(),...e})}setForcedVariations(e){this.gb.setForcedVariations(e)}getFeatureValue(e,t){return this.gb.getFeatureValue(e,t)}getAllFeatures(){let e=this.gb.getFeatures(),t={};for(let n of Object.keys(e))t[n]=this.gb.getFeatureValue(n,null);return t}shouldRenderRectangle(e){return!0}onFeaturesChanged(e){return this.featureListeners.add(e),this.featureListeners.size===1&&this.gb.setRenderer(()=>{for(let t of this.featureListeners)t()}),()=>{this.featureListeners.delete(e),this.featureListeners.size===0&&this.gb.setRenderer(null)}}};function pp(r={}){return new dp(r)}var bb={growthbook:r=>pp({...r,autoInit:!0})};function _b(r,e){let t=bb[r];if(!t)throw new Error(`Unknown experiment provider: ${r}. Supported: ${Object.keys(bb).join(", ")}`);return t(e)}var QC=["cdn.syntrologie.com","localhost","127.0.0.1"];function eA(r){try{let e=new URL(r),t=/^(localhost|127\.0\.0\.1)$/.test(e.hostname);return e.protocol!=="https:"&&!t?(console.warn("[SmartCanvas] CDN URL must use HTTPS:",r),!1):QC.some(i=>e.hostname===i)?!0:(console.warn("[SmartCanvas] CDN host not in allowlist:",e.hostname),!1)}catch{return console.warn("[SmartCanvas] Invalid CDN URL:",r),!1}}var hp=class{constructor(e){this.name="cdn";if(this.url=`${e.baseUrl}/${e.configId}.json`,this.integrity=e.integrity,!eA(this.url))throw new Error(`[SmartCanvas] CDN URL not allowed: ${this.url}`)}async fetch(){let e=performance.now(),t=await fetch(this.url,{credentials:"omit",cache:"default"});if(!t.ok)throw new Error(`[SmartCanvas] Failed to fetch config from CDN (${t.status})`);let n=await t.text();if(this.integrity){let l=await tA(n),c=this.integrity.replace("sha384-","");if(l!==c)throw new Error(`[SmartCanvas] Config integrity check failed. Expected ${c}, got ${l}`)}let i=JSON.parse(n),s=performance.now()-e,o=t.headers.get("cache-control"),a=t.headers.get("age");return{config:i,meta:{source:"cdn",fetchTimeMs:s,cached:o?.includes("public")??!1,cacheAge:a?parseInt(a,10):void 0}}}};async function tA(r){let t=new TextEncoder().encode(r),n=await crypto.subtle.digest("SHA-384",t),i=new Uint8Array(n);return btoa(String.fromCharCode(...i))}function xb(r){return new hp(r)}var rA="syntro_exp",nA="syntro_var",fp=class{constructor(e){this.name="experiments";this.client=e.client,this.featureKey=e.featureKey,this.manifestKey=e.manifestKey,this.variantFlagPrefix=e.variantFlagPrefix}async fetch(){let e=performance.now();if(typeof window<"u"){let i=new URLSearchParams(window.location.search),s=i.get(rA),o=i.get(nA);if(s&&o!==null&&this.client.setForcedVariations){let a=parseInt(o,10);Number.isNaN(a)||(console.log(`[SmartCanvas] Preview mode: forcing "${s}" to variation ${a}`),this.client.setForcedVariations({[s]:a}))}}if(this.manifestKey||this.variantFlagPrefix||this.client.getAllFeatures){let i=this.fetchMultiFlag();if(i){let s=performance.now()-e;return{config:i,meta:{source:"experiments",fetchTimeMs:s,cached:!0}}}}if(!this.featureKey)throw new Error("[SmartCanvas] No featureKey configured and no variant flags found. Ensure at least one config feature flag exists in your experiment platform.");let t=this.client.getFeatureValue?.(this.featureKey,null);if(!t||typeof t!="object")throw new Error(`[SmartCanvas] Feature "${this.featureKey}" not found or invalid. Ensure the feature is configured in your experiment platform.`);let n=performance.now()-e;return{config:t,meta:{source:"experiments",fetchTimeMs:n,cached:!0}}}fetchMultiFlag(){let e=this.getVariantFlagKeys();return!e||e.length===0?null:tl(this.client,e)}getVariantFlagKeys(){if(this.manifestKey){let e=this.client.getFeatureValue?.(this.manifestKey,null);if(e&&typeof e=="object"){let t=e.variant_flags;if(t&&t.length>0)return t}}if(this.client.getAllFeatures){let e=this.client.getAllFeatures();return this.variantFlagPrefix?Object.keys(e).filter(t=>t.startsWith(this.variantFlagPrefix)):Object.keys(e)}return[]}};function wb(r){return new fp(r)}var iA="https://cdn.syntrologie.com/configs",Sb={cdn:r=>{if(!r.configId)throw new Error("CDN fetcher requires 'configId' option");return xb({baseUrl:r.baseUrl??iA,configId:r.configId,integrity:r.integrity})},experiments:r=>{if(!r.featureKey)throw new Error("Experiments fetcher requires 'featureKey' option");return wb({featureKey:r.featureKey})}};function kb(r,e={}){let t=Sb[r];if(!t)throw new Error(`Unknown config fetcher type: ${r}. Supported: ${Object.keys(Sb).join(", ")}`);return t(e)}var Eb="syntro_session_metrics",Bl=class{constructor(e={}){this.metrics=new Map;this.subscribers=new Set;this.experiments=e.experiments,this.attributePrefix=e.attributePrefix??"session_",this.onMetricChange=e.onMetricChange,this.loadFromStorage()}increment(e,t=1){let i=(this.metrics.get(e)??0)+t;return this.metrics.set(e,i),this.saveToStorage(),this.updateExperimentAttributes(e,i),this.onMetricChange?.(e,i),this.notifySubscribers(),i}set(e,t){this.metrics.set(e,t),this.saveToStorage(),this.updateExperimentAttributes(e,t),this.onMetricChange?.(e,t),this.notifySubscribers()}get(e){return this.metrics.get(e)??0}meetsThreshold(e,t){return this.get(e)>=t}getAll(){return Object.fromEntries(this.metrics)}reset(e){this.metrics.delete(e),this.saveToStorage(),this.updateExperimentAttributes(e,0),this.onMetricChange?.(e,0),this.notifySubscribers()}resetAll(){let e=Array.from(this.metrics.keys());this.metrics.clear(),this.saveToStorage();let t={};for(let n of e)t[`${this.attributePrefix}${n}`]=0,this.onMetricChange?.(n,0);this.experiments?.setAttributes?.(t),this.notifySubscribers()}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}destroy(){this.subscribers.clear()}setExperiments(e){this.experiments=e,this.syncAllToExperiments()}updateExperimentAttributes(e,t){if(!this.experiments?.setAttributes)return;let n=`${this.attributePrefix}${e}`;this.experiments.setAttributes({[n]:t})}syncAllToExperiments(){if(!this.experiments?.setAttributes)return;let e={};for(let[t,n]of this.metrics)e[`${this.attributePrefix}${t}`]=n;this.experiments.setAttributes(e)}notifySubscribers(){for(let e of this.subscribers)try{e()}catch{}}loadFromStorage(){if(!(typeof window>"u"||typeof sessionStorage>"u"))try{let e=sessionStorage.getItem(Eb);if(e){let t=JSON.parse(e);for(let[n,i]of Object.entries(t))this.metrics.set(n,i.count)}}catch(e){console.warn("[SessionMetricTracker] Failed to load from sessionStorage:",e)}}saveToStorage(){if(!(typeof window>"u"||typeof sessionStorage>"u"))try{let e={};for(let[t,n]of this.metrics)e[t]={count:n,lastUpdated:Date.now()};sessionStorage.setItem(Eb,JSON.stringify(e))}catch(e){console.warn("[SessionMetricTracker] Failed to save to sessionStorage:",e)}}};function gp(r={}){return new Bl(r)}var Vl=class{constructor(e){this.unsubUnload=null;this.unsubLoad=null;this.destroyed=!1;this.adapter=e}activate(){this.destroyed||(this.unsubUnload=this.adapter.onRegionWillUnload(e=>{this.hideContentInSection(e)}),this.unsubLoad=this.adapter.onRegionDidLoad(e=>{this.revealContentInSection(e)}))}destroy(){this.destroyed=!0,this.unsubUnload?.(),this.unsubLoad?.(),this.unsubUnload=null,this.unsubLoad=null}hideContentInSection(e){let t=this.sectionSelector(e),n=document.querySelectorAll(`${t} [data-syntro-action-id]`);for(let i of n)i.style.opacity="0",i.style.transition="none"}revealContentInSection(e){let t=this.sectionSelector(e);requestAnimationFrame(()=>{if(this.destroyed)return;let n=document.querySelectorAll(`${t} [data-syntro-action-id]`);for(let i of n)i.style.transition="opacity 120ms ease-in",i.style.opacity="1"})}sectionSelector(e){let t=typeof CSS<"u"?CSS.escape(e):e;return document.getElementById(`shopify-section-${e}`)?`#shopify-section-${t}`:`.shopify-section[id$="-${t}"]`}};var jl=class{constructor(e){this.name="shopify";this.loadCallbacks=new Set;this.unloadCallbacks=new Set;this.abortController=null;this.antiFlicker=null;this.initTimeoutMs=e?.initTimeoutMs??3e3}detect(){return typeof window>"u"||typeof document>"u"?!1:!!("Shopify"in window&&window.Shopify!=null||document.querySelector('meta[name="shopify-checkout-api-token"]'))}async onInit(){this.abortController=new AbortController;let{signal:e}=this.abortController;this.attachSectionListeners(e),this.antiFlicker=new Vl(this),this.antiFlicker.activate(),await this.waitForInitialSections(this.initTimeoutMs,e)}onRegionDidLoad(e){return this.loadCallbacks.add(e),()=>{this.loadCallbacks.delete(e)}}onRegionWillUnload(e){return this.unloadCallbacks.add(e),()=>{this.unloadCallbacks.delete(e)}}onRegionMutated(e){}getAnchorScope(e){let t=e.closest(".shopify-section");return t?.id?`#${typeof CSS<"u"?CSS.escape(t.id):t.id} `:""}destroy(){this.antiFlicker?.destroy(),this.antiFlicker=null,this.abortController&&(this.abortController.abort(),this.abortController=null),this.loadCallbacks.clear(),this.unloadCallbacks.clear()}attachSectionListeners(e){document.addEventListener("shopify:section:load",t=>{let n=t.detail?.sectionId;if(n)for(let i of this.loadCallbacks)try{i(n)}catch{}},{signal:e}),document.addEventListener("shopify:section:unload",t=>{let n=t.detail?.sectionId;if(n)for(let i of this.unloadCallbacks)try{i(n)}catch{}},{signal:e})}waitForInitialSections(e,t){return new Promise(n=>{if(document.querySelector(".shopify-section")){n();return}let i=!1,s=()=>{i||(i=!0,n())};document.addEventListener("shopify:section:load",()=>s(),{once:!0,signal:t});let o=setTimeout(s,e);t.addEventListener("abort",()=>{clearTimeout(o),s()},{once:!0})})}};var sA=[()=>new jl];function Cb(){for(let r of sA){let e=r();if(e.detect())return e}return null}var mp="syntro_experiments";var Ul={distinctId:"_syntro_distinct_id",telemetryHost:"_syntro_telemetry_host",telemetryKey:"_syntro_telemetry_key"};var aA=720*60*60,Wl=class{constructor(e){this.context={...e,telemetryHost:e.telemetryHost.replace(/\/$/,"")},this.writeCookie(),this.writeCartAttributes()}updateContext(e){this.context={...e,telemetryHost:e.telemetryHost.replace(/\/$/,"")},this.writeCookie(),this.writeCartAttributes()}destroy(){document.cookie=`${mp}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/; SameSite=Lax`}writeCookie(){let e={version:1,distinct_id:this.context.distinctId,telemetry_host:this.context.telemetryHost,telemetry_key:this.context.telemetryKey},t=encodeURIComponent(JSON.stringify(e)),n=`${mp}=${t}; max-age=${aA}; path=/; SameSite=Lax`;document.cookie=n}writeCartAttributes(){let{distinctId:e,telemetryHost:t,telemetryKey:n}=this.context;if(!e)return;let i={};i[Ul.distinctId]=e,i[Ul.telemetryHost]=t,i[Ul.telemetryKey]=n;let s=JSON.stringify({attributes:i});try{fetch("/cart/update.js",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},credentials:"same-origin",body:s}).then(o=>{o.ok||console.warn(`[shopify-pixel-bridge] /cart/update.js returned ${o.status}; checkout_completed events will fall back to cookie (likely to drop).`)}).catch(o=>{console.warn("[shopify-pixel-bridge] /cart/update.js request failed; checkout_completed events will fall back to cookie (likely to drop).",o)})}catch{}}};function Rb(r){return r<768?"mobile":r<1024?"tablet":"desktop"}function yp(r,e){return r==="telegram"||r==="mcp-app"?"agent":e==="mobile"?"mobile":"desktop"}function lA(r="web",e="web"){let t=Date.now(),n=typeof window<"u"?window.innerWidth:0,i=typeof window<"u"?window.innerHeight:0,s=Rb(n);return{page:{url:typeof window<"u"?window.location.href:"",title:typeof document<"u"?document.title:void 0},session:{sessionId:"",startTs:t,pageHistory:[]},viewport:{width:n,height:i},surface:{type:r,host:e,device:s,mode:yp(r,s)}}}function vp(r,e){if(!e)return;let t;try{t=new URL(r).pathname}catch{t=r}if(t.startsWith("/")||(t=`/${t}`),e.exclude){for(let n of e.exclude)if(Ab(t,n))return}if(e.include){for(let n of e.include)if(Ab(t,n))return n;return}return t}function Ab(r,e){let t=r.replace(/\/$/,"")||"/",n=e.replace(/\/$/,"")||"/";if(t===n)return!0;let i=n.replace(/:[^/]+/g,"[^/]+").replace(/\*/g,".*");return new RegExp(`^${i}$`).test(t)}var zl=class{constructor(e){this.listeners=new Set;this.cleanupFns=[];if(this.telemetry=e.telemetry,this.routes=e.routes,this.navigation=e.navigation,this.context=lA(e.initialSurfaceType,e.initialSurfaceHost),this.previousContext={...this.context},e.telemetry?.getSessionId){let t=e.telemetry.getSessionId();t&&(this.context.session.sessionId=t)}e.initialPageHistory&&(this.context.session.pageHistory=e.initialPageHistory),this.context.page.routeId=vp(this.context.page.url,this.routes),this.addPageToHistory(this.context.page.url),typeof window<"u"&&this.setupBrowserListeners()}get(){return{...this.context}}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setRoutes(e){this.routes=e;let t=vp(this.context.page.url,this.routes);t!==this.context.page.routeId&&this.updateContext({page:{...this.context.page,routeId:t}})}setAnchors(e){this.updateContext({anchors:e})}setSessionId(e){e!==this.context.session.sessionId&&this.updateContext({session:{...this.context.session,sessionId:e}})}setSurfaceType(e){if(e===this.context.surface.type)return;let t=yp(e,this.context.surface.device);this.updateContext({surface:{...this.context.surface,type:e,mode:t}})}setSurfaceHost(e){e!==this.context.surface.host&&this.updateContext({surface:{...this.context.surface,host:e}})}destroy(){for(let e of this.cleanupFns)e();this.cleanupFns=[],this.listeners.clear()}setupBrowserListeners(){let e,t=()=>{clearTimeout(e),e=setTimeout(()=>{this.updateViewport()},100)};window.addEventListener("resize",t),this.cleanupFns.push(()=>window.removeEventListener("resize",t));let n=this.navigation.subscribe(()=>this.updatePage());this.cleanupFns.push(n)}updateViewport(){let e={width:window.innerWidth,height:window.innerHeight},t=e.width!==this.context.viewport.width,n=e.height!==this.context.viewport.height;if(!t&&!n)return;let i={viewport:e};if(t){let s=Rb(e.width);if(s!==this.context.surface.device){let o=yp(this.context.surface.type,s);i.surface={...this.context.surface,device:s,mode:o}}}this.updateContext(i)}updatePage(){let e=window.location.href,{title:t}=document,n=vp(e,this.routes),i={url:e,title:t,routeId:n};(i.url!==this.context.page.url||i.title!==this.context.page.title||i.routeId!==this.context.page.routeId)&&(i.url!==this.context.page.url&&this.addPageToHistory(i.url),this.updateContext({page:i}))}addPageToHistory(e){let t={url:e,ts:Date.now()},n=[...this.context.session.pageHistory||[],t];n.length>50&&n.shift(),this.context.session.pageHistory=n}updateContext(e){this.previousContext={...this.context},this.context={...this.context,...e},this.notifyListeners()}notifyListeners(){for(let e of this.listeners)try{e(this.context,this.previousContext)}catch(t){console.error("[ContextManager] Listener error:",t)}}};function bp(r){return new zl(r)}function Tb(r,e){let{context:t,state:n,events:i}=e;switch(r.type){case"page_url":{let{url:s}=r,o=t.page.url.split("?")[0].split("#")[0],a=s.replace(/\*\*/g,"\0GLOBSTAR\0").replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,"[^/]*").replace(/\0GLOBSTAR\0/g,".*");return new RegExp(`^${a}$`).test(o)}case"route":return t.page.routeId===r.routeId;case"anchor_visible":{let s=t.anchors?.find(o=>o.anchorId===r.anchorId);switch(r.state){case"visible":return s?.visible===!0;case"present":return s?.present===!0;case"absent":return!s?.present;default:return!1}}case"event_occurred":{if(!i)return!1;let s=r.withinMs??6e4;return i.hasRecentEvent(r.eventName,s)}case"state_equals":return n?.getValue?n.getValue(r.key)===r.value:!1;case"viewport":{let{width:s,height:o}=t.viewport;return!(r.minWidth!==void 0&&s<r.minWidth||r.maxWidth!==void 0&&s>r.maxWidth||r.minHeight!==void 0&&o<r.minHeight||r.maxHeight!==void 0&&o>r.maxHeight)}case"session_metric":{let s=e.sessionMetrics?e.sessionMetrics.get(r.key):n?.getSessionMetric(r.key);if(s===void 0)return!1;let{operator:o,threshold:a}=r;switch(o){case"gte":return s>=a;case"lte":return s<=a;case"eq":return s===a;case"gt":return s>a;case"lt":return s<a;default:return!1}}case"dismissed":{if(!n)return r.inverted??!1;let s=n.isDismissed(r.key);return r.inverted?!s:s}case"cooldown_active":{if(!n)return r.inverted??!1;let s=n.isCooldownActive(r.key);return r.inverted?!s:s}case"frequency_limit":{if(!n)return r.inverted??!1;let o=n.getFrequencyCount(r.key)>=r.limit;return r.inverted?!o:o}case"event_count":{if(!e.accumulator)return!1;let s=r,o=e.accumulator.getCount(s.key,s.withinMs);switch(s.operator){case"gte":return o>=s.count;case"lte":return o<=s.count;case"eq":return o===s.count;case"gt":return o>s.count;case"lt":return o<s.count;default:return!1}}default:return console.warn("[RuleStrategy] Unknown condition type:",r.type),!1}}function Ib(r,e){let t=[];for(let n of r.conditions){let i=Tb(n,e);if(t.push({condition:n,result:i}),!i)return{matched:!1,conditionResults:t}}return{matched:!0,conditionResults:t}}function ql(r,e){for(let t=0;t<r.rules.length;t++){let n=r.rules[t],{matched:i,conditionResults:s}=Ib(n,e);if(i)return{value:n.value,isFallback:!1,matchInfo:{strategyType:"rules",matchedRuleIndex:t,evaluatedConditions:s}}}return{value:r.default,isFallback:!0,matchInfo:{strategyType:"rules"}}}function Zl(r,e){let{context:t}=e,n=t.augmented?.[r.field];return n===void 0||typeof n!="number"?{value:r.below,isFallback:!0,matchInfo:{strategyType:"score"}}:{value:n>=r.threshold?r.above:r.below,isFallback:!1,matchInfo:{strategyType:"score"}}}function $b(r,e){let{state:t,events:n,sessionMetrics:i,accumulator:s}=e;return{context:r,state:t?{isDismissed:o=>t.dismissals.isDismissed(o),isCooldownActive:o=>t.cooldowns.isActive(o),getFrequencyCount:o=>t.frequency.count(o),getSessionMetric:o=>i?.get(o)??0,getValue:o=>t.session.get(o)??t.user.get(o)}:void 0,sessionMetrics:i?{get:o=>i.get(o)??0}:void 0,events:n?{hasRecentEvent:(o,a)=>n.hasRecentEvent(o,a)}:void 0,accumulator:s?{getCount:(o,a)=>s.getCount(o,a)}:void 0}}async function Mb(r,e,t={}){let n=$b(e,t);switch(r.type){case"rules":return ql(r,n);case"score":return Zl(r,n);case"model":return{value:r.default,isFallback:!0,matchInfo:{strategyType:"model"}};case"external":return{value:r.default,isFallback:!0,matchInfo:{strategyType:"external"}};default:return console.warn("[DecisionEngine] Unknown strategy type:",r.type),{value:void 0,isFallback:!0,matchInfo:{strategyType:r.type}}}}function Ob(r,e,t={}){let n=$b(e,t);switch(r.type){case"rules":return ql(r,n);case"score":return Zl(r,n);case"model":case"external":return{value:r.default,isFallback:!0,matchInfo:{strategyType:r.type}};default:return{value:void 0,isFallback:!0,matchInfo:{strategyType:r.type}}}}function _p(r){return{evaluate:(e,t)=>Mb(e,t,r),evaluateSync:(e,t)=>Ob(e,t,r)}}function xp(r){let{eventBus:e,stateStore:t}=r,n=new Map,i=new Set,s=null,o=t.ns("accumulator");function a(c){let u=!1;for(let p of n.values()){if(!p.predicate(c))continue;let h=o.get(p.stateKey)||{count:0};h.count++,p.needsTimestamps&&(h.timestamps||(h.timestamps=[]),h.timestamps.push(c.ts),h.timestamps.length>200&&(h.timestamps=h.timestamps.slice(-200))),o.set(p.stateKey,h),u=!0}if(u)for(let p of i)try{p()}catch(h){console.error("[EventAccumulator] Subscriber error:",h)}}function l(){s||n.size===0||(s=e.subscribe(a))}return{register(c,u,p=!1){let h=`ev:${c}`,f=n.get(h);if(f){p&&!f.needsTimestamps&&(f.needsTimestamps=!0);return}n.set(h,{stateKey:h,needsTimestamps:p,predicate:u}),l()},getCount(c,u){let p=`ev:${c}`,h=o.get(p);if(!h)return 0;if(u===void 0||!h.timestamps)return h.count;let f=Date.now()-u;return h.timestamps.filter(v=>v>=f).length},subscribe(c){return i.add(c),()=>{i.delete(c)}},destroy(){s&&(s(),s=null),n.clear(),i.clear()}}}var bo=class{constructor(){this.listeners=new Set;this.destroyed=!1;this.onPopState=()=>{this.notify(window.location.href,"popstate")};this.wasNative=this.isNativeFunction(history.pushState),this.capturedPushState=history.pushState,this.capturedReplaceState=history.replaceState,history.pushState=(...e)=>{this.capturedPushState.call(history,...e),queueMicrotask(()=>this.notify(window.location.href,"pushState"))},history.replaceState=(...e)=>{this.capturedReplaceState.call(history,...e),queueMicrotask(()=>this.notify(window.location.href,"replaceState"))},window.addEventListener("popstate",this.onPopState)}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}diagnose(){return{isNative:this.wasNative,subscriberCount:this.listeners.size}}destroy(){this.destroyed||(this.destroyed=!0,history.pushState=this.capturedPushState,history.replaceState=this.capturedReplaceState,window.removeEventListener("popstate",this.onPopState),this.listeners.clear())}notify(e,t){if(!this.destroyed)for(let n of this.listeners)try{n(e,t)}catch{}}isNativeFunction(e){try{return Function.prototype.toString.call(e).includes("[native code]")}catch{return!1}}};var wp="cooldown:";function Pb(r){return{set(e,t){let n=wp+e,i=Date.now()+t;r.set(n,i)},isActive(e){return this.remaining(e)>0},remaining(e){let t=wp+e,n=r.get(t);if(n===void 0)return 0;let i=n-Date.now();return i<=0?(r.remove(t),0):i},clear(e){let t=wp+e;r.remove(t)}}}var _o="dismissed:";function Nb(r,e){return{mark(t,n=!1){let i=_o+t;(n?e:r).set(i,!0)},isDismissed(t){let n=_o+t;return r.has(n)||e.has(n)},clear(t){let n=_o+t;r.remove(n),e.remove(n)},clearAll(){for(let t of r.keys())t.startsWith(_o)&&r.remove(t);for(let t of e.keys())t.startsWith(_o)&&e.remove(t)}}}var Sp="freq:";function Lb(r){function e(t){let n=Sp+t,i=r.get(n);if(i){if(i.resetAt&&Date.now()>=i.resetAt){r.remove(n);return}return i}}return{increment(t,n){let i=Sp+t,s=e(t),o=(s?.count??0)+1,a={count:o,resetAt:s?.resetAt??(n?Date.now()+n:void 0)};return r.set(i,a),o},count(t){return e(t)?.count??0},reset(t){let n=Sp+t;r.remove(n)},hasReachedLimit(t,n){return this.count(t)>=n}}}var cA="syntro";function kp(r,e){let t=`${e}:`;return{get(n){if(r)try{let i=r.getItem(t+n);if(!i)return;let s=JSON.parse(i);if(s.expiresAt&&Date.now()>=s.expiresAt){r.removeItem(t+n);return}return s.value}catch{return}},set(n,i,s){if(r)try{let o={value:i,expiresAt:s?Date.now()+s:void 0};r.setItem(t+n,JSON.stringify(o))}catch(o){console.warn("[StateStore] Failed to save:",o)}},remove(n){r&&r.removeItem(t+n)},has(n){return r?this.get(n)!==void 0:!1},keys(){if(!r)return[];let n=[];for(let i=0;i<r.length;i++){let s=r.key(i);s?.startsWith(t)&&n.push(s.slice(t.length))}return n},clear(){if(!r)return;let n=this.keys();for(let i of n)r.removeItem(t+i)}}}function xo(r){let e=new Map,t=`${r}:`;return{get(n){let i=e.get(t+n);if(i){if(i.expiresAt&&Date.now()>=i.expiresAt){e.delete(t+n);return}return i.value}},set(n,i,s){e.set(t+n,{value:i,expiresAt:s?Date.now()+s:void 0})},remove(n){e.delete(t+n)},has(n){return this.get(n)!==void 0},keys(){let n=[];for(let i of e.keys())i.startsWith(t)&&n.push(i.slice(t.length));return n},clear(){for(let n of e.keys())n.startsWith(t)&&e.delete(n)}}}var Gl=class{constructor(e={}){this.namespacedStorages=new Map;this.namespace=e.namespace??cA;let t=n=>typeof n=="object"&&n!==null&&typeof n.setItem=="function";typeof window<"u"?(this.session=t(window.sessionStorage)?kp(window.sessionStorage,this.namespace):xo(this.namespace),this.user=t(window.localStorage)?kp(window.localStorage,this.namespace):xo(this.namespace)):(this.session=xo(this.namespace),this.user=xo(this.namespace)),this.dismissals=Nb(this.session,this.user),this.cooldowns=Pb(this.user),this.frequency=Lb(this.session)}ns(e){let t=`${this.namespace}:${e}`;if(!this.namespacedStorages.has(t)){let n=typeof window<"u"&&typeof sessionStorage<"u"?kp(sessionStorage,t):xo(t);this.namespacedStorages.set(t,n)}return this.namespacedStorages.get(t)}};function Ep(r={}){return new Gl(r)}function wo(r){return r.startsWith("inline:")?"inline":r.startsWith("adjacent:")?"adjacent":"static"}function Kl(r){return r.startsWith("inline:")?r.slice(7):r.startsWith("adjacent:")?r.slice(9):null}var Fb={drawer_right:{position:"fixed",top:"0",right:"0",bottom:"0",width:"360px",maxWidth:"90vw"},drawer_left:{position:"fixed",top:"0",left:"0",bottom:"0",width:"360px",maxWidth:"90vw"},drawer_bottom:{position:"fixed",left:"0",right:"0",bottom:"0",maxHeight:"50vh"},overlay_center:{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",maxWidth:"90vw",maxHeight:"90vh"},overlay_corner_br:{position:"fixed",bottom:"16px",right:"16px",maxWidth:"400px",maxHeight:"80vh"},overlay_corner_bl:{position:"fixed",bottom:"16px",left:"16px",maxWidth:"400px",maxHeight:"80vh"},toast_top:{position:"fixed",top:"16px",left:"50%",transform:"translateX(-50%)",maxWidth:"90vw"},toast_bottom:{position:"fixed",bottom:"16px",left:"50%",transform:"translateX(-50%)",maxWidth:"90vw"}},So={fade:[{opacity:0},{opacity:1}],slide:[{opacity:0,transform:"translateY(10px)"},{opacity:1,transform:"translateY(0)"}],scale:[{opacity:0,transform:"scale(0.95)"},{opacity:1,transform:"scale(1)"}],none:[]},Db={duration:200,easing:"cubic-bezier(0.16, 1, 0.3, 1)",fill:"forwards"};function Cp(r,e,t){let n=Fb[e];Object.assign(r.style,n),t&&(t.maxWidth&&(r.style.maxWidth=t.maxWidth),t.maxHeight&&(r.style.maxHeight=t.maxHeight),t.minWidth&&(r.style.minWidth=t.minWidth),t.minHeight&&(r.style.minHeight=t.minHeight))}function Ap(r,e,t){let n=t.placement==="auto"?"bottom":t.placement,i=[ma(t.offset?{mainAxis:t.offset.y,crossAxis:t.offset.x}:8)];return t.flip!==!1&&i.push(ya()),t.shift!==!1&&i.push(va({padding:8})),r.style.position="absolute",r.style.zIndex="2147483646",ga(e,r,async()=>{let{x:o,y:a,strategy:l}=await ba(e,r,{placement:n,middleware:i});Object.assign(r.style,{position:l,left:`${o}px`,top:`${a}px`})})}function Rp(r,e,t="append"){return r.style.position="relative",r.style.display="inline-block",t==="prepend"?e.insertBefore(r,e.firstChild):e.appendChild(r),()=>{r.remove()}}function Tp(r,e){return e==="none"||So[e].length===0?null:r.animate(So[e],Db)}function Ip(r,e){if(e==="none"||So[e].length===0)return Promise.resolve();let t=[...So[e]].reverse(),n=r.animate(t,Db);return new Promise(i=>{n.onfinish=()=>i(),n.oncancel=()=>i()})}function $p(r,e){let t=document.createElement("div");return t.setAttribute("data-syntro-surface",r),t.setAttribute("data-syntro-mount-id",e),t.className="syntro-surface",Object.assign(t.style,{pointerEvents:"auto",boxSizing:"border-box",overflow:"auto"}),t}function Mp(r){switch(wo(r)){case"static":return r.startsWith("drawer")?2147483640:r.startsWith("overlay")?2147483642:r.startsWith("toast")?2147483644:2147483640;case"inline":return 1;case"adjacent":return 2147483638;default:return 2147483640}}function Hb(r){if(typeof window.Sanitizer=="function")try{let l=new window.Sanitizer({}).sanitizeToFragment(r),c=document.createElement("div");return c.append(l),c.innerHTML}catch{}let t=document.createElement("template");t.innerHTML=r;let n=t.content,i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,null),s=new Set(["b","strong","i","em","u","span","div","p","br","ul","ol","li","code","pre","small","sup","sub","a","button"]),o=[];for(;i.nextNode();){let a=i.currentNode,l=a.tagName.toLowerCase();if(!s.has(l)){o.push(a);continue}for(let c of Array.from(a.attributes)){let u=c.name.toLowerCase(),p=c.value.trim().toLowerCase(),h=u.startsWith("on"),f=(u==="href"||u==="src")&&p.startsWith("javascript:");(h||f)&&a.removeAttribute(c.name)}}for(let a of o){for(;a.firstChild;)a.parentNode?.insertBefore(a.firstChild,a);a.remove()}return t.innerHTML=(n.firstChild,t.innerHTML)}var uA=0;function Op(r){let{overlayRoot:e,eventBus:t,anchorResolver:n,defaultAnimation:i="fade",widgetRegistry:s}=r,o=new Map,a=new Map,l=new Map;function c(){return`mount-${++uA}`}function u(b,w){t&&t.publish(b,w)}function p(b){let w=l.get(b);if(w){let C=m(b);for(let _ of w)try{_(C)}catch(A){console.error("[Surfaces] State callback error:",A)}}}let h=new Map;function f(b,w,C){switch(w.type){case"html":b.innerHTML=Hb(w.content);return;case"widget":{if(s?.has(w.widgetId)){let _=s.mount(w.widgetId,b,w.config);return C&&h.set(C,_),()=>{_.unmount(),C&&h.delete(C)}}console.warn(`[Surfaces] Widget not found: ${w.widgetId}`),b.innerHTML=`<div data-widget-id="${w.widgetId}" data-widget-missing="true">Widget: ${w.widgetId}</div>`;return}case"custom":return w.mount(b);case"react":b.innerHTML="<div data-react-component>React Component</div>";return;default:console.warn("[Surfaces] Unknown content type");return}}function v(b,w,C){let _=c(),A=wo(b),$=C?.priority??0,T=C?.animation??i,O=C?.exclusive??!0,Y=o.get(b);if(Y&&O){if(Y.options.priority>$)throw new Error(`Slot ${b} is occupied by higher priority content (${Y.options.priority} > ${$})`);g(Y)}let F=$p(b,_);F.style.zIndex=String(Mp(b));let N;if(A==="static")Cp(F,b,C?.constraints),e.appendChild(F);else if(A==="inline"){let U=Kl(b);if(!U)throw new Error(`Invalid inline slot: ${b}`);if(!n)throw new Error("Anchor resolver required for inline slots");let Q=n({selector:U,route:"**"});if(!Q)throw new Error(`Anchor not found for inline slot: ${U}`);N=Rp(F,Q)}else if(A==="adjacent"){let U=Kl(b);if(!U)throw new Error(`Invalid adjacent slot: ${b}`);if(!n)throw new Error("Anchor resolver required for adjacent slots");let Q=n({selector:U,route:"**"});if(!Q)throw new Error(`Anchor not found for adjacent slot: ${U}`);e.appendChild(F),N=Ap(F,Q,C?.position??{placement:"bottom"})}let G=f(F,w,_);Tp(F,T);let K={id:_,slot:b,content:w,options:{priority:$,exclusive:O,animation:T,position:C?.position??{placement:"auto"},constraints:C?.constraints??{},adaptiveId:C?.adaptiveId,autoUnmountOnRouteChange:C?.autoUnmountOnRouteChange??!0},container:F,cleanup:()=>{N?.(),G?.()},mountedAt:Date.now()};return o.set(b,K),a.set(b,(a.get(b)??0)+1),u("surface.mounted",{slot:b,id:_,adaptiveId:C?.adaptiveId}),p(b),{id:_,update(U){let Q=o.get(b);if(!Q||Q.id!==_)throw new Error("Mount no longer active");let De=h.get(_);if(De){if(U.type==="widget"){De.update(U.config),Q.content=U;return}De.unmount(),h.delete(_)}Q.container.innerHTML="";let V=f(Q.container,U,_);if(Q.content=U,V){let ee=Q.cleanup;Q.cleanup=()=>{ee?.(),V()}}},setOptions(U){let Q=o.get(b);if(!Q||Q.id!==_)throw new Error("Mount no longer active");U.priority!==void 0&&(Q.options.priority=U.priority),U.animation!==void 0&&(Q.options.animation=U.animation),U.constraints&&A==="static"&&(U.constraints.maxWidth&&(Q.container.style.maxWidth=U.constraints.maxWidth),U.constraints.maxHeight&&(Q.container.style.maxHeight=U.constraints.maxHeight),U.constraints.minWidth&&(Q.container.style.minWidth=U.constraints.minWidth),U.constraints.minHeight&&(Q.container.style.minHeight=U.constraints.minHeight)),p(b)},async unmount(){let U=o.get(b);!U||U.id!==_||await g(U)},isMounted(){return o.get(b)?.id===_},getContainer(){let U=o.get(b);return U?.id===_?U.container:null}}}async function g(b){b.container.isConnected&&await Ip(b.container,b.options.animation);try{b.cleanup?.()}catch(w){console.warn("[Surfaces] Cleanup error during unmount, ignoring:",w)}try{b.container.remove()}catch{}o.delete(b.slot),u("surface.unmounted",{slot:b.slot,id:b.id}),p(b.slot)}function m(b){let w=o.get(b);return{slot:b,occupied:!!w,currentPriority:w?.options.priority,currentAdaptiveId:w?.options.adaptiveId,mountCount:a.get(b)??0,currentMountId:w?.id}}function y(b,w){let C=l.get(b);return C||(C=new Set,l.set(b,C)),C.add(w),()=>{C?.delete(w),C?.size===0&&l.delete(b)}}function x(b,w){let C=o.get(b);return C?w!==void 0?w>=C.options.priority:!1:!0}function S(){for(let b of o.values())try{b.cleanup?.(),b.container.remove()}catch(w){console.error("[Surfaces] Error during cleanup:",w)}o.clear(),l.clear()}return{mount:v,getState:m,onStateChange:y,canMount:x,destroy:S}}var Yl=class{constructor(){this.widgets=new Map;this.mountedWidgets=new Map;this.mountIdCounter=0;this.listeners=new Set}bindRuntime(e){this.runtimeRef=e}register(e,t,n="custom",i){if(this.widgets.has(e)){if(this.widgets.get(e).source==="built-in")throw new Error(`Cannot override built-in widget: ${e}`);console.warn(`[WidgetRegistry] Overriding widget: ${e}`)}this.widgets.set(e,{id:e,widget:t,source:n,metadata:i}),this.notify({type:"registered",widgetId:e})}unregister(e){let t=this.widgets.get(e);return t?t.source==="built-in"?(console.warn(`[WidgetRegistry] Cannot unregister built-in widget: ${e}`),!1):(this.widgets.delete(e),this.notify({type:"unregistered",widgetId:e}),!0):!1}unregisterBySource(e){for(let[t,n]of this.widgets.entries())n.source===e&&this.widgets.delete(t)}get(e){return this.widgets.get(e)?.widget}getRegistration(e){return this.widgets.get(e)}has(e){return this.widgets.has(e)}mount(e,t,n){let i=this.widgets.get(e);if(!i)throw new Error(`Widget not found: ${e}`);let s=`widget-mount-${++this.mountIdCounter}`;t.setAttribute("data-widget-mount-id",s),t.setAttribute("data-widget-id",e);let o={...n,runtime:this.runtimeRef},a=i.widget.mount(t,o);return this.mountedWidgets.set(s,{cleanup:a??void 0,container:t}),{widgetId:e,container:t,unmount:()=>{let c=this.mountedWidgets.get(s);c&&(t.isConnected&&c.cleanup?.(),this.mountedWidgets.delete(s),t.removeAttribute("data-widget-mount-id"),t.removeAttribute("data-widget-id"),t.innerHTML="")},update:c=>{if(i.widget.update)i.widget.update(t,c);else{let u=this.mountedWidgets.get(s);if(u){u.cleanup?.(),t.innerHTML="";let p={...c,runtime:this.runtimeRef},h=i.widget.mount(t,p);u.cleanup=h??void 0}}}}}list(){return Array.from(this.widgets.keys())}listRegistrations(){return Array.from(this.widgets.values())}getBySource(e){return Array.from(this.widgets.values()).filter(t=>t.source===e)}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notify(e){for(let t of this.listeners)try{t(e)}catch(n){console.error("[WidgetRegistry] Listener error:",n)}}destroy(){for(let[e,t]of this.mountedWidgets.entries())t.cleanup?.(),t.container.innerHTML="";this.mountedWidgets.clear()}},Pp=new Yl;var Vb="2.0.0";function dA(r,e){if(!e)return!0;let t;try{t=new URL(r).pathname}catch{t=r}t.startsWith("/")||(t=`/${t}`);let n=t.replace(/\/$/,"")||"/";if(e.exclude){for(let i of e.exclude)if(Np(n,i))return!1}if(e.include&&e.include.length>0){for(let i of e.include)if(Np(n,i))return!0;return!1}return!0}function Np(r,e){let t=e.replace(/\/$/,"")||"/";if(r===t)return!0;let n=t.replace(/\*\*/g,"\0GLOBSTAR\0").replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,"[^/]*").replace(/\0GLOBSTAR\0/g,".*").replace(/:[^/]+/g,"[^/]+");return new RegExp(`^${n}$`).test(r)}function Bb(r){let t=(typeof window<"u"?window.location.pathname:"/").replace(/\/$/,"")||"/";return(Array.isArray(r.route)?r.route:[r.route]).some(i=>{let s=i;if(/^https?:\/\//.test(s))try{s=new URL(s).pathname}catch{}return Np(t,s)})}function Lp(r={}){let{telemetry:e,sessionMetrics:t,routes:n,mode:i="production",namespace:s}=r,o=r.widgets??Pp,a=r.executors??kr,l=r.apps??ys,c=new bo,u=bp({telemetry:e,routes:n,navigation:c,initialSurfaceType:r.initialSurfaceType,initialSurfaceHost:r.initialSurfaceHost}),p=r.events??uo(),h=Ep({namespace:s}),f=xp({eventBus:p,stateStore:h}),v=_p({state:h,events:p,sessionMetrics:t,accumulator:f}),g=by(),m=Id(),y=O=>Bb(O)?m.resolve(O.selector):null,x=async(O,Y)=>{if(!Bb(O))return null;try{return await m.waitFor(O.selector,Y)}catch{return null}},S=Op({overlayRoot:g,eventBus:p,anchorResolver:y,widgetRegistry:o}),b=Cd({overlayRoot:g,eventBus:p,surfaces:S,anchorResolver:y,waitForAnchor:x,executorRegistry:a,subscribeNavigation:O=>c.subscribe(O),runtime:{evaluateSync:O=>v.evaluateSync(O,u.get()),context:u,accumulator:f,sessionMetrics:t,events:p?{subscribe:O=>p.subscribe(()=>O())}:void 0}}),w;if(t){let O=t;O.increment("page_views");let Y=typeof window<"u"?window.location.pathname:"/";w=c.subscribe((F,N)=>{if(N!=="replaceState")try{let G=new URL(F).pathname;G!==Y&&(Y=G,O.increment("page_views"),C=0,O.set("time_on_page",0),O.set("scroll_depth",0))}catch{}})}let C=0,_,A;if(t){let O=t;_=setInterval(()=>{C++},1e3),A=setInterval(()=>{O.set("time_on_page",C)},5e3)}let $;if(t&&p){let O=t;$=p.subscribe({names:["ui.scroll"]},Y=>{let F=Y.props?.scrollPercentage;typeof F=="number"&&F>O.get("scroll_depth")&&O.set("scroll_depth",F)})}let T={telemetry:e,context:u,events:p,state:h,sessionMetrics:t,actions:b,surfaces:S,widgets:o,executors:a,apps:l,accumulator:f,anchorResolver:m,navigation:c,version:Vb,mode:i,async evaluate(O){return v.evaluate(O,u.get())},evaluateSync(O){return v.evaluateSync(O,u.get())},async filterTiles(O){let Y=u.get().page.url,F=[];for(let N of O){let G=N.activation;if(!G){F.push(N);continue}if(dA(Y,G.routes)){if(G.onlyIfPopulated){let K=N.props?.actions??[];if(K.length>0&&!K.some(U=>U.triggerWhen?v.evaluateSync(U.triggerWhen,u.get()).value:!0))continue}F.push(N)}}return F},setRoutes(O){u.setRoutes(O)},destroy(){l.unbind().catch(O=>{console.error("[Runtime] Error unbinding apps registry:",O)}),w?.(),$?.(),_&&clearInterval(_),A&&clearInterval(A),m.destroy(),f.destroy(),c.destroy(),u.destroy(),b.destroy(),S.destroy()}};return l.bind(T),o.bindRuntime(T),T}function jb(r){return r==="granted"?"granted":r==="denied"?"denied":"pending"}function Fp(r){return r?Array.isArray(r)&&r[0]==="consent"?r[2]?.analytics_storage??null:typeof r=="object"&&r.event==="consent_update"?r.analytics_storage??null:null:null}var ko=class{constructor(){this.name="gtm-consent-mode-v2"}detect(){if(typeof window>"u")return!1;let e=window.dataLayer;if(!Array.isArray(e))return!1;for(let t of e)if(Fp(t)!==null)return!0;return!1}initialize(e){if(typeof window>"u")return e("pending"),()=>{};Array.isArray(window.dataLayer)||(window.dataLayer=[]),e(this.readCurrentState());let t=window.dataLayer,n=t.push.bind(t),i=(...s)=>{let o=n(...s);for(let a of s){let l=Fp(a);l!==null&&e(jb(l))}return o};return t.push=i,()=>{t.push===i&&(t.push=n)}}readCurrentState(){if(typeof window>"u")return"pending";let e=window.dataLayer;if(!Array.isArray(e))return"pending";for(let t=e.length-1;t>=0;t--){let n=Fp(e[t]);if(n!==null)return jb(n)}return"pending"}};var Eo=class{constructor(){this.name="iab-tcf-v2"}detect(){return typeof window>"u"?!1:typeof window.__tcfapi=="function"}initialize(e){if(e("pending"),typeof window>"u")return()=>{};let t=window.__tcfapi;if(typeof t!="function")return()=>{};let n;return t("addEventListener",2,(i,s)=>{if(!s||!i||(n===void 0&&typeof i.listenerId=="number"&&(n=i.listenerId),!(i.eventStatus==="tcloaded"||i.eventStatus==="useractioncomplete")))return;if(i.gdprApplies===!1){e("granted");return}let a=i.purpose?.consents??{},l=a[1]===!0,c=a[8]===!0;e(l&&c?"granted":"denied")}),()=>{if(n!==void 0)try{t("removeEventListener",2,()=>{},n)}catch{}}}};var Ub="visitorConsentCollected",Co=class{constructor(){this.name="shopify-customer-privacy"}detect(){return typeof window>"u"?!1:typeof window.Shopify?.loadFeatures=="function"}initialize(e){if(e("pending"),typeof window>"u")return()=>{};let t=window.Shopify;if(!t?.loadFeatures)return()=>{};let n;return t.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i=>{if(i)return;let s=t.customerPrivacy?.userCanBeTracked()??!0;e(s?"granted":"denied"),n=o=>{let a=o.detail;e(a?.analyticsAllowed?"granted":"denied")},document.addEventListener(Ub,n)}),()=>{n&&document.removeEventListener(Ub,n)}}};var Ao=class{constructor(e){this.options=e}async start(e){for(let n of this.options.adapters){let i=!1;try{i=n.detect()}catch{continue}if(i)try{let s=n.initialize(o=>e.setStatus(o));return this.options.onAdapterSelected?.(n.name),s}catch(s){console.warn(`[Syntro consent] Adapter "${n.name}" failed:`,s)}}this.options.onAdapterSelected?.(null);let t=await this.resolveFallback();return e.setStatus(t),()=>{}}async resolveFallback(){if(!this.options.fallbackStatus)return"pending";try{return await this.options.fallbackStatus()}catch{return"pending"}}};var Ro=class{constructor(e={}){this.listeners=new Set;this.destroyed=!1;this.status=e.initialStatus??"pending",this.configCallback=e.onConsentChange,this.gtmEnabled=e.readFromGtmConsentMode??!1,this.pendingResolverFn=e.pendingResolver}grant(){this.setStatus("granted")}deny(){this.setStatus("denied")}getStatus(){return this.status}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}subscribeOnce(e){if(this.status!=="pending")return queueMicrotask(()=>e(this.status)),()=>{};let t=this.subscribe(n=>{n!=="pending"&&(t(),e(n))});return t}async resolvePending(){if(this.status!=="pending")return this.status;if(!this.pendingResolverFn)return"denied";try{return await this.pendingResolverFn()}catch{return"denied"}}setStatus(e){this.applyStatus(e)}pollGtmConsent(){if(!this.gtmEnabled||typeof window>"u")return;let e=window.dataLayer;if(Array.isArray(e))for(let t=e.length-1;t>=0;t--){let n=e[t];if(!n)continue;if(n[0]==="consent"&&n[1]==="update"&&n[2]){let s=n[2].analytics_storage;s==="granted"?this.setStatus("granted"):s==="denied"&&this.setStatus("denied");return}}}destroy(){this.destroyed=!0,this.listeners.clear()}applyStatus(e){this.destroyed||this.status!==e&&(this.status=e,this.notify(e))}notify(e){if(this.configCallback)try{this.configCallback(e)}catch{}for(let t of this.listeners)try{t(e)}catch{}}};var To=class{constructor(e,t){this.seenSet=new Set;this.triggeredSet=new Set;this.telemetry=e,this.variantId=t}trackServed(e,t){this.telemetry.track?.("syntro_config_served",{variant_id:this.variantId,tiles:e,actions:t})}trackSeen(e,t){this.seenSet.has(e)||(this.seenSet.add(e),this.telemetry.track?.("syntro_intervention_seen",{variant_id:this.variantId,intervention_id:e,intervention_kind:t}))}trackTriggered(e,t){this.triggeredSet.has(e)||(this.triggeredSet.add(e),this.telemetry.track?.("syntro_intervention_triggered",{variant_id:this.variantId,intervention_id:e,intervention_kind:t}))}trackInteracted(e,t,n){this.telemetry.track?.("syntro_intervention_interacted",{variant_id:this.variantId,intervention_id:e,intervention_kind:t,interaction_type:n})}resetPage(){this.seenSet.clear(),this.triggeredSet.clear()}};function pA(){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e="";for(let t=0;t<16;t++)e+=r[Math.floor(Math.random()*r.length)];return e}var Dp=class{constructor(){this.sessionId=pA(),console.log(`[Syntro Telemetry] Using noop adapter (no telemetry configured). sessionId=${this.sessionId}`)}trackCanvasOpened(e){}trackCanvasClosed(e){}trackRectangleViewed(e,t){}trackAction(e,t,n){}register(e){}getSessionId(){return this.sessionId}startSessionRecording(){}trackExperiment(e,t,n){}setPersonProperties(e){}setPersonPropertiesOnce(e){}getDistinctId(){return"demo-user"}getAllFeatureFlags(){return{}}getSegmentFlags(){return{}}track(e,t){}identify(e,t){}alias(e,t){}optInCapturing(){}optOutCapturing(){}};function Hp(){return new Dp}var E=typeof window<"u"?window:void 0,tt=typeof globalThis<"u"?globalThis:E;typeof self>"u"&&(tt.self=tt),typeof File>"u"&&(tt.File=function(){});var H_=Array.prototype,Wb=H_.forEach,zb=H_.indexOf,wt=tt?.navigator,H=tt?.document,et=tt?.location,nh=tt?.fetch,ih=tt!=null&&tt.XMLHttpRequest&&"withCredentials"in new tt.XMLHttpRequest?tt.XMLHttpRequest:void 0,qb=tt?.AbortController,yt=wt?.userAgent,re=E??{},Tr={DEBUG:!1,LIB_VERSION:"1.341.0"};function Zb(r,e,t,n,i,s,o){try{var a=r[s](o),l=a.value}catch(c){return void t(c)}a.done?e(l):Promise.resolve(l).then(n,i)}function Di(r){return function(){var e=this,t=arguments;return new Promise((function(n,i){var s=r.apply(e,t);function o(l){Zb(s,n,i,o,a,"next",l)}function a(l){Zb(s,n,i,o,a,"throw",l)}o(void 0)}))}}function W(){return W=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)({}).hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},W.apply(null,arguments)}function B_(r,e){if(r==null)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(e.indexOf(n)!==-1)continue;t[n]=r[n]}return t}var hA=["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"],Gb=function(r,e){if(e===void 0&&(e=[]),!r)return!1;var t=r.toLowerCase();return hA.concat(e).some((n=>{var i=n.toLowerCase();return t.indexOf(i)!==-1}))},fA=["$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 he(r,e){return r.indexOf(e)!==-1}var Cc=function(r){return r.trim()},sh=function(r){return r.replace(/^\$/,"")},gA=Array.isArray,V_=Object.prototype,j_=V_.hasOwnProperty,Ac=V_.toString,_e=gA||function(r){return Ac.call(r)==="[object Array]"},an=r=>typeof r=="function",We=r=>r===Object(r)&&!_e(r),Hi=r=>{if(We(r)){for(var e in r)if(j_.call(r,e))return!1;return!0}return!1},B=r=>r===void 0,ze=r=>Ac.call(r)=="[object String]",oh=r=>ze(r)&&r.trim().length===0,Wt=r=>r===null,fe=r=>B(r)||Wt(r),Nr=r=>Ac.call(r)=="[object Number]"&&r==r,Li=r=>Nr(r)&&r>0,Pr=r=>Ac.call(r)==="[object Boolean]",mA=r=>r instanceof FormData,vA=r=>he(fA,r);function ah(r){return r===null||typeof r!="object"}function ic(r,e){return Object.prototype.toString.call(r)==="[object "+e+"]"}function U_(r){return!B(Event)&&(function(e,t){try{return e instanceof t}catch{return!1}})(r,Event)}var yA=[!0,"true",1,"1","yes"],Bp=r=>he(yA,r),bA=[!1,"false",0,"0","no"];function cr(r,e,t,n,i){return e>t&&(n.warn("min cannot be greater than max."),e=t),Nr(r)?r>t?(n.warn(" cannot be greater than max: "+t+". Using max value instead."),t):r<e?(n.warn(" cannot be less than min: "+e+". Using min value instead."),e):r:(n.warn(" must be a number. using max or fallback. max: "+t+", fallback: "+i),cr(i||t,e,t,n))}var lh=class{constructor(e){this.t={},this.i=e.i,this.o=cr(e.bucketSize,0,100,e.h),this.m=cr(e.refillRate,0,this.o,e.h),this.$=cr(e.refillInterval,0,864e5,e.h)}S(e,t){var n=t-e.lastAccess,i=Math.floor(n/this.$);if(i>0){var s=i*this.m;e.tokens=Math.min(e.tokens+s,this.o),e.lastAccess=e.lastAccess+i*this.$}}consumeRateLimit(e){var t,n=Date.now(),i=String(e),s=this.t[i];return s?this.S(s,n):(s={tokens:this.o,lastAccess:n},this.t[i]=s),s.tokens===0||(s.tokens--,s.tokens===0&&((t=this.i)==null||t.call(this,e)),s.tokens===0)}stop(){this.t={}}},$t="Mobile",sc="iOS",Or="Android",Yo="Tablet",W_=Or+" "+Yo,z_="iPad",q_="Apple",Z_=q_+" Watch",Xo="Safari",Ui="BlackBerry",G_="Samsung",K_=G_+"Browser",Y_=G_+" Internet",ei="Chrome",_A=ei+" OS",X_=ei+" "+sc,vf="Internet Explorer",J_=vf+" "+$t,yf="Opera",xA=yf+" Mini",bf="Edge",Q_="Microsoft "+bf,Vi="Firefox",e0=Vi+" "+sc,Jo="Nintendo",Qo="PlayStation",ji="Xbox",t0=Or+" "+$t,r0=$t+" "+Xo,Ho="Windows",ch=Ho+" Phone",Kb="Nokia",uh="Ouya",n0="Generic",wA=n0+" "+$t.toLowerCase(),i0=n0+" "+Yo.toLowerCase(),dh="Konqueror",ct="(\\d+(\\.\\d+)?)",Vp=new RegExp("Version/"+ct),SA=new RegExp(ji,"i"),kA=new RegExp(Qo+" \\w+","i"),EA=new RegExp(Jo+" \\w+","i"),_f=new RegExp(Ui+"|PlayBook|BB10","i"),CA={"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"},Xl,Yb,jp,AA=(r,e)=>e&&he(e,q_)||(function(t){return he(t,Xo)&&!he(t,ei)&&!he(t,Or)})(r),s0=function(r,e){return e=e||"",he(r," OPR/")&&he(r,"Mini")?xA:he(r," OPR/")?yf:_f.test(r)?Ui:he(r,"IE"+$t)||he(r,"WPDesktop")?J_:he(r,K_)?Y_:he(r,bf)||he(r,"Edg/")?Q_:he(r,"FBIOS")?"Facebook "+$t:he(r,"UCWEB")||he(r,"UCBrowser")?"UC Browser":he(r,"CriOS")?X_:he(r,"CrMo")||he(r,ei)?ei:he(r,Or)&&he(r,Xo)?t0:he(r,"FxiOS")?e0:he(r.toLowerCase(),dh.toLowerCase())?dh:AA(r,e)?he(r,$t)?r0:Xo:he(r,Vi)?Vi:he(r,"MSIE")||he(r,"Trident/")?vf:he(r,"Gecko")?Vi:""},RA={[J_]:[new RegExp("rv:"+ct)],[Q_]:[new RegExp(bf+"?\\/"+ct)],[ei]:[new RegExp("("+ei+"|CrMo)\\/"+ct)],[X_]:[new RegExp("CriOS\\/"+ct)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+ct)],[Xo]:[Vp],[r0]:[Vp],[yf]:[new RegExp("(Opera|OPR)\\/"+ct)],[Vi]:[new RegExp(Vi+"\\/"+ct)],[e0]:[new RegExp("FxiOS\\/"+ct)],[dh]:[new RegExp("Konqueror[:/]?"+ct,"i")],[Ui]:[new RegExp(Ui+" "+ct),Vp],[t0]:[new RegExp("android\\s"+ct,"i")],[Y_]:[new RegExp(K_+"\\/"+ct)],[vf]:[new RegExp("(rv:|MSIE )"+ct)],Mozilla:[new RegExp("rv:"+ct)]},TA=function(r,e){var t=s0(r,e),n=RA[t];if(B(n))return null;for(var i=0;i<n.length;i++){var s=n[i],o=r.match(s);if(o)return parseFloat(o[o.length-2])}return null},Xb=[[new RegExp(ji+"; "+ji+" (.*?)[);]","i"),r=>[ji,r&&r[1]||""]],[new RegExp(Jo,"i"),[Jo,""]],[new RegExp(Qo,"i"),[Qo,""]],[_f,[Ui,""]],[new RegExp(Ho,"i"),(r,e)=>{if(/Phone/.test(e)||/WPDesktop/.test(e))return[ch,""];if(new RegExp($t).test(e)&&!/IEMobile\b/.test(e))return[Ho+" "+$t,""];var t=/Windows NT ([0-9.]+)/i.exec(e);if(t&&t[1]){var n=t[1],i=CA[n]||"";return/arm/i.test(e)&&(i="RT"),[Ho,i]}return[Ho,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,r=>{if(r&&r[3]){var e=[r[3],r[4],r[5]||"0"];return[sc,e.join(".")]}return[sc,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,r=>{var e="";return r&&r.length>=3&&(e=B(r[2])?r[3]:r[2]),["watchOS",e]}],[new RegExp("("+Or+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Or+")","i"),r=>{if(r&&r[2]){var e=[r[2],r[3],r[4]||"0"];return[Or,e.join(".")]}return[Or,""]}],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,r=>{var e=["Mac OS X",""];if(r&&r[1]){var t=[r[1],r[2],r[3]||"0"];e[1]=t.join(".")}return e}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[_A,""]],[/Linux|debian/i,["Linux",""]]],Jb=function(r){return EA.test(r)?Jo:kA.test(r)?Qo:SA.test(r)?ji:new RegExp(uh,"i").test(r)?uh:new RegExp("("+ch+"|WPDesktop)","i").test(r)?ch:/iPad/.test(r)?z_:/iPod/.test(r)?"iPod Touch":/iPhone/.test(r)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(r)?Z_:_f.test(r)?Ui:/(kobo)\s(ereader|touch)/i.test(r)?"Kobo":new RegExp(Kb,"i").test(r)?Kb:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(r)||/(kf[a-z]+)( bui|\)).+silk\//i.test(r)?"Kindle Fire":/(Android|ZTE)/i.test(r)?new RegExp($t).test(r)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(r)||/pixel[\daxl ]{1,6}/i.test(r)&&!/pixel c/i.test(r)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(r)||/lmy47v/i.test(r)&&!/QTAQZ3/i.test(r)?Or:W_:new RegExp("(pda|"+$t+")","i").test(r)?wA:new RegExp(Yo,"i").test(r)&&!new RegExp(Yo+" pc","i").test(r)?i0:""},IA=r=>r instanceof Error;function $A(r){var e=globalThis._posthogChunkIds;if(e){var t=Object.keys(e);return jp&&t.length===Yb||(Yb=t.length,jp=t.reduce(((n,i)=>{Xl||(Xl={});var s=Xl[i];if(s)n[s[0]]=s[1];else for(var o=r(i),a=o.length-1;a>=0;a--){var l=o[a],c=l?.filename,u=e[i];if(c&&u){n[c]=u,Xl[i]=[c,u];break}}return n}),{})),jp}}var ph=class{constructor(e,t,n){n===void 0&&(n=[]),this.coercers=e,this.stackParser=t,this.modifiers=n}buildFromUnknown(e,t){t===void 0&&(t={});var n=t&&t.mechanism||{handled:!0,type:"generic"},i=this.buildCoercingContext(n,t,0).apply(e),s=this.buildParsingContext(),o=this.parseStacktrace(i,s);return{$exception_list:this.convertToExceptionList(o,n),$exception_level:"error"}}modifyFrames(e){var t=this;return Di((function*(){for(var n of e)n.stacktrace&&n.stacktrace.frames&&_e(n.stacktrace.frames)&&(n.stacktrace.frames=yield t.applyModifiers(n.stacktrace.frames));return e}))()}coerceFallback(e){var t;return{type:"Error",value:"Unknown error",stack:(t=e.syntheticException)==null?void 0:t.stack,synthetic:!0}}parseStacktrace(e,t){var n,i;return e.cause!=null&&(n=this.parseStacktrace(e.cause,t)),e.stack!=""&&e.stack!=null&&(i=this.applyChunkIds(this.stackParser(e.stack,e.synthetic?1:0),t.chunkIdMap)),W({},e,{cause:n,stack:i})}applyChunkIds(e,t){return e.map((n=>(n.filename&&t&&(n.chunk_id=t[n.filename]),n)))}applyCoercers(e,t){for(var n of this.coercers)if(n.match(e))return n.coerce(e,t);return this.coerceFallback(t)}applyModifiers(e){var t=this;return Di((function*(){var n=e;for(var i of t.modifiers)n=yield i(n);return n}))()}convertToExceptionList(e,t){var n,i,s,o={type:e.type,value:e.value,mechanism:{type:(n=t.type)!==null&&n!==void 0?n:"generic",handled:(i=t.handled)===null||i===void 0||i,synthetic:(s=e.synthetic)!==null&&s!==void 0&&s}};e.stack&&(o.stacktrace={type:"raw",frames:e.stack});var a=[o];return e.cause!=null&&a.push(...this.convertToExceptionList(e.cause,W({},t,{handled:!0}))),a}buildParsingContext(){return{chunkIdMap:$A(this.stackParser)}}buildCoercingContext(e,t,n){n===void 0&&(n=0);var i=(s,o)=>{if(o<=4){var a=this.buildCoercingContext(e,t,o);return this.applyCoercers(s,a)}};return W({},t,{syntheticException:n==0?t.syntheticException:void 0,mechanism:e,apply:s=>i(s,n),next:s=>i(s,n+1)})}},Wi="?";function hh(r,e,t,n,i){var s={platform:r,filename:e,function:t==="<anonymous>"?Wi:t,in_app:!0};return B(n)||(s.lineno=n),B(i)||(s.colno=i),s}var o0=(r,e)=>{var t=r.indexOf("safari-extension")!==-1,n=r.indexOf("safari-web-extension")!==-1;return t||n?[r.indexOf("@")!==-1?r.split("@")[0]:Wi,t?"safari-extension:"+e:"safari-web-extension:"+e]:[r,e]},MA=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,OA=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,PA=/\((\S*)(?::(\d+))(?::(\d+))\)/,NA=(r,e)=>{var t=MA.exec(r);if(t){var[,n,i,s]=t;return hh(e,n,Wi,+i,+s)}var o=OA.exec(r);if(o){if(o[2]&&o[2].indexOf("eval")===0){var a=PA.exec(o[2]);a&&(o[2]=a[1],o[3]=a[2],o[4]=a[3])}var[l,c]=o0(o[1]||Wi,o[2]);return hh(e,c,l,o[3]?+o[3]:void 0,o[4]?+o[4]:void 0)}},LA=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,FA=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,DA=(r,e)=>{var t=LA.exec(r);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){var n=FA.exec(t[3]);n&&(t[1]=t[1]||"eval",t[3]=n[1],t[4]=n[2],t[5]="")}var i=t[3],s=t[1]||Wi;return[s,i]=o0(s,i),hh(e,i,s,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},Qb=/\(error: (.*)\)/,e_=50;function HA(){return(function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return function(i,s){s===void 0&&(s=0);for(var o=[],a=i.split(`
1063
- `),l=s;l<a.length;l++){var c=a[l];if(!(c.length>1024)){var u=Qb.test(c)?c.replace(Qb,"$1"):c;if(!u.match(/\S*Error: /)){for(var p of t){var h=p(u,r);if(h){o.push(h);break}}if(o.length>=e_)break}}}return(function(f){if(!f.length)return[];var v=Array.from(f);return v.reverse(),v.slice(0,e_).map((g=>{return W({},g,{filename:g.filename||(m=v,m[m.length-1]||{}).filename,function:g.function||Wi});var m}))})(o)}})("web:javascript",NA,DA)}var fh=class{match(e){return this.isDOMException(e)||this.isDOMError(e)}coerce(e,t){var n=ze(e.stack);return{type:this.getType(e),value:this.getValue(e),stack:n?e.stack:void 0,cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return this.isDOMError(e)?"DOMError":"DOMException"}getValue(e){var t=e.name||(this.isDOMError(e)?"DOMError":"DOMException");return e.message?t+": "+e.message:t}isDOMException(e){return ic(e,"DOMException")}isDOMError(e){return ic(e,"DOMError")}},gh=class{match(e){return(t=>t instanceof Error)(e)}coerce(e,t){return{type:this.getType(e),value:this.getMessage(e,t),stack:this.getStack(e),cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return e.name||e.constructor.name}getMessage(e,t){var n=e.message;return n.error&&typeof n.error.message=="string"?String(n.error.message):String(n)}getStack(e){return e.stacktrace||e.stack||void 0}},mh=class{constructor(){}match(e){return ic(e,"ErrorEvent")&&e.error!=null}coerce(e,t){var n,i=t.apply(e.error);return i||{type:"ErrorEvent",value:e.message,stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},BA=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,vh=class{match(e){return typeof e=="string"}coerce(e,t){var n,[i,s]=this.getInfos(e);return{type:i??"Error",value:s??e,stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}getInfos(e){var t="Error",n=e,i=e.match(BA);return i&&(t=i[1],n=i[2]),[t,n]}},VA=["fatal","error","warning","log","info","debug"];function a0(r,e){e===void 0&&(e=40);var t=Object.keys(r);if(t.sort(),!t.length)return"[object has no keys]";for(var n=t.length;n>0;n--){var i=t.slice(0,n).join(", ");if(!(i.length>e))return n===t.length||i.length<=e?i:i.slice(0,e)+"..."}return""}var yh=class{match(e){return typeof e=="object"&&e!==null}coerce(e,t){var n,i=this.getErrorPropertyFromObject(e);return i?t.apply(i):{type:this.getType(e),value:this.getValue(e),stack:(n=t.syntheticException)==null?void 0:n.stack,level:this.isSeverityLevel(e.level)?e.level:"error",synthetic:!0}}getType(e){return U_(e)?e.constructor.name:"Error"}getValue(e){if("name"in e&&typeof e.name=="string"){var t="'"+e.name+"' captured as exception";return"message"in e&&typeof e.message=="string"&&(t+=" with message: '"+e.message+"'"),t}if("message"in e&&typeof e.message=="string")return e.message;var n=this.getObjectClassName(e);return(n&&n!=="Object"?"'"+n+"'":"Object")+" captured as exception with keys: "+a0(e)}isSeverityLevel(e){return ze(e)&&!oh(e)&&VA.indexOf(e)>=0}getErrorPropertyFromObject(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=e[t];if(IA(n))return n}}getObjectClassName(e){try{var t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{return}}},bh=class{match(e){return U_(e)}coerce(e,t){var n,i=e.constructor.name;return{type:i,value:i+" captured as exception with keys: "+a0(e),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},_h=class{match(e){return ah(e)}coerce(e,t){var n;return{type:"Error",value:"Primitive value captured as exception: "+String(e),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},xh=class{match(e){return ic(e,"PromiseRejectionEvent")}coerce(e,t){var n,i=this.getUnhandledRejectionReason(e);return ah(i)?{type:"UnhandledRejection",value:"Non-Error promise rejection captured with value: "+String(i),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}:t.apply(i)}getUnhandledRejectionReason(e){if(ah(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}},l0=function(r,e){var{debugEnabled:t}=e===void 0?{}:e,n={k:function(i){if(E&&(Tr.DEBUG||re.POSTHOG_DEBUG||t)&&!B(E.console)&&E.console){for(var s=("__rrweb_original__"in E.console[i])?E.console[i].__rrweb_original__:E.console[i],o=arguments.length,a=new Array(o>1?o-1:0),l=1;l<o;l++)a[l-1]=arguments[l];s(r,...a)}},info:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];n.k("log",...s)},warn:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];n.k("warn",...s)},error:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];n.k("error",...s)},critical:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];console.error(r,...s)},uninitializedWarning:i=>{n.error("You must initialize PostHog before calling "+i)},createLogger:(i,s)=>l0(r+" "+i,s)};return n},j=l0("[PostHog.js]"),Pe=j.createLogger,jA=Pe("[ExternalScriptsLoader]"),t_=(r,e,t)=>{if(r.config.disable_external_dependency_loading)return jA.warn(e+" was requested but loading of external scripts is disabled."),t("Loading of external scripts is disabled");var n=H?.querySelectorAll("script");if(n){for(var i,s=function(){if(n[o].src===e){var l=n[o];return l.__posthog_loading_callback_fired?{v:t()}:(l.addEventListener("load",(c=>{l.__posthog_loading_callback_fired=!0,t(void 0,c)})),l.onerror=c=>t(c),{v:void 0})}},o=0;o<n.length;o++)if(i=s())return i.v}var a=()=>{if(!H)return t("document not found");var l=H.createElement("script");if(l.type="text/javascript",l.crossOrigin="anonymous",l.src=e,l.onload=p=>{l.__posthog_loading_callback_fired=!0,t(void 0,p)},l.onerror=p=>t(p),r.config.prepare_external_dependency_script&&(l=r.config.prepare_external_dependency_script(l)),!l)return t("prepare_external_dependency_script returned null");if(r.config.external_scripts_inject_target==="head")H.head.appendChild(l);else{var c,u=H.querySelectorAll("body > script");u.length>0?(c=u[0].parentNode)==null||c.insertBefore(l,u[0]):H.body.appendChild(l)}};H!=null&&H.body?a():H?.addEventListener("DOMContentLoaded",a)};re.__PosthogExtensions__=re.__PosthogExtensions__||{},re.__PosthogExtensions__.loadExternalDependency=(r,e,t)=>{var n="/static/"+e+".js?v="+r.version;if(e==="remote-config"&&(n="/array/"+r.config.token+"/config.js"),e==="toolbar"){var i=3e5;n=n+"&t="+Math.floor(Date.now()/i)*i}var s=r.requestRouter.endpointFor("assets",n);t_(r,s,t)},re.__PosthogExtensions__.loadSiteApp=(r,e,t)=>{var n=r.requestRouter.endpointFor("api",e);t_(r,n,t)};var oc={};function ln(r,e,t){if(_e(r)){if(Wb&&r.forEach===Wb)r.forEach(e,t);else if("length"in r&&r.length===+r.length){for(var n=0,i=r.length;n<i;n++)if(n in r&&e.call(t,r[n],n)===oc)return}}}function Ae(r,e,t){if(!fe(r)){if(_e(r))return ln(r,e,t);if(mA(r)){for(var n of r.entries())if(e.call(t,n[1],n[0])===oc)return}else for(var i in r)if(j_.call(r,i)&&e.call(t,r[i],i)===oc)return}}var Fe=function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ln(t,(function(i){for(var s in i)i[s]!==void 0&&(r[s]=i[s])})),r},qi=function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return ln(t,(function(i){ln(i,(function(s){r.push(s)}))})),r};function rc(r){for(var e=Object.keys(r),t=e.length,n=new Array(t);t--;)n[t]=[e[t],r[e[t]]];return n}var r_=function(r){try{return r()}catch{return}},UA=function(r){return function(){try{for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return r.apply(this,t)}catch(i){j.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),j.critical(i)}}},xf=function(r){var e={};return Ae(r,(function(t,n){(ze(t)&&t.length>0||Nr(t))&&(e[n]=t)})),e};function WA(r,e){return t=r,n=s=>ze(s)&&!Wt(e)?s.slice(0,e):s,i=new Set,(function s(o,a){return o!==Object(o)?n?n(o,a):o:i.has(o)?void 0:(i.add(o),_e(o)?(l=[],ln(o,(c=>{l.push(s(c))}))):(l={},Ae(o,((c,u)=>{i.has(c)||(l[u]=s(c,u))}))),l);var l})(t);var t,n,i}var zA=["herokuapp.com","vercel.app","netlify.app"];function qA(r){var e=r?.hostname;if(!ze(e))return!1;var t=e.split(".").slice(-2).join(".");for(var n of zA)if(t===n)return!1;return!0}function c0(r,e){for(var t=0;t<r.length;t++)if(e(r[t]))return r[t]}function je(r,e,t,n){var{capture:i=!1,passive:s=!0}=n??{};r?.addEventListener(e,t,{capture:i,passive:s})}var u0="$people_distinct_id",Bo="__alias",Vo="__timers",n_="$autocapture_disabled_server_side",wh="$heatmaps_enabled_server_side",i_="$exception_capture_enabled_server_side",Sh="$error_tracking_suppression_rules",s_="$error_tracking_capture_extension_exceptions",o_="$web_vitals_enabled_server_side",d0="$dead_clicks_enabled_server_side",a_="$product_tours_enabled_server_side",l_="$web_vitals_allowed_metrics",Up="$session_recording_remote_config",ac="$sesid",p0="$session_is_sampled",Bi="$enabled_feature_flags",jo="$early_access_features",kh="$feature_flag_details",Uo="$stored_person_properties",Qn="$stored_group_properties",Eh="$surveys",lc="$flag_call_reported",Ir="$user_state",Ch="$client_session_props",Ah="$capture_rate_limit",Rh="$initial_campaign_params",Th="$initial_referrer_info",cc="$initial_person_info",uc="$epp",h0="__POSTHOG_TOOLBAR__",Io="$posthog_cookieless",ZA=[u0,Bo,"__cmpns",Vo,"$session_recording_enabled_server_side",wh,ac,Bi,Sh,Ir,jo,kh,Qn,Uo,Eh,lc,Ch,Ah,Rh,Th,uc,cc,"$conversations_widget_session_id","$conversations_ticket_id","$conversations_widget_state","$conversations_user_traits"];function c_(r){return r instanceof Element&&(r.id===h0||!(r.closest==null||!r.closest(".toolbar-global-fade-container")))}function Rc(r){return!!r&&r.nodeType===1}function cn(r,e){return!!r&&!!r.tagName&&r.tagName.toLowerCase()===e.toLowerCase()}function f0(r){return!!r&&r.nodeType===3}function g0(r){return!!r&&r.nodeType===11}function wf(r){return r?Cc(r).split(/\s+/):[]}function u_(r){var e=E?.location.href;return!!(e&&r&&r.some((t=>e.match(t))))}function dc(r){var e="";switch(typeof r.className){case"string":e=r.className;break;case"object":e=(r.className&&"baseVal"in r.className?r.className.baseVal:null)||r.getAttribute("class")||"";break;default:e=""}return wf(e)}function m0(r){return fe(r)?null:Cc(r).split(/(\s+)/).filter((e=>ea(e))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function ra(r){var e="";return Ih(r)&&!x0(r)&&r.childNodes&&r.childNodes.length&&Ae(r.childNodes,(function(t){var n;f0(t)&&t.textContent&&(e+=(n=m0(t.textContent))!==null&&n!==void 0?n:"")})),Cc(e)}function v0(r){return B(r.target)?r.srcElement||null:(e=r.target)!=null&&e.shadowRoot?r.composedPath()[0]||null:r.target||null;var e}var Sf=["a","button","form","input","select","textarea","label"];function y0(r,e){if(B(e))return!0;var t,n=function(s){if(e.some((o=>s.matches(o))))return{v:!0}};for(var i of r)if(t=n(i))return t.v;return!1}function b0(r){var e=r.parentNode;return!(!e||!Rc(e))&&e}var GA=["next","previous","prev",">","<"],d_=10,p_=[".ph-no-rageclick",".ph-no-capture"];function KA(r,e){if(!E||kf(r))return!1;var t,n,i;if(Pr(e)?(t=!!e&&p_,n=void 0):(t=(i=e?.css_selector_ignorelist)!==null&&i!==void 0?i:p_,n=e?.content_ignorelist),t===!1)return!1;var{targetElementList:s}=_0(r,!1);return!(function(o,a){if(o===!1||B(o))return!1;var l;if(o===!0)l=GA;else{if(!_e(o))return!1;if(o.length>d_)return j.error("[PostHog] content_ignorelist array cannot exceed "+d_+" items. Use css_selector_ignorelist for more complex matching."),!1;l=o.map((c=>c.toLowerCase()))}return a.some((c=>{var{safeText:u,ariaLabel:p}=c;return l.some((h=>u.includes(h)||p.includes(h)))}))})(n,s.map((o=>{var a;return{safeText:ra(o).toLowerCase(),ariaLabel:((a=o.getAttribute("aria-label"))==null?void 0:a.toLowerCase().trim())||""}})))&&!y0(s,t)}var kf=r=>!r||cn(r,"html")||!Rc(r),_0=(r,e)=>{if(!E||kf(r))return{parentIsUsefulElement:!1,targetElementList:[]};for(var t=!1,n=[r],i=r;i.parentNode&&!cn(i,"body");)if(g0(i.parentNode))n.push(i.parentNode.host),i=i.parentNode.host;else{var s=b0(i);if(!s)break;if(e||Sf.indexOf(s.tagName.toLowerCase())>-1)t=!0;else{var o=E.getComputedStyle(s);o&&o.getPropertyValue("cursor")==="pointer"&&(t=!0)}n.push(s),i=s}return{parentIsUsefulElement:t,targetElementList:n}};function YA(r,e,t,n,i){var s,o,a,l;if(t===void 0&&(t=void 0),!E||kf(r)||(s=t)!=null&&s.url_allowlist&&!u_(t.url_allowlist)||(o=t)!=null&&o.url_ignorelist&&u_(t.url_ignorelist))return!1;if((a=t)!=null&&a.dom_event_allowlist){var c=t.dom_event_allowlist;if(c&&!c.some((v=>e.type===v)))return!1}var{parentIsUsefulElement:u,targetElementList:p}=_0(r,n);if(!(function(v,g){var m=g?.element_allowlist;if(B(m))return!0;var y,x=function(b){if(m.some((w=>b.tagName.toLowerCase()===w)))return{v:!0}};for(var S of v)if(y=x(S))return y.v;return!1})(p,t)||!y0(p,(l=t)==null?void 0:l.css_selector_allowlist))return!1;var h=E.getComputedStyle(r);if(h&&h.getPropertyValue("cursor")==="pointer"&&e.type==="click")return!0;var f=r.tagName.toLowerCase();switch(f){case"html":return!1;case"form":return(i||["submit"]).indexOf(e.type)>=0;case"input":case"select":case"textarea":return(i||["change","click"]).indexOf(e.type)>=0;default:return u?(i||["click"]).indexOf(e.type)>=0:(i||["click"]).indexOf(e.type)>=0&&(Sf.indexOf(f)>-1||r.getAttribute("contenteditable")==="true")}}function Ih(r){for(var e=r;e.parentNode&&!cn(e,"body");e=e.parentNode){var t=dc(e);if(he(t,"ph-sensitive")||he(t,"ph-no-capture"))return!1}if(he(dc(r),"ph-include"))return!0;var n=r.type||"";if(ze(n))switch(n.toLowerCase()){case"hidden":case"password":return!1}var i=r.name||r.id||"";return!(ze(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 x0(r){return!!(cn(r,"input")&&!["button","checkbox","submit","reset"].includes(r.type)||cn(r,"select")||cn(r,"textarea")||r.getAttribute("contenteditable")==="true")}var w0="(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})",XA=new RegExp("^(?:"+w0+")$"),JA=new RegExp(w0),S0="\\d{3}-?\\d{2}-?\\d{4}",QA=new RegExp("^("+S0+")$"),e2=new RegExp("("+S0+")");function ea(r,e){return e===void 0&&(e=!0),!(fe(r)||ze(r)&&(r=Cc(r),(e?XA:JA).test((r||"").replace(/[- ]/g,""))||(e?QA:e2).test(r)))}function k0(r){var e=ra(r);return ea(e=(e+" "+E0(r)).trim())?e:""}function E0(r){var e="";return r&&r.childNodes&&r.childNodes.length&&Ae(r.childNodes,(function(t){var n;if(t&&((n=t.tagName)==null?void 0:n.toLowerCase())==="span")try{var i=ra(t);e=(e+" "+i).trim(),t.childNodes&&t.childNodes.length&&(e=(e+" "+E0(t)).trim())}catch(s){j.error("[AutoCapture]",s)}})),e}function t2(r){return(function(e){var t=e.map((n=>{var i,s,o="";if(n.tag_name&&(o+=n.tag_name),n.attr_class)for(var a of(n.attr_class.sort(),n.attr_class))o+="."+a.replace(/"/g,"");var l=W({},n.text?{text:n.text}:{},{"nth-child":(i=n.nth_child)!==null&&i!==void 0?i:0,"nth-of-type":(s=n.nth_of_type)!==null&&s!==void 0?s:0},n.href?{href:n.href}:{},n.attr_id?{attr_id:n.attr_id}:{},n.attributes),c={};return rc(l).sort(((u,p)=>{var[h]=u,[f]=p;return h.localeCompare(f)})).forEach((u=>{var[p,h]=u;return c[h_(p.toString())]=h_(h.toString())})),o+=":",o+=rc(c).map((u=>{var[p,h]=u;return p+'="'+h+'"'})).join("")}));return t.join(";")})((function(e){return e.map((t=>{var n,i,s={text:(n=t.$el_text)==null?void 0:n.slice(0,400),tag_name:t.tag_name,href:(i=t.attr__href)==null?void 0:i.slice(0,2048),attr_class:r2(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return rc(t).filter((o=>{var[a]=o;return a.indexOf("attr__")===0})).forEach((o=>{var[a,l]=o;return s.attributes[a]=l})),s}))})(r))}function h_(r){return r.replace(/"|\\"/g,'\\"')}function r2(r){var e=r.attr__class;return e?_e(e)?e:wf(e):void 0}var pc=class{constructor(e){this.disabled=e===!1;var t=We(e)?e:{};this.thresholdPx=t.threshold_px||30,this.timeoutMs=t.timeout_ms||1e3,this.clickCount=t.click_count||3,this.clicks=[]}isRageClick(e,t,n){if(this.disabled)return!1;var i=this.clicks[this.clicks.length-1];if(i&&Math.abs(e-i.x)+Math.abs(t-i.y)<this.thresholdPx&&n-i.timestamp<this.timeoutMs){if(this.clicks.push({x:e,y:t,timestamp:n}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:e,y:t,timestamp:n}];return!1}},hc=r=>{var e=H?.createElement("a");return B(e)?null:(e.href=r,e)},n2=function(r,e){var t,n;e===void 0&&(e="&");var i=[];return Ae(r,(function(s,o){B(s)||B(o)||o==="undefined"||(t=encodeURIComponent((a=>a instanceof File)(s)?s.name:s.toString()),n=encodeURIComponent(o),i[i.length]=n+"="+t)})),i.join(e)},fc=function(r,e){for(var t,n=((r.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&"),i=0;i<n.length;i++){var s=n[i].split("=");if(s[0]===e){t=s;break}}if(!_e(t)||t.length<2)return"";var o=t[1];try{o=decodeURIComponent(o)}catch{j.error("Skipping decoding for malformed query param: "+o)}return o.replace(/\+/g," ")},na=function(r,e,t){if(!r||!e||!e.length)return r;for(var n=r.split("#"),i=n[0]||"",s=n[1],o=i.split("?"),a=o[1],l=o[0],c=(a||"").split("&"),u=[],p=0;p<c.length;p++){var h=c[p].split("=");_e(h)&&(e.includes(h[0])?u.push(h[0]+"="+t):u.push(c[p]))}var f=l;return a!=null&&(f+="?"+u.join("&")),s!=null&&(f+="#"+s),f},gc=function(r,e){var t=r.match(new RegExp(e+"=([^&]*)"));return t?t[1]:null},Wp="$copy_autocapture",f_=Pe("[AutoCapture]");function zp(r,e){return e.length>r?e.slice(0,r)+"...":e}function i2(r){if(r.previousElementSibling)return r.previousElementSibling;var e=r;do e=e.previousSibling;while(e&&!Rc(e));return e}function s2(r,e,t,n){var i=r.tagName.toLowerCase(),s={tag_name:i};Sf.indexOf(i)>-1&&!t&&(i.toLowerCase()==="a"||i.toLowerCase()==="button"?s.$el_text=zp(1024,k0(r)):s.$el_text=zp(1024,ra(r)));var o=dc(r);o.length>0&&(s.classes=o.filter((function(u){return u!==""}))),Ae(r.attributes,(function(u){var p;if((!x0(r)||["name","id","class","aria-label"].indexOf(u.name)!==-1)&&(n==null||!n.includes(u.name))&&!e&&ea(u.value)&&(p=u.name,!ze(p)||p.substring(0,10)!=="_ngcontent"&&p.substring(0,7)!=="_nghost")){var h=u.value;u.name==="class"&&(h=wf(h).join(" ")),s["attr__"+u.name]=zp(1024,h)}}));for(var a=1,l=1,c=r;c=i2(c);)a++,c.tagName===r.tagName&&l++;return s.nth_child=a,s.nth_of_type=l,s}function o2(r,e){for(var t,n,{e:i,maskAllElementAttributes:s,maskAllText:o,elementAttributeIgnoreList:a,elementsChainAsString:l}=e,c=[r],u=r;u.parentNode&&!cn(u,"body");)g0(u.parentNode)?(c.push(u.parentNode.host),u=u.parentNode.host):(c.push(u.parentNode),u=u.parentNode);var p,h=[],f={},v=!1,g=!1;if(Ae(c,(b=>{var w=Ih(b);b.tagName.toLowerCase()==="a"&&(v=b.getAttribute("href"),v=w&&v&&ea(v)&&v),he(dc(b),"ph-no-capture")&&(g=!0),h.push(s2(b,s,o,a));var C=(function(_){if(!Ih(_))return{};var A={};return Ae(_.attributes,(function($){if($.name&&$.name.indexOf("data-ph-capture-attribute")===0){var T=$.name.replace("data-ph-capture-attribute-",""),O=$.value;T&&O&&ea(O)&&(A[T]=O)}})),A})(b);Fe(f,C)})),g)return{props:{},explicitNoCapture:g};if(o||(r.tagName.toLowerCase()==="a"||r.tagName.toLowerCase()==="button"?h[0].$el_text=k0(r):h[0].$el_text=ra(r)),v){var m,y;h[0].attr__href=v;var x=(m=hc(v))==null?void 0:m.host,S=E==null||(y=E.location)==null?void 0:y.host;x&&S&&x!==S&&(p=v)}return{props:Fe({$event_type:i.type,$ce_version:1},l?{}:{$elements:h},{$elements_chain:t2(h)},(t=h[0])!=null&&t.$el_text?{$el_text:(n=h[0])==null?void 0:n.$el_text}:{},p&&i.type==="click"?{$external_click_url:p}:{},f)}}var $h=class{constructor(e){this.P=!1,this.T=null,this.I=!1,this.instance=e,this.rageclicks=new pc(e.config.rageclick),this.C=null}get R(){var e,t,n=We(this.instance.config.autocapture)?this.instance.config.autocapture:{};return n.url_allowlist=(e=n.url_allowlist)==null?void 0:e.map((i=>new RegExp(i))),n.url_ignorelist=(t=n.url_ignorelist)==null?void 0:t.map((i=>new RegExp(i))),n}F(){if(this.isBrowserSupported()){if(E&&H){var e=n=>{n=n||E?.event;try{this.O(n)}catch(i){f_.error("Failed to capture event",i)}};if(je(H,"submit",e,{capture:!0}),je(H,"change",e,{capture:!0}),je(H,"click",e,{capture:!0}),this.R.capture_copied_text){var t=n=>{n=n||E?.event,this.O(n,Wp)};je(H,"copy",t,{capture:!0}),je(H,"cut",t,{capture:!0})}}}else f_.info("Disabling Automatic Event Collection because this browser is not supported")}startIfEnabled(){this.isEnabled&&!this.P&&(this.F(),this.P=!0)}onRemoteConfig(e){e.elementsChainAsString&&(this.I=e.elementsChainAsString),this.instance.persistence&&this.instance.persistence.register({[n_]:!!e.autocapture_opt_out}),this.T=!!e.autocapture_opt_out,this.startIfEnabled()}setElementSelectors(e){this.C=e}getElementSelectors(e){var t,n=[];return(t=this.C)==null||t.forEach((i=>{var s=H?.querySelectorAll(i);s?.forEach((o=>{e===o&&n.push(i)}))})),n}get isEnabled(){var e,t,n=(e=this.instance.persistence)==null?void 0:e.props[n_],i=this.T;if(Wt(i)&&!Pr(n)&&!this.instance.M())return!1;var s=(t=this.T)!==null&&t!==void 0?t:!!n;return!!this.instance.config.autocapture&&!s}O(e,t){if(t===void 0&&(t="$autocapture"),this.isEnabled){var n,i=v0(e);f0(i)&&(i=i.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())&&KA(i,this.instance.config.rageclick)&&this.O(e,"$rageclick");var s=t===Wp;if(i&&YA(i,e,this.R,s,s?["copy","cut"]:void 0)){var{props:o,explicitNoCapture:a}=o2(i,{e,maskAllElementAttributes:this.instance.config.mask_all_element_attributes,maskAllText:this.instance.config.mask_all_text,elementAttributeIgnoreList:this.R.element_attribute_ignorelist,elementsChainAsString:this.I});if(a)return!1;var l=this.getElementSelectors(i);if(l&&l.length>0&&(o.$element_selectors=l),t===Wp){var c,u=m0(E==null||(c=E.getSelection())==null?void 0:c.toString()),p=e.type||"clipboard";if(!u)return!1;o.$selected_content=u,o.$copy_type=p}return this.instance.capture(t,o),!0}}}isBrowserSupported(){return an(H?.querySelectorAll)}};Math.trunc||(Math.trunc=function(r){return r<0?Math.ceil(r):Math.floor(r)}),Number.isInteger||(Number.isInteger=function(r){return Nr(r)&&isFinite(r)&&Math.floor(r)===r});var g_="0123456789abcdef",Mh=class r{constructor(e){if(this.bytes=e,e.length!==16)throw new TypeError("not 128-bit length")}static fromFieldsV7(e,t,n,i){if(!Number.isInteger(e)||!Number.isInteger(t)||!Number.isInteger(n)||!Number.isInteger(i)||e<0||t<0||n<0||i<0||e>0xffffffffffff||t>4095||n>1073741823||i>4294967295)throw new RangeError("invalid field value");var s=new Uint8Array(16);return s[0]=e/Math.pow(2,40),s[1]=e/Math.pow(2,32),s[2]=e/Math.pow(2,24),s[3]=e/Math.pow(2,16),s[4]=e/Math.pow(2,8),s[5]=e,s[6]=112|t>>>8,s[7]=t,s[8]=128|n>>>24,s[9]=n>>>16,s[10]=n>>>8,s[11]=n,s[12]=i>>>24,s[13]=i>>>16,s[14]=i>>>8,s[15]=i,new r(s)}toString(){for(var e="",t=0;t<this.bytes.length;t++)e=e+g_.charAt(this.bytes[t]>>>4)+g_.charAt(15&this.bytes[t]),t!==3&&t!==5&&t!==7&&t!==9||(e+="-");if(e.length!==36)throw new Error("Invalid UUIDv7 was generated");return e}clone(){return new r(this.bytes.slice(0))}equals(e){return this.compareTo(e)===0}compareTo(e){for(var t=0;t<16;t++){var n=this.bytes[t]-e.bytes[t];if(n!==0)return Math.sign(n)}return 0}},Oh=class{constructor(){this.A=0,this.j=0,this.D=new Ph}generate(){var e=this.generateOrAbort();if(B(e)){this.A=0;var t=this.generateOrAbort();if(B(t))throw new Error("Could not generate UUID after timestamp reset");return t}return e}generateOrAbort(){var e=Date.now();if(e>this.A)this.A=e,this.L();else{if(!(e+1e4>this.A))return;this.j++,this.j>4398046511103&&(this.A++,this.L())}return Mh.fromFieldsV7(this.A,Math.trunc(this.j/Math.pow(2,30)),this.j&Math.pow(2,30)-1,this.D.nextUint32())}L(){this.j=1024*this.D.nextUint32()+(1023&this.D.nextUint32())}},m_,C0=r=>{if(typeof UUIDV7_DENY_WEAK_RNG<"u"&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(var e=0;e<r.length;e++)r[e]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return r};E&&!B(E.crypto)&&crypto.getRandomValues&&(C0=r=>crypto.getRandomValues(r));var Ph=class{constructor(){this.N=new Uint32Array(8),this.U=1/0}nextUint32(){return this.U>=this.N.length&&(C0(this.N),this.U=0),this.N[this.U++]}},on=()=>a2().toString(),a2=()=>(m_||(m_=new Oh)).generate(),$o="",l2=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;function c2(r,e){if(e){var t=(function(i,s){if(s===void 0&&(s=H),$o)return $o;if(!s||["localhost","127.0.0.1"].includes(i))return"";for(var o=i.split("."),a=Math.min(o.length,8),l="dmn_chk_"+on();!$o&&a--;){var c=o.slice(a).join("."),u=l+"=1;domain=."+c+";path=/";s.cookie=u+";max-age=3",s.cookie.includes(l)&&(s.cookie=u+";max-age=0",$o=c)}return $o})(r);if(!t){var n=(i=>{var s=i.match(l2);return s?s[0]:""})(r);n!==t&&j.info("Warning: cookie subdomain discovery mismatch",n,t),t=n}return t?"; domain=."+t:""}return""}var lr={H:()=>!!H,B:function(r){j.error("cookieStore error: "+r)},q:function(r){if(H){try{for(var e=r+"=",t=H.cookie.split(";").filter((s=>s.length)),n=0;n<t.length;n++){for(var i=t[n];i.charAt(0)==" ";)i=i.substring(1,i.length);if(i.indexOf(e)===0)return decodeURIComponent(i.substring(e.length,i.length))}}catch{}return null}},W:function(r){var e;try{e=JSON.parse(lr.q(r))||{}}catch{}return e},G:function(r,e,t,n,i){if(H)try{var s="",o="",a=c2(H.location.hostname,n);if(t){var l=new Date;l.setTime(l.getTime()+24*t*60*60*1e3),s="; expires="+l.toUTCString()}i&&(o="; secure");var c=r+"="+encodeURIComponent(JSON.stringify(e))+s+"; SameSite=Lax; path=/"+a+o;return c.length>3686.4&&j.warn("cookieStore warning: large cookie, len="+c.length),H.cookie=c,c}catch{return}},V:function(r,e){if(H!=null&&H.cookie)try{lr.G(r,"",-1,e)}catch{return}}},qp=null,Me={H:function(){if(!Wt(qp))return qp;var r=!0;if(B(E))r=!1;else try{var e="__mplssupport__";Me.G(e,"xyz"),Me.q(e)!=='"xyz"'&&(r=!1),Me.V(e)}catch{r=!1}return r||j.error("localStorage unsupported; falling back to cookie store"),qp=r,r},B:function(r){j.error("localStorage error: "+r)},q:function(r){try{return E?.localStorage.getItem(r)}catch(e){Me.B(e)}return null},W:function(r){try{return JSON.parse(Me.q(r))||{}}catch{}return null},G:function(r,e){try{E?.localStorage.setItem(r,JSON.stringify(e))}catch(t){Me.B(t)}},V:function(r){try{E?.localStorage.removeItem(r)}catch(e){Me.B(e)}}},u2=["$device_id","distinct_id",ac,p0,uc,cc],Jl={},d2={H:function(){return!0},B:function(r){j.error("memoryStorage error: "+r)},q:function(r){return Jl[r]||null},W:function(r){return Jl[r]||null},G:function(r,e){Jl[r]=e},V:function(r){delete Jl[r]}},Xn=null,Qe={H:function(){if(!Wt(Xn))return Xn;if(Xn=!0,B(E))Xn=!1;else try{var r="__support__";Qe.G(r,"xyz"),Qe.q(r)!=='"xyz"'&&(Xn=!1),Qe.V(r)}catch{Xn=!1}return Xn},B:function(r){j.error("sessionStorage error: ",r)},q:function(r){try{return E?.sessionStorage.getItem(r)}catch(e){Qe.B(e)}return null},W:function(r){try{return JSON.parse(Qe.q(r))||null}catch{}return null},G:function(r,e){try{E?.sessionStorage.setItem(r,JSON.stringify(e))}catch(t){Qe.B(t)}},V:function(r){try{E?.sessionStorage.removeItem(r)}catch(e){Qe.B(e)}}},$r=(function(r){return r[r.PENDING=-1]="PENDING",r[r.DENIED=0]="DENIED",r[r.GRANTED=1]="GRANTED",r})({}),Nh=class{constructor(e){this._instance=e}get R(){return this._instance.config}get consent(){return this.J()?$r.DENIED:this.K}isOptedOut(){return this.R.cookieless_mode==="always"||this.consent===$r.DENIED||this.consent===$r.PENDING&&(this.R.opt_out_capturing_by_default||this.R.cookieless_mode==="on_reject")}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===$r.DENIED}optInOut(e){this.Y.G(this.X,e?1:0,this.R.cookie_expiration,this.R.cross_subdomain_cookie,this.R.secure_cookie)}reset(){this.Y.V(this.X,this.R.cross_subdomain_cookie)}get X(){var{token:e,opt_out_capturing_cookie_prefix:t,consent_persistence_name:n}=this._instance.config;return n||(t?t+e:"__ph_opt_in_out_"+e)}get K(){var e=this.Y.q(this.X);return Bp(e)?$r.GRANTED:he(bA,e)?$r.DENIED:$r.PENDING}get Y(){if(!this.Z){var e=this.R.opt_out_capturing_persistence_type;this.Z=e==="localStorage"?Me:lr;var t=e==="localStorage"?lr:Me;t.q(this.X)&&(this.Z.q(this.X)||this.optInOut(Bp(t.q(this.X))),t.V(this.X,this.R.cross_subdomain_cookie))}return this.Z}J(){return!!this.R.respect_dnt&&!!c0([wt?.doNotTrack,wt?.msDoNotTrack,re.doNotTrack],(e=>Bp(e)))}},Ql=Pe("[Dead Clicks]"),p2=()=>!0,h2=r=>{var e,t=!((e=r.instance.persistence)==null||!e.get_property(d0)),n=r.instance.config.capture_dead_clicks;return Pr(n)?n:!!We(n)||t},mc=class{get lazyLoadedDeadClicksAutocapture(){return this.tt}constructor(e,t,n){this.instance=e,this.isEnabled=t,this.onCapture=n,this.startIfEnabled()}onRemoteConfig(e){this.instance.persistence&&this.instance.persistence.register({[d0]:e?.captureDeadClicks}),this.startIfEnabled()}startIfEnabled(){this.isEnabled(this)&&this.it((()=>{this.et()}))}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.initDeadClicksAutocapture&&e(),(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this.instance,"dead-clicks-autocapture",(i=>{i?Ql.error("failed to load script",i):e()}))}et(){var e;if(H){if(!this.tt&&(e=re.__PosthogExtensions__)!=null&&e.initDeadClicksAutocapture){var t=We(this.instance.config.capture_dead_clicks)?this.instance.config.capture_dead_clicks:{};t.__onCapture=this.onCapture,this.tt=re.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,t),this.tt.start(H),Ql.info("starting...")}}else Ql.error("`document` not found. Cannot start.")}stop(){this.tt&&(this.tt.stop(),this.tt=void 0,Ql.info("stopping..."))}},Mo=Pe("[ExceptionAutocapture]"),Lh=class{constructor(e){var t,n,i;this.rt=()=>{var s;if(E&&this.isEnabled&&(s=re.__PosthogExtensions__)!=null&&s.errorWrappingFunctions){var o=re.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,a=re.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,l=re.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.st&&this.R.capture_unhandled_errors&&(this.st=o(this.captureException.bind(this))),!this.nt&&this.R.capture_unhandled_rejections&&(this.nt=a(this.captureException.bind(this))),!this.ot&&this.R.capture_console_errors&&(this.ot=l(this.captureException.bind(this)))}catch(c){Mo.error("failed to start",c),this.ut()}}},this._instance=e,this.ht=!((t=this._instance.persistence)==null||!t.props[i_]),this.dt=new lh({refillRate:(n=this._instance.config.error_tracking.__exceptionRateLimiterRefillRate)!==null&&n!==void 0?n:1,bucketSize:(i=this._instance.config.error_tracking.__exceptionRateLimiterBucketSize)!==null&&i!==void 0?i:10,refillInterval:1e4,h:Mo}),this.R=this.vt(),this.startIfEnabledOrStop()}vt(){var e=this._instance.config.capture_exceptions,t={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return We(e)?t=W({},t,e):(B(e)?this.ht:e)&&(t=W({},t,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),t}get isEnabled(){return this.R.capture_console_errors||this.R.capture_unhandled_errors||this.R.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Mo.info("enabled"),this.ut(),this.it(this.rt)):this.ut()}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.errorWrappingFunctions&&e(),(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"exception-autocapture",(i=>{if(i)return Mo.error("failed to load script",i);e()}))}ut(){var e,t,n;(e=this.st)==null||e.call(this),this.st=void 0,(t=this.nt)==null||t.call(this),this.nt=void 0,(n=this.ot)==null||n.call(this),this.ot=void 0}onRemoteConfig(e){var t=e.autocaptureExceptions;this.ht=!!t||!1,this._instance.persistence&&this._instance.persistence.register({[i_]:this.ht}),this.R=this.vt(),this.startIfEnabledOrStop()}onConfigChange(){this.R=this.vt()}captureException(e){var t,n,i=(t=e==null||(n=e.$exception_list)==null||(n=n[0])==null?void 0:n.type)!==null&&t!==void 0?t:"Exception";this.dt.consumeRateLimit(i)?Mo.info("Skipping exception capture because of client rate limiting.",{exception:i}):this._instance.exceptions.sendExceptionEvent(e)}};function v_(r,e,t){try{if(!(e in r))return()=>{};var n=r[e],i=t(n);return an(i)&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__posthog_wrapped__:{enumerable:!1,value:!0}})),r[e]=i,()=>{r[e]=n}}catch{return()=>{}}}var Fh=class{constructor(e){var t;this._instance=e,this.ct=(E==null||(t=E.location)==null?void 0:t.pathname)||""}get isEnabled(){return this._instance.config.capture_pageview==="history_change"}startIfEnabled(){this.isEnabled&&(j.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}stop(){this.ft&&this.ft(),this.ft=void 0,j.info("History API monitoring stopped")}monitorHistoryChanges(){var e,t;if(E&&E.history){var n=this;(e=E.history.pushState)!=null&&e.__posthog_wrapped__||v_(E.history,"pushState",(i=>function(s,o,a){i.call(this,s,o,a),n._t("pushState")})),(t=E.history.replaceState)!=null&&t.__posthog_wrapped__||v_(E.history,"replaceState",(i=>function(s,o,a){i.call(this,s,o,a),n._t("replaceState")})),this.bt()}}_t(e){try{var t,n=E==null||(t=E.location)==null?void 0:t.pathname;if(!n)return;n!==this.ct&&this.isEnabled&&this._instance.capture("$pageview",{navigation_type:e}),this.ct=n}catch(i){j.error("Error capturing "+e+" pageview",i)}}bt(){if(!this.ft){var e=()=>{this._t("popstate")};je(E,"popstate",e),this.ft=()=>{E&&E.removeEventListener("popstate",e)}}}},Zp=Pe("[SegmentIntegration]");function f2(r,e){var t=r.config.segment;if(!t)return e();(function(n,i){var s=n.config.segment;if(!s)return i();var o=l=>{var c=()=>l.anonymousId()||on();n.config.get_device_id=c,l.id()&&(n.register({distinct_id:l.id(),$device_id:c()}),n.persistence.set_property(Ir,"identified")),i()},a=s.user();"then"in a&&an(a.then)?a.then(o):o(a)})(r,(()=>{t.register((n=>{Promise&&Promise.resolve||Zp.warn("This browser does not have Promise support, and can not use the segment integration");var i=(s,o)=>{if(!o)return s;s.event.userId||s.event.anonymousId===n.get_distinct_id()||(Zp.info("No userId set, resetting PostHog"),n.reset()),s.event.userId&&s.event.userId!==n.get_distinct_id()&&(Zp.info("UserId set, identifying with PostHog"),n.identify(s.event.userId));var a=n.calculateEventProperties(o,s.event.properties);return s.event.properties=Object.assign({},a,s.event.properties),s};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:()=>!0,load:()=>Promise.resolve(),track:s=>i(s,s.event.event),page:s=>i(s,"$pageview"),identify:s=>i(s,"$identify"),screen:s=>i(s,"$screen")}})(r)).then((()=>{e()}))}))}var A0="posthog-js";function R0(r,e){var{organization:t,projectId:n,prefix:i,severityAllowList:s=["error"],sendExceptionsToPostHog:o=!0}=e===void 0?{}:e;return a=>{var l,c,u,p,h;if(!(s==="*"||s.includes(a.level))||!r.__loaded)return a;a.tags||(a.tags={});var f=r.requestRouter.endpointFor("ui","/project/"+r.config.token+"/person/"+r.get_distinct_id());a.tags["PostHog Person URL"]=f,r.sessionRecordingStarted()&&(a.tags["PostHog Recording URL"]=r.get_session_replay_url({withTimestamp:!0}));var v=((l=a.exception)==null?void 0:l.values)||[],g=v.map((y=>W({},y,{stacktrace:y.stacktrace?W({},y.stacktrace,{type:"raw",frames:(y.stacktrace.frames||[]).map((x=>W({},x,{platform:"web:javascript"})))}):void 0}))),m={$exception_message:((c=v[0])==null?void 0:c.value)||a.message,$exception_type:(u=v[0])==null?void 0:u.type,$exception_level:a.level,$exception_list:g,$sentry_event_id:a.event_id,$sentry_exception:a.exception,$sentry_exception_message:((p=v[0])==null?void 0:p.value)||a.message,$sentry_exception_type:(h=v[0])==null?void 0:h.type,$sentry_tags:a.tags};return t&&n&&(m.$sentry_url=(i||"https://sentry.io/organizations/")+t+"/issues/?project="+n+"&query="+a.event_id),o&&r.exceptions.sendExceptionEvent(m),a}}var Dh=class{constructor(e,t,n,i,s,o){this.name=A0,this.setupOnce=function(a){a(R0(e,{organization:t,projectId:n,prefix:i,severityAllowList:s,sendExceptionsToPostHog:o==null||o}))}}},g2=E!=null&&E.location?gc(E.location.hash,"__posthog")||gc(location.hash,"state"):null,y_="_postHogToolbarParams",b_=Pe("[Toolbar]"),sn=(function(r){return r[r.UNINITIALIZED=0]="UNINITIALIZED",r[r.LOADING=1]="LOADING",r[r.LOADED=2]="LOADED",r})(sn||{}),Hh=class{constructor(e){this.instance=e}yt(e){re.ph_toolbar_state=e}wt(){var e;return(e=re.ph_toolbar_state)!==null&&e!==void 0?e:sn.UNINITIALIZED}maybeLoadToolbar(e,t,n){if(e===void 0&&(e=void 0),t===void 0&&(t=void 0),n===void 0&&(n=void 0),!E||!H)return!1;e=e??E.location,n=n??E.history;try{if(!t){try{E.localStorage.setItem("test","test"),E.localStorage.removeItem("test")}catch{return!1}t=E?.localStorage}var i,s=g2||gc(e.hash,"__posthog")||gc(e.hash,"state"),o=s?r_((()=>JSON.parse(atob(decodeURIComponent(s)))))||r_((()=>JSON.parse(decodeURIComponent(s)))):null;return o&&o.action==="ph_authorize"?((i=o).source="url",i&&Object.keys(i).length>0&&(o.desiredHash?e.hash=o.desiredHash:n?n.replaceState(n.state,"",e.pathname+e.search):e.hash="")):((i=JSON.parse(t.getItem(y_)||"{}")).source="localstorage",delete i.userIntent),!(!i.token||this.instance.config.token!==i.token)&&(this.loadToolbar(i),!0)}catch{return!1}}xt(e){var t=re.ph_load_toolbar||re.ph_load_editor;!fe(t)&&an(t)?t(e,this.instance):b_.warn("No toolbar load function found")}loadToolbar(e){var t=!(H==null||!H.getElementById(h0));if(!E||t)return!1;var n=this.instance.requestRouter.region==="custom"&&this.instance.config.advanced_disable_toolbar_metrics,i=W({token:this.instance.config.token},e,{apiURL:this.instance.requestRouter.endpointFor("ui")},n?{instrument:!1}:{});if(E.localStorage.setItem(y_,JSON.stringify(W({},i,{source:void 0}))),this.wt()===sn.LOADED)this.xt(i);else if(this.wt()===sn.UNINITIALIZED){var s;this.yt(sn.LOADING),(s=re.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this.instance,"toolbar",(o=>{if(o)return b_.error("[Toolbar] Failed to load",o),void this.yt(sn.UNINITIALIZED);this.yt(sn.LOADED),this.xt(i)})),je(E,"turbolinks:load",(()=>{this.yt(sn.UNINITIALIZED),this.loadToolbar(i)}))}return!0}Et(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)}},m2=Pe("[TracingHeaders]"),Bh=class{constructor(e){this.$t=void 0,this.St=void 0,this.rt=()=>{var t,n;B(this.$t)&&((t=re.__PosthogExtensions__)==null||(t=t.tracingHeadersPatchFns)==null||t._patchXHR(this._instance.config.__add_tracing_headers||[],this._instance.get_distinct_id(),this._instance.sessionManager)),B(this.St)&&((n=re.__PosthogExtensions__)==null||(n=n.tracingHeadersPatchFns)==null||n._patchFetch(this._instance.config.__add_tracing_headers||[],this._instance.get_distinct_id(),this._instance.sessionManager))},this._instance=e}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.tracingHeadersPatchFns&&e(),(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"tracing-headers",(i=>{if(i)return m2.error("failed to load script",i);e()}))}startIfEnabledOrStop(){var e,t;this._instance.config.__add_tracing_headers?this.it(this.rt):((e=this.$t)==null||e.call(this),(t=this.St)==null||t.call(this),this.$t=void 0,this.St=void 0)}},ec="https?://(.*)",Zi=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],v2=qi(["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid"],Zi),ia="<masked>",y2=["li_fat_id"];function T0(r,e,t){if(!H)return{};var n,i=e?qi([],Zi,t||[]):[],s=I0(na(H.URL,i,ia),r),o=(n={},Ae(y2,(function(a){var l=lr.q(a);n[a]=l||null})),n);return Fe(o,s)}function I0(r,e){var t=v2.concat(e||[]),n={};return Ae(t,(function(i){var s=fc(r,i);n[i]=s||null})),n}function $0(r){var e=(function(s){return s?s.search(ec+"google.([^/?]*)")===0?"google":s.search(ec+"bing.com")===0?"bing":s.search(ec+"yahoo.com")===0?"yahoo":s.search(ec+"duckduckgo.com")===0?"duckduckgo":null:null})(r),t=e!="yahoo"?"q":"p",n={};if(!Wt(e)){n.$search_engine=e;var i=H?fc(H.referrer,t):"";i.length&&(n.ph_keyword=i)}return n}function __(){return navigator.language||navigator.userLanguage}function M0(){return H?.referrer||"$direct"}function O0(r,e){var t=r?qi([],Zi,e||[]):[],n=et?.href.substring(0,1e3);return{r:M0().substring(0,1e3),u:n?na(n,t,ia):void 0}}function P0(r){var e,{r:t,u:n}=r,i={$referrer:t,$referring_domain:t==null?void 0:t=="$direct"?"$direct":(e=hc(t))==null?void 0:e.host};if(n){i.$current_url=n;var s=hc(n);i.$host=s?.host,i.$pathname=s?.pathname;var o=I0(n);Fe(i,o)}if(t){var a=$0(t);Fe(i,a)}return i}function N0(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}function b2(){try{return new Date().getTimezoneOffset()}catch{return}}function _2(r,e){if(!yt)return{};var t,n,i,s=r?qi([],Zi,e||[]):[],[o,a]=(function(l){for(var c=0;c<Xb.length;c++){var[u,p]=Xb[c],h=u.exec(l),f=h&&(an(p)?p(h,l):p);if(f)return f}return["",""]})(yt);return Fe(xf({$os:o,$os_version:a,$browser:s0(yt,navigator.vendor),$device:Jb(yt),$device_type:(n=yt,i=Jb(n),i===z_||i===W_||i==="Kobo"||i==="Kindle Fire"||i===i0?Yo:i===Jo||i===ji||i===Qo||i===uh?"Console":i===Z_?"Wearable":i?$t:"Desktop"),$timezone:N0(),$timezone_offset:b2()}),{$current_url:na(et?.href,s,ia),$host:et?.host,$pathname:et?.pathname,$raw_user_agent:yt.length>1e3?yt.substring(0,997)+"...":yt,$browser_version:TA(yt,navigator.vendor),$browser_language:__(),$browser_language_prefix:(t=__(),typeof t=="string"?t.split("-")[0]:void 0),$screen_height:E?.screen.height,$screen_width:E?.screen.width,$viewport_height:E?.innerHeight,$viewport_width:E?.innerWidth,$lib:"web",$lib_version:Tr.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3})}var tn=Pe("[Web Vitals]"),x_=9e5,Vh=class{constructor(e){var t;this.kt=!1,this.P=!1,this.N={url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Pt=()=>{clearTimeout(this.Tt),this.N.metrics.length!==0&&(this._instance.capture("$web_vitals",this.N.metrics.reduce(((n,i)=>W({},n,{["$web_vitals_"+i.name+"_event"]:W({},i),["$web_vitals_"+i.name+"_value"]:i.value})),{})),this.N={url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.It=n=>{var i,s=(i=this._instance.sessionManager)==null?void 0:i.checkAndGetSessionAndWindowId(!0);if(B(s))tn.error("Could not read session ID. Dropping metrics!");else{this.N=this.N||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var o=this.Ct();B(o)||(fe(n?.name)||fe(n?.value)?tn.error("Invalid metric received",n):this.Rt&&n.value>=this.Rt?tn.error("Ignoring metric with value >= "+this.Rt,n):(this.N.url!==o&&(this.Pt(),this.Tt=setTimeout(this.Pt,this.flushToCaptureTimeoutMs)),B(this.N.url)&&(this.N.url=o),this.N.firstMetricTimestamp=B(this.N.firstMetricTimestamp)?Date.now():this.N.firstMetricTimestamp,n.attribution&&n.attribution.interactionTargetElement&&(n.attribution.interactionTargetElement=void 0),this.N.metrics.push(W({},n,{$current_url:o,$session_id:s.sessionId,$window_id:s.windowId,timestamp:Date.now()})),this.N.metrics.length===this.allowedMetrics.length&&this.Pt()))}},this.rt=()=>{if(!this.P){var n,i,s,o,a=re.__PosthogExtensions__;B(a)||B(a.postHogWebVitalsCallbacks)||({onLCP:n,onCLS:i,onFCP:s,onINP:o}=a.postHogWebVitalsCallbacks),n&&i&&s&&o?(this.allowedMetrics.indexOf("LCP")>-1&&n(this.It.bind(this)),this.allowedMetrics.indexOf("CLS")>-1&&i(this.It.bind(this)),this.allowedMetrics.indexOf("FCP")>-1&&s(this.It.bind(this)),this.allowedMetrics.indexOf("INP")>-1&&o(this.It.bind(this)),this.P=!0):tn.error("web vitals callbacks not loaded - not starting")}},this._instance=e,this.kt=!((t=this._instance.persistence)==null||!t.props[o_]),this.startIfEnabled()}get allowedMetrics(){var e,t,n=We(this._instance.config.capture_performance)?(e=this._instance.config.capture_performance)==null?void 0:e.web_vitals_allowed_metrics:void 0;return fe(n)?((t=this._instance.persistence)==null?void 0:t.props[l_])||["CLS","FCP","INP","LCP"]:n}get flushToCaptureTimeoutMs(){return(We(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var e=We(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals_attribution:void 0;return e!=null&&e}get Rt(){var e=We(this._instance.config.capture_performance)&&Nr(this._instance.config.capture_performance.__web_vitals_max_value)?this._instance.config.capture_performance.__web_vitals_max_value:x_;return 0<e&&e<=6e4?x_:e}get isEnabled(){var e=et?.protocol;if(e!=="http:"&&e!=="https:")return tn.info("Web Vitals are disabled on non-http/https protocols"),!1;var t=We(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals:Pr(this._instance.config.capture_performance)?this._instance.config.capture_performance:void 0;return Pr(t)?t:this.kt}startIfEnabled(){this.isEnabled&&!this.P&&(tn.info("enabled, starting..."),this.it(this.rt))}onRemoteConfig(e){var t=We(e.capturePerformance)&&!!e.capturePerformance.web_vitals,n=We(e.capturePerformance)?e.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[o_]:t}),this._instance.persistence.register({[l_]:n})),this.kt=t,this.startIfEnabled()}it(e){var t,n;if((t=re.__PosthogExtensions__)!=null&&t.postHogWebVitalsCallbacks)e();else{var i=this.useAttribution?"web-vitals-with-attribution":"web-vitals";(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,i,(s=>{s?tn.error("failed to load script",s):e()}))}}Ct(){var e=E?E.location.href:void 0;if(e){var t=this._instance.config.mask_personal_data_properties,n=this._instance.config.custom_personal_data_properties,i=t?qi([],Zi,n||[]):[];return na(e,i,ia)}tn.error("Could not determine current URL")}},x2=Pe("[Heatmaps]");function w_(r){return We(r)&&"clientX"in r&&"clientY"in r&&Nr(r.clientX)&&Nr(r.clientY)}var jh=class{constructor(e){var t;this.kt=!1,this.P=!1,this.Ft=null,this.instance=e,this.kt=!((t=this.instance.persistence)==null||!t.props[wh]),this.rageclicks=new pc(e.config.rageclick)}get flushIntervalMilliseconds(){var e=5e3;return We(this.instance.config.capture_heatmaps)&&this.instance.config.capture_heatmaps.flush_interval_milliseconds&&(e=this.instance.config.capture_heatmaps.flush_interval_milliseconds),e}get isEnabled(){return fe(this.instance.config.capture_heatmaps)?fe(this.instance.config.enable_heatmaps)?this.kt:this.instance.config.enable_heatmaps:this.instance.config.capture_heatmaps!==!1}startIfEnabled(){if(this.isEnabled){if(this.P)return;x2.info("starting..."),this.Ot(),this.Mt()}else{var e;clearInterval((e=this.Ft)!==null&&e!==void 0?e:void 0),this.At(),this.getAndClearBuffer()}}onRemoteConfig(e){var t=!!e.heatmaps;this.instance.persistence&&this.instance.persistence.register({[wh]:t}),this.kt=t,this.startIfEnabled()}getAndClearBuffer(){var e=this.N;return this.N=void 0,e}jt(e){this.Dt(e.originalEvent,"deadclick")}Mt(){this.Ft&&clearInterval(this.Ft),this.Ft=(function(e){return e?.visibilityState==="visible"})(H)?setInterval(this.Lt.bind(this),this.flushIntervalMilliseconds):null}Ot(){E&&H&&(this.Nt=this.Lt.bind(this),je(E,"beforeunload",this.Nt),this.Ut=e=>this.Dt(e||E?.event),je(H,"click",this.Ut,{capture:!0}),this.zt=e=>this.Ht(e||E?.event),je(H,"mousemove",this.zt,{capture:!0}),this.Bt=new mc(this.instance,p2,this.jt.bind(this)),this.Bt.startIfEnabled(),this.qt=this.Mt.bind(this),je(H,"visibilitychange",this.qt),this.P=!0)}At(){var e;E&&H&&(this.Nt&&E.removeEventListener("beforeunload",this.Nt),this.Ut&&H.removeEventListener("click",this.Ut,{capture:!0}),this.zt&&H.removeEventListener("mousemove",this.zt,{capture:!0}),this.qt&&H.removeEventListener("visibilitychange",this.qt),clearTimeout(this.Wt),(e=this.Bt)==null||e.stop(),this.P=!1)}Gt(e,t){var n=this.instance.scrollManager.scrollY(),i=this.instance.scrollManager.scrollX(),s=this.instance.scrollManager.scrollElement(),o=(function(a,l,c){for(var u=a;u&&Rc(u)&&!cn(u,"body");){if(u===c)return!1;if(he(l,E?.getComputedStyle(u).position))return!0;u=b0(u)}return!1})(v0(e),["fixed","sticky"],s);return{x:e.clientX+(o?0:i),y:e.clientY+(o?0:n),target_fixed:o,type:t}}Dt(e,t){var n;if(t===void 0&&(t="click"),!c_(e.target)&&w_(e)){var i=this.Gt(e,t);(n=this.rageclicks)!=null&&n.isRageClick(e.clientX,e.clientY,new Date().getTime())&&this.Vt(W({},i,{type:"rageclick"})),this.Vt(i)}}Ht(e){!c_(e.target)&&w_(e)&&(clearTimeout(this.Wt),this.Wt=setTimeout((()=>{this.Vt(this.Gt(e,"mousemove"))}),500))}Vt(e){if(E){var t=E.location.href,n=this.instance.config.mask_personal_data_properties,i=this.instance.config.custom_personal_data_properties,s=n?qi([],Zi,i||[]):[],o=na(t,s,ia);this.N=this.N||{},this.N[o]||(this.N[o]=[]),this.N[o].push(e)}}Lt(){this.N&&!Hi(this.N)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},vc=class{constructor(e){this.Jt=(t,n,i)=>{i&&(i.noSessionId||i.activityTimeout||i.sessionPastMaximumLength)&&(j.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:t,changeReason:i}),this.Kt=void 0,this._instance.scrollManager.resetContext())},this._instance=e,this.Yt()}Yt(){var e;this.Xt=(e=this._instance.sessionManager)==null?void 0:e.onSessionId(this.Jt)}destroy(){var e;(e=this.Xt)==null||e.call(this),this.Xt=void 0}doPageView(e,t){var n,i=this.Qt(e,t);return this.Kt={pathname:(n=E?.location.pathname)!==null&&n!==void 0?n:"",pageViewId:t,timestamp:e},this._instance.scrollManager.resetContext(),i}doPageLeave(e){var t;return this.Qt(e,(t=this.Kt)==null?void 0:t.pageViewId)}doEvent(){var e;return{$pageview_id:(e=this.Kt)==null?void 0:e.pageViewId}}Qt(e,t){var n=this.Kt;if(!n)return{$pageview_id:t};var i={$pageview_id:t,$prev_pageview_id:n.pageViewId},s=this._instance.scrollManager.getContext();if(s&&!this._instance.config.disable_scroll_properties){var{maxScrollHeight:o,lastScrollY:a,maxScrollY:l,maxContentHeight:c,lastContentY:u,maxContentY:p}=s;if(!(B(o)||B(a)||B(l)||B(c)||B(u)||B(p))){o=Math.ceil(o),a=Math.ceil(a),l=Math.ceil(l),c=Math.ceil(c),u=Math.ceil(u),p=Math.ceil(p);var h=o<=1?1:cr(a/o,0,1,j),f=o<=1?1:cr(l/o,0,1,j),v=c<=1?1:cr(u/c,0,1,j),g=c<=1?1:cr(p/c,0,1,j);i=Fe(i,{$prev_pageview_last_scroll:a,$prev_pageview_last_scroll_percentage:h,$prev_pageview_max_scroll:l,$prev_pageview_max_scroll_percentage:f,$prev_pageview_last_content:u,$prev_pageview_last_content_percentage:v,$prev_pageview_max_content:p,$prev_pageview_max_content_percentage:g})}}return n.pathname&&(i.$prev_pageview_pathname=n.pathname),n.timestamp&&(i.$prev_pageview_duration=(e.getTime()-n.timestamp.getTime())/1e3),i}};var Mr=(function(r){return r.GZipJS="gzip-js",r.Base64="base64",r})({}),Mt=Uint8Array,ut=Uint16Array,zi=Uint32Array,Ef=new Mt([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]),Cf=new Mt([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]),S_=new Mt([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),L0=function(r,e){for(var t=new ut(31),n=0;n<31;++n)t[n]=e+=1<<r[n-1];var i=new zi(t[30]);for(n=1;n<30;++n)for(var s=t[n];s<t[n+1];++s)i[s]=s-t[n]<<5|n;return[t,i]},F0=L0(Ef,2),w2=F0[0],Uh=F0[1];w2[28]=258,Uh[258]=28;for(Wh=L0(Cf,0)[1],yc=new ut(32768),Re=0;Re<32768;++Re)rn=(43690&Re)>>>1|(21845&Re)<<1,rn=(61680&(rn=(52428&rn)>>>2|(13107&rn)<<2))>>>4|(3855&rn)<<4,yc[Re]=((65280&rn)>>>8|(255&rn)<<8)>>>1;var rn,Wh,yc,Re,Zo=function(r,e,t){for(var n=r.length,i=0,s=new ut(e);i<n;++i)++s[r[i]-1];var o,a=new ut(e);for(i=0;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;if(t){o=new ut(1<<e);var l=15-e;for(i=0;i<n;++i)if(r[i])for(var c=i<<4|r[i],u=e-r[i],p=a[r[i]-1]++<<u,h=p|(1<<u)-1;p<=h;++p)o[yc[p]>>>l]=c}else for(o=new ut(n),i=0;i<n;++i)o[i]=yc[a[r[i]-1]++]>>>15-r[i];return o},ti=new Mt(288);for(Re=0;Re<144;++Re)ti[Re]=8;for(Re=144;Re<256;++Re)ti[Re]=9;for(Re=256;Re<280;++Re)ti[Re]=7;for(Re=280;Re<288;++Re)ti[Re]=8;var bc=new Mt(32);for(Re=0;Re<32;++Re)bc[Re]=5;var S2=Zo(ti,9,0),k2=Zo(bc,5,0),D0=function(r){return(r/8>>0)+(7&r&&1)},H0=function(r,e,t){(t==null||t>r.length)&&(t=r.length);var n=new(r instanceof ut?ut:r instanceof zi?zi:Mt)(t-e);return n.set(r.subarray(e,t)),n},Ar=function(r,e,t){t<<=7&e;var n=e/8>>0;r[n]|=t,r[n+1]|=t>>>8},Oo=function(r,e,t){t<<=7&e;var n=e/8>>0;r[n]|=t,r[n+1]|=t>>>8,r[n+2]|=t>>>16},Gp=function(r,e){for(var t=[],n=0;n<r.length;++n)r[n]&&t.push({s:n,f:r[n]});var i=t.length,s=t.slice();if(!i)return[new Mt(0),0];if(i==1){var o=new Mt(t[0].s+1);return o[t[0].s]=1,[o,1]}t.sort((function(w,C){return w.f-C.f})),t.push({s:-1,f:25001});var a=t[0],l=t[1],c=0,u=1,p=2;for(t[0]={s:-1,f:a.f+l.f,l:a,r:l};u!=i-1;)a=t[t[c].f<t[p].f?c++:p++],l=t[c!=u&&t[c].f<t[p].f?c++:p++],t[u++]={s:-1,f:a.f+l.f,l:a,r:l};var h=s[0].s;for(n=1;n<i;++n)s[n].s>h&&(h=s[n].s);var f=new ut(h+1),v=zh(t[u-1],f,0);if(v>e){n=0;var g=0,m=v-e,y=1<<m;for(s.sort((function(w,C){return f[C.s]-f[w.s]||w.f-C.f}));n<i;++n){var x=s[n].s;if(!(f[x]>e))break;g+=y-(1<<v-f[x]),f[x]=e}for(g>>>=m;g>0;){var S=s[n].s;f[S]<e?g-=1<<e-f[S]++-1:++n}for(;n>=0&&g;--n){var b=s[n].s;f[b]==e&&(--f[b],++g)}v=e}return[new Mt(f),v]},zh=function(r,e,t){return r.s==-1?Math.max(zh(r.l,e,t+1),zh(r.r,e,t+1)):e[r.s]=t},k_=function(r){for(var e=r.length;e&&!r[--e];);for(var t=new ut(++e),n=0,i=r[0],s=1,o=function(l){t[n++]=l},a=1;a<=e;++a)if(r[a]==i&&a!=e)++s;else{if(!i&&s>2){for(;s>138;s-=138)o(32754);s>2&&(o(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(o(i),--s;s>6;s-=6)o(8304);s>2&&(o(s-3<<5|8208),s=0)}for(;s--;)o(i);s=1,i=r[a]}return[t.subarray(0,n),e]},Po=function(r,e){for(var t=0,n=0;n<e.length;++n)t+=r[n]*e[n];return t},qh=function(r,e,t){var n=t.length,i=D0(e+2);r[i]=255&n,r[i+1]=n>>>8,r[i+2]=255^r[i],r[i+3]=255^r[i+1];for(var s=0;s<n;++s)r[i+s+4]=t[s];return 8*(i+4+n)},E_=function(r,e,t,n,i,s,o,a,l,c,u){Ar(e,u++,t),++i[256];for(var p=Gp(i,15),h=p[0],f=p[1],v=Gp(s,15),g=v[0],m=v[1],y=k_(h),x=y[0],S=y[1],b=k_(g),w=b[0],C=b[1],_=new ut(19),A=0;A<x.length;++A)_[31&x[A]]++;for(A=0;A<w.length;++A)_[31&w[A]]++;for(var $=Gp(_,7),T=$[0],O=$[1],Y=19;Y>4&&!T[S_[Y-1]];--Y);var F,N,G,K,le=c+5<<3,U=Po(i,ti)+Po(s,bc)+o,Q=Po(i,h)+Po(s,g)+o+14+3*Y+Po(_,T)+(2*_[16]+3*_[17]+7*_[18]);if(le<=U&&le<=Q)return qh(e,u,r.subarray(l,l+c));if(Ar(e,u,1+(Q<U)),u+=2,Q<U){F=Zo(h,f,0),N=h,G=Zo(g,m,0),K=g;var De=Zo(T,O,0);for(Ar(e,u,S-257),Ar(e,u+5,C-1),Ar(e,u+10,Y-4),u+=14,A=0;A<Y;++A)Ar(e,u+3*A,T[S_[A]]);u+=3*Y;for(var V=[x,w],ee=0;ee<2;++ee){var te=V[ee];for(A=0;A<te.length;++A){var de=31&te[A];Ar(e,u,De[de]),u+=T[de],de>15&&(Ar(e,u,te[A]>>>5&127),u+=te[A]>>>12)}}}else F=S2,N=ti,G=k2,K=bc;for(A=0;A<a;++A)if(n[A]>255){de=n[A]>>>18&31,Oo(e,u,F[de+257]),u+=N[de+257],de>7&&(Ar(e,u,n[A]>>>23&31),u+=Ef[de]);var be=31&n[A];Oo(e,u,G[be]),u+=K[be],be>3&&(Oo(e,u,n[A]>>>5&8191),u+=Cf[be])}else Oo(e,u,F[n[A]]),u+=N[n[A]];return Oo(e,u,F[256]),u+N[256]},E2=new zi([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),C2=(function(){for(var r=new zi(256),e=0;e<256;++e){for(var t=e,n=9;--n;)t=(1&t&&3988292384)^t>>>1;r[e]=t}return r})(),A2=function(r,e,t,n,i){return(function(s,o,a,l,c,u){var p=s.length,h=new Mt(l+p+5*(1+Math.floor(p/7e3))+c),f=h.subarray(l,h.length-c),v=0;if(!o||p<8)for(var g=0;g<=p;g+=65535){var m=g+65535;m<p?v=qh(f,v,s.subarray(g,m)):(f[g]=u,v=qh(f,v,s.subarray(g,p)))}else{for(var y=E2[o-1],x=y>>>13,S=8191&y,b=(1<<a)-1,w=new ut(32768),C=new ut(b+1),_=Math.ceil(a/3),A=2*_,$=function(Tc){return(s[Tc]^s[Tc+1]<<_^s[Tc+2]<<A)&b},T=new zi(25e3),O=new ut(288),Y=new ut(32),F=0,N=0,G=(g=0,0),K=0,le=0;g<p;++g){var U=$(g),Q=32767&g,De=C[U];if(w[Q]=De,C[U]=Q,K<=g){var V=p-g;if((F>7e3||G>24576)&&V>423){v=E_(s,f,0,T,O,Y,N,G,le,g-le,v),G=F=N=0,le=g;for(var ee=0;ee<286;++ee)O[ee]=0;for(ee=0;ee<30;++ee)Y[ee]=0}var te=2,de=0,be=S,ge=Q-De&32767;if(V>2&&U==$(g-ge))for(var Ie=Math.min(x,V)-1,dt=Math.min(32767,g),zt=Math.min(258,V);ge<=dt&&--be&&Q!=De;){if(s[g+te]==s[g+te-ge]){for(var qt=0;qt<zt&&s[g+qt]==s[g+qt-ge];++qt);if(qt>te){if(te=qt,de=ge,qt>Ie)break;var Gi=Math.min(ge,qt-2),Ne=0;for(ee=0;ee<Gi;++ee){var Ki=g-ge+ee+32768&32767,Of=Ki-w[Ki]+32768&32767;Of>Ne&&(Ne=Of,De=Ki)}}}ge+=(Q=De)-(De=w[Q])+32768&32767}if(de){T[G++]=268435456|Uh[te]<<18|Wh[de];var Pf=31&Uh[te],Nf=31&Wh[de];N+=Ef[Pf]+Cf[Nf],++O[257+Pf],++Y[Nf],K=g+te,++F}else T[G++]=s[g],++O[s[g]]}}v=E_(s,f,u,T,O,Y,N,G,le,g-le,v)}return H0(h,0,l+D0(v)+c)})(r,e.level==null?6:e.level,e.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(r.length)))):12+e.mem,t,n,!0)},Kp=function(r,e,t){for(;t;++e)r[e]=t,t>>>=8};function R2(r,e){e===void 0&&(e={});var t=(function(){var a=4294967295;return{p:function(l){for(var c=a,u=0;u<l.length;++u)c=C2[255&c^l[u]]^c>>>8;a=c},d:function(){return 4294967295^a}}})(),n=r.length;t.p(r);var i,s=A2(r,e,10+((i=e).filename&&i.filename.length+1||0),8),o=s.length;return(function(a,l){var c=l.filename;if(a[0]=31,a[1]=139,a[2]=8,a[8]=l.level<2?4:l.level==9?2:0,a[9]=3,l.mtime!=0&&Kp(a,4,Math.floor(new Date(l.mtime||Date.now())/1e3)),c){a[3]=8;for(var u=0;u<=c.length;++u)a[u+10]=c.charCodeAt(u)}})(s,e),Kp(s,o-8,t.d()),Kp(s,o-4,n),s}var T2=function(r){var e,t,n,i,s="";for(e=t=0,n=(r=(r+"").replace(/\r\n/g,`
1062
+ `,t=document.createElement("style");t.setAttribute("data-syntro","base-overlay"),t.textContent=e,r.appendChild(t),ab=!0}var sp=async(r={})=>{if(typeof window>"u"||typeof document>"u")throw new Error("SmartCanvas can only be created in a browser-like environment");let e=null;if(r.antiFlicker){let m=typeof r.antiFlicker=="object"?r.antiFlicker:{};e=nb(m)}let t=null,n=null,i=null,{runtime:s}=r;async function o(m){!s?.actions||m.length===0||(i?.isApplied()&&await i.revertAll(),i=await s.actions.applyBatch(m))}async function a(){i?.isApplied()&&(await i.revertAll(),i=null)}if(r.fetcher)try{n=r.fetcher,console.log("[SmartCanvas] Fetching initial config...");let m=await r.fetcher();t=m,console.log("[SmartCanvas] Config fetched:",`tiles=${m.tiles?.length??0},`,`actions=${m.actions?.length??0},`,`theme=${m.theme?.mode??"default"}`),m.actions?.length&&console.log("[SmartCanvas] Actions to apply:",m.actions.map((y,x)=>`[${x}] ${y.kind}${y.anchorId?` anchor="${y.anchorId.selector}"`:""}${y.label?` "${y.label}"`:""}`).join(", ")),m.actions&&m.actions.length>0&&s?.actions&&(await o(m.actions),console.log("[SmartCanvas] Initial actions applied successfully")),m.tiles&&s?.accumulator&&Ci(m.tiles,s.accumulator,m.actions)}catch(m){console.error("[SmartCanvas] Error fetching/applying initial config:",m)}e&&e();let l=Al();vl();let c=document.createElement("smart-canvas");if(r.tokens)for(let[m,y]of Object.entries(r.tokens))c.style.setProperty(m,y);let u=r.integrations?.experiments,p=r.integrations?.telemetry,h=r.fetcher??Ei({configUri:r.configUri,experiments:u,featureKey:r.configUriFeatureKey,credentials:r.fetchCredentials});n||(n=h);let f={fetcher:h,configUri:r.configUri,configUriFeatureKey:r.configUriFeatureKey,fetchCredentials:r.fetchCredentials,experiments:u,telemetry:p,runtime:s,initialBatchHandle:i,initialBatchActions:i?t?.actions??[]:void 0,workspaceTheme:r.workspaceTheme};c.mountLitApp(f),r.defaultOpen&&c.open();let v=()=>{let m=r.target??document.body;if(m){m.appendChild(c);let y=c.getOverlayContainer();y&&lb(y)}};document.body?v():document.addEventListener("DOMContentLoaded",v,{once:!0}),(l||r.editorUrl)&&(console.log(`[SmartCanvas] Loading editor SDK for ${l??"config"} mode`),ob(r.editorUrl).catch(console.error));let g={el:c,open:()=>c.open(),close:()=>c.close(),destroy:()=>{a(),c.remove()},setTokens:m=>{for(let[y,x]of Object.entries(m))c.style.setProperty(y,x)},getConfig:async()=>{if(n)try{let m=await n();return t=m,m}catch(m){console.error("[SmartCanvas] Error fetching config:",m)}return t??{tiles:[],actions:[],fetchedAt:""}},setEnabled:async m=>{m?t&&await o(t.actions):await a()},setOverrideFetcher:m=>{n=m,c.setOverrideFetcher(m),s?.accumulator&&m().then(y=>{y?.tiles&&Ci(y.tiles,s.accumulator,y.actions)}).catch(()=>{})},registerTelemetryProperties:m=>{p?.register?.(m)},getSessionId:()=>p?.getSessionId?.(),startSessionRecording:()=>{p?.startSessionRecording?.()},track:(m,y)=>p?.track?(p.track(m,y),!0):!1,previewNotification:m=>c.previewNotification(m),runtime:s};if(typeof window<"u"){let m=window.SynOS;m&&(m.handle=g)}return g};typeof window<"u"&&(window.SmartCanvas={async create(r){return sp(r)}});var op="syn_";function mo(r){if(!r.startsWith(op))throw new Error("Invalid Syntro token: must start with 'syn_'");let t=r.slice(op.length).replace(/-/g,"+").replace(/_/g,"/"),n=atob(t),i=JSON.parse(n);if(i.v!==1)throw new Error(`Unsupported token version: ${i.v}`);return i}function ap(r){let e=JSON.stringify(r),t=btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"");return op+t}function It(r){if(typeof process<"u"&&process.env)return process.env[r];if(typeof import.meta.env<"u"&&import.meta.env)return import.meta.env[r]}var db="syntro_segment_attributes";function pb(){if(typeof window>"u")return{};try{let r=localStorage.getItem(db);if(r){let e=JSON.parse(r);return Z("Syntro Bootstrap","Loaded cached segment attributes:",e),e}}catch(r){Ze("Syntro Bootstrap","Failed to load cached segment attributes:",r)}return{}}function hb(r){if(!(typeof window>"u"))try{localStorage.setItem(db,JSON.stringify(r)),Z("Syntro Bootstrap","Cached segment attributes:",r)}catch(e){Ze("Syntro Bootstrap","Failed to cache segment attributes:",e)}}function fb(r){if(!r)return{};let e={};for(let[t,n]of Object.entries(r))t.startsWith("in_segment_")&&(e[t]=n===!0);return e}function lp(){if(typeof window>"u")return{};let r={};try{let e=new URLSearchParams(window.location.search);for(let t of["utm_source","utm_medium","utm_campaign","utm_content","utm_term"]){let n=e.get(t);n&&(r[t]=n)}}catch{}try{navigator.language&&(r.browser_language=navigator.language),navigator.languages?.length&&(r.browser_languages=[...navigator.languages])}catch{}try{let e=window.innerWidth;r.device_type=e<768?"mobile":e<1024?"tablet":"desktop"}catch{}try{if(document.referrer){r.referrer=document.referrer;try{r.referrer_hostname=new URL(document.referrer).hostname}catch{}}}catch{}try{let e=navigator.userAgent;e.includes("Edg/")?r.browser="Edge":e.includes("OPR/")||e.includes("Opera")?r.browser="Opera":e.includes("Chrome/")&&!e.includes("Chromium")?r.browser="Chrome":e.includes("Safari/")&&!e.includes("Chrome")?r.browser="Safari":e.includes("Firefox/")&&(r.browser="Firefox"),e.includes("Windows")?r.os="Windows":e.includes("iPhone")||e.includes("iPad")?r.os="iOS":e.includes("Mac OS X")||e.includes("Macintosh")?r.os="macOS":e.includes("Android")?r.os="Android":e.includes("Linux")&&(r.os="Linux")}catch{}try{r.page_url=window.location.href,r.page_path=window.location.pathname,r.page_host=window.location.hostname,window.location.search&&(r.page_query=window.location.search)}catch{}try{let e=window.Telegram?.WebApp;e?(r.surface_type="telegram",r.surface_host=e.platform||"unknown"):(r.surface_type="web",r.surface_host="web")}catch{r.surface_type="web",r.surface_host="web"}try{let e=r.surface_type;e==="telegram"||e==="mcp-app"?r.surface="personal_agent":r.device_type==="mobile"?r.surface="mobile":r.surface="desktop"}catch{r.surface="desktop"}return r}var ub="syntro_geo",gb="https://geo.syntrologie.com";async function cp(r){if(typeof window>"u")return{};try{let e=localStorage.getItem(ub);if(e){let t=JSON.parse(e);return Z("Syntro Bootstrap","Geo: using cached data:",t),t}}catch{}try{let e=await fetch(r,{signal:AbortSignal.timeout(2e3)});if(e.ok){let t=await e.json(),n={};for(let[i,s]of Object.entries(t))typeof s=="string"&&s&&(n[i]=s);try{localStorage.setItem(ub,JSON.stringify(n))}catch{}return Z("Syntro Bootstrap","Geo: fetched from worker:",n),n}}catch{}return{}}var up=null;if(typeof document<"u")try{let r=document.currentScript instanceof HTMLScriptElement?document.currentScript.src:null;if(r){let e=new URL(r),t=e.pathname.replace(/\/[^/]*$/,"");up=`${e.origin}${t}`}}catch{up=null}function mb(){return up}var vb=["fbclid","ttclid","gclid","gbraid","wbraid","msclkid","twclid","li_fat_id","epik","ScCid","yclid","_kx","mc_eid","mc_cid"];function dp(r){if(typeof window>"u"||!r.setPersonPropertiesOnce)return;let e=new URLSearchParams(window.location.search),t={};for(let n of vb){let i=e.get(n);i&&(t[`$initial_${n}`]=i)}Object.keys(t).length>0&&r.setPersonPropertiesOnce(t)}var OC=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,LC=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,NC=[/@yopmail\.com$/i,/@mailinator\.com$/i,/@guerrillamail\.(com|info|net|org|biz)$/i,/@10minutemail\.com$/i,/^test@/i,/^noreply@/i,/^no-reply@/i];function Tl(r){return r?LC.test(r):!1}function yb(r){return NC.some(e=>e.test(r))}function FC(r){if(r.type==="email")return!0;let e=(r.name||"").toLowerCase(),t=(r.id||"").toLowerCase();return!!(/email/.test(e)||/email/.test(t))}function DC(r){return r.closest("[data-syntro-no-identify]")!==null}function HC(r){return r?OC.test(r):!0}function pp(r,e){if(typeof document>"u")return()=>{};if(!r.identify&&!r.alias)return()=>{};let t=new Set,n=s=>{let o=r.getDistinctId?.();if(o===s){t.add(s);return}HC(o)?r.identify?.(s,{email:s}):r.alias?.(s),t.add(s)},i=s=>{let o=s.target;if(!(o instanceof HTMLInputElement)||DC(o)||!FC(o))return;let a=(o.value??"").trim().toLowerCase();if(!Tl(a)||yb(a)||t.has(a))return;if(!e){n(a);return}let l=e.getStatus();if(l==="granted"){n(a);return}l!=="denied"&&e.resolvePending().then(c=>{c==="granted"&&n(a)})};return document.addEventListener("change",i,!0),()=>{document.removeEventListener("change",i,!0),t.clear()}}var bb="_syu",BC=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function VC(r){return r?BC.test(r):!0}function hp(r,e){if(typeof window>"u"||!r.identify&&!r.alias)return;let t=new URLSearchParams(window.location.search).get(bb);if(!t)return;let n=t.trim();if(!n)return;let i=()=>{let a=r.getDistinctId?.();if(a===n)return;let l=Tl(n)?{email:n}:void 0;VC(a)?r.identify?.(n,l):r.alias?.(n)};if(!e){i();return}if(e.getStatus()==="granted"){i();return}let s=!1,o=e.subscribe(a=>{s||a==="granted"&&(s=!0,o(),i())})}var UC=["utm_source","utm_medium","utm_campaign","utm_content","utm_term"];function jC(r){return r.is_eu==="true"||r.country_code==="GB"||r.country_code==="CH"||!r.is_eu&&!r.country_code}function WC(r){if(!r)return"";try{return new URL(r).hostname}catch{return""}}function fp(){return typeof window>"u"?"":`${window.location.origin}${window.location.pathname}`}function gp(r,e){if(typeof window>"u"||typeof document>"u"||!r.setPersonPropertiesOnce)return;let t=document.referrer||"",n=new URLSearchParams(window.location.search),i={$initial_pathname:window.location.pathname,$initial_referrer:t,$initial_referring_domain:WC(t)};for(let s of UC){let o=n.get(s);o&&(i[`$initial_${s}`]=o)}if(r.setPersonPropertiesOnce(i),!e){r.setPersonPropertiesOnce({$initial_url:fp()});return}e.then(s=>{let o=jC(s)?fp():window.location.href;r.setPersonPropertiesOnce?.({$initial_url:o})}).catch(()=>{r.setPersonPropertiesOnce?.({$initial_url:fp()})})}var _b=new Set(["email","telephone","streetAddress","addressLocality","addressRegion","postalCode","givenName","familyName"]),xb=500,mp=3;function Rl(r){if(Array.isArray(r))return r.map(Rl);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))_b.has(t)||(e[t]=Rl(n));return e}return r}function Il(r){if(Array.isArray(r))return r.map(Il);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))if(!(t==="description"&&typeof n=="string"&&n.length>xb)){if(t==="image"&&Array.isArray(n)&&n.length>mp){e[t]=n.slice(0,mp);continue}e[t]=Il(n)}return e}return r}function zC(){return typeof document>"u"?[]:Array.from(document.querySelectorAll('script[type="application/ld+json"]')).filter(r=>!r.hasAttribute("data-syntro-no-jsonld")).map(r=>{try{return JSON.parse(r.textContent??"")}catch{return null}}).filter(r=>r!==null)}function vp(r){if(!r.register)return;let e=zC().map(Il).map(Rl);e.length!==0&&r.register({json_ld:e})}function wb(r,e,t={}){gp(r,t.geoPromise),dp(r),vp(r),hp(r,e);let n=pp(r,e);return()=>{n()}}var Sb="app:",qC="syntro:",ZC=/^[a-z][a-z0-9_]*$/;function yp(r){if(!r)return{valid:!1,reason:"Event name cannot be empty"};if(r.startsWith(qC))return{valid:!1,reason:'"syntro:" prefix is reserved for internal SDK events'};if(!r.startsWith(Sb))return{valid:!1,reason:`Custom events must start with "app:" prefix. Got: "${r}"`};let e=r.slice(Sb.length).split(":");if(e.length<2)return{valid:!1,reason:`Event name must have at least 2 segments after "app:" (app:{category}:{action}). Got: "${r}"`};for(let t of e)if(!ZC.test(t))return{valid:!1,reason:`Segment "${t}" must be lowercase alphanumeric + underscores. Got: "${r}"`};return{valid:!0}}function GC(r){return typeof r=="string"||typeof r=="number"||typeof r=="boolean"||r===null}function kb(r,e,t=0){if(t>=e)return!1;for(let n of Object.values(r))if(n!==null&&typeof n=="object"&&!Array.isArray(n)&&!kb(n,e,t+1))return!1;return!0}function bp(r){if(r===void 0)return{valid:!0};if(r===null||typeof r!="object"||Array.isArray(r))return{valid:!1,reason:"Props must be a plain object"};if(!kb(r,2))return{valid:!1,reason:"Props nesting depth exceeds 2 levels"};let e=[];for(let[t,n]of Object.entries(r))n!==null&&typeof n=="object"||GC(n)||e.push(t);return e.length>0?{valid:!0,stripped:e}:{valid:!0}}function $l(r,e){return e?!(e.names&&e.names.length>0&&!e.names.includes(r.name)||e.patterns&&e.patterns.length>0&&!e.patterns.some(n=>{try{return new RegExp(n).test(r.name)}catch{return!1}})||e.sources&&e.sources.length>0&&!e.sources.includes(r.source)):!0}var Ml=class{constructor(e={}){this.subscriptions=new Set;this.history=[];this.maxHistorySize=e.maxHistorySize??100,this.debug=e.debug??!1,this.emitHistory=e.history??null,this.posthogCapture=e.posthogCapture??null,this.testMode=e.testMode??!1}subscribe(e,t){let n,i;typeof e=="function"?(n=void 0,i=e):(n=e,i=t);let s={filter:n,callback:i};return this.subscriptions.add(s),()=>{this.subscriptions.delete(s)}}publish(e,t,n="canvas"){let i={ts:Date.now(),name:e,source:n,props:t,schemaVersion:Ne};this.publishEvent(i)}publishEvent(e){this.history.push(e),this.history.length>this.maxHistorySize&&this.history.shift();for(let t of this.subscriptions)if($l(e,t.filter))try{t.callback(e)}catch(n){console.error("[EventBus] Subscriber error:",n)}}emit(e,t){let n=yp(e);if(!n.valid)return console.warn(`[EventBus] emit() rejected: ${n.reason}`),this.debug?{delivered:!1,matchedRules:[],posthogCaptured:!1,listenersNotified:0}:void 0;let i=bp(t);if(!i.valid)return console.warn(`[EventBus] emit() rejected props: ${i.reason}`),this.debug?{delivered:!1,matchedRules:[],posthogCaptured:!1,listenersNotified:0}:void 0;let s={ts:Date.now(),name:e,source:"custom",props:t,schemaVersion:Ne};this.history.push(s),this.history.length>this.maxHistorySize&&this.history.shift();let o=0;for(let l of this.subscriptions)if($l(s,l.filter))try{l.callback(s),o++}catch(c){console.error("[EventBus] Subscriber error:",c),o++}let a=!1;if(this.posthogCapture&&!this.testMode)try{this.posthogCapture(e,t),a=!0}catch(l){console.error("[EventBus] PostHog capture error:",l)}if(this.emitHistory&&this.emitHistory.record({name:e,props:t,source:"custom",timestamp:s.ts,matchedRules:[]}),this.debug)return console.debug("[EventBus] emit()",{name:e,props:t,listenersNotified:o,posthogCaptured:a}),{delivered:!0,matchedRules:[],posthogCaptured:a,listenersNotified:o}}setPosthogCapture(e){this.posthogCapture=e}getRecent(e,t){let n=this.history;return e&&(n=n.filter(i=>$l(i,e))),t&&t>0&&(n=n.slice(-t)),n}hasRecentEvent(e,t,n){let i=Date.now()-t;return this.history.some(s=>s.name===e&&s.ts>=i&&(n===void 0||s.source===n))}countRecentEvents(e,t){let n=this.history.filter(i=>$l(i,e));if(t!==void 0){let i=Date.now()-t;n=n.filter(s=>s.ts>=i)}return n.length}clearHistory(){this.history=[]}getSubscriberCount(){return this.subscriptions.size}};function vo(r={}){return new Ml(r)}var yo=class{constructor(e=100){this.entries=[];this.maxSize=e}record(e){this.entries.push(e),this.maxSize>0&&this.entries.length>this.maxSize&&this.entries.shift()}getAll(){return[...this.entries]}clear(){this.entries=[]}};var Cb={fetch:globalThis.fetch?globalThis.fetch.bind(globalThis):void 0,SubtleCrypto:globalThis.crypto?globalThis.crypto.subtle:void 0,EventSource:globalThis.EventSource};function Ab(){return Cb}function _p(r){let e=2166136261,t=r.length;for(let n=0;n<t;n++)e^=r.charCodeAt(n),e+=(e<<1)+(e<<4)+(e<<7)+(e<<8)+(e<<24);return e>>>0}function bo(r,e,t){return t===2?_p(_p(r+e)+"")%1e4/1e4:t===1?_p(e+r)%1e3/1e3:null}function KC(r){return r<=0?[]:new Array(r).fill(1/r)}function Pl(r,e){return r>=e[0]&&r<e[1]}function Tb(r,e){let t=bo("__"+e[0],r,1);return t===null?!1:t>=e[1]&&t<e[2]}function Rb(r,e){for(let t=0;t<e.length;t++)if(Pl(r,e[t]))return t;return-1}function wp(r){try{let e=r.replace(/([^\\])\//g,"$1\\/");return new RegExp(e)}catch(e){console.error(e);return}}function Ol(r,e){if(!e.length)return!1;let t=!1,n=!1;for(let i=0;i<e.length;i++){let s=JC(r,e[i].type,e[i].pattern);if(e[i].include===!1){if(s)return!1}else t=!0,s&&(n=!0)}return n||!t}function YC(r,e,t){try{let n=e.replace(/[*.+?^${}()|[\]\\]/g,"\\$&").replace(/_____/g,".*");return t&&(n="\\/?"+n.replace(/(^\/|\/$)/g,"")+"\\/?"),new RegExp("^"+n+"$","i").test(r)}catch{return!1}}function XC(r,e){try{let t=new URL(e.replace(/^([^:/?]*)\./i,"https://$1.").replace(/\*/g,"_____"),"https://_____"),n=[[r.host,t.host,!1],[r.pathname,t.pathname,!0]];return t.hash&&n.push([r.hash,t.hash,!1]),t.searchParams.forEach((i,s)=>{n.push([r.searchParams.get(s)||"",i,!1])}),!n.some(i=>!YC(i[0],i[1],i[2]))}catch{return!1}}function JC(r,e,t){try{let n=new URL(r,"https://_");if(e==="regex"){let i=wp(t);return i?i.test(n.href)||i.test(n.href.substring(n.origin.length)):!1}else if(e==="simple")return XC(n,t);return!1}catch{return!1}}function Ib(r,e,t){e=e===void 0?1:e,e<0?e=0:e>1&&(e=1);let n=KC(r);t=t||n,t.length!==r&&(t=n);let i=t.reduce((o,a)=>a+o,0);(i<.99||i>1.01)&&(t=n);let s=0;return t.map(o=>{let a=s;return s+=o,[a,a+e*o]})}function $b(r,e,t){if(!e)return null;let n=e.split("?")[1];if(!n)return null;let i=n.replace(/#.*/,"").split("&").map(s=>s.split("=",2)).filter(([s])=>s===r).map(([,s])=>parseInt(s));return i.length>0&&i[0]>=0&&i[0]<t?i[0]:null}function Mb(r){try{return r()}catch(e){return console.error(e),!1}}var xp=r=>Uint8Array.from(atob(r),e=>e.charCodeAt(0));async function Xn(r,e,t){if(e=e||"",t=t||globalThis.crypto&&globalThis.crypto.subtle||Cb.SubtleCrypto,!t)throw new Error("No SubtleCrypto implementation found");try{let n=await t.importKey("raw",xp(e),{name:"AES-CBC",length:128},!0,["encrypt","decrypt"]),[i,s]=r.split("."),o=await t.decrypt({name:"AES-CBC",iv:xp(i)},n,xp(s));return new TextDecoder().decode(o)}catch{throw new Error("Failed to decrypt")}}function _o(r){return typeof r=="string"?r:JSON.stringify(r)}function _t(r){typeof r=="number"&&(r=r+""),(!r||typeof r!="string")&&(r="0");let e=r.replace(/(^v|\+.*$)/g,"").split(/[-.]/);return e.length===3&&e.push("~"),e.map(t=>t.match(/^[0-9]+$/)?t.padStart(5," "):t).join("-")}function Pb(){let r;try{r="1.6.4"}catch{r=""}return r}function Ob(r,e){let t,n;try{t=new URL(r),n=new URL(e)}catch(i){return console.error(`Unable to merge query strings: ${i}`),e}return t.searchParams.forEach((i,s)=>{n.searchParams.has(s)||n.searchParams.set(s,i)}),n.toString()}function Eb(r){return typeof r=="object"&&r!==null}function Ll(r){return r.urlPatterns&&r.variations.some(e=>Eb(e)&&"urlRedirect"in e)?"redirect":r.variations.some(e=>Eb(e)&&(e.domMutations||"js"in e||"css"in e))?"visual":"unknown"}async function Nl(r,e){return new Promise(t=>{let n=!1,i,s=o=>{n||(n=!0,i&&clearTimeout(i),t(o||null))};e&&(i=setTimeout(()=>s(),e)),r.then(o=>s(o)).catch(()=>s())})}var it={staleTTL:1e3*60,maxAge:1e3*60*60*4,cacheKey:"gbFeaturesCache",backgroundSync:!0,maxEntries:10,disableIdleStreams:!1,idleStreamInterval:2e4,disableCache:!1},cr=Ab(),$i={fetchFeaturesCall:({host:r,clientKey:e,headers:t})=>cr.fetch(`${r}/api/features/${e}`,{headers:t}),fetchRemoteEvalCall:({host:r,clientKey:e,payload:t,headers:n})=>{let i={method:"POST",headers:{"Content-Type":"application/json",...n},body:JSON.stringify(t)};return cr.fetch(`${r}/api/eval/${e}`,i)},eventSourceCall:({host:r,clientKey:e,headers:t})=>t?new cr.EventSource(`${r}/sub/${e}`,{headers:t}):new cr.EventSource(`${r}/sub/${e}`),startIdleListener:()=>{let r;if(!(typeof window<"u"&&typeof document<"u"))return;let t=()=>{document.visibilityState==="visible"?(window.clearTimeout(r),tA()):document.visibilityState==="hidden"&&(r=window.setTimeout(eA,it.idleStreamInterval))};return document.addEventListener("visibilitychange",t),()=>document.removeEventListener("visibilitychange",t)},stopIdleListener:()=>{}};try{globalThis.localStorage&&(cr.localStorage=globalThis.localStorage)}catch{}var Mi=new Map,Lb=!1,Tr=new Map,Fl=new Map,Pi=new Map,Oi=new Set;function Fb(r){Object.assign(it,r),it.backgroundSync||Tp()}async function Db({instance:r,timeout:e,skipCache:t,allowStale:n,backgroundSync:i}){return i||(it.backgroundSync=!1),rA({instance:r,allowStale:n,timeout:e,skipCache:t})}function QC(r){let e=xo(r),t=Mi.get(e)||new Set;t.add(r),Mi.set(e,t)}function Hb(r){Mi.forEach(e=>e.delete(r))}function eA(){Pi.forEach(r=>{r&&(r.state="idle",Cp(r))})}function tA(){Pi.forEach(r=>{r&&r.state==="idle"&&Ap(r)})}async function Nb(){try{if(!cr.localStorage)return;await cr.localStorage.setItem(it.cacheKey,JSON.stringify(Array.from(Tr.entries())))}catch{}}async function rA({instance:r,allowStale:e,timeout:t,skipCache:n}){let i=xo(r),s=kp(r),o=new Date,a=new Date(o.getTime()-it.maxAge+it.staleTTL);await nA();let l=!it.disableCache&&!n?Tr.get(s):void 0;return l&&(e||l.staleAt>o)&&l.staleAt>a?(l.sse&&Oi.add(i),l.staleAt<o?Sp(r):Ep(r),{data:l.data,success:!0,source:"cache"}):await Nl(Sp(r),t)||{data:null,success:!1,source:"timeout",error:new Error("Timeout")}}function xo(r){let[e,t]=r.getApiInfo();return`${e}||${t}`}function kp(r){let e=xo(r);if(!("isRemoteEval"in r)||!r.isRemoteEval())return e;let t=r.getAttributes(),n=r.getCacheKeyAttributes()||Object.keys(r.getAttributes()),i={};n.forEach(a=>{i[a]=t[a]});let s=r.getForcedVariations(),o=r.getUrl();return`${e}||${JSON.stringify({ca:i,fv:s,url:o})}`}async function nA(){if(!Lb){Lb=!0;try{if(cr.localStorage){let r=await cr.localStorage.getItem(it.cacheKey);if(!it.disableCache&&r){let e=JSON.parse(r);e&&Array.isArray(e)&&e.forEach(([t,n])=>{Tr.set(t,{...n,staleAt:new Date(n.staleAt)})}),Bb()}}}catch{}if(!it.disableIdleStreams){let r=$i.startIdleListener();r&&($i.stopIdleListener=r)}}}function Bb(){let r=Array.from(Tr.entries()).map(([t,n])=>({key:t,staleAt:n.staleAt.getTime()})).sort((t,n)=>t.staleAt-n.staleAt),e=Math.min(Math.max(0,Tr.size-it.maxEntries),Tr.size);for(let t=0;t<e;t++)Tr.delete(r[t].key)}function Vb(r,e,t){let n=t.dateUpdated||"",i=new Date(Date.now()+it.staleTTL),s=it.disableCache?void 0:Tr.get(e);if(s&&n&&s.version===n){s.staleAt=i,Nb();return}it.disableCache||(Tr.set(e,{data:t,version:n,staleAt:i,sse:Oi.has(r)}),Bb()),Nb();let o=Mi.get(r);o&&o.forEach(a=>iA(a,t))}async function iA(r,e){await r.setPayload(e||r.getPayload())}async function Sp(r){let{apiHost:e,apiRequestHeaders:t}=r.getApiHosts(),n=r.getClientKey(),i="isRemoteEval"in r&&r.isRemoteEval(),s=xo(r),o=kp(r),a=Fl.get(o);return a||(a=(i?$i.fetchRemoteEvalCall({host:e,clientKey:n,payload:{attributes:r.getAttributes(),forcedVariations:r.getForcedVariations(),forcedFeatures:Array.from(r.getForcedFeatures().entries()),url:r.getUrl()},headers:t}):$i.fetchFeaturesCall({host:e,clientKey:n,headers:t})).then(c=>{if(!c.ok)throw new Error(`HTTP error: ${c.status}`);return c.headers.get("x-sse-support")==="enabled"&&Oi.add(s),c.json()}).then(c=>(Vb(s,o,c),Ep(r),Fl.delete(o),{data:c,success:!0,source:"network"})).catch(c=>(Fl.delete(o),{data:null,source:"error",success:!1,error:c})),Fl.set(o,a)),a}function Ep(r,e=!1){let t=xo(r),n=kp(r),{streamingHost:i,streamingHostRequestHeaders:s}=r.getApiHosts(),o=r.getClientKey();if(e&&Oi.add(t),it.backgroundSync&&Oi.has(t)&&cr.EventSource){if(Pi.has(t))return;let a={src:null,host:i,clientKey:o,headers:s,cb:l=>{try{if(l.type==="features-updated"){let c=Mi.get(t);c&&c.forEach(u=>{Sp(u)})}else if(l.type==="features"){let c=JSON.parse(l.data);Vb(t,n,c)}a.errors=0}catch{Ub(a)}},errors:0,state:"active"};Pi.set(t,a),Ap(a)}}function Ub(r){if(r.state!=="idle"&&(r.errors++,r.errors>3||r.src&&r.src.readyState===2)){let e=Math.pow(3,r.errors-3)*(1e3+Math.random()*1e3);Cp(r),setTimeout(()=>{["idle","active"].includes(r.state)||Ap(r)},Math.min(e,3e5))}}function Cp(r){r.src&&(r.src.onopen=null,r.src.onerror=null,r.src.close(),r.src=null,r.state==="active"&&(r.state="disabled"))}function Ap(r){r.src=$i.eventSourceCall({host:r.host,clientKey:r.clientKey,headers:r.headers}),r.state="active",r.src.addEventListener("features",r.cb),r.src.addEventListener("features-updated",r.cb),r.src.onerror=()=>Ub(r),r.src.onopen=()=>{r.errors=0}}function sA(r,e){Cp(r),Pi.delete(e)}function Tp(){Oi.clear(),Pi.forEach(sA),Mi.clear(),$i.stopIdleListener()}function Dl(r,e){if(e.streaming){if(!r.getClientKey())throw new Error("Must specify clientKey to enable streaming");e.payload&&Ep(r,!0),QC(r)}}var oA=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,$p={revert:function(){}},Ul=new Map,Mp=new Set;function aA(r){return r==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[r]}}function jl(r){var e=Ul.get(r);return e||(e={element:r,attributes:{}},Ul.set(r,e)),e}function Wl(r,e,t,n,i){var s=t(r),o={isDirty:!1,originalValue:s,virtualValue:s,mutations:[],el:r,_positionTimeout:null,observer:new MutationObserver(function(){if(!(e==="position"&&o._positionTimeout)){e==="position"&&(o._positionTimeout=setTimeout(function(){o._positionTimeout=null},1e3));var a=t(r);e==="position"&&a.parentNode===o.virtualValue.parentNode&&a.insertBeforeNode===o.virtualValue.insertBeforeNode||a!==o.virtualValue&&(o.originalValue=a,i(o))}}),mutationRunner:i,setValue:n,getCurrentValue:t};return e==="position"&&r.parentNode?o.observer.observe(r.parentNode,{childList:!0,subtree:!0,attributes:!1,characterData:!1}):o.observer.observe(r,aA(e)),o}function zl(r,e){var t=e.getCurrentValue(e.el);e.virtualValue=r,r&&typeof r!="string"?(!t||r.parentNode!==t.parentNode||r.insertBeforeNode!==t.insertBeforeNode)&&(e.isDirty=!0,jb()):r!==t&&(e.isDirty=!0,jb())}function lA(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),zl(wA(e),r)}function cA(r){var e=new Set(r.originalValue.split(/\s+/).filter(Boolean));r.mutations.forEach(function(t){return t.mutate(e)}),zl(Array.from(e).filter(Boolean).join(" "),r)}function uA(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),zl(e,r)}function dA(r){var e=r.parentSelector,t=r.insertBeforeSelector,n=document.querySelector(e);if(!n)return null;var i=t?document.querySelector(t):null;return t&&!i?null:{parentNode:n,insertBeforeNode:i}}function pA(r){var e=r.originalValue;r.mutations.forEach(function(t){var n=t.mutate(),i=dA(n);e=i||e}),zl(e,r)}var hA=function(e){return e.innerHTML},fA=function(e,t){return e.innerHTML=t};function zb(r){var e=jl(r);return e.html||(e.html=Wl(r,"html",hA,fA,lA)),e.html}var gA=function(e){return{parentNode:e.parentElement,insertBeforeNode:e.nextElementSibling}},mA=function(e,t){t.insertBeforeNode&&!t.parentNode.contains(t.insertBeforeNode)||t.parentNode.insertBefore(e,t.insertBeforeNode)};function qb(r){var e=jl(r);return e.position||(e.position=Wl(r,"position",gA,mA,pA)),e.position}var vA=function(e,t){return t?e.className=t:e.removeAttribute("class")},yA=function(e){return e.className};function Zb(r){var e=jl(r);return e.classes||(e.classes=Wl(r,"class",yA,vA,cA)),e.classes}var bA=function(e){return function(t){var n;return(n=t.getAttribute(e))!=null?n:null}},_A=function(e){return function(t,n){return n!==null?t.setAttribute(e,n):t.removeAttribute(e)}};function Gb(r,e){var t=jl(r);return t.attributes[e]||(t.attributes[e]=Wl(r,e,bA(e),_A(e),uA)),t.attributes[e]}function xA(r,e){var t=Ul.get(r);if(t)if(e==="html"){var n,i;(n=t.html)==null||(i=n.observer)==null||i.disconnect(),delete t.html}else if(e==="class"){var s,o;(s=t.classes)==null||(o=s.observer)==null||o.disconnect(),delete t.classes}else if(e==="position"){var a,l;(a=t.position)==null||(l=a.observer)==null||l.disconnect(),delete t.position}else{var c,u,p;(c=t.attributes)==null||(u=c[e])==null||(p=u.observer)==null||p.disconnect(),delete t.attributes[e]}}var Hl;function wA(r){return Hl||(Hl=document.createElement("div")),Hl.innerHTML=r,Hl.innerHTML}function Bl(r,e,t){if(t.isDirty){t.isDirty=!1;var n=t.virtualValue;t.mutations.length||xA(r,e),t.setValue(r,n)}}function SA(r,e){r.html&&Bl(e,"html",r.html),r.classes&&Bl(e,"class",r.classes),r.position&&Bl(e,"position",r.position),Object.keys(r.attributes).forEach(function(t){Bl(e,t,r.attributes[t])})}function jb(){Ul.forEach(SA)}function kA(r,e){var t=null;r.kind==="html"?t=zb(e):r.kind==="class"?t=Zb(e):r.kind==="attribute"?t=Gb(e,r.attribute):r.kind==="position"&&(t=qb(e)),t&&(t.mutations.push(r),t.mutationRunner(t))}function EA(r,e){var t=null;if(r.kind==="html"?t=zb(e):r.kind==="class"?t=Zb(e):r.kind==="attribute"?t=Gb(e,r.attribute):r.kind==="position"&&(t=qb(e)),!!t){var n=t.mutations.indexOf(r);n!==-1&&t.mutations.splice(n,1),t.mutationRunner(t)}}function Kb(r){if(!(r.kind==="position"&&r.elements.size===1)){var e=new Set(r.elements),t=document.querySelectorAll(r.selector);t.forEach(function(n){e.has(n)||(r.elements.add(n),kA(r,n))})}}function CA(r){r.elements.forEach(function(e){return EA(r,e)}),r.elements.clear(),Mp.delete(r)}function Wb(){Mp.forEach(Kb)}var Rp;function AA(){typeof document>"u"||(Rp||(Rp=new MutationObserver(function(){Wb()})),Wb(),Rp.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}AA();function ql(r){return typeof document>"u"?$p:(Mp.add(r),Kb(r),{revert:function(){CA(r)}})}function Ip(r,e){return ql({kind:"html",elements:new Set,mutate:e,selector:r})}function Yb(r,e){return ql({kind:"position",elements:new Set,mutate:e,selector:r})}function wo(r,e){return ql({kind:"class",elements:new Set,mutate:e,selector:r})}function Vl(r,e,t){return oA.test(e)?e==="class"||e==="className"?wo(r,function(n){var i=t(Array.from(n).join(" "));n.clear(),i&&i.split(/\s+/g).filter(Boolean).forEach(function(s){return n.add(s)})}):ql({kind:"attribute",attribute:e,elements:new Set,mutate:t,selector:r}):$p}function TA(r){var e=r.selector,t=r.action,n=r.value,i=r.attribute,s=r.parentSelector,o=r.insertBeforeSelector;if(i==="html"){if(t==="append")return Ip(e,function(a){return a+(n??"")});if(t==="set")return Ip(e,function(){return n??""})}else if(i==="class"){if(t==="append")return wo(e,function(a){n&&a.add(n)});if(t==="remove")return wo(e,function(a){n&&a.delete(n)});if(t==="set")return wo(e,function(a){a.clear(),n&&a.add(n)})}else if(i==="position"){if(t==="set"&&s)return Yb(e,function(){return{insertBeforeSelector:o,parentSelector:s}})}else{if(t==="append")return Vl(e,i,function(a){return a!==null?a+(n??""):n??""});if(t==="set")return Vl(e,i,function(){return n??""});if(t==="remove")return Vl(e,i,function(){return null})}return $p}var RA={html:Ip,classes:wo,attribute:Vl,position:Yb,declarative:TA},Xb=RA;var Pp={};function tn(r,e,t){t=t||{};for(let[n,i]of Object.entries(e))switch(n){case"$or":if(!e_(r,i,t))return!1;break;case"$nor":if(e_(r,i,t))return!1;break;case"$and":if(!OA(r,i,t))return!1;break;case"$not":if(tn(r,i,t))return!1;break;default:if(!So(i,IA(r,n),t))return!1}return!0}function IA(r,e){let t=e.split("."),n=r;for(let i=0;i<t.length;i++)if(n&&typeof n=="object"&&t[i]in n)n=n[t[i]];else return null;return n}function Jb(r,e=!1){let t=`${r}${e?"/i":""}`;return Pp[t]||(Pp[t]=new RegExp(r.replace(/([^\\])\//g,"$1\\/"),e?"i":void 0)),Pp[t]}function So(r,e,t,n=!1){if(typeof r=="string")return n?String(e).toLowerCase()===r.toLowerCase():e+""===r;if(typeof r=="number")return e*1===r;if(typeof r=="boolean")return e!==null&&!!e===r;if(r===null)return e===null;if(Array.isArray(r)||!t_(r))return JSON.stringify(e)===JSON.stringify(r);for(let i in r)if(!PA(i,e,r[i],t))return!1;return!0}function t_(r){let e=Object.keys(r);return e.length>0&&e.filter(t=>t[0]==="$").length===e.length}function $A(r){if(r===null)return"null";if(Array.isArray(r))return"array";let e=typeof r;return["string","number","boolean","object","undefined"].includes(e)?e:"unknown"}function MA(r,e,t){if(!Array.isArray(r))return!1;let n=t_(e)?i=>So(e,i,t):i=>tn(i,e,t);for(let i=0;i<r.length;i++)if(r[i]&&n(r[i]))return!0;return!1}function Li(r,e,t=!1){if(t){let n=i=>typeof i=="string"?i.toLowerCase():i;return Array.isArray(r)?r.some(i=>e.some(s=>n(i)===n(s))):e.some(i=>n(r)===n(i))}return Array.isArray(r)?r.some(n=>e.includes(n)):e.includes(r)}function Qb(r,e,t,n=!1){if(!Array.isArray(r))return!1;for(let i=0;i<e.length;i++){let s=!1;for(let o=0;o<r.length;o++)if(So(e[i],r[o],t,n)){s=!0;break}if(!s)return!1}return!0}function PA(r,e,t,n){switch(r){case"$veq":return _t(e)===_t(t);case"$vne":return _t(e)!==_t(t);case"$vgt":return _t(e)>_t(t);case"$vgte":return _t(e)>=_t(t);case"$vlt":return _t(e)<_t(t);case"$vlte":return _t(e)<=_t(t);case"$eq":return e===t;case"$ne":return e!==t;case"$lt":return e<t;case"$lte":return e<=t;case"$gt":return e>t;case"$gte":return e>=t;case"$exists":return t?e!=null:e==null;case"$in":return Array.isArray(t)?Li(e,t):!1;case"$ini":return Array.isArray(t)?Li(e,t,!0):!1;case"$inGroup":return Li(e,n[t]||[]);case"$notInGroup":return!Li(e,n[t]||[]);case"$nin":return Array.isArray(t)?!Li(e,t):!1;case"$nini":return Array.isArray(t)?!Li(e,t,!0):!1;case"$not":return!So(t,e,n);case"$size":return Array.isArray(e)?So(t,e.length,n):!1;case"$elemMatch":return MA(e,t,n);case"$all":return Array.isArray(t)?Qb(e,t,n):!1;case"$alli":return Array.isArray(t)?Qb(e,t,n,!0):!1;case"$regex":try{return Jb(t).test(e)}catch{return!1}case"$regexi":try{return Jb(t,!0).test(e)}catch{return!1}case"$type":return $A(e)===t;default:return console.error("Unknown operator: "+r),!1}}function e_(r,e,t){if(!e.length)return!0;for(let n=0;n<e.length;n++)if(tn(r,e[n],t))return!0;return!1}function OA(r,e,t){for(let n=0;n<e.length;n++)if(!tn(r,e[n],t))return!1;return!0}var LA="Feature Evaluated",NA="Experiment Viewed";function FA(r){let e=new Map;return r.global.forcedFeatureValues&&r.global.forcedFeatureValues.forEach((t,n)=>e.set(n,t)),r.user.forcedFeatureValues&&r.user.forcedFeatureValues.forEach((t,n)=>e.set(n,t)),e}function DA(r){return r.global.forcedVariations&&r.user.forcedVariations?{...r.global.forcedVariations,...r.user.forcedVariations}:r.global.forcedVariations?r.global.forcedVariations:r.user.forcedVariations?r.user.forcedVariations:{}}async function Ni(r){try{await r()}catch{}}function r_(r,e,t){if(r.user.trackedExperiments){let i=Kl(e,t);if(r.user.trackedExperiments.has(i))return[];r.user.trackedExperiments.add(i)}r.user.enableDevMode&&r.user.devLogs&&r.user.devLogs.push({experiment:e,result:t,timestamp:Date.now().toString(),logType:"experiment"});let n=[];if(r.global.trackingCallback){let i=r.global.trackingCallback;n.push(Ni(()=>i(e,t,r.user)))}if(r.user.trackingCallback){let i=r.user.trackingCallback;n.push(Ni(()=>i(e,t)))}if(r.global.eventLogger){let i=r.global.eventLogger;n.push(Ni(()=>i(NA,{experimentId:e.key,variationId:t.key,hashAttribute:t.hashAttribute,hashValue:t.hashValue},r.user)))}return n}function HA(r,e,t){if(r.user.trackedFeatureUsage){let n=JSON.stringify(t.value);if(r.user.trackedFeatureUsage[e]===n)return;r.user.trackedFeatureUsage[e]=n,r.user.enableDevMode&&r.user.devLogs&&r.user.devLogs.push({featureKey:e,result:t,timestamp:Date.now().toString(),logType:"feature"})}if(r.global.onFeatureUsage){let n=r.global.onFeatureUsage;Ni(()=>n(e,t,r.user))}if(r.user.onFeatureUsage){let n=r.user.onFeatureUsage;Ni(()=>n(e,t))}if(r.global.eventLogger){let n=r.global.eventLogger;Ni(()=>n(LA,{feature:e,source:t.source,value:t.value,ruleId:t.source==="defaultValue"?"$default":t.ruleId||"",variationId:t.experimentResult?t.experimentResult.key:""},r.user))}}function Zl(r,e){if(e.stack.evaluatedFeatures.has(r))return rn(e,r,null,"cyclicPrerequisite");e.stack.evaluatedFeatures.add(r),e.stack.id=r;let t=FA(e);if(t.has(r))return rn(e,r,t.get(r),"override");if(!e.global.features||!e.global.features[r])return rn(e,r,null,"unknownFeature");let n=e.global.features[r];if(n.rules){let i=new Set(e.stack.evaluatedFeatures);e:for(let s of n.rules){if(s.parentConditions)for(let l of s.parentConditions){e.stack.evaluatedFeatures=new Set(i);let c=Zl(l.id,e);if(c.source==="cyclicPrerequisite")return rn(e,r,null,"cyclicPrerequisite");let u={value:c.value};if(!tn(u,l.condition||{})){if(l.gate)return rn(e,r,null,"prerequisite");continue e}}if(s.filters&&s_(s.filters,e))continue;if("force"in s){if(s.condition&&!i_(s.condition,e)||!BA(e,s.seed||r,s.hashAttribute,e.user.saveStickyBucketAssignmentDoc&&!s.disableStickyBucketing?s.fallbackAttribute:void 0,s.range,s.coverage,s.hashVersion))continue;return s.tracks&&s.tracks.forEach(l=>{!r_(e,l.experiment,l.result).length&&e.global.saveDeferredTrack&&e.global.saveDeferredTrack({experiment:l.experiment,result:l.result})}),rn(e,r,s.force,"force",s.id)}if(!s.variations)continue;let o={variations:s.variations,key:s.key||r};"coverage"in s&&(o.coverage=s.coverage),s.weights&&(o.weights=s.weights),s.hashAttribute&&(o.hashAttribute=s.hashAttribute),s.fallbackAttribute&&(o.fallbackAttribute=s.fallbackAttribute),s.disableStickyBucketing&&(o.disableStickyBucketing=s.disableStickyBucketing),s.bucketVersion!==void 0&&(o.bucketVersion=s.bucketVersion),s.minBucketVersion!==void 0&&(o.minBucketVersion=s.minBucketVersion),s.namespace&&(o.namespace=s.namespace),s.meta&&(o.meta=s.meta),s.ranges&&(o.ranges=s.ranges),s.name&&(o.name=s.name),s.phase&&(o.phase=s.phase),s.seed&&(o.seed=s.seed),s.hashVersion&&(o.hashVersion=s.hashVersion),s.filters&&(o.filters=s.filters),s.condition&&(o.condition=s.condition);let{result:a}=Gl(o,r,e);if(e.global.onExperimentEval&&e.global.onExperimentEval(o,a),a.inExperiment&&!a.passthrough)return rn(e,r,a.value,"experiment",s.id,o,a)}}return rn(e,r,n.defaultValue===void 0?null:n.defaultValue,"defaultValue")}function Gl(r,e,t){let n=r.key,i=r.variations.length;if(i<2)return{result:$e(t,r,-1,!1,e)};if(t.global.enabled===!1||t.user.enabled===!1)return{result:$e(t,r,-1,!1,e)};if(r=VA(r,t),r.urlPatterns&&!Ol(t.user.url||"",r.urlPatterns))return{result:$e(t,r,-1,!1,e)};let s=$b(n,t.user.url||"",i);if(s!==null)return{result:$e(t,r,s,!1,e)};let o=DA(t);if(n in o){let m=o[n];return{result:$e(t,r,m,!1,e)}}if(r.status==="draft"||r.active===!1)return{result:$e(t,r,-1,!1,e)};let{hashAttribute:a,hashValue:l}=Jn(t,r.hashAttribute,t.user.saveStickyBucketAssignmentDoc&&!r.disableStickyBucketing?r.fallbackAttribute:void 0);if(!l)return{result:$e(t,r,-1,!1,e)};let c=-1,u=!1,p=!1;if(t.user.saveStickyBucketAssignmentDoc&&!r.disableStickyBucketing){let{variation:m,versionIsBlocked:y}=WA({ctx:t,expKey:r.key,expBucketVersion:r.bucketVersion,expHashAttribute:r.hashAttribute,expFallbackAttribute:r.fallbackAttribute,expMinBucketVersion:r.minBucketVersion,expMeta:r.meta});u=m>=0,c=m,p=!!y}if(!u){if(r.filters){if(s_(r.filters,t))return{result:$e(t,r,-1,!1,e)}}else if(r.namespace&&!Tb(l,r.namespace))return{result:$e(t,r,-1,!1,e)};if(r.include&&!Mb(r.include))return{result:$e(t,r,-1,!1,e)};if(r.condition&&!i_(r.condition,t))return{result:$e(t,r,-1,!1,e)};if(r.parentConditions){let m=new Set(t.stack.evaluatedFeatures);for(let y of r.parentConditions){t.stack.evaluatedFeatures=new Set(m);let x=Zl(y.id,t);if(x.source==="cyclicPrerequisite")return{result:$e(t,r,-1,!1,e)};let S={value:x.value};if(!tn(S,y.condition||{}))return{result:$e(t,r,-1,!1,e)}}}if(r.groups&&!jA(r.groups,t))return{result:$e(t,r,-1,!1,e)}}if(r.url&&!UA(r.url,t))return{result:$e(t,r,-1,!1,e)};let h=bo(r.seed||n,l,r.hashVersion||1);if(h===null)return{result:$e(t,r,-1,!1,e)};if(!u){let m=r.ranges||Ib(i,r.coverage===void 0?1:r.coverage,r.weights);c=Rb(h,m)}if(p)return{result:$e(t,r,-1,!1,e,void 0,!0)};if(c<0)return{result:$e(t,r,-1,!1,e)};if("force"in r)return{result:$e(t,r,r.force===void 0?-1:r.force,!1,e)};if(t.global.qaMode||t.user.qaMode)return{result:$e(t,r,-1,!1,e)};if(r.status==="stopped")return{result:$e(t,r,-1,!1,e)};let f=$e(t,r,c,!0,e,h,u);if(t.user.saveStickyBucketAssignmentDoc&&!r.disableStickyBucketing){let{changed:m,key:y,doc:x}=qA(t,a,_o(l),{[Op(r.key,r.bucketVersion)]:f.key});m&&(t.user.stickyBucketAssignmentDocs=t.user.stickyBucketAssignmentDocs||{},t.user.stickyBucketAssignmentDocs[y]=x,t.user.saveStickyBucketAssignmentDoc(x))}let v=r_(t,r,f);v.length===0&&t.global.saveDeferredTrack&&t.global.saveDeferredTrack({experiment:r,result:f});let g=v.length?v.length===1?v[0]:Promise.all(v).then(()=>{}):void 0;return"changeId"in r&&r.changeId&&t.global.recordChangeId&&t.global.recordChangeId(r.changeId),{result:f,trackingCall:g}}function rn(r,e,t,n,i,s,o){let a={value:t,on:!!t,off:!t,source:n,ruleId:i||""};return s&&(a.experiment=s),o&&(a.experimentResult=o),n!=="override"&&HA(r,e,a),a}function n_(r){return{...r.user.attributes,...r.user.attributeOverrides}}function i_(r,e){return tn(n_(e),r,e.global.savedGroups||{})}function s_(r,e){return r.some(t=>{let{hashValue:n}=Jn(e,t.attribute);if(!n)return!0;let i=bo(t.seed,n,t.hashVersion||2);return i===null?!0:!t.ranges.some(s=>Pl(i,s))})}function BA(r,e,t,n,i,s,o){if(!i&&s===void 0)return!0;if(!i&&s===0)return!1;let{hashValue:a}=Jn(r,t,n);if(!a)return!1;let l=bo(e,a,o||1);return l===null?!1:i?Pl(l,i):s!==void 0?l<=s:!0}function $e(r,e,t,n,i,s,o){let a=!0;(t<0||t>=e.variations.length)&&(t=0,a=!1);let{hashAttribute:l,hashValue:c}=Jn(r,e.hashAttribute,r.user.saveStickyBucketAssignmentDoc&&!e.disableStickyBucketing?e.fallbackAttribute:void 0),u=e.meta?e.meta[t]:{},p={key:u.key||""+t,featureId:i,inExperiment:a,hashUsed:n,variationId:t,value:e.variations[t],hashAttribute:l,hashValue:c,stickyBucketUsed:!!o};return u.name&&(p.name=u.name),s!==void 0&&(p.bucket=s),u.passthrough&&(p.passthrough=u.passthrough),p}function VA(r,e){let t=r.key,n=e.global.overrides;return n&&n[t]&&(r=Object.assign({},r,n[t]),typeof r.url=="string"&&(r.url=wp(r.url))),r}function Jn(r,e,t){let n=e||"id",i="",s=n_(r);return s[n]&&(i=s[n]),!i&&t&&(s[t]&&(i=s[t]),i&&(n=t)),{hashAttribute:n,hashValue:i}}function UA(r,e){let t=e.user.url;if(!t)return!1;let n=t.replace(/^https?:\/\//,"").replace(/^[^/]*\//,"/");return!!(r.test(t)||r.test(n))}function jA(r,e){let t=e.global.groups||{};for(let n=0;n<r.length;n++)if(t[r[n]])return!0;return!1}function WA({ctx:r,expKey:e,expBucketVersion:t,expHashAttribute:n,expFallbackAttribute:i,expMinBucketVersion:s,expMeta:o}){t=t||0,s=s||0,n=n||"id",o=o||[];let a=Op(e,t),l=zA(r,n,i);if(s>0)for(let p=0;p<s;p++){let h=Op(e,p);if(l[h]!==void 0)return{variation:-1,versionIsBlocked:!0}}let c=l[a];if(c===void 0)return{variation:-1};let u=o.findIndex(p=>p.key===c);return u<0?{variation:-1}:{variation:u}}function Op(r,e){return e=e||0,`${r}__${e}`}function Lp(r,e){return`${r}||${e}`}function zA(r,e,t){if(!r.user.stickyBucketAssignmentDocs)return{};let{hashAttribute:n,hashValue:i}=Jn(r,e),s=Lp(n,_o(i)),{hashAttribute:o,hashValue:a}=Jn(r,t),l=a?Lp(o,_o(a)):null,c={};return l&&r.user.stickyBucketAssignmentDocs[l]&&Object.assign(c,r.user.stickyBucketAssignmentDocs[l].assignments||{}),r.user.stickyBucketAssignmentDocs[s]&&Object.assign(c,r.user.stickyBucketAssignmentDocs[s].assignments||{}),c}function qA(r,e,t,n){let i=Lp(e,t),s=r.user.stickyBucketAssignmentDocs&&r.user.stickyBucketAssignmentDocs[i]?r.user.stickyBucketAssignmentDocs[i].assignments||{}:{},o={...s,...n},a=JSON.stringify(s)!==JSON.stringify(o);return{key:i,doc:{attributeName:e,attributeValue:t,assignments:o},changed:a}}function ZA(r,e){let t=new Set,n=e&&e.features?e.features:r.global.features||{},i=e&&e.experiments?e.experiments:r.global.experiments||[];return Object.keys(n).forEach(s=>{let o=n[s];if(o.rules)for(let a of o.rules)a.variations&&(t.add(a.hashAttribute||"id"),a.fallbackAttribute&&t.add(a.fallbackAttribute))}),i.map(s=>{t.add(s.hashAttribute||"id"),s.fallbackAttribute&&t.add(s.fallbackAttribute)}),Array.from(t)}async function o_(r,e,t){let n=Np(r,t);return e.getAllAssignments(n)}function Np(r,e){let t={};return ZA(r,e).forEach(i=>{let{hashValue:s}=Jn(r,i);t[i]=_o(s)}),t}async function a_(r,e,t){if(r={...r},r.encryptedFeatures){try{r.features=JSON.parse(await Xn(r.encryptedFeatures,e,t))}catch(n){console.error(n)}delete r.encryptedFeatures}if(r.encryptedExperiments){try{r.experiments=JSON.parse(await Xn(r.encryptedExperiments,e,t))}catch(n){console.error(n)}delete r.encryptedExperiments}if(r.encryptedSavedGroups){try{r.savedGroups=JSON.parse(await Xn(r.encryptedSavedGroups,e,t))}catch(n){console.error(n)}delete r.encryptedSavedGroups}return r}function l_(r){let e=r.apiHost||"https://cdn.growthbook.io";return{apiHost:e.replace(/\/*$/,""),streamingHost:(r.streamingHost||e).replace(/\/*$/,""),apiRequestHeaders:r.apiHostRequestHeaders,streamingHostRequestHeaders:r.streamingHostRequestHeaders}}function Kl(r,e){return e.hashAttribute+e.hashValue+r.key+e.variationId}var Fi=typeof window<"u"&&typeof document<"u",GA=Pb(),ko=class{constructor(e){if(e=e||{},this.version=GA,this._options=this.context=e,this._renderer=e.renderer||null,this._trackedExperiments=new Set,this._completedChangeIds=new Set,this._trackedFeatures={},this.debug=!!e.debug,this._subscriptions=new Set,this.ready=!1,this._assigned=new Map,this._activeAutoExperiments=new Map,this._triggeredExpKeys=new Set,this._initialized=!1,this._redirectedUrl="",this._deferredTrackingCalls=new Map,this._autoExperimentsAllowed=!e.disableExperimentsOnLoad,this._destroyCallbacks=[],this.logs=[],this.log=this.log.bind(this),this._saveDeferredTrack=this._saveDeferredTrack.bind(this),this._onExperimentEval=this._onExperimentEval.bind(this),this._fireSubscriptions=this._fireSubscriptions.bind(this),this._recordChangedId=this._recordChangedId.bind(this),e.remoteEval){if(e.decryptionKey)throw new Error("Encryption is not available for remoteEval");if(!e.clientKey)throw new Error("Missing clientKey");let t=!1;try{t=!!new URL(e.apiHost||"").hostname.match(/growthbook\.io$/i)}catch{}if(t)throw new Error("Cannot use remoteEval on GrowthBook Cloud")}else if(e.cacheKeyAttributes)throw new Error("cacheKeyAttributes are only used for remoteEval");if(e.stickyBucketService){let t=e.stickyBucketService;this._saveStickyBucketAssignmentDoc=n=>t.saveAssignments(n)}if(e.plugins)for(let t of e.plugins)t(this);if(e.features&&(this.ready=!0),Fi&&e.enableDevMode&&(window._growthbook=this,document.dispatchEvent(new Event("gbloaded"))),e.experiments&&(this.ready=!0,this._updateAllAutoExperiments()),this._options.stickyBucketService&&this._options.stickyBucketAssignmentDocs)for(let t in this._options.stickyBucketAssignmentDocs){let n=this._options.stickyBucketAssignmentDocs[t];n&&this._options.stickyBucketService.saveAssignments(n).catch(()=>{})}this.ready&&this.refreshStickyBuckets(this.getPayload())}async setPayload(e){this._payload=e;let t=await a_(e,this._options.decryptionKey);this._decryptedPayload=t,await this.refreshStickyBuckets(t),t.features&&(this._options.features=t.features),t.savedGroups&&(this._options.savedGroups=t.savedGroups),t.experiments&&(this._options.experiments=t.experiments,this._updateAllAutoExperiments()),this.ready=!0,this._render()}initSync(e){this._initialized=!0;let t=e.payload;if(t.encryptedExperiments||t.encryptedFeatures)throw new Error("initSync does not support encrypted payloads");return this._options.stickyBucketService&&!this._options.stickyBucketAssignmentDocs&&(this._options.stickyBucketAssignmentDocs=this.generateStickyBucketAssignmentDocsSync(this._options.stickyBucketService,t)),this._payload=t,this._decryptedPayload=t,t.features&&(this._options.features=t.features),t.experiments&&(this._options.experiments=t.experiments,this._updateAllAutoExperiments()),this.ready=!0,Dl(this,e),this}async init(e){if(this._initialized=!0,e=e||{},e.cacheSettings&&Fb(e.cacheSettings),e.payload)return await this.setPayload(e.payload),Dl(this,e),{success:!0,source:"init"};{let{data:t,...n}=await this._refresh({...e,allowStale:!0});return Dl(this,e),await this.setPayload(t||{}),n}}async loadFeatures(e){e=e||{},await this.init({skipCache:e.skipCache,timeout:e.timeout,streaming:(this._options.backgroundSync??!0)&&(e.autoRefresh||this._options.subscribeToChanges)})}async refreshFeatures(e){let t=await this._refresh({...e||{},allowStale:!1});t.data&&await this.setPayload(t.data)}getApiInfo(){return[this.getApiHosts().apiHost,this.getClientKey()]}getApiHosts(){return l_(this._options)}getClientKey(){return this._options.clientKey||""}getPayload(){return this._payload||{features:this.getFeatures(),experiments:this.getExperiments()}}getDecryptedPayload(){return this._decryptedPayload||this.getPayload()}isRemoteEval(){return this._options.remoteEval||!1}getCacheKeyAttributes(){return this._options.cacheKeyAttributes}async _refresh({timeout:e,skipCache:t,allowStale:n,streaming:i}){if(!this._options.clientKey)throw new Error("Missing clientKey");return Db({instance:this,timeout:e,skipCache:t||this._options.disableCache,allowStale:n,backgroundSync:i??this._options.backgroundSync??!0})}_render(){if(this._renderer)try{this._renderer()}catch(e){console.error("Failed to render",e)}}setFeatures(e){this._options.features=e,this.ready=!0,this._render()}async setEncryptedFeatures(e,t,n){let i=await Xn(e,t||this._options.decryptionKey,n);this.setFeatures(JSON.parse(i))}setExperiments(e){this._options.experiments=e,this.ready=!0,this._updateAllAutoExperiments()}async setEncryptedExperiments(e,t,n){let i=await Xn(e,t||this._options.decryptionKey,n);this.setExperiments(JSON.parse(i))}async setAttributes(e){if(this._options.attributes=e,this._options.stickyBucketService&&await this.refreshStickyBuckets(),this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}async updateAttributes(e){return this.setAttributes({...this._options.attributes,...e})}async setAttributeOverrides(e){if(this._options.attributeOverrides=e,this._options.stickyBucketService&&await this.refreshStickyBuckets(),this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}async setForcedVariations(e){if(this._options.forcedVariations=e||{},this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}setForcedFeatures(e){this._options.forcedFeatureValues=e,this._render()}async setURL(e){if(e!==this._options.url){if(this._options.url=e,this._redirectedUrl="",this._options.remoteEval){await this._refreshForRemoteEval(),this._updateAllAutoExperiments(!0);return}this._updateAllAutoExperiments(!0)}}getAttributes(){return{...this._options.attributes,...this._options.attributeOverrides}}getForcedVariations(){return this._options.forcedVariations||{}}getForcedFeatures(){return this._options.forcedFeatureValues||new Map}getStickyBucketAssignmentDocs(){return this._options.stickyBucketAssignmentDocs||{}}getUrl(){return this._options.url||""}getFeatures(){return this._options.features||{}}getExperiments(){return this._options.experiments||[]}getCompletedChangeIds(){return Array.from(this._completedChangeIds)}subscribe(e){return this._subscriptions.add(e),()=>{this._subscriptions.delete(e)}}async _refreshForRemoteEval(){if(!this._options.remoteEval||!this._initialized)return;let e=await this._refresh({allowStale:!1});e.data&&await this.setPayload(e.data)}getAllResults(){return new Map(this._assigned)}onDestroy(e){this._destroyCallbacks.push(e)}isDestroyed(){return!!this._destroyed}destroy(e){e=e||{},this._destroyed=!0,this._destroyCallbacks.forEach(t=>{try{t()}catch(n){console.error(n)}}),this._subscriptions.clear(),this._assigned.clear(),this._trackedExperiments.clear(),this._completedChangeIds.clear(),this._deferredTrackingCalls.clear(),this._trackedFeatures={},this._destroyCallbacks=[],this._payload=void 0,this._saveStickyBucketAssignmentDoc=void 0,Hb(this),e.destroyAllStreams&&Tp(),this.logs=[],Fi&&window._growthbook===this&&delete window._growthbook,this._activeAutoExperiments.forEach(t=>{t.undo()}),this._activeAutoExperiments.clear(),this._triggeredExpKeys.clear()}setRenderer(e){this._renderer=e}forceVariation(e,t){if(this._options.forcedVariations=this._options.forcedVariations||{},this._options.forcedVariations[e]=t,this._options.remoteEval){this._refreshForRemoteEval();return}this._updateAllAutoExperiments(),this._render()}run(e){let{result:t}=Gl(e,null,this._getEvalContext());return this._onExperimentEval(e,t),t}triggerExperiment(e){return this._triggeredExpKeys.add(e),this._options.experiments?this._options.experiments.filter(n=>n.key===e).map(n=>this._runAutoExperiment(n)).filter(n=>n!==null):null}triggerAutoExperiments(){this._autoExperimentsAllowed=!0,this._updateAllAutoExperiments(!0)}_getEvalContext(){return{user:this._getUserContext(),global:this._getGlobalContext(),stack:{evaluatedFeatures:new Set}}}_getUserContext(){return{attributes:this._options.user?{...this._options.user,...this._options.attributes}:this._options.attributes,enableDevMode:this._options.enableDevMode,blockedChangeIds:this._options.blockedChangeIds,stickyBucketAssignmentDocs:this._options.stickyBucketAssignmentDocs,url:this._getContextUrl(),forcedVariations:this._options.forcedVariations,forcedFeatureValues:this._options.forcedFeatureValues,attributeOverrides:this._options.attributeOverrides,saveStickyBucketAssignmentDoc:this._saveStickyBucketAssignmentDoc,trackingCallback:this._options.trackingCallback,onFeatureUsage:this._options.onFeatureUsage,devLogs:this.logs,trackedExperiments:this._trackedExperiments,trackedFeatureUsage:this._trackedFeatures}}_getGlobalContext(){return{features:this._options.features,experiments:this._options.experiments,log:this.log,enabled:this._options.enabled,qaMode:this._options.qaMode,savedGroups:this._options.savedGroups,groups:this._options.groups,overrides:this._options.overrides,onExperimentEval:this._onExperimentEval,recordChangeId:this._recordChangedId,saveDeferredTrack:this._saveDeferredTrack,eventLogger:this._options.eventLogger}}_runAutoExperiment(e,t){let n=this._activeAutoExperiments.get(e);if(e.manual&&!this._triggeredExpKeys.has(e.key)&&!n)return null;let i=this._isAutoExperimentBlockedByContext(e),s,o;i?s=$e(this._getEvalContext(),e,-1,!1,""):({result:s,trackingCall:o}=Gl(e,null,this._getEvalContext()),this._onExperimentEval(e,s));let a=JSON.stringify(s.value);if(!t&&s.inExperiment&&n&&n.valueHash===a)return s;if(n&&this._undoActiveAutoExperiment(e),s.inExperiment){let l=Ll(e);if(l==="redirect"&&s.value.urlRedirect&&e.urlPatterns){let c=e.persistQueryString?Ob(this._getContextUrl(),s.value.urlRedirect):s.value.urlRedirect;if(Ol(c,e.urlPatterns))return this.log("Skipping redirect because original URL matches redirect URL",{id:e.key}),s;this._redirectedUrl=c;let{navigate:u,delay:p}=this._getNavigateFunction();if(u)if(Fi)Promise.all([...o?[Nl(o,this._options.maxNavigateDelay??1e3)]:[],new Promise(h=>window.setTimeout(h,this._options.navigateDelay??p))]).then(()=>{try{u(c)}catch(h){console.error(h)}});else try{u(c)}catch(h){console.error(h)}}else if(l==="visual"){let c=this._options.applyDomChangesCallback?this._options.applyDomChangesCallback(s.value):this._applyDOMChanges(s.value);c&&this._activeAutoExperiments.set(e,{undo:c,valueHash:a})}}return s}_undoActiveAutoExperiment(e){let t=this._activeAutoExperiments.get(e);t&&(t.undo(),this._activeAutoExperiments.delete(e))}_updateAllAutoExperiments(e){if(!this._autoExperimentsAllowed)return;let t=this._options.experiments||[],n=new Set(t);this._activeAutoExperiments.forEach((i,s)=>{n.has(s)||(i.undo(),this._activeAutoExperiments.delete(s))});for(let i of t){let s=this._runAutoExperiment(i,e);if(s&&s.inExperiment&&Ll(i)==="redirect")break}}_onExperimentEval(e,t){let n=this._assigned.get(e.key);this._assigned.set(e.key,{experiment:e,result:t}),this._subscriptions.size>0&&this._fireSubscriptions(e,t,n)}_fireSubscriptions(e,t,n){(!n||n.result.inExperiment!==t.inExperiment||n.result.variationId!==t.variationId)&&this._subscriptions.forEach(i=>{try{i(e,t)}catch(s){console.error(s)}})}_recordChangedId(e){this._completedChangeIds.add(e)}isOn(e){return this.evalFeature(e).on}isOff(e){return this.evalFeature(e).off}getFeatureValue(e,t){let n=this.evalFeature(e).value;return n===null?t:n}feature(e){return this.evalFeature(e)}evalFeature(e){return Zl(e,this._getEvalContext())}log(e,t){this.debug&&(this._options.log?this._options.log(e,t):console.log(e,t))}getDeferredTrackingCalls(){return Array.from(this._deferredTrackingCalls.values())}setDeferredTrackingCalls(e){this._deferredTrackingCalls=new Map(e.filter(t=>t&&t.experiment&&t.result).map(t=>[Kl(t.experiment,t.result),t]))}async fireDeferredTrackingCalls(){if(!this._options.trackingCallback)return;let e=[];this._deferredTrackingCalls.forEach(t=>{!t||!t.experiment||!t.result?console.error("Invalid deferred tracking call",{call:t}):e.push(this._options.trackingCallback(t.experiment,t.result))}),this._deferredTrackingCalls.clear(),await Promise.all(e)}setTrackingCallback(e){this._options.trackingCallback=e,this.fireDeferredTrackingCalls()}setEventLogger(e){this._options.eventLogger=e}async logEvent(e,t){if(this._destroyed){console.error("Cannot log event to destroyed GrowthBook instance");return}if(this._options.enableDevMode&&this.logs.push({eventName:e,properties:t,timestamp:Date.now().toString(),logType:"event"}),this._options.eventLogger)try{await this._options.eventLogger(e,t||{},this._getUserContext())}catch(n){console.error(n)}else console.error("No event logger configured")}_saveDeferredTrack(e){this._deferredTrackingCalls.set(Kl(e.experiment,e.result),e)}_getContextUrl(){return this._options.url||(Fi?window.location.href:"")}_isAutoExperimentBlockedByContext(e){let t=Ll(e);if(t==="visual"){if(this._options.disableVisualExperiments||this._options.disableJsInjection&&e.variations.some(n=>n.js))return!0}else if(t==="redirect"){if(this._options.disableUrlRedirectExperiments)return!0;try{let n=new URL(this._getContextUrl());for(let i of e.variations){if(!i||!i.urlRedirect)continue;let s=new URL(i.urlRedirect);if(this._options.disableCrossOriginUrlRedirectExperiments&&(s.protocol!==n.protocol||s.host!==n.host))return!0}}catch(n){return this.log("Error parsing current or redirect URL",{id:e.key,error:n}),!0}}else return!0;return!!(e.changeId&&(this._options.blockedChangeIds||[]).includes(e.changeId))}getRedirectUrl(){return this._redirectedUrl}_getNavigateFunction(){return this._options.navigate?{navigate:this._options.navigate,delay:0}:Fi?{navigate:e=>{window.location.replace(e)},delay:100}:{navigate:null,delay:0}}_applyDOMChanges(e){if(!Fi)return;let t=[];if(e.css){let n=document.createElement("style");n.innerHTML=e.css,document.head.appendChild(n),t.push(()=>n.remove())}if(e.js){let n=document.createElement("script");n.innerHTML=e.js,this._options.jsInjectionNonce&&(n.nonce=this._options.jsInjectionNonce),document.head.appendChild(n),t.push(()=>n.remove())}return e.domMutations&&e.domMutations.forEach(n=>{t.push(Xb.declarative(n).revert)}),()=>{t.forEach(n=>n())}}async refreshStickyBuckets(e){if(this._options.stickyBucketService){let t=this._getEvalContext(),n=await o_(t,this._options.stickyBucketService,e);this._options.stickyBucketAssignmentDocs=n}}generateStickyBucketAssignmentDocsSync(e,t){if(!("getAllAssignmentsSync"in e)){console.error("generating StickyBucketAssignmentDocs docs requires StickyBucketServiceSync");return}let n=this._getEvalContext(),i=Np(n,t);return e.getAllAssignmentsSync(i)}inDevMode(){return!!this._options.enableDevMode}};var KA="https://experiment.syntrologie.com",Fp=class{constructor(e={}){this.featureListeners=new Set;if(e.client)this.gb=e.client;else{let t=e.onExperimentViewed?(n,i)=>{e.onExperimentViewed(n.key,i.variationId,typeof i.value=="string"?i.value:`variation_${i.variationId}`)}:void 0;this.gb=new ko({...e,apiHost:e.apiHost??KA,enableDevMode:e.enableDevMode??!0,trackingCallback:t}),e.autoInit&&this.gb.init({streaming:!0})}}get _internal(){return this.gb}async refreshFeatures(){await this.gb.loadFeatures()}setAttributes(e){this.gb.setAttributes({...this.gb.getAttributes(),...e})}setForcedVariations(e){this.gb.setForcedVariations(e)}getFeatureValue(e,t){return this.gb.getFeatureValue(e,t)}getAllFeatures(){let e=this.gb.getFeatures(),t={};for(let n of Object.keys(e))t[n]=this.gb.getFeatureValue(n,null);return t}shouldRenderRectangle(e){return!0}onFeaturesChanged(e){return this.featureListeners.add(e),this.featureListeners.size===1&&this.gb.setRenderer(()=>{for(let t of this.featureListeners)t()}),()=>{this.featureListeners.delete(e),this.featureListeners.size===0&&this.gb.setRenderer(null)}}};function Dp(r={}){return new Fp(r)}var c_={growthbook:r=>Dp({...r,autoInit:!0})};function u_(r,e){let t=c_[r];if(!t)throw new Error(`Unknown experiment provider: ${r}. Supported: ${Object.keys(c_).join(", ")}`);return t(e)}var YA=["cdn.syntrologie.com","localhost","127.0.0.1"];function XA(r){try{let e=new URL(r),t=/^(localhost|127\.0\.0\.1)$/.test(e.hostname);return e.protocol!=="https:"&&!t?(console.warn("[SmartCanvas] CDN URL must use HTTPS:",r),!1):YA.some(i=>e.hostname===i)?!0:(console.warn("[SmartCanvas] CDN host not in allowlist:",e.hostname),!1)}catch{return console.warn("[SmartCanvas] Invalid CDN URL:",r),!1}}var Hp=class{constructor(e){this.name="cdn";if(this.url=`${e.baseUrl}/${e.configId}.json`,this.integrity=e.integrity,!XA(this.url))throw new Error(`[SmartCanvas] CDN URL not allowed: ${this.url}`)}async fetch(){let e=performance.now(),t=await fetch(this.url,{credentials:"omit",cache:"default"});if(!t.ok)throw new Error(`[SmartCanvas] Failed to fetch config from CDN (${t.status})`);let n=await t.text();if(this.integrity){let l=await JA(n),c=this.integrity.replace("sha384-","");if(l!==c)throw new Error(`[SmartCanvas] Config integrity check failed. Expected ${c}, got ${l}`)}let i=JSON.parse(n),s=performance.now()-e,o=t.headers.get("cache-control"),a=t.headers.get("age");return{config:i,meta:{source:"cdn",fetchTimeMs:s,cached:o?.includes("public")??!1,cacheAge:a?parseInt(a,10):void 0}}}};async function JA(r){let t=new TextEncoder().encode(r),n=await crypto.subtle.digest("SHA-384",t),i=new Uint8Array(n);return btoa(String.fromCharCode(...i))}function d_(r){return new Hp(r)}var QA="syntro_exp",e2="syntro_var",Bp=class{constructor(e){this.name="experiments";this.client=e.client,this.featureKey=e.featureKey,this.manifestKey=e.manifestKey,this.variantFlagPrefix=e.variantFlagPrefix}async fetch(){let e=performance.now();if(typeof window<"u"){let i=new URLSearchParams(window.location.search),s=i.get(QA),o=i.get(e2);if(s&&o!==null&&this.client.setForcedVariations){let a=parseInt(o,10);Number.isNaN(a)||(console.log(`[SmartCanvas] Preview mode: forcing "${s}" to variation ${a}`),this.client.setForcedVariations({[s]:a}))}}if(this.manifestKey||this.variantFlagPrefix||this.client.getAllFeatures){let i=this.fetchMultiFlag();if(i){let s=performance.now()-e;return{config:i,meta:{source:"experiments",fetchTimeMs:s,cached:!0}}}}if(!this.featureKey)throw new Error("[SmartCanvas] No featureKey configured and no variant flags found. Ensure at least one config feature flag exists in your experiment platform.");let t=this.client.getFeatureValue?.(this.featureKey,null);if(!t||typeof t!="object")throw new Error(`[SmartCanvas] Feature "${this.featureKey}" not found or invalid. Ensure the feature is configured in your experiment platform.`);let n=performance.now()-e;return{config:t,meta:{source:"experiments",fetchTimeMs:n,cached:!0}}}fetchMultiFlag(){let e=this.getVariantFlagKeys();return!e||e.length===0?null:al(this.client,e)}getVariantFlagKeys(){if(this.manifestKey){let e=this.client.getFeatureValue?.(this.manifestKey,null);if(e&&typeof e=="object"){let t=e.variant_flags;if(t&&t.length>0)return t}}if(this.client.getAllFeatures){let e=this.client.getAllFeatures();return this.variantFlagPrefix?Object.keys(e).filter(t=>t.startsWith(this.variantFlagPrefix)):Object.keys(e)}return[]}};function p_(r){return new Bp(r)}var t2="https://cdn.syntrologie.com/configs",h_={cdn:r=>{if(!r.configId)throw new Error("CDN fetcher requires 'configId' option");return d_({baseUrl:r.baseUrl??t2,configId:r.configId,integrity:r.integrity})},experiments:r=>{if(!r.featureKey)throw new Error("Experiments fetcher requires 'featureKey' option");return p_({featureKey:r.featureKey})}};function f_(r,e={}){let t=h_[r];if(!t)throw new Error(`Unknown config fetcher type: ${r}. Supported: ${Object.keys(h_).join(", ")}`);return t(e)}var g_="syntro_session_metrics",Yl=class{constructor(e={}){this.metrics=new Map;this.subscribers=new Set;this.experiments=e.experiments,this.attributePrefix=e.attributePrefix??"session_",this.onMetricChange=e.onMetricChange,this.loadFromStorage()}increment(e,t=1){let i=(this.metrics.get(e)??0)+t;return this.metrics.set(e,i),this.saveToStorage(),this.updateExperimentAttributes(e,i),this.onMetricChange?.(e,i),this.notifySubscribers(),i}set(e,t){this.metrics.set(e,t),this.saveToStorage(),this.updateExperimentAttributes(e,t),this.onMetricChange?.(e,t),this.notifySubscribers()}get(e){return this.metrics.get(e)??0}meetsThreshold(e,t){return this.get(e)>=t}getAll(){return Object.fromEntries(this.metrics)}reset(e){this.metrics.delete(e),this.saveToStorage(),this.updateExperimentAttributes(e,0),this.onMetricChange?.(e,0),this.notifySubscribers()}resetAll(){let e=Array.from(this.metrics.keys());this.metrics.clear(),this.saveToStorage();let t={};for(let n of e)t[`${this.attributePrefix}${n}`]=0,this.onMetricChange?.(n,0);this.experiments?.setAttributes?.(t),this.notifySubscribers()}subscribe(e){return this.subscribers.add(e),()=>{this.subscribers.delete(e)}}destroy(){this.subscribers.clear()}setExperiments(e){this.experiments=e,this.syncAllToExperiments()}updateExperimentAttributes(e,t){if(!this.experiments?.setAttributes)return;let n=`${this.attributePrefix}${e}`;this.experiments.setAttributes({[n]:t})}syncAllToExperiments(){if(!this.experiments?.setAttributes)return;let e={};for(let[t,n]of this.metrics)e[`${this.attributePrefix}${t}`]=n;this.experiments.setAttributes(e)}notifySubscribers(){for(let e of this.subscribers)try{e()}catch{}}loadFromStorage(){if(!(typeof window>"u"||typeof sessionStorage>"u"))try{let e=sessionStorage.getItem(g_);if(e){let t=JSON.parse(e);for(let[n,i]of Object.entries(t))this.metrics.set(n,i.count)}}catch(e){console.warn("[SessionMetricTracker] Failed to load from sessionStorage:",e)}}saveToStorage(){if(!(typeof window>"u"||typeof sessionStorage>"u"))try{let e={};for(let[t,n]of this.metrics)e[t]={count:n,lastUpdated:Date.now()};sessionStorage.setItem(g_,JSON.stringify(e))}catch(e){console.warn("[SessionMetricTracker] Failed to save to sessionStorage:",e)}}};function Vp(r={}){return new Yl(r)}var Xl=class{constructor(e){this.unsubUnload=null;this.unsubLoad=null;this.destroyed=!1;this.adapter=e}activate(){this.destroyed||(this.unsubUnload=this.adapter.onRegionWillUnload(e=>{this.hideContentInSection(e)}),this.unsubLoad=this.adapter.onRegionDidLoad(e=>{this.revealContentInSection(e)}))}destroy(){this.destroyed=!0,this.unsubUnload?.(),this.unsubLoad?.(),this.unsubUnload=null,this.unsubLoad=null}hideContentInSection(e){let t=this.sectionSelector(e),n=document.querySelectorAll(`${t} [data-syntro-action-id]`);for(let i of n)i.style.opacity="0",i.style.transition="none"}revealContentInSection(e){let t=this.sectionSelector(e);requestAnimationFrame(()=>{if(this.destroyed)return;let n=document.querySelectorAll(`${t} [data-syntro-action-id]`);for(let i of n)i.style.transition="opacity 120ms ease-in",i.style.opacity="1"})}sectionSelector(e){let t=typeof CSS<"u"?CSS.escape(e):e;return document.getElementById(`shopify-section-${e}`)?`#shopify-section-${t}`:`.shopify-section[id$="-${t}"]`}};var Jl=class{constructor(e){this.name="shopify";this.loadCallbacks=new Set;this.unloadCallbacks=new Set;this.abortController=null;this.antiFlicker=null;this.initTimeoutMs=e?.initTimeoutMs??3e3}detect(){return typeof window>"u"||typeof document>"u"?!1:!!("Shopify"in window&&window.Shopify!=null||document.querySelector('meta[name="shopify-checkout-api-token"]'))}async onInit(){this.abortController=new AbortController;let{signal:e}=this.abortController;this.attachSectionListeners(e),this.antiFlicker=new Xl(this),this.antiFlicker.activate(),await this.waitForInitialSections(this.initTimeoutMs,e)}onRegionDidLoad(e){return this.loadCallbacks.add(e),()=>{this.loadCallbacks.delete(e)}}onRegionWillUnload(e){return this.unloadCallbacks.add(e),()=>{this.unloadCallbacks.delete(e)}}onRegionMutated(e){}getAnchorScope(e){let t=e.closest(".shopify-section");return t?.id?`#${typeof CSS<"u"?CSS.escape(t.id):t.id} `:""}destroy(){this.antiFlicker?.destroy(),this.antiFlicker=null,this.abortController&&(this.abortController.abort(),this.abortController=null),this.loadCallbacks.clear(),this.unloadCallbacks.clear()}attachSectionListeners(e){document.addEventListener("shopify:section:load",t=>{let n=t.detail?.sectionId;if(n)for(let i of this.loadCallbacks)try{i(n)}catch{}},{signal:e}),document.addEventListener("shopify:section:unload",t=>{let n=t.detail?.sectionId;if(n)for(let i of this.unloadCallbacks)try{i(n)}catch{}},{signal:e})}waitForInitialSections(e,t){return new Promise(n=>{if(document.querySelector(".shopify-section")){n();return}let i=!1,s=()=>{i||(i=!0,n())};document.addEventListener("shopify:section:load",()=>s(),{once:!0,signal:t});let o=setTimeout(s,e);t.addEventListener("abort",()=>{clearTimeout(o),s()},{once:!0})})}};var r2=[()=>new Jl];function m_(){for(let r of r2){let e=r();if(e.detect())return e}return null}var Up="syntro_experiments";var Ql={distinctId:"_syntro_distinct_id",telemetryHost:"_syntro_telemetry_host",telemetryKey:"_syntro_telemetry_key"};var i2=720*60*60,ec=class{constructor(e){this.context={...e,telemetryHost:e.telemetryHost.replace(/\/$/,"")},this.writeCookie(),this.writeCartAttributes()}updateContext(e){this.context={...e,telemetryHost:e.telemetryHost.replace(/\/$/,"")},this.writeCookie(),this.writeCartAttributes()}destroy(){document.cookie=`${Up}=; expires=Thu, 01 Jan 1970 00:00:00 UTC; path=/; SameSite=Lax`}writeCookie(){let e={version:1,distinct_id:this.context.distinctId,telemetry_host:this.context.telemetryHost,telemetry_key:this.context.telemetryKey},t=encodeURIComponent(JSON.stringify(e)),n=`${Up}=${t}; max-age=${i2}; path=/; SameSite=Lax`;document.cookie=n}writeCartAttributes(){let{distinctId:e,telemetryHost:t,telemetryKey:n}=this.context;if(!e)return;let i={};i[Ql.distinctId]=e,i[Ql.telemetryHost]=t,i[Ql.telemetryKey]=n;let s=JSON.stringify({attributes:i});try{fetch("/cart/update.js",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},credentials:"same-origin",body:s}).then(o=>{o.ok||console.warn(`[shopify-pixel-bridge] /cart/update.js returned ${o.status}; checkout_completed events will fall back to cookie (likely to drop).`)}).catch(o=>{console.warn("[shopify-pixel-bridge] /cart/update.js request failed; checkout_completed events will fall back to cookie (likely to drop).",o)})}catch{}}};function y_(r){return r<768?"mobile":r<1024?"tablet":"desktop"}function Wp(r,e){return r==="telegram"||r==="mcp-app"?"agent":e==="mobile"?"mobile":"desktop"}function s2(r="web",e="web"){let t=Date.now(),n=typeof window<"u"?window.innerWidth:0,i=typeof window<"u"?window.innerHeight:0,s=y_(n);return{page:{url:typeof window<"u"?window.location.href:"",title:typeof document<"u"?document.title:void 0},session:{sessionId:"",startTs:t,pageHistory:[]},viewport:{width:n,height:i},surface:{type:r,host:e,device:s,mode:Wp(r,s)}}}function jp(r,e){if(!e)return;let t;try{t=new URL(r).pathname}catch{t=r}if(t.startsWith("/")||(t=`/${t}`),e.exclude){for(let n of e.exclude)if(v_(t,n))return}if(e.include){for(let n of e.include)if(v_(t,n))return n;return}return t}function v_(r,e){let t=r.replace(/\/$/,"")||"/",n=e.replace(/\/$/,"")||"/";if(t===n)return!0;let i=n.replace(/:[^/]+/g,"[^/]+").replace(/\*/g,".*");return new RegExp(`^${i}$`).test(t)}var tc=class{constructor(e){this.listeners=new Set;this.cleanupFns=[];if(this.telemetry=e.telemetry,this.routes=e.routes,this.navigation=e.navigation,this.context=s2(e.initialSurfaceType,e.initialSurfaceHost),this.previousContext={...this.context},e.telemetry?.getSessionId){let t=e.telemetry.getSessionId();t&&(this.context.session.sessionId=t)}e.initialPageHistory&&(this.context.session.pageHistory=e.initialPageHistory),this.context.page.routeId=jp(this.context.page.url,this.routes),this.addPageToHistory(this.context.page.url),typeof window<"u"&&this.setupBrowserListeners()}get(){return{...this.context}}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}setRoutes(e){this.routes=e;let t=jp(this.context.page.url,this.routes);t!==this.context.page.routeId&&this.updateContext({page:{...this.context.page,routeId:t}})}setAnchors(e){this.updateContext({anchors:e})}setSessionId(e){e!==this.context.session.sessionId&&this.updateContext({session:{...this.context.session,sessionId:e}})}setSurfaceType(e){if(e===this.context.surface.type)return;let t=Wp(e,this.context.surface.device);this.updateContext({surface:{...this.context.surface,type:e,mode:t}})}setSurfaceHost(e){e!==this.context.surface.host&&this.updateContext({surface:{...this.context.surface,host:e}})}destroy(){for(let e of this.cleanupFns)e();this.cleanupFns=[],this.listeners.clear()}setupBrowserListeners(){let e,t=()=>{clearTimeout(e),e=setTimeout(()=>{this.updateViewport()},100)};window.addEventListener("resize",t),this.cleanupFns.push(()=>window.removeEventListener("resize",t));let n=this.navigation.subscribe(()=>this.updatePage());this.cleanupFns.push(n)}updateViewport(){let e={width:window.innerWidth,height:window.innerHeight},t=e.width!==this.context.viewport.width,n=e.height!==this.context.viewport.height;if(!t&&!n)return;let i={viewport:e};if(t){let s=y_(e.width);if(s!==this.context.surface.device){let o=Wp(this.context.surface.type,s);i.surface={...this.context.surface,device:s,mode:o}}}this.updateContext(i)}updatePage(){let e=window.location.href,{title:t}=document,n=jp(e,this.routes),i={url:e,title:t,routeId:n};(i.url!==this.context.page.url||i.title!==this.context.page.title||i.routeId!==this.context.page.routeId)&&(i.url!==this.context.page.url&&this.addPageToHistory(i.url),this.updateContext({page:i}))}addPageToHistory(e){let t={url:e,ts:Date.now()},n=[...this.context.session.pageHistory||[],t];n.length>50&&n.shift(),this.context.session.pageHistory=n}updateContext(e){this.previousContext={...this.context},this.context={...this.context,...e},this.notifyListeners()}notifyListeners(){for(let e of this.listeners)try{e(this.context,this.previousContext)}catch(t){console.error("[ContextManager] Listener error:",t)}}};function zp(r){return new tc(r)}function b_(r,e){let{context:t,state:n,events:i}=e;switch(r.type){case"page_url":{let{url:s}=r,o=t.page.url.split("?")[0].split("#")[0],a=s.replace(/\*\*/g,"\0GLOBSTAR\0").replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,"[^/]*").replace(/\0GLOBSTAR\0/g,".*");return new RegExp(`^${a}$`).test(o)}case"route":return t.page.routeId===r.routeId;case"anchor_visible":{let s=t.anchors?.find(o=>o.anchorId===r.anchorId);switch(r.state){case"visible":return s?.visible===!0;case"present":return s?.present===!0;case"absent":return!s?.present;default:return!1}}case"event_occurred":{if(!i)return!1;let s=r.withinMs??6e4;return i.hasRecentEvent(r.eventName,s)}case"state_equals":return n?.getValue?n.getValue(r.key)===r.value:!1;case"viewport":{let{width:s,height:o}=t.viewport;return!(r.minWidth!==void 0&&s<r.minWidth||r.maxWidth!==void 0&&s>r.maxWidth||r.minHeight!==void 0&&o<r.minHeight||r.maxHeight!==void 0&&o>r.maxHeight)}case"session_metric":{let s=e.sessionMetrics?e.sessionMetrics.get(r.key):n?.getSessionMetric(r.key);if(s===void 0)return!1;let{operator:o,threshold:a}=r;switch(o){case"gte":return s>=a;case"lte":return s<=a;case"eq":return s===a;case"gt":return s>a;case"lt":return s<a;default:return!1}}case"dismissed":{if(!n)return r.inverted??!1;let s=n.isDismissed(r.key);return r.inverted?!s:s}case"cooldown_active":{if(!n)return r.inverted??!1;let s=n.isCooldownActive(r.key);return r.inverted?!s:s}case"frequency_limit":{if(!n)return r.inverted??!1;let o=n.getFrequencyCount(r.key)>=r.limit;return r.inverted?!o:o}case"event_count":{if(!e.accumulator)return!1;let s=r,o=e.accumulator.getCount(s.key,s.withinMs);switch(s.operator){case"gte":return o>=s.count;case"lte":return o<=s.count;case"eq":return o===s.count;case"gt":return o>s.count;case"lt":return o<s.count;default:return!1}}default:return console.warn("[RuleStrategy] Unknown condition type:",r.type),!1}}function __(r,e){let t=[];for(let n of r.conditions){let i=b_(n,e);if(t.push({condition:n,result:i}),!i)return{matched:!1,conditionResults:t}}return{matched:!0,conditionResults:t}}function rc(r,e){for(let t=0;t<r.rules.length;t++){let n=r.rules[t],{matched:i,conditionResults:s}=__(n,e);if(i)return{value:n.value,isFallback:!1,matchInfo:{strategyType:"rules",matchedRuleIndex:t,evaluatedConditions:s}}}return{value:r.default,isFallback:!0,matchInfo:{strategyType:"rules"}}}function nc(r,e){let{context:t}=e,n=t.augmented?.[r.field];return n===void 0||typeof n!="number"?{value:r.below,isFallback:!0,matchInfo:{strategyType:"score"}}:{value:n>=r.threshold?r.above:r.below,isFallback:!1,matchInfo:{strategyType:"score"}}}function x_(r,e){let{state:t,events:n,sessionMetrics:i,accumulator:s}=e;return{context:r,state:t?{isDismissed:o=>t.dismissals.isDismissed(o),isCooldownActive:o=>t.cooldowns.isActive(o),getFrequencyCount:o=>t.frequency.count(o),getSessionMetric:o=>i?.get(o)??0,getValue:o=>t.session.get(o)??t.user.get(o)}:void 0,sessionMetrics:i?{get:o=>i.get(o)??0}:void 0,events:n?{hasRecentEvent:(o,a)=>n.hasRecentEvent(o,a)}:void 0,accumulator:s?{getCount:(o,a)=>s.getCount(o,a)}:void 0}}async function w_(r,e,t={}){let n=x_(e,t);switch(r.type){case"rules":return rc(r,n);case"score":return nc(r,n);case"model":return{value:r.default,isFallback:!0,matchInfo:{strategyType:"model"}};case"external":return{value:r.default,isFallback:!0,matchInfo:{strategyType:"external"}};default:return console.warn("[DecisionEngine] Unknown strategy type:",r.type),{value:void 0,isFallback:!0,matchInfo:{strategyType:r.type}}}}function S_(r,e,t={}){let n=x_(e,t);switch(r.type){case"rules":return rc(r,n);case"score":return nc(r,n);case"model":case"external":return{value:r.default,isFallback:!0,matchInfo:{strategyType:r.type}};default:return{value:void 0,isFallback:!0,matchInfo:{strategyType:r.type}}}}function qp(r){return{evaluate:(e,t)=>w_(e,t,r),evaluateSync:(e,t)=>S_(e,t,r)}}function Zp(r){let{eventBus:e,stateStore:t}=r,n=new Map,i=new Set,s=null,o=t.ns("accumulator");function a(c){let u=!1;for(let p of n.values()){if(!p.predicate(c))continue;let h=o.get(p.stateKey)||{count:0};h.count++,p.needsTimestamps&&(h.timestamps||(h.timestamps=[]),h.timestamps.push(c.ts),h.timestamps.length>200&&(h.timestamps=h.timestamps.slice(-200))),o.set(p.stateKey,h),u=!0}if(u)for(let p of i)try{p()}catch(h){console.error("[EventAccumulator] Subscriber error:",h)}}function l(){s||n.size===0||(s=e.subscribe(a))}return{register(c,u,p=!1){let h=`ev:${c}`,f=n.get(h);if(f){p&&!f.needsTimestamps&&(f.needsTimestamps=!0);return}n.set(h,{stateKey:h,needsTimestamps:p,predicate:u}),l()},getCount(c,u){let p=`ev:${c}`,h=o.get(p);if(!h)return 0;if(u===void 0||!h.timestamps)return h.count;let f=Date.now()-u;return h.timestamps.filter(v=>v>=f).length},subscribe(c){return i.add(c),()=>{i.delete(c)}},destroy(){s&&(s(),s=null),n.clear(),i.clear()}}}var Eo=class{constructor(){this.listeners=new Set;this.destroyed=!1;this.onPopState=()=>{this.notify(window.location.href,"popstate")};this.wasNative=this.isNativeFunction(history.pushState),this.capturedPushState=history.pushState,this.capturedReplaceState=history.replaceState,history.pushState=(...e)=>{this.capturedPushState.call(history,...e),queueMicrotask(()=>this.notify(window.location.href,"pushState"))},history.replaceState=(...e)=>{this.capturedReplaceState.call(history,...e),queueMicrotask(()=>this.notify(window.location.href,"replaceState"))},window.addEventListener("popstate",this.onPopState)}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}diagnose(){return{isNative:this.wasNative,subscriberCount:this.listeners.size}}destroy(){this.destroyed||(this.destroyed=!0,history.pushState=this.capturedPushState,history.replaceState=this.capturedReplaceState,window.removeEventListener("popstate",this.onPopState),this.listeners.clear())}notify(e,t){if(!this.destroyed)for(let n of this.listeners)try{n(e,t)}catch{}}isNativeFunction(e){try{return Function.prototype.toString.call(e).includes("[native code]")}catch{return!1}}};var Gp="cooldown:";function k_(r){return{set(e,t){let n=Gp+e,i=Date.now()+t;r.set(n,i)},isActive(e){return this.remaining(e)>0},remaining(e){let t=Gp+e,n=r.get(t);if(n===void 0)return 0;let i=n-Date.now();return i<=0?(r.remove(t),0):i},clear(e){let t=Gp+e;r.remove(t)}}}var Co="dismissed:";function E_(r,e){return{mark(t,n=!1){let i=Co+t;(n?e:r).set(i,!0)},isDismissed(t){let n=Co+t;return r.has(n)||e.has(n)},clear(t){let n=Co+t;r.remove(n),e.remove(n)},clearAll(){for(let t of r.keys())t.startsWith(Co)&&r.remove(t);for(let t of e.keys())t.startsWith(Co)&&e.remove(t)}}}var Kp="freq:";function C_(r){function e(t){let n=Kp+t,i=r.get(n);if(i){if(i.resetAt&&Date.now()>=i.resetAt){r.remove(n);return}return i}}return{increment(t,n){let i=Kp+t,s=e(t),o=(s?.count??0)+1,a={count:o,resetAt:s?.resetAt??(n?Date.now()+n:void 0)};return r.set(i,a),o},count(t){return e(t)?.count??0},reset(t){let n=Kp+t;r.remove(n)},hasReachedLimit(t,n){return this.count(t)>=n}}}var o2="syntro";function Yp(r,e){let t=`${e}:`;return{get(n){if(r)try{let i=r.getItem(t+n);if(!i)return;let s=JSON.parse(i);if(s.expiresAt&&Date.now()>=s.expiresAt){r.removeItem(t+n);return}return s.value}catch{return}},set(n,i,s){if(r)try{let o={value:i,expiresAt:s?Date.now()+s:void 0};r.setItem(t+n,JSON.stringify(o))}catch(o){console.warn("[StateStore] Failed to save:",o)}},remove(n){r&&r.removeItem(t+n)},has(n){return r?this.get(n)!==void 0:!1},keys(){if(!r)return[];let n=[];for(let i=0;i<r.length;i++){let s=r.key(i);s?.startsWith(t)&&n.push(s.slice(t.length))}return n},clear(){if(!r)return;let n=this.keys();for(let i of n)r.removeItem(t+i)}}}function Ao(r){let e=new Map,t=`${r}:`;return{get(n){let i=e.get(t+n);if(i){if(i.expiresAt&&Date.now()>=i.expiresAt){e.delete(t+n);return}return i.value}},set(n,i,s){e.set(t+n,{value:i,expiresAt:s?Date.now()+s:void 0})},remove(n){e.delete(t+n)},has(n){return this.get(n)!==void 0},keys(){let n=[];for(let i of e.keys())i.startsWith(t)&&n.push(i.slice(t.length));return n},clear(){for(let n of e.keys())n.startsWith(t)&&e.delete(n)}}}var ic=class{constructor(e={}){this.namespacedStorages=new Map;this.namespace=e.namespace??o2;let t=n=>typeof n=="object"&&n!==null&&typeof n.setItem=="function";typeof window<"u"?(this.session=t(window.sessionStorage)?Yp(window.sessionStorage,this.namespace):Ao(this.namespace),this.user=t(window.localStorage)?Yp(window.localStorage,this.namespace):Ao(this.namespace)):(this.session=Ao(this.namespace),this.user=Ao(this.namespace)),this.dismissals=E_(this.session,this.user),this.cooldowns=k_(this.user),this.frequency=C_(this.session)}ns(e){let t=`${this.namespace}:${e}`;if(!this.namespacedStorages.has(t)){let n=typeof window<"u"&&typeof sessionStorage<"u"?Yp(sessionStorage,t):Ao(t);this.namespacedStorages.set(t,n)}return this.namespacedStorages.get(t)}};function Xp(r={}){return new ic(r)}function To(r){return r.startsWith("inline:")?"inline":r.startsWith("adjacent:")?"adjacent":"static"}function sc(r){return r.startsWith("inline:")?r.slice(7):r.startsWith("adjacent:")?r.slice(9):null}var A_={drawer_right:{position:"fixed",top:"0",right:"0",bottom:"0",width:"360px",maxWidth:"90vw"},drawer_left:{position:"fixed",top:"0",left:"0",bottom:"0",width:"360px",maxWidth:"90vw"},drawer_bottom:{position:"fixed",left:"0",right:"0",bottom:"0",maxHeight:"50vh"},overlay_center:{position:"fixed",top:"50%",left:"50%",transform:"translate(-50%, -50%)",maxWidth:"90vw",maxHeight:"90vh"},overlay_corner_br:{position:"fixed",bottom:"16px",right:"16px",maxWidth:"400px",maxHeight:"80vh"},overlay_corner_bl:{position:"fixed",bottom:"16px",left:"16px",maxWidth:"400px",maxHeight:"80vh"},toast_top:{position:"fixed",top:"16px",left:"50%",transform:"translateX(-50%)",maxWidth:"90vw"},toast_bottom:{position:"fixed",bottom:"16px",left:"50%",transform:"translateX(-50%)",maxWidth:"90vw"}},Ro={fade:[{opacity:0},{opacity:1}],slide:[{opacity:0,transform:"translateY(10px)"},{opacity:1,transform:"translateY(0)"}],scale:[{opacity:0,transform:"scale(0.95)"},{opacity:1,transform:"scale(1)"}],none:[]},T_={duration:200,easing:"cubic-bezier(0.16, 1, 0.3, 1)",fill:"forwards"};function Jp(r,e,t){let n=A_[e];Object.assign(r.style,n),t&&(t.maxWidth&&(r.style.maxWidth=t.maxWidth),t.maxHeight&&(r.style.maxHeight=t.maxHeight),t.minWidth&&(r.style.minWidth=t.minWidth),t.minHeight&&(r.style.minHeight=t.minHeight))}function Qp(r,e,t){let n=t.placement==="auto"?"bottom":t.placement,i=[wa(t.offset?{mainAxis:t.offset.y,crossAxis:t.offset.x}:8)];return t.flip!==!1&&i.push(ka()),t.shift!==!1&&i.push(Sa({padding:8})),r.style.position="absolute",r.style.zIndex="2147483646",xa(e,r,async()=>{let{x:o,y:a,strategy:l}=await Ea(e,r,{placement:n,middleware:i});Object.assign(r.style,{position:l,left:`${o}px`,top:`${a}px`})})}function eh(r,e,t="append"){return r.style.position="relative",r.style.display="inline-block",t==="prepend"?e.insertBefore(r,e.firstChild):e.appendChild(r),()=>{r.remove()}}function th(r,e){return e==="none"||Ro[e].length===0?null:r.animate(Ro[e],T_)}function rh(r,e){if(e==="none"||Ro[e].length===0)return Promise.resolve();let t=[...Ro[e]].reverse(),n=r.animate(t,T_);return new Promise(i=>{n.onfinish=()=>i(),n.oncancel=()=>i()})}function nh(r,e){let t=document.createElement("div");return t.setAttribute("data-syntro-surface",r),t.setAttribute("data-syntro-mount-id",e),t.className="syntro-surface",Object.assign(t.style,{pointerEvents:"auto",boxSizing:"border-box",overflow:"auto"}),t}function ih(r){switch(To(r)){case"static":return r.startsWith("drawer")?2147483640:r.startsWith("overlay")?2147483642:r.startsWith("toast")?2147483644:2147483640;case"inline":return 1;case"adjacent":return 2147483638;default:return 2147483640}}function R_(r){if(typeof window.Sanitizer=="function")try{let l=new window.Sanitizer({}).sanitizeToFragment(r),c=document.createElement("div");return c.append(l),c.innerHTML}catch{}let t=document.createElement("template");t.innerHTML=r;let n=t.content,i=document.createTreeWalker(n,NodeFilter.SHOW_ELEMENT,null),s=new Set(["b","strong","i","em","u","span","div","p","br","ul","ol","li","code","pre","small","sup","sub","a","button"]),o=[];for(;i.nextNode();){let a=i.currentNode,l=a.tagName.toLowerCase();if(!s.has(l)){o.push(a);continue}for(let c of Array.from(a.attributes)){let u=c.name.toLowerCase(),p=c.value.trim().toLowerCase(),h=u.startsWith("on"),f=(u==="href"||u==="src")&&p.startsWith("javascript:");(h||f)&&a.removeAttribute(c.name)}}for(let a of o){for(;a.firstChild;)a.parentNode?.insertBefore(a.firstChild,a);a.remove()}return t.innerHTML=(n.firstChild,t.innerHTML)}var a2=0;function sh(r){let{overlayRoot:e,eventBus:t,anchorResolver:n,defaultAnimation:i="fade",widgetRegistry:s}=r,o=new Map,a=new Map,l=new Map;function c(){return`mount-${++a2}`}function u(b,w){t&&t.publish(b,w)}function p(b){let w=l.get(b);if(w){let A=m(b);for(let _ of w)try{_(A)}catch(C){console.error("[Surfaces] State callback error:",C)}}}let h=new Map;function f(b,w,A){switch(w.type){case"html":b.innerHTML=R_(w.content);return;case"widget":{if(s?.has(w.widgetId)){let _=s.mount(w.widgetId,b,w.config);return A&&h.set(A,_),()=>{_.unmount(),A&&h.delete(A)}}console.warn(`[Surfaces] Widget not found: ${w.widgetId}`),b.innerHTML=`<div data-widget-id="${w.widgetId}" data-widget-missing="true">Widget: ${w.widgetId}</div>`;return}case"custom":return w.mount(b);case"react":b.innerHTML="<div data-react-component>React Component</div>";return;default:console.warn("[Surfaces] Unknown content type");return}}function v(b,w,A){let _=c(),C=To(b),I=A?.priority??0,R=A?.animation??i,P=A?.exclusive??!0,Y=o.get(b);if(Y&&P){if(Y.options.priority>I)throw new Error(`Slot ${b} is occupied by higher priority content (${Y.options.priority} > ${I})`);g(Y)}let F=nh(b,_);F.style.zIndex=String(ih(b));let L;if(C==="static")Jp(F,b,A?.constraints),e.appendChild(F);else if(C==="inline"){let j=sc(b);if(!j)throw new Error(`Invalid inline slot: ${b}`);if(!n)throw new Error("Anchor resolver required for inline slots");let te=n({selector:j,route:"**"});if(!te)throw new Error(`Anchor not found for inline slot: ${j}`);L=eh(F,te)}else if(C==="adjacent"){let j=sc(b);if(!j)throw new Error(`Invalid adjacent slot: ${b}`);if(!n)throw new Error("Anchor resolver required for adjacent slots");let te=n({selector:j,route:"**"});if(!te)throw new Error(`Anchor not found for adjacent slot: ${j}`);e.appendChild(F),L=Qp(F,te,A?.position??{placement:"bottom"})}let G=f(F,w,_);th(F,R);let K={id:_,slot:b,content:w,options:{priority:I,exclusive:P,animation:R,position:A?.position??{placement:"auto"},constraints:A?.constraints??{},adaptiveId:A?.adaptiveId,autoUnmountOnRouteChange:A?.autoUnmountOnRouteChange??!0},container:F,cleanup:()=>{L?.(),G?.()},mountedAt:Date.now()};return o.set(b,K),a.set(b,(a.get(b)??0)+1),u("surface.mounted",{slot:b,id:_,adaptiveId:A?.adaptiveId}),p(b),{id:_,update(j){let te=o.get(b);if(!te||te.id!==_)throw new Error("Mount no longer active");let De=h.get(_);if(De){if(j.type==="widget"){De.update(j.config),te.content=j;return}De.unmount(),h.delete(_)}te.container.innerHTML="";let V=f(te.container,j,_);if(te.content=j,V){let J=te.cleanup;te.cleanup=()=>{J?.(),V()}}},setOptions(j){let te=o.get(b);if(!te||te.id!==_)throw new Error("Mount no longer active");j.priority!==void 0&&(te.options.priority=j.priority),j.animation!==void 0&&(te.options.animation=j.animation),j.constraints&&C==="static"&&(j.constraints.maxWidth&&(te.container.style.maxWidth=j.constraints.maxWidth),j.constraints.maxHeight&&(te.container.style.maxHeight=j.constraints.maxHeight),j.constraints.minWidth&&(te.container.style.minWidth=j.constraints.minWidth),j.constraints.minHeight&&(te.container.style.minHeight=j.constraints.minHeight)),p(b)},async unmount(){let j=o.get(b);!j||j.id!==_||await g(j)},isMounted(){return o.get(b)?.id===_},getContainer(){let j=o.get(b);return j?.id===_?j.container:null}}}async function g(b){b.container.isConnected&&await rh(b.container,b.options.animation);try{b.cleanup?.()}catch(w){console.warn("[Surfaces] Cleanup error during unmount, ignoring:",w)}try{b.container.remove()}catch{}o.delete(b.slot),u("surface.unmounted",{slot:b.slot,id:b.id}),p(b.slot)}function m(b){let w=o.get(b);return{slot:b,occupied:!!w,currentPriority:w?.options.priority,currentAdaptiveId:w?.options.adaptiveId,mountCount:a.get(b)??0,currentMountId:w?.id}}function y(b,w){let A=l.get(b);return A||(A=new Set,l.set(b,A)),A.add(w),()=>{A?.delete(w),A?.size===0&&l.delete(b)}}function x(b,w){let A=o.get(b);return A?w!==void 0?w>=A.options.priority:!1:!0}function S(){for(let b of o.values())try{b.cleanup?.(),b.container.remove()}catch(w){console.error("[Surfaces] Error during cleanup:",w)}o.clear(),l.clear()}return{mount:v,getState:m,onStateChange:y,canMount:x,destroy:S}}var oc=class{constructor(){this.widgets=new Map;this.mountedWidgets=new Map;this.mountIdCounter=0;this.listeners=new Set}bindRuntime(e){this.runtimeRef=e}register(e,t,n="custom",i){if(this.widgets.has(e)){if(this.widgets.get(e).source==="built-in")throw new Error(`Cannot override built-in widget: ${e}`);console.warn(`[WidgetRegistry] Overriding widget: ${e}`)}this.widgets.set(e,{id:e,widget:t,source:n,metadata:i}),this.notify({type:"registered",widgetId:e})}unregister(e){let t=this.widgets.get(e);return t?t.source==="built-in"?(console.warn(`[WidgetRegistry] Cannot unregister built-in widget: ${e}`),!1):(this.widgets.delete(e),this.notify({type:"unregistered",widgetId:e}),!0):!1}unregisterBySource(e){for(let[t,n]of this.widgets.entries())n.source===e&&this.widgets.delete(t)}get(e){return this.widgets.get(e)?.widget}getRegistration(e){return this.widgets.get(e)}has(e){return this.widgets.has(e)}mount(e,t,n){let i=this.widgets.get(e);if(!i)throw new Error(`Widget not found: ${e}`);let s=`widget-mount-${++this.mountIdCounter}`;t.setAttribute("data-widget-mount-id",s),t.setAttribute("data-widget-id",e);let o={...n,runtime:this.runtimeRef},a=i.widget.mount(t,o);return this.mountedWidgets.set(s,{cleanup:a??void 0,container:t}),{widgetId:e,container:t,unmount:()=>{let c=this.mountedWidgets.get(s);c&&(t.isConnected&&c.cleanup?.(),this.mountedWidgets.delete(s),t.removeAttribute("data-widget-mount-id"),t.removeAttribute("data-widget-id"),t.innerHTML="")},update:c=>{if(i.widget.update)i.widget.update(t,c);else{let u=this.mountedWidgets.get(s);if(u){u.cleanup?.(),t.innerHTML="";let p={...c,runtime:this.runtimeRef},h=i.widget.mount(t,p);u.cleanup=h??void 0}}}}}list(){return Array.from(this.widgets.keys())}listRegistrations(){return Array.from(this.widgets.values())}getBySource(e){return Array.from(this.widgets.values()).filter(t=>t.source===e)}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notify(e){for(let t of this.listeners)try{t(e)}catch(n){console.error("[WidgetRegistry] Listener error:",n)}}destroy(){for(let[e,t]of this.mountedWidgets.entries())t.cleanup?.(),t.container.innerHTML="";this.mountedWidgets.clear()}},oh=new oc;var $_="2.0.0";function l2(r,e){if(!e)return!0;let t;try{t=new URL(r).pathname}catch{t=r}t.startsWith("/")||(t=`/${t}`);let n=t.replace(/\/$/,"")||"/";if(e.exclude){for(let i of e.exclude)if(ah(n,i))return!1}if(e.include&&e.include.length>0){for(let i of e.include)if(ah(n,i))return!0;return!1}return!0}function ah(r,e){let t=e.replace(/\/$/,"")||"/";if(r===t)return!0;let n=t.replace(/\*\*/g,"\0GLOBSTAR\0").replace(/[.+^${}()|[\]\\]/g,"\\$&").replace(/\*/g,"[^/]*").replace(/\0GLOBSTAR\0/g,".*").replace(/:[^/]+/g,"[^/]+");return new RegExp(`^${n}$`).test(r)}function I_(r){let t=(typeof window<"u"?window.location.pathname:"/").replace(/\/$/,"")||"/";return(Array.isArray(r.route)?r.route:[r.route]).some(i=>{let s=i;if(/^https?:\/\//.test(s))try{s=new URL(s).pathname}catch{}return ah(t,s)})}function lh(r={}){let{telemetry:e,sessionMetrics:t,routes:n,mode:i="production",namespace:s}=r,o=r.widgets??oh,a=r.executors??Cr,l=r.apps??ws,c=new Eo,u=zp({telemetry:e,routes:n,navigation:c,initialSurfaceType:r.initialSurfaceType,initialSurfaceHost:r.initialSurfaceHost}),p=r.events??vo(),h=Xp({namespace:s}),f=Zp({eventBus:p,stateStore:h}),v=qp({state:h,events:p,sessionMetrics:t,accumulator:f}),g=cb(),m=rp(),y=P=>I_(P)?m.resolve(P.selector):null,x=async(P,Y)=>{if(!I_(P))return null;try{return await m.waitFor(P.selector,Y)}catch{return null}},S=sh({overlayRoot:g,eventBus:p,anchorResolver:y,widgetRegistry:o}),b=Jd({overlayRoot:g,eventBus:p,surfaces:S,anchorResolver:y,waitForAnchor:x,executorRegistry:a,subscribeNavigation:P=>c.subscribe(P),runtime:{evaluateSync:P=>v.evaluateSync(P,u.get()),context:u,accumulator:f,sessionMetrics:t,events:p?{subscribe:P=>p.subscribe(()=>P())}:void 0}}),w;if(t){let P=t;P.increment("page_views");let Y=typeof window<"u"?window.location.pathname:"/";w=c.subscribe((F,L)=>{if(L!=="replaceState")try{let G=new URL(F).pathname;G!==Y&&(Y=G,P.increment("page_views"),A=0,P.set("time_on_page",0),P.set("scroll_depth",0))}catch{}})}let A=0,_,C;if(t){let P=t;_=setInterval(()=>{A++},1e3),C=setInterval(()=>{P.set("time_on_page",A)},5e3)}let I;if(t&&p){let P=t;I=p.subscribe({names:["ui.scroll"]},Y=>{let F=Y.props?.scrollPercentage;typeof F=="number"&&F>P.get("scroll_depth")&&P.set("scroll_depth",F)})}let R={telemetry:e,context:u,events:p,state:h,sessionMetrics:t,actions:b,surfaces:S,widgets:o,executors:a,apps:l,accumulator:f,anchorResolver:m,navigation:c,version:$_,mode:i,async evaluate(P){return v.evaluate(P,u.get())},evaluateSync(P){return v.evaluateSync(P,u.get())},async filterTiles(P){let Y=u.get().page.url,F=[];for(let L of P){let G=L.activation;if(!G){F.push(L);continue}if(l2(Y,G.routes)){if(G.onlyIfPopulated){let K=L.props?.actions??[];if(K.length>0&&!K.some(j=>j.triggerWhen?v.evaluateSync(j.triggerWhen,u.get()).value:!0))continue}F.push(L)}}return F},setRoutes(P){u.setRoutes(P)},destroy(){l.unbind().catch(P=>{console.error("[Runtime] Error unbinding apps registry:",P)}),w?.(),I?.(),_&&clearInterval(_),C&&clearInterval(C),m.destroy(),f.destroy(),c.destroy(),u.destroy(),b.destroy(),S.destroy()}};return l.bind(R),o.bindRuntime(R),R}function M_(r){return r==="granted"?"granted":r==="denied"?"denied":"pending"}function ch(r){return r?Array.isArray(r)&&r[0]==="consent"?r[2]?.analytics_storage??null:typeof r=="object"&&r.event==="consent_update"?r.analytics_storage??null:null:null}var Io=class{constructor(){this.name="gtm-consent-mode-v2"}detect(){if(typeof window>"u")return!1;let e=window.dataLayer;if(!Array.isArray(e))return!1;for(let t of e)if(ch(t)!==null)return!0;return!1}initialize(e){if(typeof window>"u")return e("pending"),()=>{};Array.isArray(window.dataLayer)||(window.dataLayer=[]),e(this.readCurrentState());let t=window.dataLayer,n=t.push.bind(t),i=(...s)=>{let o=n(...s);for(let a of s){let l=ch(a);l!==null&&e(M_(l))}return o};return t.push=i,()=>{t.push===i&&(t.push=n)}}readCurrentState(){if(typeof window>"u")return"pending";let e=window.dataLayer;if(!Array.isArray(e))return"pending";for(let t=e.length-1;t>=0;t--){let n=ch(e[t]);if(n!==null)return M_(n)}return"pending"}};var $o=class{constructor(){this.name="iab-tcf-v2"}detect(){return typeof window>"u"?!1:typeof window.__tcfapi=="function"}initialize(e){if(e("pending"),typeof window>"u")return()=>{};let t=window.__tcfapi;if(typeof t!="function")return()=>{};let n;return t("addEventListener",2,(i,s)=>{if(!s||!i||(n===void 0&&typeof i.listenerId=="number"&&(n=i.listenerId),!(i.eventStatus==="tcloaded"||i.eventStatus==="useractioncomplete")))return;if(i.gdprApplies===!1){e("granted");return}let a=i.purpose?.consents??{},l=a[1]===!0,c=a[8]===!0;e(l&&c?"granted":"denied")}),()=>{if(n!==void 0)try{t("removeEventListener",2,()=>{},n)}catch{}}}};var P_="visitorConsentCollected",Mo=class{constructor(){this.name="shopify-customer-privacy"}detect(){return typeof window>"u"?!1:typeof window.Shopify?.loadFeatures=="function"}initialize(e){if(e("pending"),typeof window>"u")return()=>{};let t=window.Shopify;if(!t?.loadFeatures)return()=>{};let n;return t.loadFeatures([{name:"consent-tracking-api",version:"0.1"}],i=>{if(i)return;let s=t.customerPrivacy?.userCanBeTracked()??!0;e(s?"granted":"denied"),n=o=>{let a=o.detail;e(a?.analyticsAllowed?"granted":"denied")},document.addEventListener(P_,n)}),()=>{n&&document.removeEventListener(P_,n)}}};var Po=class{constructor(e){this.options=e}async start(e){for(let n of this.options.adapters){let i=!1;try{i=n.detect()}catch{continue}if(i)try{let s=n.initialize(o=>e.setStatus(o));return this.options.onAdapterSelected?.(n.name),s}catch(s){console.warn(`[Syntro consent] Adapter "${n.name}" failed:`,s)}}this.options.onAdapterSelected?.(null);let t=await this.resolveFallback();return e.setStatus(t),()=>{}}async resolveFallback(){if(!this.options.fallbackStatus)return"pending";try{return await this.options.fallbackStatus()}catch{return"pending"}}};var Oo=class{constructor(e={}){this.listeners=new Set;this.destroyed=!1;this.status=e.initialStatus??"pending",this.configCallback=e.onConsentChange,this.gtmEnabled=e.readFromGtmConsentMode??!1,this.pendingResolverFn=e.pendingResolver}grant(){this.setStatus("granted")}deny(){this.setStatus("denied")}getStatus(){return this.status}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}subscribeOnce(e){if(this.status!=="pending")return queueMicrotask(()=>e(this.status)),()=>{};let t=this.subscribe(n=>{n!=="pending"&&(t(),e(n))});return t}async resolvePending(){if(this.status!=="pending")return this.status;if(!this.pendingResolverFn)return"denied";try{return await this.pendingResolverFn()}catch{return"denied"}}setStatus(e){this.applyStatus(e)}pollGtmConsent(){if(!this.gtmEnabled||typeof window>"u")return;let e=window.dataLayer;if(Array.isArray(e))for(let t=e.length-1;t>=0;t--){let n=e[t];if(!n)continue;if(n[0]==="consent"&&n[1]==="update"&&n[2]){let s=n[2].analytics_storage;s==="granted"?this.setStatus("granted"):s==="denied"&&this.setStatus("denied");return}}}destroy(){this.destroyed=!0,this.listeners.clear()}applyStatus(e){this.destroyed||this.status!==e&&(this.status=e,this.notify(e))}notify(e){if(this.configCallback)try{this.configCallback(e)}catch{}for(let t of this.listeners)try{t(e)}catch{}}};var Lo=class{constructor(e,t){this.seenSet=new Set;this.triggeredSet=new Set;this.telemetry=e,this.variantId=t}trackServed(e,t){this.telemetry.track?.("syntro_config_served",{variant_id:this.variantId,tiles:e,actions:t})}trackSeen(e,t){this.seenSet.has(e)||(this.seenSet.add(e),this.telemetry.track?.("syntro_intervention_seen",{variant_id:this.variantId,intervention_id:e,intervention_kind:t}))}trackTriggered(e,t){this.triggeredSet.has(e)||(this.triggeredSet.add(e),this.telemetry.track?.("syntro_intervention_triggered",{variant_id:this.variantId,intervention_id:e,intervention_kind:t}))}trackInteracted(e,t,n){this.telemetry.track?.("syntro_intervention_interacted",{variant_id:this.variantId,intervention_id:e,intervention_kind:t,interaction_type:n})}resetPage(){this.seenSet.clear(),this.triggeredSet.clear()}};function c2(){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e="";for(let t=0;t<16;t++)e+=r[Math.floor(Math.random()*r.length)];return e}var uh=class{constructor(){this.sessionId=c2(),console.log(`[Syntro Telemetry] Using noop adapter (no telemetry configured). sessionId=${this.sessionId}`)}trackCanvasOpened(e){}trackCanvasClosed(e){}trackRectangleViewed(e,t){}trackAction(e,t,n){}register(e){}getSessionId(){return this.sessionId}startSessionRecording(){}trackExperiment(e,t,n){}setPersonProperties(e){}setPersonPropertiesOnce(e){}getDistinctId(){return"demo-user"}getAllFeatureFlags(){return{}}getSegmentFlags(){return{}}track(e,t){}identify(e,t){}alias(e,t){}optInCapturing(){}optOutCapturing(){}};function dh(){return new uh}var E=typeof window<"u"?window:void 0,tt=typeof globalThis<"u"?globalThis:E;typeof self>"u"&&(tt.self=tt),typeof File>"u"&&(tt.File=function(){});var R0=Array.prototype,O_=R0.forEach,L_=R0.indexOf,wt=tt?.navigator,H=tt?.document,et=tt?.location,Rh=tt?.fetch,Ih=tt!=null&&tt.XMLHttpRequest&&"withCredentials"in new tt.XMLHttpRequest?tt.XMLHttpRequest:void 0,N_=tt?.AbortController,yt=wt?.userAgent,re=E??{},$r={DEBUG:!1,LIB_VERSION:"1.341.0"};function F_(r,e,t,n,i,s,o){try{var a=r[s](o),l=a.value}catch(c){return void t(c)}a.done?e(l):Promise.resolve(l).then(n,i)}function Ui(r){return function(){var e=this,t=arguments;return new Promise((function(n,i){var s=r.apply(e,t);function o(l){F_(s,n,i,o,a,"next",l)}function a(l){F_(s,n,i,o,a,"throw",l)}o(void 0)}))}}function W(){return W=Object.assign?Object.assign.bind():function(r){for(var e=1;e<arguments.length;e++){var t=arguments[e];for(var n in t)({}).hasOwnProperty.call(t,n)&&(r[n]=t[n])}return r},W.apply(null,arguments)}function I0(r,e){if(r==null)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(e.indexOf(n)!==-1)continue;t[n]=r[n]}return t}var u2=["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"],D_=function(r,e){if(e===void 0&&(e=[]),!r)return!1;var t=r.toLowerCase();return u2.concat(e).some((n=>{var i=n.toLowerCase();return t.indexOf(i)!==-1}))},d2=["$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 fe(r,e){return r.indexOf(e)!==-1}var Nc=function(r){return r.trim()},$h=function(r){return r.replace(/^\$/,"")},p2=Array.isArray,$0=Object.prototype,M0=$0.hasOwnProperty,Fc=$0.toString,xe=p2||function(r){return Fc.call(r)==="[object Array]"},cn=r=>typeof r=="function",We=r=>r===Object(r)&&!xe(r),ji=r=>{if(We(r)){for(var e in r)if(M0.call(r,e))return!1;return!0}return!1},B=r=>r===void 0,ze=r=>Fc.call(r)=="[object String]",Mh=r=>ze(r)&&r.trim().length===0,Wt=r=>r===null,ge=r=>B(r)||Wt(r),Fr=r=>Fc.call(r)=="[object Number]"&&r==r,Bi=r=>Fr(r)&&r>0,Nr=r=>Fc.call(r)==="[object Boolean]",h2=r=>r instanceof FormData,f2=r=>fe(d2,r);function Ph(r){return r===null||typeof r!="object"}function fc(r,e){return Object.prototype.toString.call(r)==="[object "+e+"]"}function P0(r){return!B(Event)&&(function(e,t){try{return e instanceof t}catch{return!1}})(r,Event)}var g2=[!0,"true",1,"1","yes"],ph=r=>fe(g2,r),m2=[!1,"false",0,"0","no"];function dr(r,e,t,n,i){return e>t&&(n.warn("min cannot be greater than max."),e=t),Fr(r)?r>t?(n.warn(" cannot be greater than max: "+t+". Using max value instead."),t):r<e?(n.warn(" cannot be less than min: "+e+". Using min value instead."),e):r:(n.warn(" must be a number. using max or fallback. max: "+t+", fallback: "+i),dr(i||t,e,t,n))}var Oh=class{constructor(e){this.t={},this.i=e.i,this.o=dr(e.bucketSize,0,100,e.h),this.m=dr(e.refillRate,0,this.o,e.h),this.$=dr(e.refillInterval,0,864e5,e.h)}S(e,t){var n=t-e.lastAccess,i=Math.floor(n/this.$);if(i>0){var s=i*this.m;e.tokens=Math.min(e.tokens+s,this.o),e.lastAccess=e.lastAccess+i*this.$}}consumeRateLimit(e){var t,n=Date.now(),i=String(e),s=this.t[i];return s?this.S(s,n):(s={tokens:this.o,lastAccess:n},this.t[i]=s),s.tokens===0||(s.tokens--,s.tokens===0&&((t=this.i)==null||t.call(this,e)),s.tokens===0)}stop(){this.t={}}},$t="Mobile",gc="iOS",Lr="Android",ra="Tablet",O0=Lr+" "+ra,L0="iPad",N0="Apple",F0=N0+" Watch",na="Safari",Zi="BlackBerry",D0="Samsung",H0=D0+"Browser",B0=D0+" Internet",ri="Chrome",v2=ri+" OS",V0=ri+" "+gc,jf="Internet Explorer",U0=jf+" "+$t,Wf="Opera",y2=Wf+" Mini",zf="Edge",j0="Microsoft "+zf,zi="Firefox",W0=zi+" "+gc,ia="Nintendo",sa="PlayStation",qi="Xbox",z0=Lr+" "+$t,q0=$t+" "+na,zo="Windows",Lh=zo+" Phone",H_="Nokia",Nh="Ouya",Z0="Generic",b2=Z0+" "+$t.toLowerCase(),G0=Z0+" "+ra.toLowerCase(),Fh="Konqueror",ct="(\\d+(\\.\\d+)?)",hh=new RegExp("Version/"+ct),_2=new RegExp(qi,"i"),x2=new RegExp(sa+" \\w+","i"),w2=new RegExp(ia+" \\w+","i"),qf=new RegExp(Zi+"|PlayBook|BB10","i"),S2={"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"},ac,B_,fh,k2=(r,e)=>e&&fe(e,N0)||(function(t){return fe(t,na)&&!fe(t,ri)&&!fe(t,Lr)})(r),K0=function(r,e){return e=e||"",fe(r," OPR/")&&fe(r,"Mini")?y2:fe(r," OPR/")?Wf:qf.test(r)?Zi:fe(r,"IE"+$t)||fe(r,"WPDesktop")?U0:fe(r,H0)?B0:fe(r,zf)||fe(r,"Edg/")?j0:fe(r,"FBIOS")?"Facebook "+$t:fe(r,"UCWEB")||fe(r,"UCBrowser")?"UC Browser":fe(r,"CriOS")?V0:fe(r,"CrMo")||fe(r,ri)?ri:fe(r,Lr)&&fe(r,na)?z0:fe(r,"FxiOS")?W0:fe(r.toLowerCase(),Fh.toLowerCase())?Fh:k2(r,e)?fe(r,$t)?q0:na:fe(r,zi)?zi:fe(r,"MSIE")||fe(r,"Trident/")?jf:fe(r,"Gecko")?zi:""},E2={[U0]:[new RegExp("rv:"+ct)],[j0]:[new RegExp(zf+"?\\/"+ct)],[ri]:[new RegExp("("+ri+"|CrMo)\\/"+ct)],[V0]:[new RegExp("CriOS\\/"+ct)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+ct)],[na]:[hh],[q0]:[hh],[Wf]:[new RegExp("(Opera|OPR)\\/"+ct)],[zi]:[new RegExp(zi+"\\/"+ct)],[W0]:[new RegExp("FxiOS\\/"+ct)],[Fh]:[new RegExp("Konqueror[:/]?"+ct,"i")],[Zi]:[new RegExp(Zi+" "+ct),hh],[z0]:[new RegExp("android\\s"+ct,"i")],[B0]:[new RegExp(H0+"\\/"+ct)],[jf]:[new RegExp("(rv:|MSIE )"+ct)],Mozilla:[new RegExp("rv:"+ct)]},C2=function(r,e){var t=K0(r,e),n=E2[t];if(B(n))return null;for(var i=0;i<n.length;i++){var s=n[i],o=r.match(s);if(o)return parseFloat(o[o.length-2])}return null},V_=[[new RegExp(qi+"; "+qi+" (.*?)[);]","i"),r=>[qi,r&&r[1]||""]],[new RegExp(ia,"i"),[ia,""]],[new RegExp(sa,"i"),[sa,""]],[qf,[Zi,""]],[new RegExp(zo,"i"),(r,e)=>{if(/Phone/.test(e)||/WPDesktop/.test(e))return[Lh,""];if(new RegExp($t).test(e)&&!/IEMobile\b/.test(e))return[zo+" "+$t,""];var t=/Windows NT ([0-9.]+)/i.exec(e);if(t&&t[1]){var n=t[1],i=S2[n]||"";return/arm/i.test(e)&&(i="RT"),[zo,i]}return[zo,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,r=>{if(r&&r[3]){var e=[r[3],r[4],r[5]||"0"];return[gc,e.join(".")]}return[gc,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,r=>{var e="";return r&&r.length>=3&&(e=B(r[2])?r[3]:r[2]),["watchOS",e]}],[new RegExp("("+Lr+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Lr+")","i"),r=>{if(r&&r[2]){var e=[r[2],r[3],r[4]||"0"];return[Lr,e.join(".")]}return[Lr,""]}],[/Mac OS X (\d+)[_.](\d+)[_.]?(\d+)?/i,r=>{var e=["Mac OS X",""];if(r&&r[1]){var t=[r[1],r[2],r[3]||"0"];e[1]=t.join(".")}return e}],[/Mac/i,["Mac OS X",""]],[/CrOS/,[v2,""]],[/Linux|debian/i,["Linux",""]]],U_=function(r){return w2.test(r)?ia:x2.test(r)?sa:_2.test(r)?qi:new RegExp(Nh,"i").test(r)?Nh:new RegExp("("+Lh+"|WPDesktop)","i").test(r)?Lh:/iPad/.test(r)?L0:/iPod/.test(r)?"iPod Touch":/iPhone/.test(r)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(r)?F0:qf.test(r)?Zi:/(kobo)\s(ereader|touch)/i.test(r)?"Kobo":new RegExp(H_,"i").test(r)?H_:/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i.test(r)||/(kf[a-z]+)( bui|\)).+silk\//i.test(r)?"Kindle Fire":/(Android|ZTE)/i.test(r)?new RegExp($t).test(r)&&!/(9138B|TB782B|Nexus [97]|pixel c|HUAWEISHT|BTV|noble nook|smart ultra 6)/i.test(r)||/pixel[\daxl ]{1,6}/i.test(r)&&!/pixel c/i.test(r)||/(huaweimed-al00|tah-|APA|SM-G92|i980|zte|U304AA)/i.test(r)||/lmy47v/i.test(r)&&!/QTAQZ3/i.test(r)?Lr:O0:new RegExp("(pda|"+$t+")","i").test(r)?b2:new RegExp(ra,"i").test(r)&&!new RegExp(ra+" pc","i").test(r)?G0:""},A2=r=>r instanceof Error;function T2(r){var e=globalThis._posthogChunkIds;if(e){var t=Object.keys(e);return fh&&t.length===B_||(B_=t.length,fh=t.reduce(((n,i)=>{ac||(ac={});var s=ac[i];if(s)n[s[0]]=s[1];else for(var o=r(i),a=o.length-1;a>=0;a--){var l=o[a],c=l?.filename,u=e[i];if(c&&u){n[c]=u,ac[i]=[c,u];break}}return n}),{})),fh}}var Dh=class{constructor(e,t,n){n===void 0&&(n=[]),this.coercers=e,this.stackParser=t,this.modifiers=n}buildFromUnknown(e,t){t===void 0&&(t={});var n=t&&t.mechanism||{handled:!0,type:"generic"},i=this.buildCoercingContext(n,t,0).apply(e),s=this.buildParsingContext(),o=this.parseStacktrace(i,s);return{$exception_list:this.convertToExceptionList(o,n),$exception_level:"error"}}modifyFrames(e){var t=this;return Ui((function*(){for(var n of e)n.stacktrace&&n.stacktrace.frames&&xe(n.stacktrace.frames)&&(n.stacktrace.frames=yield t.applyModifiers(n.stacktrace.frames));return e}))()}coerceFallback(e){var t;return{type:"Error",value:"Unknown error",stack:(t=e.syntheticException)==null?void 0:t.stack,synthetic:!0}}parseStacktrace(e,t){var n,i;return e.cause!=null&&(n=this.parseStacktrace(e.cause,t)),e.stack!=""&&e.stack!=null&&(i=this.applyChunkIds(this.stackParser(e.stack,e.synthetic?1:0),t.chunkIdMap)),W({},e,{cause:n,stack:i})}applyChunkIds(e,t){return e.map((n=>(n.filename&&t&&(n.chunk_id=t[n.filename]),n)))}applyCoercers(e,t){for(var n of this.coercers)if(n.match(e))return n.coerce(e,t);return this.coerceFallback(t)}applyModifiers(e){var t=this;return Ui((function*(){var n=e;for(var i of t.modifiers)n=yield i(n);return n}))()}convertToExceptionList(e,t){var n,i,s,o={type:e.type,value:e.value,mechanism:{type:(n=t.type)!==null&&n!==void 0?n:"generic",handled:(i=t.handled)===null||i===void 0||i,synthetic:(s=e.synthetic)!==null&&s!==void 0&&s}};e.stack&&(o.stacktrace={type:"raw",frames:e.stack});var a=[o];return e.cause!=null&&a.push(...this.convertToExceptionList(e.cause,W({},t,{handled:!0}))),a}buildParsingContext(){return{chunkIdMap:T2(this.stackParser)}}buildCoercingContext(e,t,n){n===void 0&&(n=0);var i=(s,o)=>{if(o<=4){var a=this.buildCoercingContext(e,t,o);return this.applyCoercers(s,a)}};return W({},t,{syntheticException:n==0?t.syntheticException:void 0,mechanism:e,apply:s=>i(s,n),next:s=>i(s,n+1)})}},Gi="?";function Hh(r,e,t,n,i){var s={platform:r,filename:e,function:t==="<anonymous>"?Gi:t,in_app:!0};return B(n)||(s.lineno=n),B(i)||(s.colno=i),s}var Y0=(r,e)=>{var t=r.indexOf("safari-extension")!==-1,n=r.indexOf("safari-web-extension")!==-1;return t||n?[r.indexOf("@")!==-1?r.split("@")[0]:Gi,t?"safari-extension:"+e:"safari-web-extension:"+e]:[r,e]},R2=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,I2=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,$2=/\((\S*)(?::(\d+))(?::(\d+))\)/,M2=(r,e)=>{var t=R2.exec(r);if(t){var[,n,i,s]=t;return Hh(e,n,Gi,+i,+s)}var o=I2.exec(r);if(o){if(o[2]&&o[2].indexOf("eval")===0){var a=$2.exec(o[2]);a&&(o[2]=a[1],o[3]=a[2],o[4]=a[3])}var[l,c]=Y0(o[1]||Gi,o[2]);return Hh(e,c,l,o[3]?+o[3]:void 0,o[4]?+o[4]:void 0)}},P2=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,O2=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,L2=(r,e)=>{var t=P2.exec(r);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){var n=O2.exec(t[3]);n&&(t[1]=t[1]||"eval",t[3]=n[1],t[4]=n[2],t[5]="")}var i=t[3],s=t[1]||Gi;return[s,i]=Y0(s,i),Hh(e,i,s,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},j_=/\(error: (.*)\)/,W_=50;function N2(){return(function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return function(i,s){s===void 0&&(s=0);for(var o=[],a=i.split(`
1063
+ `),l=s;l<a.length;l++){var c=a[l];if(!(c.length>1024)){var u=j_.test(c)?c.replace(j_,"$1"):c;if(!u.match(/\S*Error: /)){for(var p of t){var h=p(u,r);if(h){o.push(h);break}}if(o.length>=W_)break}}}return(function(f){if(!f.length)return[];var v=Array.from(f);return v.reverse(),v.slice(0,W_).map((g=>{return W({},g,{filename:g.filename||(m=v,m[m.length-1]||{}).filename,function:g.function||Gi});var m}))})(o)}})("web:javascript",M2,L2)}var Bh=class{match(e){return this.isDOMException(e)||this.isDOMError(e)}coerce(e,t){var n=ze(e.stack);return{type:this.getType(e),value:this.getValue(e),stack:n?e.stack:void 0,cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return this.isDOMError(e)?"DOMError":"DOMException"}getValue(e){var t=e.name||(this.isDOMError(e)?"DOMError":"DOMException");return e.message?t+": "+e.message:t}isDOMException(e){return fc(e,"DOMException")}isDOMError(e){return fc(e,"DOMError")}},Vh=class{match(e){return(t=>t instanceof Error)(e)}coerce(e,t){return{type:this.getType(e),value:this.getMessage(e,t),stack:this.getStack(e),cause:e.cause?t.next(e.cause):void 0,synthetic:!1}}getType(e){return e.name||e.constructor.name}getMessage(e,t){var n=e.message;return n.error&&typeof n.error.message=="string"?String(n.error.message):String(n)}getStack(e){return e.stacktrace||e.stack||void 0}},Uh=class{constructor(){}match(e){return fc(e,"ErrorEvent")&&e.error!=null}coerce(e,t){var n,i=t.apply(e.error);return i||{type:"ErrorEvent",value:e.message,stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},F2=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,jh=class{match(e){return typeof e=="string"}coerce(e,t){var n,[i,s]=this.getInfos(e);return{type:i??"Error",value:s??e,stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}getInfos(e){var t="Error",n=e,i=e.match(F2);return i&&(t=i[1],n=i[2]),[t,n]}},D2=["fatal","error","warning","log","info","debug"];function X0(r,e){e===void 0&&(e=40);var t=Object.keys(r);if(t.sort(),!t.length)return"[object has no keys]";for(var n=t.length;n>0;n--){var i=t.slice(0,n).join(", ");if(!(i.length>e))return n===t.length||i.length<=e?i:i.slice(0,e)+"..."}return""}var Wh=class{match(e){return typeof e=="object"&&e!==null}coerce(e,t){var n,i=this.getErrorPropertyFromObject(e);return i?t.apply(i):{type:this.getType(e),value:this.getValue(e),stack:(n=t.syntheticException)==null?void 0:n.stack,level:this.isSeverityLevel(e.level)?e.level:"error",synthetic:!0}}getType(e){return P0(e)?e.constructor.name:"Error"}getValue(e){if("name"in e&&typeof e.name=="string"){var t="'"+e.name+"' captured as exception";return"message"in e&&typeof e.message=="string"&&(t+=" with message: '"+e.message+"'"),t}if("message"in e&&typeof e.message=="string")return e.message;var n=this.getObjectClassName(e);return(n&&n!=="Object"?"'"+n+"'":"Object")+" captured as exception with keys: "+X0(e)}isSeverityLevel(e){return ze(e)&&!Mh(e)&&D2.indexOf(e)>=0}getErrorPropertyFromObject(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=e[t];if(A2(n))return n}}getObjectClassName(e){try{var t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{return}}},zh=class{match(e){return P0(e)}coerce(e,t){var n,i=e.constructor.name;return{type:i,value:i+" captured as exception with keys: "+X0(e),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},qh=class{match(e){return Ph(e)}coerce(e,t){var n;return{type:"Error",value:"Primitive value captured as exception: "+String(e),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},Zh=class{match(e){return fc(e,"PromiseRejectionEvent")}coerce(e,t){var n,i=this.getUnhandledRejectionReason(e);return Ph(i)?{type:"UnhandledRejection",value:"Non-Error promise rejection captured with value: "+String(i),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}:t.apply(i)}getUnhandledRejectionReason(e){if(Ph(e))return e;try{if("reason"in e)return e.reason;if("detail"in e&&"reason"in e.detail)return e.detail.reason}catch{}return e}},J0=function(r,e){var{debugEnabled:t}=e===void 0?{}:e,n={k:function(i){if(E&&($r.DEBUG||re.POSTHOG_DEBUG||t)&&!B(E.console)&&E.console){for(var s=("__rrweb_original__"in E.console[i])?E.console[i].__rrweb_original__:E.console[i],o=arguments.length,a=new Array(o>1?o-1:0),l=1;l<o;l++)a[l-1]=arguments[l];s(r,...a)}},info:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];n.k("log",...s)},warn:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];n.k("warn",...s)},error:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];n.k("error",...s)},critical:function(){for(var i=arguments.length,s=new Array(i),o=0;o<i;o++)s[o]=arguments[o];console.error(r,...s)},uninitializedWarning:i=>{n.error("You must initialize PostHog before calling "+i)},createLogger:(i,s)=>J0(r+" "+i,s)};return n},U=J0("[PostHog.js]"),Oe=U.createLogger,H2=Oe("[ExternalScriptsLoader]"),z_=(r,e,t)=>{if(r.config.disable_external_dependency_loading)return H2.warn(e+" was requested but loading of external scripts is disabled."),t("Loading of external scripts is disabled");var n=H?.querySelectorAll("script");if(n){for(var i,s=function(){if(n[o].src===e){var l=n[o];return l.__posthog_loading_callback_fired?{v:t()}:(l.addEventListener("load",(c=>{l.__posthog_loading_callback_fired=!0,t(void 0,c)})),l.onerror=c=>t(c),{v:void 0})}},o=0;o<n.length;o++)if(i=s())return i.v}var a=()=>{if(!H)return t("document not found");var l=H.createElement("script");if(l.type="text/javascript",l.crossOrigin="anonymous",l.src=e,l.onload=p=>{l.__posthog_loading_callback_fired=!0,t(void 0,p)},l.onerror=p=>t(p),r.config.prepare_external_dependency_script&&(l=r.config.prepare_external_dependency_script(l)),!l)return t("prepare_external_dependency_script returned null");if(r.config.external_scripts_inject_target==="head")H.head.appendChild(l);else{var c,u=H.querySelectorAll("body > script");u.length>0?(c=u[0].parentNode)==null||c.insertBefore(l,u[0]):H.body.appendChild(l)}};H!=null&&H.body?a():H?.addEventListener("DOMContentLoaded",a)};re.__PosthogExtensions__=re.__PosthogExtensions__||{},re.__PosthogExtensions__.loadExternalDependency=(r,e,t)=>{var n="/static/"+e+".js?v="+r.version;if(e==="remote-config"&&(n="/array/"+r.config.token+"/config.js"),e==="toolbar"){var i=3e5;n=n+"&t="+Math.floor(Date.now()/i)*i}var s=r.requestRouter.endpointFor("assets",n);z_(r,s,t)},re.__PosthogExtensions__.loadSiteApp=(r,e,t)=>{var n=r.requestRouter.endpointFor("api",e);z_(r,n,t)};var mc={};function un(r,e,t){if(xe(r)){if(O_&&r.forEach===O_)r.forEach(e,t);else if("length"in r&&r.length===+r.length){for(var n=0,i=r.length;n<i;n++)if(n in r&&e.call(t,r[n],n)===mc)return}}}function Ae(r,e,t){if(!ge(r)){if(xe(r))return un(r,e,t);if(h2(r)){for(var n of r.entries())if(e.call(t,n[1],n[0])===mc)return}else for(var i in r)if(M0.call(r,i)&&e.call(t,r[i],i)===mc)return}}var Fe=function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return un(t,(function(i){for(var s in i)i[s]!==void 0&&(r[s]=i[s])})),r},Yi=function(r){for(var e=arguments.length,t=new Array(e>1?e-1:0),n=1;n<e;n++)t[n-1]=arguments[n];return un(t,(function(i){un(i,(function(s){r.push(s)}))})),r};function pc(r){for(var e=Object.keys(r),t=e.length,n=new Array(t);t--;)n[t]=[e[t],r[e[t]]];return n}var q_=function(r){try{return r()}catch{return}},B2=function(r){return function(){try{for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return r.apply(this,t)}catch(i){U.critical("Implementation error. Please turn on debug mode and open a ticket on https://app.posthog.com/home#panel=support%3Asupport%3A."),U.critical(i)}}},Zf=function(r){var e={};return Ae(r,(function(t,n){(ze(t)&&t.length>0||Fr(t))&&(e[n]=t)})),e};function V2(r,e){return t=r,n=s=>ze(s)&&!Wt(e)?s.slice(0,e):s,i=new Set,(function s(o,a){return o!==Object(o)?n?n(o,a):o:i.has(o)?void 0:(i.add(o),xe(o)?(l=[],un(o,(c=>{l.push(s(c))}))):(l={},Ae(o,((c,u)=>{i.has(c)||(l[u]=s(c,u))}))),l);var l})(t);var t,n,i}var U2=["herokuapp.com","vercel.app","netlify.app"];function j2(r){var e=r?.hostname;if(!ze(e))return!1;var t=e.split(".").slice(-2).join(".");for(var n of U2)if(t===n)return!1;return!0}function Q0(r,e){for(var t=0;t<r.length;t++)if(e(r[t]))return r[t]}function Ue(r,e,t,n){var{capture:i=!1,passive:s=!0}=n??{};r?.addEventListener(e,t,{capture:i,passive:s})}var ex="$people_distinct_id",qo="__alias",Zo="__timers",Z_="$autocapture_disabled_server_side",Gh="$heatmaps_enabled_server_side",G_="$exception_capture_enabled_server_side",Kh="$error_tracking_suppression_rules",K_="$error_tracking_capture_extension_exceptions",Y_="$web_vitals_enabled_server_side",tx="$dead_clicks_enabled_server_side",X_="$product_tours_enabled_server_side",J_="$web_vitals_allowed_metrics",gh="$session_recording_remote_config",vc="$sesid",rx="$session_is_sampled",Wi="$enabled_feature_flags",Go="$early_access_features",Yh="$feature_flag_details",Ko="$stored_person_properties",ti="$stored_group_properties",Xh="$surveys",yc="$flag_call_reported",Mr="$user_state",Jh="$client_session_props",Qh="$capture_rate_limit",ef="$initial_campaign_params",tf="$initial_referrer_info",bc="$initial_person_info",_c="$epp",nx="__POSTHOG_TOOLBAR__",No="$posthog_cookieless",W2=[ex,qo,"__cmpns",Zo,"$session_recording_enabled_server_side",Gh,vc,Wi,Kh,Mr,Go,Yh,ti,Ko,Xh,yc,Jh,Qh,ef,tf,_c,bc,"$conversations_widget_session_id","$conversations_ticket_id","$conversations_widget_state","$conversations_user_traits"];function Q_(r){return r instanceof Element&&(r.id===nx||!(r.closest==null||!r.closest(".toolbar-global-fade-container")))}function Dc(r){return!!r&&r.nodeType===1}function dn(r,e){return!!r&&!!r.tagName&&r.tagName.toLowerCase()===e.toLowerCase()}function ix(r){return!!r&&r.nodeType===3}function sx(r){return!!r&&r.nodeType===11}function Gf(r){return r?Nc(r).split(/\s+/):[]}function e0(r){var e=E?.location.href;return!!(e&&r&&r.some((t=>e.match(t))))}function xc(r){var e="";switch(typeof r.className){case"string":e=r.className;break;case"object":e=(r.className&&"baseVal"in r.className?r.className.baseVal:null)||r.getAttribute("class")||"";break;default:e=""}return Gf(e)}function ox(r){return ge(r)?null:Nc(r).split(/(\s+)/).filter((e=>oa(e))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function la(r){var e="";return rf(r)&&!dx(r)&&r.childNodes&&r.childNodes.length&&Ae(r.childNodes,(function(t){var n;ix(t)&&t.textContent&&(e+=(n=ox(t.textContent))!==null&&n!==void 0?n:"")})),Nc(e)}function ax(r){return B(r.target)?r.srcElement||null:(e=r.target)!=null&&e.shadowRoot?r.composedPath()[0]||null:r.target||null;var e}var Kf=["a","button","form","input","select","textarea","label"];function lx(r,e){if(B(e))return!0;var t,n=function(s){if(e.some((o=>s.matches(o))))return{v:!0}};for(var i of r)if(t=n(i))return t.v;return!1}function cx(r){var e=r.parentNode;return!(!e||!Dc(e))&&e}var z2=["next","previous","prev",">","<"],t0=10,r0=[".ph-no-rageclick",".ph-no-capture"];function q2(r,e){if(!E||Yf(r))return!1;var t,n,i;if(Nr(e)?(t=!!e&&r0,n=void 0):(t=(i=e?.css_selector_ignorelist)!==null&&i!==void 0?i:r0,n=e?.content_ignorelist),t===!1)return!1;var{targetElementList:s}=ux(r,!1);return!(function(o,a){if(o===!1||B(o))return!1;var l;if(o===!0)l=z2;else{if(!xe(o))return!1;if(o.length>t0)return U.error("[PostHog] content_ignorelist array cannot exceed "+t0+" items. Use css_selector_ignorelist for more complex matching."),!1;l=o.map((c=>c.toLowerCase()))}return a.some((c=>{var{safeText:u,ariaLabel:p}=c;return l.some((h=>u.includes(h)||p.includes(h)))}))})(n,s.map((o=>{var a;return{safeText:la(o).toLowerCase(),ariaLabel:((a=o.getAttribute("aria-label"))==null?void 0:a.toLowerCase().trim())||""}})))&&!lx(s,t)}var Yf=r=>!r||dn(r,"html")||!Dc(r),ux=(r,e)=>{if(!E||Yf(r))return{parentIsUsefulElement:!1,targetElementList:[]};for(var t=!1,n=[r],i=r;i.parentNode&&!dn(i,"body");)if(sx(i.parentNode))n.push(i.parentNode.host),i=i.parentNode.host;else{var s=cx(i);if(!s)break;if(e||Kf.indexOf(s.tagName.toLowerCase())>-1)t=!0;else{var o=E.getComputedStyle(s);o&&o.getPropertyValue("cursor")==="pointer"&&(t=!0)}n.push(s),i=s}return{parentIsUsefulElement:t,targetElementList:n}};function Z2(r,e,t,n,i){var s,o,a,l;if(t===void 0&&(t=void 0),!E||Yf(r)||(s=t)!=null&&s.url_allowlist&&!e0(t.url_allowlist)||(o=t)!=null&&o.url_ignorelist&&e0(t.url_ignorelist))return!1;if((a=t)!=null&&a.dom_event_allowlist){var c=t.dom_event_allowlist;if(c&&!c.some((v=>e.type===v)))return!1}var{parentIsUsefulElement:u,targetElementList:p}=ux(r,n);if(!(function(v,g){var m=g?.element_allowlist;if(B(m))return!0;var y,x=function(b){if(m.some((w=>b.tagName.toLowerCase()===w)))return{v:!0}};for(var S of v)if(y=x(S))return y.v;return!1})(p,t)||!lx(p,(l=t)==null?void 0:l.css_selector_allowlist))return!1;var h=E.getComputedStyle(r);if(h&&h.getPropertyValue("cursor")==="pointer"&&e.type==="click")return!0;var f=r.tagName.toLowerCase();switch(f){case"html":return!1;case"form":return(i||["submit"]).indexOf(e.type)>=0;case"input":case"select":case"textarea":return(i||["change","click"]).indexOf(e.type)>=0;default:return u?(i||["click"]).indexOf(e.type)>=0:(i||["click"]).indexOf(e.type)>=0&&(Kf.indexOf(f)>-1||r.getAttribute("contenteditable")==="true")}}function rf(r){for(var e=r;e.parentNode&&!dn(e,"body");e=e.parentNode){var t=xc(e);if(fe(t,"ph-sensitive")||fe(t,"ph-no-capture"))return!1}if(fe(xc(r),"ph-include"))return!0;var n=r.type||"";if(ze(n))switch(n.toLowerCase()){case"hidden":case"password":return!1}var i=r.name||r.id||"";return!(ze(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 dx(r){return!!(dn(r,"input")&&!["button","checkbox","submit","reset"].includes(r.type)||dn(r,"select")||dn(r,"textarea")||r.getAttribute("contenteditable")==="true")}var px="(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})",G2=new RegExp("^(?:"+px+")$"),K2=new RegExp(px),hx="\\d{3}-?\\d{2}-?\\d{4}",Y2=new RegExp("^("+hx+")$"),X2=new RegExp("("+hx+")");function oa(r,e){return e===void 0&&(e=!0),!(ge(r)||ze(r)&&(r=Nc(r),(e?G2:K2).test((r||"").replace(/[- ]/g,""))||(e?Y2:X2).test(r)))}function fx(r){var e=la(r);return oa(e=(e+" "+gx(r)).trim())?e:""}function gx(r){var e="";return r&&r.childNodes&&r.childNodes.length&&Ae(r.childNodes,(function(t){var n;if(t&&((n=t.tagName)==null?void 0:n.toLowerCase())==="span")try{var i=la(t);e=(e+" "+i).trim(),t.childNodes&&t.childNodes.length&&(e=(e+" "+gx(t)).trim())}catch(s){U.error("[AutoCapture]",s)}})),e}function J2(r){return(function(e){var t=e.map((n=>{var i,s,o="";if(n.tag_name&&(o+=n.tag_name),n.attr_class)for(var a of(n.attr_class.sort(),n.attr_class))o+="."+a.replace(/"/g,"");var l=W({},n.text?{text:n.text}:{},{"nth-child":(i=n.nth_child)!==null&&i!==void 0?i:0,"nth-of-type":(s=n.nth_of_type)!==null&&s!==void 0?s:0},n.href?{href:n.href}:{},n.attr_id?{attr_id:n.attr_id}:{},n.attributes),c={};return pc(l).sort(((u,p)=>{var[h]=u,[f]=p;return h.localeCompare(f)})).forEach((u=>{var[p,h]=u;return c[n0(p.toString())]=n0(h.toString())})),o+=":",o+=pc(c).map((u=>{var[p,h]=u;return p+'="'+h+'"'})).join("")}));return t.join(";")})((function(e){return e.map((t=>{var n,i,s={text:(n=t.$el_text)==null?void 0:n.slice(0,400),tag_name:t.tag_name,href:(i=t.attr__href)==null?void 0:i.slice(0,2048),attr_class:Q2(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return pc(t).filter((o=>{var[a]=o;return a.indexOf("attr__")===0})).forEach((o=>{var[a,l]=o;return s.attributes[a]=l})),s}))})(r))}function n0(r){return r.replace(/"|\\"/g,'\\"')}function Q2(r){var e=r.attr__class;return e?xe(e)?e:Gf(e):void 0}var wc=class{constructor(e){this.disabled=e===!1;var t=We(e)?e:{};this.thresholdPx=t.threshold_px||30,this.timeoutMs=t.timeout_ms||1e3,this.clickCount=t.click_count||3,this.clicks=[]}isRageClick(e,t,n){if(this.disabled)return!1;var i=this.clicks[this.clicks.length-1];if(i&&Math.abs(e-i.x)+Math.abs(t-i.y)<this.thresholdPx&&n-i.timestamp<this.timeoutMs){if(this.clicks.push({x:e,y:t,timestamp:n}),this.clicks.length===this.clickCount)return!0}else this.clicks=[{x:e,y:t,timestamp:n}];return!1}},Sc=r=>{var e=H?.createElement("a");return B(e)?null:(e.href=r,e)},eT=function(r,e){var t,n;e===void 0&&(e="&");var i=[];return Ae(r,(function(s,o){B(s)||B(o)||o==="undefined"||(t=encodeURIComponent((a=>a instanceof File)(s)?s.name:s.toString()),n=encodeURIComponent(o),i[i.length]=n+"="+t)})),i.join(e)},kc=function(r,e){for(var t,n=((r.split("#")[0]||"").split(/\?(.*)/)[1]||"").replace(/^\?+/g,"").split("&"),i=0;i<n.length;i++){var s=n[i].split("=");if(s[0]===e){t=s;break}}if(!xe(t)||t.length<2)return"";var o=t[1];try{o=decodeURIComponent(o)}catch{U.error("Skipping decoding for malformed query param: "+o)}return o.replace(/\+/g," ")},ca=function(r,e,t){if(!r||!e||!e.length)return r;for(var n=r.split("#"),i=n[0]||"",s=n[1],o=i.split("?"),a=o[1],l=o[0],c=(a||"").split("&"),u=[],p=0;p<c.length;p++){var h=c[p].split("=");xe(h)&&(e.includes(h[0])?u.push(h[0]+"="+t):u.push(c[p]))}var f=l;return a!=null&&(f+="?"+u.join("&")),s!=null&&(f+="#"+s),f},Ec=function(r,e){var t=r.match(new RegExp(e+"=([^&]*)"));return t?t[1]:null},mh="$copy_autocapture",i0=Oe("[AutoCapture]");function vh(r,e){return e.length>r?e.slice(0,r)+"...":e}function tT(r){if(r.previousElementSibling)return r.previousElementSibling;var e=r;do e=e.previousSibling;while(e&&!Dc(e));return e}function rT(r,e,t,n){var i=r.tagName.toLowerCase(),s={tag_name:i};Kf.indexOf(i)>-1&&!t&&(i.toLowerCase()==="a"||i.toLowerCase()==="button"?s.$el_text=vh(1024,fx(r)):s.$el_text=vh(1024,la(r)));var o=xc(r);o.length>0&&(s.classes=o.filter((function(u){return u!==""}))),Ae(r.attributes,(function(u){var p;if((!dx(r)||["name","id","class","aria-label"].indexOf(u.name)!==-1)&&(n==null||!n.includes(u.name))&&!e&&oa(u.value)&&(p=u.name,!ze(p)||p.substring(0,10)!=="_ngcontent"&&p.substring(0,7)!=="_nghost")){var h=u.value;u.name==="class"&&(h=Gf(h).join(" ")),s["attr__"+u.name]=vh(1024,h)}}));for(var a=1,l=1,c=r;c=tT(c);)a++,c.tagName===r.tagName&&l++;return s.nth_child=a,s.nth_of_type=l,s}function nT(r,e){for(var t,n,{e:i,maskAllElementAttributes:s,maskAllText:o,elementAttributeIgnoreList:a,elementsChainAsString:l}=e,c=[r],u=r;u.parentNode&&!dn(u,"body");)sx(u.parentNode)?(c.push(u.parentNode.host),u=u.parentNode.host):(c.push(u.parentNode),u=u.parentNode);var p,h=[],f={},v=!1,g=!1;if(Ae(c,(b=>{var w=rf(b);b.tagName.toLowerCase()==="a"&&(v=b.getAttribute("href"),v=w&&v&&oa(v)&&v),fe(xc(b),"ph-no-capture")&&(g=!0),h.push(rT(b,s,o,a));var A=(function(_){if(!rf(_))return{};var C={};return Ae(_.attributes,(function(I){if(I.name&&I.name.indexOf("data-ph-capture-attribute")===0){var R=I.name.replace("data-ph-capture-attribute-",""),P=I.value;R&&P&&oa(P)&&(C[R]=P)}})),C})(b);Fe(f,A)})),g)return{props:{},explicitNoCapture:g};if(o||(r.tagName.toLowerCase()==="a"||r.tagName.toLowerCase()==="button"?h[0].$el_text=fx(r):h[0].$el_text=la(r)),v){var m,y;h[0].attr__href=v;var x=(m=Sc(v))==null?void 0:m.host,S=E==null||(y=E.location)==null?void 0:y.host;x&&S&&x!==S&&(p=v)}return{props:Fe({$event_type:i.type,$ce_version:1},l?{}:{$elements:h},{$elements_chain:J2(h)},(t=h[0])!=null&&t.$el_text?{$el_text:(n=h[0])==null?void 0:n.$el_text}:{},p&&i.type==="click"?{$external_click_url:p}:{},f)}}var nf=class{constructor(e){this.P=!1,this.T=null,this.I=!1,this.instance=e,this.rageclicks=new wc(e.config.rageclick),this.C=null}get R(){var e,t,n=We(this.instance.config.autocapture)?this.instance.config.autocapture:{};return n.url_allowlist=(e=n.url_allowlist)==null?void 0:e.map((i=>new RegExp(i))),n.url_ignorelist=(t=n.url_ignorelist)==null?void 0:t.map((i=>new RegExp(i))),n}F(){if(this.isBrowserSupported()){if(E&&H){var e=n=>{n=n||E?.event;try{this.O(n)}catch(i){i0.error("Failed to capture event",i)}};if(Ue(H,"submit",e,{capture:!0}),Ue(H,"change",e,{capture:!0}),Ue(H,"click",e,{capture:!0}),this.R.capture_copied_text){var t=n=>{n=n||E?.event,this.O(n,mh)};Ue(H,"copy",t,{capture:!0}),Ue(H,"cut",t,{capture:!0})}}}else i0.info("Disabling Automatic Event Collection because this browser is not supported")}startIfEnabled(){this.isEnabled&&!this.P&&(this.F(),this.P=!0)}onRemoteConfig(e){e.elementsChainAsString&&(this.I=e.elementsChainAsString),this.instance.persistence&&this.instance.persistence.register({[Z_]:!!e.autocapture_opt_out}),this.T=!!e.autocapture_opt_out,this.startIfEnabled()}setElementSelectors(e){this.C=e}getElementSelectors(e){var t,n=[];return(t=this.C)==null||t.forEach((i=>{var s=H?.querySelectorAll(i);s?.forEach((o=>{e===o&&n.push(i)}))})),n}get isEnabled(){var e,t,n=(e=this.instance.persistence)==null?void 0:e.props[Z_],i=this.T;if(Wt(i)&&!Nr(n)&&!this.instance.M())return!1;var s=(t=this.T)!==null&&t!==void 0?t:!!n;return!!this.instance.config.autocapture&&!s}O(e,t){if(t===void 0&&(t="$autocapture"),this.isEnabled){var n,i=ax(e);ix(i)&&(i=i.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())&&q2(i,this.instance.config.rageclick)&&this.O(e,"$rageclick");var s=t===mh;if(i&&Z2(i,e,this.R,s,s?["copy","cut"]:void 0)){var{props:o,explicitNoCapture:a}=nT(i,{e,maskAllElementAttributes:this.instance.config.mask_all_element_attributes,maskAllText:this.instance.config.mask_all_text,elementAttributeIgnoreList:this.R.element_attribute_ignorelist,elementsChainAsString:this.I});if(a)return!1;var l=this.getElementSelectors(i);if(l&&l.length>0&&(o.$element_selectors=l),t===mh){var c,u=ox(E==null||(c=E.getSelection())==null?void 0:c.toString()),p=e.type||"clipboard";if(!u)return!1;o.$selected_content=u,o.$copy_type=p}return this.instance.capture(t,o),!0}}}isBrowserSupported(){return cn(H?.querySelectorAll)}};Math.trunc||(Math.trunc=function(r){return r<0?Math.ceil(r):Math.floor(r)}),Number.isInteger||(Number.isInteger=function(r){return Fr(r)&&isFinite(r)&&Math.floor(r)===r});var s0="0123456789abcdef",sf=class r{constructor(e){if(this.bytes=e,e.length!==16)throw new TypeError("not 128-bit length")}static fromFieldsV7(e,t,n,i){if(!Number.isInteger(e)||!Number.isInteger(t)||!Number.isInteger(n)||!Number.isInteger(i)||e<0||t<0||n<0||i<0||e>0xffffffffffff||t>4095||n>1073741823||i>4294967295)throw new RangeError("invalid field value");var s=new Uint8Array(16);return s[0]=e/Math.pow(2,40),s[1]=e/Math.pow(2,32),s[2]=e/Math.pow(2,24),s[3]=e/Math.pow(2,16),s[4]=e/Math.pow(2,8),s[5]=e,s[6]=112|t>>>8,s[7]=t,s[8]=128|n>>>24,s[9]=n>>>16,s[10]=n>>>8,s[11]=n,s[12]=i>>>24,s[13]=i>>>16,s[14]=i>>>8,s[15]=i,new r(s)}toString(){for(var e="",t=0;t<this.bytes.length;t++)e=e+s0.charAt(this.bytes[t]>>>4)+s0.charAt(15&this.bytes[t]),t!==3&&t!==5&&t!==7&&t!==9||(e+="-");if(e.length!==36)throw new Error("Invalid UUIDv7 was generated");return e}clone(){return new r(this.bytes.slice(0))}equals(e){return this.compareTo(e)===0}compareTo(e){for(var t=0;t<16;t++){var n=this.bytes[t]-e.bytes[t];if(n!==0)return Math.sign(n)}return 0}},of=class{constructor(){this.A=0,this.j=0,this.D=new af}generate(){var e=this.generateOrAbort();if(B(e)){this.A=0;var t=this.generateOrAbort();if(B(t))throw new Error("Could not generate UUID after timestamp reset");return t}return e}generateOrAbort(){var e=Date.now();if(e>this.A)this.A=e,this.L();else{if(!(e+1e4>this.A))return;this.j++,this.j>4398046511103&&(this.A++,this.L())}return sf.fromFieldsV7(this.A,Math.trunc(this.j/Math.pow(2,30)),this.j&Math.pow(2,30)-1,this.D.nextUint32())}L(){this.j=1024*this.D.nextUint32()+(1023&this.D.nextUint32())}},o0,mx=r=>{if(typeof UUIDV7_DENY_WEAK_RNG<"u"&&UUIDV7_DENY_WEAK_RNG)throw new Error("no cryptographically strong RNG available");for(var e=0;e<r.length;e++)r[e]=65536*Math.trunc(65536*Math.random())+Math.trunc(65536*Math.random());return r};E&&!B(E.crypto)&&crypto.getRandomValues&&(mx=r=>crypto.getRandomValues(r));var af=class{constructor(){this.N=new Uint32Array(8),this.U=1/0}nextUint32(){return this.U>=this.N.length&&(mx(this.N),this.U=0),this.N[this.U++]}},ln=()=>iT().toString(),iT=()=>(o0||(o0=new of)).generate(),Fo="",sT=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;function oT(r,e){if(e){var t=(function(i,s){if(s===void 0&&(s=H),Fo)return Fo;if(!s||["localhost","127.0.0.1"].includes(i))return"";for(var o=i.split("."),a=Math.min(o.length,8),l="dmn_chk_"+ln();!Fo&&a--;){var c=o.slice(a).join("."),u=l+"=1;domain=."+c+";path=/";s.cookie=u+";max-age=3",s.cookie.includes(l)&&(s.cookie=u+";max-age=0",Fo=c)}return Fo})(r);if(!t){var n=(i=>{var s=i.match(sT);return s?s[0]:""})(r);n!==t&&U.info("Warning: cookie subdomain discovery mismatch",n,t),t=n}return t?"; domain=."+t:""}return""}var ur={H:()=>!!H,B:function(r){U.error("cookieStore error: "+r)},q:function(r){if(H){try{for(var e=r+"=",t=H.cookie.split(";").filter((s=>s.length)),n=0;n<t.length;n++){for(var i=t[n];i.charAt(0)==" ";)i=i.substring(1,i.length);if(i.indexOf(e)===0)return decodeURIComponent(i.substring(e.length,i.length))}}catch{}return null}},W:function(r){var e;try{e=JSON.parse(ur.q(r))||{}}catch{}return e},G:function(r,e,t,n,i){if(H)try{var s="",o="",a=oT(H.location.hostname,n);if(t){var l=new Date;l.setTime(l.getTime()+24*t*60*60*1e3),s="; expires="+l.toUTCString()}i&&(o="; secure");var c=r+"="+encodeURIComponent(JSON.stringify(e))+s+"; SameSite=Lax; path=/"+a+o;return c.length>3686.4&&U.warn("cookieStore warning: large cookie, len="+c.length),H.cookie=c,c}catch{return}},V:function(r,e){if(H!=null&&H.cookie)try{ur.G(r,"",-1,e)}catch{return}}},yh=null,Me={H:function(){if(!Wt(yh))return yh;var r=!0;if(B(E))r=!1;else try{var e="__mplssupport__";Me.G(e,"xyz"),Me.q(e)!=='"xyz"'&&(r=!1),Me.V(e)}catch{r=!1}return r||U.error("localStorage unsupported; falling back to cookie store"),yh=r,r},B:function(r){U.error("localStorage error: "+r)},q:function(r){try{return E?.localStorage.getItem(r)}catch(e){Me.B(e)}return null},W:function(r){try{return JSON.parse(Me.q(r))||{}}catch{}return null},G:function(r,e){try{E?.localStorage.setItem(r,JSON.stringify(e))}catch(t){Me.B(t)}},V:function(r){try{E?.localStorage.removeItem(r)}catch(e){Me.B(e)}}},aT=["$device_id","distinct_id",vc,rx,_c,bc],lc={},lT={H:function(){return!0},B:function(r){U.error("memoryStorage error: "+r)},q:function(r){return lc[r]||null},W:function(r){return lc[r]||null},G:function(r,e){lc[r]=e},V:function(r){delete lc[r]}},Qn=null,Qe={H:function(){if(!Wt(Qn))return Qn;if(Qn=!0,B(E))Qn=!1;else try{var r="__support__";Qe.G(r,"xyz"),Qe.q(r)!=='"xyz"'&&(Qn=!1),Qe.V(r)}catch{Qn=!1}return Qn},B:function(r){U.error("sessionStorage error: ",r)},q:function(r){try{return E?.sessionStorage.getItem(r)}catch(e){Qe.B(e)}return null},W:function(r){try{return JSON.parse(Qe.q(r))||null}catch{}return null},G:function(r,e){try{E?.sessionStorage.setItem(r,JSON.stringify(e))}catch(t){Qe.B(t)}},V:function(r){try{E?.sessionStorage.removeItem(r)}catch(e){Qe.B(e)}}},Pr=(function(r){return r[r.PENDING=-1]="PENDING",r[r.DENIED=0]="DENIED",r[r.GRANTED=1]="GRANTED",r})({}),lf=class{constructor(e){this._instance=e}get R(){return this._instance.config}get consent(){return this.J()?Pr.DENIED:this.K}isOptedOut(){return this.R.cookieless_mode==="always"||this.consent===Pr.DENIED||this.consent===Pr.PENDING&&(this.R.opt_out_capturing_by_default||this.R.cookieless_mode==="on_reject")}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===Pr.DENIED}optInOut(e){this.Y.G(this.X,e?1:0,this.R.cookie_expiration,this.R.cross_subdomain_cookie,this.R.secure_cookie)}reset(){this.Y.V(this.X,this.R.cross_subdomain_cookie)}get X(){var{token:e,opt_out_capturing_cookie_prefix:t,consent_persistence_name:n}=this._instance.config;return n||(t?t+e:"__ph_opt_in_out_"+e)}get K(){var e=this.Y.q(this.X);return ph(e)?Pr.GRANTED:fe(m2,e)?Pr.DENIED:Pr.PENDING}get Y(){if(!this.Z){var e=this.R.opt_out_capturing_persistence_type;this.Z=e==="localStorage"?Me:ur;var t=e==="localStorage"?ur:Me;t.q(this.X)&&(this.Z.q(this.X)||this.optInOut(ph(t.q(this.X))),t.V(this.X,this.R.cross_subdomain_cookie))}return this.Z}J(){return!!this.R.respect_dnt&&!!Q0([wt?.doNotTrack,wt?.msDoNotTrack,re.doNotTrack],(e=>ph(e)))}},cc=Oe("[Dead Clicks]"),cT=()=>!0,uT=r=>{var e,t=!((e=r.instance.persistence)==null||!e.get_property(tx)),n=r.instance.config.capture_dead_clicks;return Nr(n)?n:!!We(n)||t},Cc=class{get lazyLoadedDeadClicksAutocapture(){return this.tt}constructor(e,t,n){this.instance=e,this.isEnabled=t,this.onCapture=n,this.startIfEnabled()}onRemoteConfig(e){this.instance.persistence&&this.instance.persistence.register({[tx]:e?.captureDeadClicks}),this.startIfEnabled()}startIfEnabled(){this.isEnabled(this)&&this.it((()=>{this.et()}))}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.initDeadClicksAutocapture&&e(),(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this.instance,"dead-clicks-autocapture",(i=>{i?cc.error("failed to load script",i):e()}))}et(){var e;if(H){if(!this.tt&&(e=re.__PosthogExtensions__)!=null&&e.initDeadClicksAutocapture){var t=We(this.instance.config.capture_dead_clicks)?this.instance.config.capture_dead_clicks:{};t.__onCapture=this.onCapture,this.tt=re.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,t),this.tt.start(H),cc.info("starting...")}}else cc.error("`document` not found. Cannot start.")}stop(){this.tt&&(this.tt.stop(),this.tt=void 0,cc.info("stopping..."))}},Do=Oe("[ExceptionAutocapture]"),cf=class{constructor(e){var t,n,i;this.rt=()=>{var s;if(E&&this.isEnabled&&(s=re.__PosthogExtensions__)!=null&&s.errorWrappingFunctions){var o=re.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,a=re.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,l=re.__PosthogExtensions__.errorWrappingFunctions.wrapConsoleError;try{!this.st&&this.R.capture_unhandled_errors&&(this.st=o(this.captureException.bind(this))),!this.nt&&this.R.capture_unhandled_rejections&&(this.nt=a(this.captureException.bind(this))),!this.ot&&this.R.capture_console_errors&&(this.ot=l(this.captureException.bind(this)))}catch(c){Do.error("failed to start",c),this.ut()}}},this._instance=e,this.ht=!((t=this._instance.persistence)==null||!t.props[G_]),this.dt=new Oh({refillRate:(n=this._instance.config.error_tracking.__exceptionRateLimiterRefillRate)!==null&&n!==void 0?n:1,bucketSize:(i=this._instance.config.error_tracking.__exceptionRateLimiterBucketSize)!==null&&i!==void 0?i:10,refillInterval:1e4,h:Do}),this.R=this.vt(),this.startIfEnabledOrStop()}vt(){var e=this._instance.config.capture_exceptions,t={capture_unhandled_errors:!1,capture_unhandled_rejections:!1,capture_console_errors:!1};return We(e)?t=W({},t,e):(B(e)?this.ht:e)&&(t=W({},t,{capture_unhandled_errors:!0,capture_unhandled_rejections:!0})),t}get isEnabled(){return this.R.capture_console_errors||this.R.capture_unhandled_errors||this.R.capture_unhandled_rejections}startIfEnabledOrStop(){this.isEnabled?(Do.info("enabled"),this.ut(),this.it(this.rt)):this.ut()}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.errorWrappingFunctions&&e(),(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"exception-autocapture",(i=>{if(i)return Do.error("failed to load script",i);e()}))}ut(){var e,t,n;(e=this.st)==null||e.call(this),this.st=void 0,(t=this.nt)==null||t.call(this),this.nt=void 0,(n=this.ot)==null||n.call(this),this.ot=void 0}onRemoteConfig(e){var t=e.autocaptureExceptions;this.ht=!!t||!1,this._instance.persistence&&this._instance.persistence.register({[G_]:this.ht}),this.R=this.vt(),this.startIfEnabledOrStop()}onConfigChange(){this.R=this.vt()}captureException(e){var t,n,i=(t=e==null||(n=e.$exception_list)==null||(n=n[0])==null?void 0:n.type)!==null&&t!==void 0?t:"Exception";this.dt.consumeRateLimit(i)?Do.info("Skipping exception capture because of client rate limiting.",{exception:i}):this._instance.exceptions.sendExceptionEvent(e)}};function a0(r,e,t){try{if(!(e in r))return()=>{};var n=r[e],i=t(n);return cn(i)&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__posthog_wrapped__:{enumerable:!1,value:!0}})),r[e]=i,()=>{r[e]=n}}catch{return()=>{}}}var uf=class{constructor(e){var t;this._instance=e,this.ct=(E==null||(t=E.location)==null?void 0:t.pathname)||""}get isEnabled(){return this._instance.config.capture_pageview==="history_change"}startIfEnabled(){this.isEnabled&&(U.info("History API monitoring enabled, starting..."),this.monitorHistoryChanges())}stop(){this.ft&&this.ft(),this.ft=void 0,U.info("History API monitoring stopped")}monitorHistoryChanges(){var e,t;if(E&&E.history){var n=this;(e=E.history.pushState)!=null&&e.__posthog_wrapped__||a0(E.history,"pushState",(i=>function(s,o,a){i.call(this,s,o,a),n._t("pushState")})),(t=E.history.replaceState)!=null&&t.__posthog_wrapped__||a0(E.history,"replaceState",(i=>function(s,o,a){i.call(this,s,o,a),n._t("replaceState")})),this.bt()}}_t(e){try{var t,n=E==null||(t=E.location)==null?void 0:t.pathname;if(!n)return;n!==this.ct&&this.isEnabled&&this._instance.capture("$pageview",{navigation_type:e}),this.ct=n}catch(i){U.error("Error capturing "+e+" pageview",i)}}bt(){if(!this.ft){var e=()=>{this._t("popstate")};Ue(E,"popstate",e),this.ft=()=>{E&&E.removeEventListener("popstate",e)}}}},bh=Oe("[SegmentIntegration]");function dT(r,e){var t=r.config.segment;if(!t)return e();(function(n,i){var s=n.config.segment;if(!s)return i();var o=l=>{var c=()=>l.anonymousId()||ln();n.config.get_device_id=c,l.id()&&(n.register({distinct_id:l.id(),$device_id:c()}),n.persistence.set_property(Mr,"identified")),i()},a=s.user();"then"in a&&cn(a.then)?a.then(o):o(a)})(r,(()=>{t.register((n=>{Promise&&Promise.resolve||bh.warn("This browser does not have Promise support, and can not use the segment integration");var i=(s,o)=>{if(!o)return s;s.event.userId||s.event.anonymousId===n.get_distinct_id()||(bh.info("No userId set, resetting PostHog"),n.reset()),s.event.userId&&s.event.userId!==n.get_distinct_id()&&(bh.info("UserId set, identifying with PostHog"),n.identify(s.event.userId));var a=n.calculateEventProperties(o,s.event.properties);return s.event.properties=Object.assign({},a,s.event.properties),s};return{name:"PostHog JS",type:"enrichment",version:"1.0.0",isLoaded:()=>!0,load:()=>Promise.resolve(),track:s=>i(s,s.event.event),page:s=>i(s,"$pageview"),identify:s=>i(s,"$identify"),screen:s=>i(s,"$screen")}})(r)).then((()=>{e()}))}))}var vx="posthog-js";function yx(r,e){var{organization:t,projectId:n,prefix:i,severityAllowList:s=["error"],sendExceptionsToPostHog:o=!0}=e===void 0?{}:e;return a=>{var l,c,u,p,h;if(!(s==="*"||s.includes(a.level))||!r.__loaded)return a;a.tags||(a.tags={});var f=r.requestRouter.endpointFor("ui","/project/"+r.config.token+"/person/"+r.get_distinct_id());a.tags["PostHog Person URL"]=f,r.sessionRecordingStarted()&&(a.tags["PostHog Recording URL"]=r.get_session_replay_url({withTimestamp:!0}));var v=((l=a.exception)==null?void 0:l.values)||[],g=v.map((y=>W({},y,{stacktrace:y.stacktrace?W({},y.stacktrace,{type:"raw",frames:(y.stacktrace.frames||[]).map((x=>W({},x,{platform:"web:javascript"})))}):void 0}))),m={$exception_message:((c=v[0])==null?void 0:c.value)||a.message,$exception_type:(u=v[0])==null?void 0:u.type,$exception_level:a.level,$exception_list:g,$sentry_event_id:a.event_id,$sentry_exception:a.exception,$sentry_exception_message:((p=v[0])==null?void 0:p.value)||a.message,$sentry_exception_type:(h=v[0])==null?void 0:h.type,$sentry_tags:a.tags};return t&&n&&(m.$sentry_url=(i||"https://sentry.io/organizations/")+t+"/issues/?project="+n+"&query="+a.event_id),o&&r.exceptions.sendExceptionEvent(m),a}}var df=class{constructor(e,t,n,i,s,o){this.name=vx,this.setupOnce=function(a){a(yx(e,{organization:t,projectId:n,prefix:i,severityAllowList:s,sendExceptionsToPostHog:o==null||o}))}}},pT=E!=null&&E.location?Ec(E.location.hash,"__posthog")||Ec(location.hash,"state"):null,l0="_postHogToolbarParams",c0=Oe("[Toolbar]"),an=(function(r){return r[r.UNINITIALIZED=0]="UNINITIALIZED",r[r.LOADING=1]="LOADING",r[r.LOADED=2]="LOADED",r})(an||{}),pf=class{constructor(e){this.instance=e}yt(e){re.ph_toolbar_state=e}wt(){var e;return(e=re.ph_toolbar_state)!==null&&e!==void 0?e:an.UNINITIALIZED}maybeLoadToolbar(e,t,n){if(e===void 0&&(e=void 0),t===void 0&&(t=void 0),n===void 0&&(n=void 0),!E||!H)return!1;e=e??E.location,n=n??E.history;try{if(!t){try{E.localStorage.setItem("test","test"),E.localStorage.removeItem("test")}catch{return!1}t=E?.localStorage}var i,s=pT||Ec(e.hash,"__posthog")||Ec(e.hash,"state"),o=s?q_((()=>JSON.parse(atob(decodeURIComponent(s)))))||q_((()=>JSON.parse(decodeURIComponent(s)))):null;return o&&o.action==="ph_authorize"?((i=o).source="url",i&&Object.keys(i).length>0&&(o.desiredHash?e.hash=o.desiredHash:n?n.replaceState(n.state,"",e.pathname+e.search):e.hash="")):((i=JSON.parse(t.getItem(l0)||"{}")).source="localstorage",delete i.userIntent),!(!i.token||this.instance.config.token!==i.token)&&(this.loadToolbar(i),!0)}catch{return!1}}xt(e){var t=re.ph_load_toolbar||re.ph_load_editor;!ge(t)&&cn(t)?t(e,this.instance):c0.warn("No toolbar load function found")}loadToolbar(e){var t=!(H==null||!H.getElementById(nx));if(!E||t)return!1;var n=this.instance.requestRouter.region==="custom"&&this.instance.config.advanced_disable_toolbar_metrics,i=W({token:this.instance.config.token},e,{apiURL:this.instance.requestRouter.endpointFor("ui")},n?{instrument:!1}:{});if(E.localStorage.setItem(l0,JSON.stringify(W({},i,{source:void 0}))),this.wt()===an.LOADED)this.xt(i);else if(this.wt()===an.UNINITIALIZED){var s;this.yt(an.LOADING),(s=re.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this.instance,"toolbar",(o=>{if(o)return c0.error("[Toolbar] Failed to load",o),void this.yt(an.UNINITIALIZED);this.yt(an.LOADED),this.xt(i)})),Ue(E,"turbolinks:load",(()=>{this.yt(an.UNINITIALIZED),this.loadToolbar(i)}))}return!0}Et(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)}},hT=Oe("[TracingHeaders]"),hf=class{constructor(e){this.$t=void 0,this.St=void 0,this.rt=()=>{var t,n;B(this.$t)&&((t=re.__PosthogExtensions__)==null||(t=t.tracingHeadersPatchFns)==null||t._patchXHR(this._instance.config.__add_tracing_headers||[],this._instance.get_distinct_id(),this._instance.sessionManager)),B(this.St)&&((n=re.__PosthogExtensions__)==null||(n=n.tracingHeadersPatchFns)==null||n._patchFetch(this._instance.config.__add_tracing_headers||[],this._instance.get_distinct_id(),this._instance.sessionManager))},this._instance=e}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.tracingHeadersPatchFns&&e(),(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"tracing-headers",(i=>{if(i)return hT.error("failed to load script",i);e()}))}startIfEnabledOrStop(){var e,t;this._instance.config.__add_tracing_headers?this.it(this.rt):((e=this.$t)==null||e.call(this),(t=this.St)==null||t.call(this),this.$t=void 0,this.St=void 0)}},uc="https?://(.*)",Xi=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],fT=Yi(["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid"],Xi),ua="<masked>",gT=["li_fat_id"];function bx(r,e,t){if(!H)return{};var n,i=e?Yi([],Xi,t||[]):[],s=_x(ca(H.URL,i,ua),r),o=(n={},Ae(gT,(function(a){var l=ur.q(a);n[a]=l||null})),n);return Fe(o,s)}function _x(r,e){var t=fT.concat(e||[]),n={};return Ae(t,(function(i){var s=kc(r,i);n[i]=s||null})),n}function xx(r){var e=(function(s){return s?s.search(uc+"google.([^/?]*)")===0?"google":s.search(uc+"bing.com")===0?"bing":s.search(uc+"yahoo.com")===0?"yahoo":s.search(uc+"duckduckgo.com")===0?"duckduckgo":null:null})(r),t=e!="yahoo"?"q":"p",n={};if(!Wt(e)){n.$search_engine=e;var i=H?kc(H.referrer,t):"";i.length&&(n.ph_keyword=i)}return n}function u0(){return navigator.language||navigator.userLanguage}function wx(){return H?.referrer||"$direct"}function Sx(r,e){var t=r?Yi([],Xi,e||[]):[],n=et?.href.substring(0,1e3);return{r:wx().substring(0,1e3),u:n?ca(n,t,ua):void 0}}function kx(r){var e,{r:t,u:n}=r,i={$referrer:t,$referring_domain:t==null?void 0:t=="$direct"?"$direct":(e=Sc(t))==null?void 0:e.host};if(n){i.$current_url=n;var s=Sc(n);i.$host=s?.host,i.$pathname=s?.pathname;var o=_x(n);Fe(i,o)}if(t){var a=xx(t);Fe(i,a)}return i}function Ex(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}function mT(){try{return new Date().getTimezoneOffset()}catch{return}}function vT(r,e){if(!yt)return{};var t,n,i,s=r?Yi([],Xi,e||[]):[],[o,a]=(function(l){for(var c=0;c<V_.length;c++){var[u,p]=V_[c],h=u.exec(l),f=h&&(cn(p)?p(h,l):p);if(f)return f}return["",""]})(yt);return Fe(Zf({$os:o,$os_version:a,$browser:K0(yt,navigator.vendor),$device:U_(yt),$device_type:(n=yt,i=U_(n),i===L0||i===O0||i==="Kobo"||i==="Kindle Fire"||i===G0?ra:i===ia||i===qi||i===sa||i===Nh?"Console":i===F0?"Wearable":i?$t:"Desktop"),$timezone:Ex(),$timezone_offset:mT()}),{$current_url:ca(et?.href,s,ua),$host:et?.host,$pathname:et?.pathname,$raw_user_agent:yt.length>1e3?yt.substring(0,997)+"...":yt,$browser_version:C2(yt,navigator.vendor),$browser_language:u0(),$browser_language_prefix:(t=u0(),typeof t=="string"?t.split("-")[0]:void 0),$screen_height:E?.screen.height,$screen_width:E?.screen.width,$viewport_height:E?.innerHeight,$viewport_width:E?.innerWidth,$lib:"web",$lib_version:$r.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3})}var nn=Oe("[Web Vitals]"),d0=9e5,ff=class{constructor(e){var t;this.kt=!1,this.P=!1,this.N={url:void 0,metrics:[],firstMetricTimestamp:void 0},this.Pt=()=>{clearTimeout(this.Tt),this.N.metrics.length!==0&&(this._instance.capture("$web_vitals",this.N.metrics.reduce(((n,i)=>W({},n,{["$web_vitals_"+i.name+"_event"]:W({},i),["$web_vitals_"+i.name+"_value"]:i.value})),{})),this.N={url:void 0,metrics:[],firstMetricTimestamp:void 0})},this.It=n=>{var i,s=(i=this._instance.sessionManager)==null?void 0:i.checkAndGetSessionAndWindowId(!0);if(B(s))nn.error("Could not read session ID. Dropping metrics!");else{this.N=this.N||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var o=this.Ct();B(o)||(ge(n?.name)||ge(n?.value)?nn.error("Invalid metric received",n):this.Rt&&n.value>=this.Rt?nn.error("Ignoring metric with value >= "+this.Rt,n):(this.N.url!==o&&(this.Pt(),this.Tt=setTimeout(this.Pt,this.flushToCaptureTimeoutMs)),B(this.N.url)&&(this.N.url=o),this.N.firstMetricTimestamp=B(this.N.firstMetricTimestamp)?Date.now():this.N.firstMetricTimestamp,n.attribution&&n.attribution.interactionTargetElement&&(n.attribution.interactionTargetElement=void 0),this.N.metrics.push(W({},n,{$current_url:o,$session_id:s.sessionId,$window_id:s.windowId,timestamp:Date.now()})),this.N.metrics.length===this.allowedMetrics.length&&this.Pt()))}},this.rt=()=>{if(!this.P){var n,i,s,o,a=re.__PosthogExtensions__;B(a)||B(a.postHogWebVitalsCallbacks)||({onLCP:n,onCLS:i,onFCP:s,onINP:o}=a.postHogWebVitalsCallbacks),n&&i&&s&&o?(this.allowedMetrics.indexOf("LCP")>-1&&n(this.It.bind(this)),this.allowedMetrics.indexOf("CLS")>-1&&i(this.It.bind(this)),this.allowedMetrics.indexOf("FCP")>-1&&s(this.It.bind(this)),this.allowedMetrics.indexOf("INP")>-1&&o(this.It.bind(this)),this.P=!0):nn.error("web vitals callbacks not loaded - not starting")}},this._instance=e,this.kt=!((t=this._instance.persistence)==null||!t.props[Y_]),this.startIfEnabled()}get allowedMetrics(){var e,t,n=We(this._instance.config.capture_performance)?(e=this._instance.config.capture_performance)==null?void 0:e.web_vitals_allowed_metrics:void 0;return ge(n)?((t=this._instance.persistence)==null?void 0:t.props[J_])||["CLS","FCP","INP","LCP"]:n}get flushToCaptureTimeoutMs(){return(We(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var e=We(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals_attribution:void 0;return e!=null&&e}get Rt(){var e=We(this._instance.config.capture_performance)&&Fr(this._instance.config.capture_performance.__web_vitals_max_value)?this._instance.config.capture_performance.__web_vitals_max_value:d0;return 0<e&&e<=6e4?d0:e}get isEnabled(){var e=et?.protocol;if(e!=="http:"&&e!=="https:")return nn.info("Web Vitals are disabled on non-http/https protocols"),!1;var t=We(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals:Nr(this._instance.config.capture_performance)?this._instance.config.capture_performance:void 0;return Nr(t)?t:this.kt}startIfEnabled(){this.isEnabled&&!this.P&&(nn.info("enabled, starting..."),this.it(this.rt))}onRemoteConfig(e){var t=We(e.capturePerformance)&&!!e.capturePerformance.web_vitals,n=We(e.capturePerformance)?e.capturePerformance.web_vitals_allowed_metrics:void 0;this._instance.persistence&&(this._instance.persistence.register({[Y_]:t}),this._instance.persistence.register({[J_]:n})),this.kt=t,this.startIfEnabled()}it(e){var t,n;if((t=re.__PosthogExtensions__)!=null&&t.postHogWebVitalsCallbacks)e();else{var i=this.useAttribution?"web-vitals-with-attribution":"web-vitals";(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,i,(s=>{s?nn.error("failed to load script",s):e()}))}}Ct(){var e=E?E.location.href:void 0;if(e){var t=this._instance.config.mask_personal_data_properties,n=this._instance.config.custom_personal_data_properties,i=t?Yi([],Xi,n||[]):[];return ca(e,i,ua)}nn.error("Could not determine current URL")}},yT=Oe("[Heatmaps]");function p0(r){return We(r)&&"clientX"in r&&"clientY"in r&&Fr(r.clientX)&&Fr(r.clientY)}var gf=class{constructor(e){var t;this.kt=!1,this.P=!1,this.Ft=null,this.instance=e,this.kt=!((t=this.instance.persistence)==null||!t.props[Gh]),this.rageclicks=new wc(e.config.rageclick)}get flushIntervalMilliseconds(){var e=5e3;return We(this.instance.config.capture_heatmaps)&&this.instance.config.capture_heatmaps.flush_interval_milliseconds&&(e=this.instance.config.capture_heatmaps.flush_interval_milliseconds),e}get isEnabled(){return ge(this.instance.config.capture_heatmaps)?ge(this.instance.config.enable_heatmaps)?this.kt:this.instance.config.enable_heatmaps:this.instance.config.capture_heatmaps!==!1}startIfEnabled(){if(this.isEnabled){if(this.P)return;yT.info("starting..."),this.Ot(),this.Mt()}else{var e;clearInterval((e=this.Ft)!==null&&e!==void 0?e:void 0),this.At(),this.getAndClearBuffer()}}onRemoteConfig(e){var t=!!e.heatmaps;this.instance.persistence&&this.instance.persistence.register({[Gh]:t}),this.kt=t,this.startIfEnabled()}getAndClearBuffer(){var e=this.N;return this.N=void 0,e}jt(e){this.Dt(e.originalEvent,"deadclick")}Mt(){this.Ft&&clearInterval(this.Ft),this.Ft=(function(e){return e?.visibilityState==="visible"})(H)?setInterval(this.Lt.bind(this),this.flushIntervalMilliseconds):null}Ot(){E&&H&&(this.Nt=this.Lt.bind(this),Ue(E,"beforeunload",this.Nt),this.Ut=e=>this.Dt(e||E?.event),Ue(H,"click",this.Ut,{capture:!0}),this.zt=e=>this.Ht(e||E?.event),Ue(H,"mousemove",this.zt,{capture:!0}),this.Bt=new Cc(this.instance,cT,this.jt.bind(this)),this.Bt.startIfEnabled(),this.qt=this.Mt.bind(this),Ue(H,"visibilitychange",this.qt),this.P=!0)}At(){var e;E&&H&&(this.Nt&&E.removeEventListener("beforeunload",this.Nt),this.Ut&&H.removeEventListener("click",this.Ut,{capture:!0}),this.zt&&H.removeEventListener("mousemove",this.zt,{capture:!0}),this.qt&&H.removeEventListener("visibilitychange",this.qt),clearTimeout(this.Wt),(e=this.Bt)==null||e.stop(),this.P=!1)}Gt(e,t){var n=this.instance.scrollManager.scrollY(),i=this.instance.scrollManager.scrollX(),s=this.instance.scrollManager.scrollElement(),o=(function(a,l,c){for(var u=a;u&&Dc(u)&&!dn(u,"body");){if(u===c)return!1;if(fe(l,E?.getComputedStyle(u).position))return!0;u=cx(u)}return!1})(ax(e),["fixed","sticky"],s);return{x:e.clientX+(o?0:i),y:e.clientY+(o?0:n),target_fixed:o,type:t}}Dt(e,t){var n;if(t===void 0&&(t="click"),!Q_(e.target)&&p0(e)){var i=this.Gt(e,t);(n=this.rageclicks)!=null&&n.isRageClick(e.clientX,e.clientY,new Date().getTime())&&this.Vt(W({},i,{type:"rageclick"})),this.Vt(i)}}Ht(e){!Q_(e.target)&&p0(e)&&(clearTimeout(this.Wt),this.Wt=setTimeout((()=>{this.Vt(this.Gt(e,"mousemove"))}),500))}Vt(e){if(E){var t=E.location.href,n=this.instance.config.mask_personal_data_properties,i=this.instance.config.custom_personal_data_properties,s=n?Yi([],Xi,i||[]):[],o=ca(t,s,ua);this.N=this.N||{},this.N[o]||(this.N[o]=[]),this.N[o].push(e)}}Lt(){this.N&&!ji(this.N)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},Ac=class{constructor(e){this.Jt=(t,n,i)=>{i&&(i.noSessionId||i.activityTimeout||i.sessionPastMaximumLength)&&(U.info("[PageViewManager] Session rotated, clearing pageview state",{sessionId:t,changeReason:i}),this.Kt=void 0,this._instance.scrollManager.resetContext())},this._instance=e,this.Yt()}Yt(){var e;this.Xt=(e=this._instance.sessionManager)==null?void 0:e.onSessionId(this.Jt)}destroy(){var e;(e=this.Xt)==null||e.call(this),this.Xt=void 0}doPageView(e,t){var n,i=this.Qt(e,t);return this.Kt={pathname:(n=E?.location.pathname)!==null&&n!==void 0?n:"",pageViewId:t,timestamp:e},this._instance.scrollManager.resetContext(),i}doPageLeave(e){var t;return this.Qt(e,(t=this.Kt)==null?void 0:t.pageViewId)}doEvent(){var e;return{$pageview_id:(e=this.Kt)==null?void 0:e.pageViewId}}Qt(e,t){var n=this.Kt;if(!n)return{$pageview_id:t};var i={$pageview_id:t,$prev_pageview_id:n.pageViewId},s=this._instance.scrollManager.getContext();if(s&&!this._instance.config.disable_scroll_properties){var{maxScrollHeight:o,lastScrollY:a,maxScrollY:l,maxContentHeight:c,lastContentY:u,maxContentY:p}=s;if(!(B(o)||B(a)||B(l)||B(c)||B(u)||B(p))){o=Math.ceil(o),a=Math.ceil(a),l=Math.ceil(l),c=Math.ceil(c),u=Math.ceil(u),p=Math.ceil(p);var h=o<=1?1:dr(a/o,0,1,U),f=o<=1?1:dr(l/o,0,1,U),v=c<=1?1:dr(u/c,0,1,U),g=c<=1?1:dr(p/c,0,1,U);i=Fe(i,{$prev_pageview_last_scroll:a,$prev_pageview_last_scroll_percentage:h,$prev_pageview_max_scroll:l,$prev_pageview_max_scroll_percentage:f,$prev_pageview_last_content:u,$prev_pageview_last_content_percentage:v,$prev_pageview_max_content:p,$prev_pageview_max_content_percentage:g})}}return n.pathname&&(i.$prev_pageview_pathname=n.pathname),n.timestamp&&(i.$prev_pageview_duration=(e.getTime()-n.timestamp.getTime())/1e3),i}};var Or=(function(r){return r.GZipJS="gzip-js",r.Base64="base64",r})({}),Mt=Uint8Array,ut=Uint16Array,Ki=Uint32Array,Xf=new Mt([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]),Jf=new Mt([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]),h0=new Mt([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Cx=function(r,e){for(var t=new ut(31),n=0;n<31;++n)t[n]=e+=1<<r[n-1];var i=new Ki(t[30]);for(n=1;n<30;++n)for(var s=t[n];s<t[n+1];++s)i[s]=s-t[n]<<5|n;return[t,i]},Ax=Cx(Xf,2),bT=Ax[0],mf=Ax[1];bT[28]=258,mf[258]=28;for(vf=Cx(Jf,0)[1],Tc=new ut(32768),Te=0;Te<32768;++Te)sn=(43690&Te)>>>1|(21845&Te)<<1,sn=(61680&(sn=(52428&sn)>>>2|(13107&sn)<<2))>>>4|(3855&sn)<<4,Tc[Te]=((65280&sn)>>>8|(255&sn)<<8)>>>1;var sn,vf,Tc,Te,Qo=function(r,e,t){for(var n=r.length,i=0,s=new ut(e);i<n;++i)++s[r[i]-1];var o,a=new ut(e);for(i=0;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;if(t){o=new ut(1<<e);var l=15-e;for(i=0;i<n;++i)if(r[i])for(var c=i<<4|r[i],u=e-r[i],p=a[r[i]-1]++<<u,h=p|(1<<u)-1;p<=h;++p)o[Tc[p]>>>l]=c}else for(o=new ut(n),i=0;i<n;++i)o[i]=Tc[a[r[i]-1]++]>>>15-r[i];return o},ni=new Mt(288);for(Te=0;Te<144;++Te)ni[Te]=8;for(Te=144;Te<256;++Te)ni[Te]=9;for(Te=256;Te<280;++Te)ni[Te]=7;for(Te=280;Te<288;++Te)ni[Te]=8;var Rc=new Mt(32);for(Te=0;Te<32;++Te)Rc[Te]=5;var _T=Qo(ni,9,0),xT=Qo(Rc,5,0),Tx=function(r){return(r/8>>0)+(7&r&&1)},Rx=function(r,e,t){(t==null||t>r.length)&&(t=r.length);var n=new(r instanceof ut?ut:r instanceof Ki?Ki:Mt)(t-e);return n.set(r.subarray(e,t)),n},Rr=function(r,e,t){t<<=7&e;var n=e/8>>0;r[n]|=t,r[n+1]|=t>>>8},Ho=function(r,e,t){t<<=7&e;var n=e/8>>0;r[n]|=t,r[n+1]|=t>>>8,r[n+2]|=t>>>16},_h=function(r,e){for(var t=[],n=0;n<r.length;++n)r[n]&&t.push({s:n,f:r[n]});var i=t.length,s=t.slice();if(!i)return[new Mt(0),0];if(i==1){var o=new Mt(t[0].s+1);return o[t[0].s]=1,[o,1]}t.sort((function(w,A){return w.f-A.f})),t.push({s:-1,f:25001});var a=t[0],l=t[1],c=0,u=1,p=2;for(t[0]={s:-1,f:a.f+l.f,l:a,r:l};u!=i-1;)a=t[t[c].f<t[p].f?c++:p++],l=t[c!=u&&t[c].f<t[p].f?c++:p++],t[u++]={s:-1,f:a.f+l.f,l:a,r:l};var h=s[0].s;for(n=1;n<i;++n)s[n].s>h&&(h=s[n].s);var f=new ut(h+1),v=yf(t[u-1],f,0);if(v>e){n=0;var g=0,m=v-e,y=1<<m;for(s.sort((function(w,A){return f[A.s]-f[w.s]||w.f-A.f}));n<i;++n){var x=s[n].s;if(!(f[x]>e))break;g+=y-(1<<v-f[x]),f[x]=e}for(g>>>=m;g>0;){var S=s[n].s;f[S]<e?g-=1<<e-f[S]++-1:++n}for(;n>=0&&g;--n){var b=s[n].s;f[b]==e&&(--f[b],++g)}v=e}return[new Mt(f),v]},yf=function(r,e,t){return r.s==-1?Math.max(yf(r.l,e,t+1),yf(r.r,e,t+1)):e[r.s]=t},f0=function(r){for(var e=r.length;e&&!r[--e];);for(var t=new ut(++e),n=0,i=r[0],s=1,o=function(l){t[n++]=l},a=1;a<=e;++a)if(r[a]==i&&a!=e)++s;else{if(!i&&s>2){for(;s>138;s-=138)o(32754);s>2&&(o(s>10?s-11<<5|28690:s-3<<5|12305),s=0)}else if(s>3){for(o(i),--s;s>6;s-=6)o(8304);s>2&&(o(s-3<<5|8208),s=0)}for(;s--;)o(i);s=1,i=r[a]}return[t.subarray(0,n),e]},Bo=function(r,e){for(var t=0,n=0;n<e.length;++n)t+=r[n]*e[n];return t},bf=function(r,e,t){var n=t.length,i=Tx(e+2);r[i]=255&n,r[i+1]=n>>>8,r[i+2]=255^r[i],r[i+3]=255^r[i+1];for(var s=0;s<n;++s)r[i+s+4]=t[s];return 8*(i+4+n)},g0=function(r,e,t,n,i,s,o,a,l,c,u){Rr(e,u++,t),++i[256];for(var p=_h(i,15),h=p[0],f=p[1],v=_h(s,15),g=v[0],m=v[1],y=f0(h),x=y[0],S=y[1],b=f0(g),w=b[0],A=b[1],_=new ut(19),C=0;C<x.length;++C)_[31&x[C]]++;for(C=0;C<w.length;++C)_[31&w[C]]++;for(var I=_h(_,7),R=I[0],P=I[1],Y=19;Y>4&&!R[h0[Y-1]];--Y);var F,L,G,K,le=c+5<<3,j=Bo(i,ni)+Bo(s,Rc)+o,te=Bo(i,h)+Bo(s,g)+o+14+3*Y+Bo(_,R)+(2*_[16]+3*_[17]+7*_[18]);if(le<=j&&le<=te)return bf(e,u,r.subarray(l,l+c));if(Rr(e,u,1+(te<j)),u+=2,te<j){F=Qo(h,f,0),L=h,G=Qo(g,m,0),K=g;var De=Qo(R,P,0);for(Rr(e,u,S-257),Rr(e,u+5,A-1),Rr(e,u+10,Y-4),u+=14,C=0;C<Y;++C)Rr(e,u+3*C,R[h0[C]]);u+=3*Y;for(var V=[x,w],J=0;J<2;++J){var Q=V[J];for(C=0;C<Q.length;++C){var ue=31&Q[C];Rr(e,u,De[ue]),u+=R[ue],ue>15&&(Rr(e,u,Q[C]>>>5&127),u+=Q[C]>>>12)}}}else F=_T,L=ni,G=xT,K=Rc;for(C=0;C<a;++C)if(n[C]>255){ue=n[C]>>>18&31,Ho(e,u,F[ue+257]),u+=L[ue+257],ue>7&&(Rr(e,u,n[C]>>>23&31),u+=Xf[ue]);var _e=31&n[C];Ho(e,u,G[_e]),u+=K[_e],_e>3&&(Ho(e,u,n[C]>>>5&8191),u+=Jf[_e])}else Ho(e,u,F[n[C]]),u+=L[n[C]];return Ho(e,u,F[256]),u+L[256]},wT=new Ki([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),ST=(function(){for(var r=new Ki(256),e=0;e<256;++e){for(var t=e,n=9;--n;)t=(1&t&&3988292384)^t>>>1;r[e]=t}return r})(),kT=function(r,e,t,n,i){return(function(s,o,a,l,c,u){var p=s.length,h=new Mt(l+p+5*(1+Math.floor(p/7e3))+c),f=h.subarray(l,h.length-c),v=0;if(!o||p<8)for(var g=0;g<=p;g+=65535){var m=g+65535;m<p?v=bf(f,v,s.subarray(g,m)):(f[g]=u,v=bf(f,v,s.subarray(g,p)))}else{for(var y=wT[o-1],x=y>>>13,S=8191&y,b=(1<<a)-1,w=new ut(32768),A=new ut(b+1),_=Math.ceil(a/3),C=2*_,I=function(Hc){return(s[Hc]^s[Hc+1]<<_^s[Hc+2]<<C)&b},R=new Ki(25e3),P=new ut(288),Y=new ut(32),F=0,L=0,G=(g=0,0),K=0,le=0;g<p;++g){var j=I(g),te=32767&g,De=A[j];if(w[te]=De,A[j]=te,K<=g){var V=p-g;if((F>7e3||G>24576)&&V>423){v=g0(s,f,0,R,P,Y,L,G,le,g-le,v),G=F=L=0,le=g;for(var J=0;J<286;++J)P[J]=0;for(J=0;J<30;++J)Y[J]=0}var Q=2,ue=0,_e=S,me=te-De&32767;if(V>2&&j==I(g-me))for(var Ie=Math.min(x,V)-1,dt=Math.min(32767,g),zt=Math.min(258,V);me<=dt&&--_e&&te!=De;){if(s[g+Q]==s[g+Q-me]){for(var qt=0;qt<zt&&s[g+qt]==s[g+qt-me];++qt);if(qt>Q){if(Q=qt,ue=me,qt>Ie)break;var Ji=Math.min(me,qt-2),Le=0;for(J=0;J<Ji;++J){var Qi=g-me+J+32768&32767,sg=Qi-w[Qi]+32768&32767;sg>Le&&(Le=sg,De=Qi)}}}me+=(te=De)-(De=w[te])+32768&32767}if(ue){R[G++]=268435456|mf[Q]<<18|vf[ue];var og=31&mf[Q],ag=31&vf[ue];L+=Xf[og]+Jf[ag],++P[257+og],++Y[ag],K=g+Q,++F}else R[G++]=s[g],++P[s[g]]}}v=g0(s,f,u,R,P,Y,L,G,le,g-le,v)}return Rx(h,0,l+Tx(v)+c)})(r,e.level==null?6:e.level,e.mem==null?Math.ceil(1.5*Math.max(8,Math.min(13,Math.log(r.length)))):12+e.mem,t,n,!0)},xh=function(r,e,t){for(;t;++e)r[e]=t,t>>>=8};function ET(r,e){e===void 0&&(e={});var t=(function(){var a=4294967295;return{p:function(l){for(var c=a,u=0;u<l.length;++u)c=ST[255&c^l[u]]^c>>>8;a=c},d:function(){return 4294967295^a}}})(),n=r.length;t.p(r);var i,s=kT(r,e,10+((i=e).filename&&i.filename.length+1||0),8),o=s.length;return(function(a,l){var c=l.filename;if(a[0]=31,a[1]=139,a[2]=8,a[8]=l.level<2?4:l.level==9?2:0,a[9]=3,l.mtime!=0&&xh(a,4,Math.floor(new Date(l.mtime||Date.now())/1e3)),c){a[3]=8;for(var u=0;u<=c.length;++u)a[u+10]=c.charCodeAt(u)}})(s,e),xh(s,o-8,t.d()),xh(s,o-4,n),s}var CT=function(r){var e,t,n,i,s="";for(e=t=0,n=(r=(r+"").replace(/\r\n/g,`
1064
1064
  `).replace(/\r/g,`
1065
- `)).length,i=0;i<n;i++){var o=r.charCodeAt(i),a=null;o<128?t++:a=o>127&&o<2048?String.fromCharCode(o>>6|192,63&o|128):String.fromCharCode(o>>12|224,o>>6&63|128,63&o|128),Wt(a)||(t>e&&(s+=r.substring(e,t)),s+=a,e=t=i+1)}return t>e&&(s+=r.substring(e,r.length)),s},I2=!!ih||!!nh,C_="text/plain",_c=function(r,e,t){var n;t===void 0&&(t=!0);var[i,s]=r.split("?"),o=W({},e),a=(n=s?.split("&").map((c=>{var u,[p,h]=c.split("="),f=t&&(u=o[p])!==null&&u!==void 0?u:h;return delete o[p],p+"="+f})))!==null&&n!==void 0?n:[],l=n2(o);return l&&a.push(l),i+"?"+a.join("&")},Wo=(r,e)=>JSON.stringify(r,((t,n)=>typeof n=="bigint"?n.toString():n),e),Yp=r=>{var{data:e,compression:t}=r;if(e){if(t===Mr.GZipJS){var n=R2((function(l,c){var u=l.length;if(typeof TextEncoder<"u")return new TextEncoder().encode(l);for(var p=new Mt(l.length+(l.length>>>1)),h=0,f=function(y){p[h++]=y},v=0;v<u;++v){if(h+5>p.length){var g=new Mt(h+8+(u-v<<1));g.set(p),p=g}var m=l.charCodeAt(v);m<128||c?f(m):m<2048?(f(192|m>>>6),f(128|63&m)):m>55295&&m<57344?(f(240|(m=65536+(1047552&m)|1023&l.charCodeAt(++v))>>>18),f(128|m>>>12&63),f(128|m>>>6&63),f(128|63&m)):(f(224|m>>>12),f(128|m>>>6&63),f(128|63&m))}return H0(p,0,h)})(Wo(e)),{mtime:0}),i=new Blob([n],{type:C_});return{contentType:C_,body:i,estimatedSize:i.size}}if(t===Mr.Base64){var s=(function(l){var c,u,p,h,f,v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",g=0,m=0,y="",x=[];if(!l)return l;l=T2(l);do c=(f=l.charCodeAt(g++)<<16|l.charCodeAt(g++)<<8|l.charCodeAt(g++))>>18&63,u=f>>12&63,p=f>>6&63,h=63&f,x[m++]=v.charAt(c)+v.charAt(u)+v.charAt(p)+v.charAt(h);while(g<l.length);switch(y=x.join(""),l.length%3){case 1:y=y.slice(0,-2)+"==";break;case 2:y=y.slice(0,-1)+"="}return y})(Wo(e)),o=(l=>"data="+encodeURIComponent(typeof l=="string"?l:Wo(l)))(s);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}var a=Wo(e);return{contentType:"application/json",body:a,estimatedSize:new Blob([a]).size}}},nc=[];nh&&nc.push({transport:"fetch",method:r=>{var e,t,{contentType:n,body:i,estimatedSize:s}=(e=Yp(r))!==null&&e!==void 0?e:{},o=new Headers;Ae(r.headers,(function(u,p){o.append(p,u)})),n&&o.append("Content-Type",n);var a=r.url,l=null;if(qb){var c=new qb;l={signal:c.signal,timeout:setTimeout((()=>c.abort()),r.timeout)}}nh(a,W({method:r?.method||"GET",headers:o,keepalive:r.method==="POST"&&(s||0)<52428.8,body:i,signal:(t=l)==null?void 0:t.signal},r.fetchOptions)).then((u=>u.text().then((p=>{var h={statusCode:u.status,text:p};if(u.status===200)try{h.json=JSON.parse(p)}catch(f){j.error(f)}r.callback==null||r.callback(h)})))).catch((u=>{j.error(u),r.callback==null||r.callback({statusCode:0,text:u})})).finally((()=>l?clearTimeout(l.timeout):null))}}),ih&&nc.push({transport:"XHR",method:r=>{var e,t=new ih;t.open(r.method||"GET",r.url,!0);var{contentType:n,body:i}=(e=Yp(r))!==null&&e!==void 0?e:{};Ae(r.headers,(function(s,o){t.setRequestHeader(o,s)})),n&&t.setRequestHeader("Content-Type",n),r.timeout&&(t.timeout=r.timeout),r.disableXHRCredentials||(t.withCredentials=!0),t.onreadystatechange=()=>{if(t.readyState===4){var s={statusCode:t.status,text:t.responseText};if(t.status===200)try{s.json=JSON.parse(t.responseText)}catch{}r.callback==null||r.callback(s)}},t.send(i)}}),wt!=null&&wt.sendBeacon&&nc.push({transport:"sendBeacon",method:r=>{var e=_c(r.url,{beacon:"1"});try{var t,{contentType:n,body:i}=(t=Yp(r))!==null&&t!==void 0?t:{},s=typeof i=="string"?new Blob([i],{type:n}):i;wt.sendBeacon(e,s)}catch{}}});var xc=function(r,e){if(!(function(t){try{new RegExp(t)}catch{return!1}return!0})(e))return!1;try{return new RegExp(e).test(r)}catch{return!1}};function A_(r,e,t){return Wo({distinct_id:r,userPropertiesToSet:e,userPropertiesToSetOnce:t})}var B0={exact:(r,e)=>e.some((t=>r.some((n=>t===n)))),is_not:(r,e)=>e.every((t=>r.every((n=>t!==n)))),regex:(r,e)=>e.some((t=>r.some((n=>xc(t,n))))),not_regex:(r,e)=>e.every((t=>r.every((n=>!xc(t,n))))),icontains:(r,e)=>e.map(tc).some((t=>r.map(tc).some((n=>t.includes(n))))),not_icontains:(r,e)=>e.map(tc).every((t=>r.map(tc).every((n=>!t.includes(n))))),gt:(r,e)=>e.some((t=>{var n=parseFloat(t);return!isNaN(n)&&r.some((i=>n>parseFloat(i)))})),lt:(r,e)=>e.some((t=>{var n=parseFloat(t);return!isNaN(n)&&r.some((i=>n<parseFloat(i)))}))},tc=r=>r.toLowerCase();function V0(r,e){return!r||Object.entries(r).every((t=>{var[n,i]=t,s=e?.[n];if(B(s)||Wt(s))return!1;var o=[String(s)],a=B0[i.operator];return!!a&&a(i.values,o)}))}var Xp=Pe("[Error tracking]"),Zh=class{constructor(e){var t,n;this.Zt=[],this.ti=new ph([new fh,new xh,new mh,new gh,new bh,new yh,new vh,new _h],HA()),this._instance=e,this.Zt=(t=(n=this._instance.persistence)==null?void 0:n.get_property(Sh))!==null&&t!==void 0?t:[]}onRemoteConfig(e){var t,n,i,s=(t=(n=e.errorTracking)==null?void 0:n.suppressionRules)!==null&&t!==void 0?t:[],o=(i=e.errorTracking)==null?void 0:i.captureExtensionExceptions;this.Zt=s,this._instance.persistence&&this._instance.persistence.register({[Sh]:this.Zt,[s_]:o})}get ii(){var e,t=!!this._instance.get_property(s_),n=this._instance.config.error_tracking.captureExtensionExceptions;return(e=n??t)!==null&&e!==void 0&&e}buildProperties(e,t){return this.ti.buildFromUnknown(e,{syntheticException:t?.syntheticException,mechanism:{handled:t?.handled}})}sendExceptionEvent(e){var t=e.$exception_list;if(this.ei(t)){if(this.ri(t))return void Xp.info("Skipping exception capture because a suppression rule matched");if(!this.ii&&this.si(t))return void Xp.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ni(t))return void Xp.info("Skipping exception capture because it was thrown by the PostHog SDK")}return this._instance.capture("$exception",e,{_noTruncate:!0,_batchKey:"exceptionEvent"})}ri(e){if(e.length===0)return!1;var t=e.reduce(((n,i)=>{var{type:s,value:o}=i;return ze(s)&&s.length>0&&n.$exception_types.push(s),ze(o)&&o.length>0&&n.$exception_values.push(o),n}),{$exception_types:[],$exception_values:[]});return this.Zt.some((n=>{var i=n.values.map((s=>{var o,a=B0[s.operator],l=_e(s.value)?s.value:[s.value],c=(o=t[s.key])!==null&&o!==void 0?o:[];return l.length>0&&a(l,c)}));return n.type==="OR"?i.some(Boolean):i.every(Boolean)}))}si(e){return e.flatMap((t=>{var n,i;return(n=(i=t.stacktrace)==null?void 0:i.frames)!==null&&n!==void 0?n:[]})).some((t=>t.filename&&t.filename.startsWith("chrome-extension://")))}ni(e){if(e.length>0){var t,n,i,s,o=(t=(n=e[0].stacktrace)==null?void 0:n.frames)!==null&&t!==void 0?t:[],a=o[o.length-1];return(i=a==null||(s=a.filename)==null?void 0:s.includes("posthog.com/static"))!==null&&i!==void 0&&i}return!1}ei(e){return!fe(e)&&_e(e)}},xt=Pe("[FeatureFlags]"),No=Pe("[FeatureFlags]",{debugEnabled:!0}),Jp="$active_feature_flags",Pi="$override_feature_flags",R_="$feature_flag_payloads",Lo="$override_feature_flag_payloads",T_="$feature_flag_request_id",I_="$feature_flag_evaluated_at",$_=r=>{var e={};for(var[t,n]of rc(r||{}))n&&(e[t]=n);return e},$2=r=>{var e=r.flags;return e?(r.featureFlags=Object.fromEntries(Object.keys(e).map((t=>{var n;return[t,(n=e[t].variant)!==null&&n!==void 0?n:e[t].enabled]}))),r.featureFlagPayloads=Object.fromEntries(Object.keys(e).filter((t=>e[t].enabled)).filter((t=>{var n;return(n=e[t].metadata)==null?void 0:n.payload})).map((t=>{var n;return[t,(n=e[t].metadata)==null?void 0:n.payload]})))):xt.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),r},M2=(function(r){return r.FeatureFlags="feature_flags",r.Recordings="recordings",r})({}),Gh=class{constructor(e){this.oi=!1,this.ai=!1,this.li=!1,this.ui=!1,this.hi=!1,this.di=!1,this.vi=!1,this.ci=!1,this._instance=e,this.featureFlagEventHandlers=[]}fi(){var e,t=(e=this._instance.config.evaluation_contexts)!==null&&e!==void 0?e:this._instance.config.evaluation_environments;return!this._instance.config.evaluation_environments||this._instance.config.evaluation_contexts||this.ci||(xt.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.ci=!0),t!=null&&t.length?t.filter((n=>{var i=n&&typeof n=="string"&&n.trim().length>0;return i||xt.error("Invalid evaluation context found:",n,"Expected non-empty string"),i})):[]}pi(){return this.fi().length>0}flags(){if(this._instance.config.__preview_remote_config)this.di=!0;else{var e=!this.gi&&(this._instance.config.advanced_disable_feature_flags||this._instance.config.advanced_disable_feature_flags_on_first_load);this.mi({disableFlags:e})}}get hasLoadedFlags(){return this.ai}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var e=this._instance.get_property(kh),t=this._instance.get_property(Pi),n=this._instance.get_property(Lo);if(!n&&!t)return e||{};var i=Fe({},e||{}),s=[...new Set([...Object.keys(n||{}),...Object.keys(t||{})])];for(var o of s){var a,l,c=i[o],u=t?.[o],p=B(u)?(a=c?.enabled)!==null&&a!==void 0&&a:!!u,h=B(u)?c.variant:typeof u=="string"?u:void 0,f=n?.[o],v=W({},c,{enabled:p,variant:p?h??c?.variant:void 0});p!==c?.enabled&&(v.original_enabled=c?.enabled),h!==c?.variant&&(v.original_variant=c?.variant),f&&(v.metadata=W({},c?.metadata,{payload:f,original_payload:c==null||(l=c.metadata)==null?void 0:l.payload})),i[o]=v}return this.oi||(xt.warn(" Overriding feature flag details!",{flagDetails:e,overriddenPayloads:n,finalDetails:i}),this.oi=!0),i}getFlagVariants(){var e=this._instance.get_property(Bi),t=this._instance.get_property(Pi);if(!t)return e||{};for(var n=Fe({},e),i=Object.keys(t),s=0;s<i.length;s++)n[i[s]]=t[i[s]];return this.oi||(xt.warn(" Overriding feature flags!",{enabledFlags:e,overriddenFlags:t,finalFlags:n}),this.oi=!0),n}getFlagPayloads(){var e=this._instance.get_property(R_),t=this._instance.get_property(Lo);if(!t)return e||{};for(var n=Fe({},e||{}),i=Object.keys(t),s=0;s<i.length;s++)n[i[s]]=t[i[s]];return this.oi||(xt.warn(" Overriding feature flag payloads!",{flagPayloads:e,overriddenPayloads:t,finalPayloads:n}),this.oi=!0),n}reloadFeatureFlags(){this.ui||this._instance.config.advanced_disable_feature_flags||this.gi||(this.gi=setTimeout((()=>{this.mi()}),5))}bi(){clearTimeout(this.gi),this.gi=void 0}ensureFlagsLoaded(){this.ai||this.li||this.gi||this.reloadFeatureFlags()}setAnonymousDistinctId(e){this.$anon_distinct_id=e}setReloadingPaused(e){this.ui=e}mi(e){var t;if(this.bi(),!this._instance.M())if(this.li)this.hi=!0;else{var n=this._instance.config.token,i=this._instance.get_property("$device_id"),s={token:n,distinct_id:this._instance.get_distinct_id(),groups:this._instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:W({},((t=this._instance.persistence)==null?void 0:t.get_initial_props())||{},this._instance.get_property(Uo)||{}),group_properties:this._instance.get_property(Qn)};Wt(i)||B(i)||(s.$device_id=i),(e!=null&&e.disableFlags||this._instance.config.advanced_disable_feature_flags)&&(s.disable_flags=!0),this.pi()&&(s.evaluation_contexts=this.fi());var o=this._instance.config.__preview_remote_config,a=o?"/flags/?v=2":"/flags/?v=2&config=true",l=this._instance.config.advanced_only_evaluate_survey_feature_flags?"&only_evaluate_survey_feature_flags=true":"",c=this._instance.requestRouter.endpointFor("flags",a+l);o&&(s.timezone=N0()),this.li=!0,this._instance._send_request({method:"POST",url:c,data:s,compression:this._instance.config.disable_compression?void 0:Mr.Base64,timeout:this._instance.config.feature_flag_request_timeout_ms,callback:u=>{var p,h,f=!0;if(u.statusCode===200&&(this.hi||(this.$anon_distinct_id=void 0),f=!1),this.li=!1,this.di||(this.di=!0,this._instance.yi((h=u.json)!==null&&h!==void 0?h:{})),!s.disable_flags||this.hi)if(this.vi=!f,u.json&&(p=u.json.quotaLimited)!=null&&p.includes(M2.FeatureFlags))xt.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.");else{var v;s.disable_flags||this.receivedFeatureFlags((v=u.json)!==null&&v!==void 0?v:{},f),this.hi&&(this.hi=!1,this.mi())}}})}}getFeatureFlag(e,t){var n;if(t===void 0&&(t={}),this.ai||this.getFlags()&&this.getFlags().length>0){var i=this.getFeatureFlagResult(e,t);return(n=i?.variant)!==null&&n!==void 0?n:i?.enabled}xt.warn('getFeatureFlag for key "'+e+`" failed. Feature flags didn't load in time.`)}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={}),this.ai||this.getFlags()&&this.getFlags().length>0){var n=this.getFlagVariants(),i=e in n,s=n[e],o=this.getFlagPayloads()[e],a=String(s),l=this._instance.get_property(T_)||void 0,c=this._instance.get_property(I_)||void 0,u=this._instance.get_property(lc)||{};if((t.send_event||!("send_event"in t))&&(!(e in u)||!u[e].includes(a))){var p,h,f,v,g,m,y,x,S;_e(u[e])?u[e].push(a):u[e]=[a],(p=this._instance.persistence)==null||p.register({[lc]:u});var b=this.getFeatureFlagDetails(e),w={$feature_flag:e,$feature_flag_response:s,$feature_flag_payload:o||null,$feature_flag_request_id:l,$feature_flag_evaluated_at:c,$feature_flag_bootstrapped_response:((h=this._instance.config.bootstrap)==null||(h=h.featureFlags)==null?void 0:h[e])||null,$feature_flag_bootstrapped_payload:((f=this._instance.config.bootstrap)==null||(f=f.featureFlagPayloads)==null?void 0:f[e])||null,$used_bootstrap_value:!this.vi};B(b==null||(v=b.metadata)==null?void 0:v.version)||(w.$feature_flag_version=b.metadata.version);var C,_=(g=b==null||(m=b.reason)==null?void 0:m.description)!==null&&g!==void 0?g:b==null||(y=b.reason)==null?void 0:y.code;_&&(w.$feature_flag_reason=_),b!=null&&(x=b.metadata)!=null&&x.id&&(w.$feature_flag_id=b.metadata.id),B(b?.original_variant)&&B(b?.original_enabled)||(w.$feature_flag_original_response=B(b.original_variant)?b.original_enabled:b.original_variant),b!=null&&(S=b.metadata)!=null&&S.original_payload&&(w.$feature_flag_original_payload=b==null||(C=b.metadata)==null?void 0:C.original_payload),this._instance.capture("$feature_flag_called",w)}if(i){var A=o;if(!B(o))try{A=JSON.parse(o)}catch{}return{key:e,enabled:!!s,variant:typeof s=="string"?s:void 0,payload:A}}}else xt.warn('getFeatureFlagResult for key "'+e+`" failed. Feature flags didn't load in time.`)}getRemoteConfigPayload(e,t){var n=this._instance.config.token,i={distinct_id:this._instance.get_distinct_id(),token:n};this.pi()&&(i.evaluation_contexts=this.fi()),this._instance._send_request({method:"POST",url:this._instance.requestRouter.endpointFor("flags","/flags/?v=2&config=true"),data:i,compression:this._instance.config.disable_compression?void 0:Mr.Base64,timeout:this._instance.config.feature_flag_request_timeout_ms,callback:s=>{var o,a=(o=s.json)==null?void 0:o.featureFlagPayloads;t(a?.[e]||void 0)}})}isFeatureEnabled(e,t){if(t===void 0&&(t={}),this.ai||this.getFlags()&&this.getFlags().length>0){var n=this.getFeatureFlag(e,t);return B(n)?void 0:!!n}xt.warn('isFeatureEnabled for key "'+e+`" failed. Feature flags didn't load in time.`)}addFeatureFlagsHandler(e){this.featureFlagEventHandlers.push(e)}removeFeatureFlagsHandler(e){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter((t=>t!==e))}receivedFeatureFlags(e,t){if(this._instance.persistence){this.ai=!0;var n=this.getFlagVariants(),i=this.getFlagPayloads(),s=this.getFlagsWithDetails();(function(o,a,l,c,u){l===void 0&&(l={}),c===void 0&&(c={}),u===void 0&&(u={});var p=$2(o),h=p.flags,f=p.featureFlags,v=p.featureFlagPayloads;if(f){var g=o.requestId,m=o.evaluatedAt;if(_e(f)){xt.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");var y={};if(f)for(var x=0;x<f.length;x++)y[f[x]]=!0;a&&a.register({[Jp]:f,[Bi]:y})}else{var S=f,b=v,w=h;if(o.errorsWhileComputingFlags)if(h){var C=new Set(Object.keys(h).filter((_=>{var A;return!((A=h[_])!=null&&A.failed)})));S=W({},l,Object.fromEntries(Object.entries(S).filter((_=>{var[A]=_;return C.has(A)})))),b=W({},c,Object.fromEntries(Object.entries(b||{}).filter((_=>{var[A]=_;return C.has(A)})))),w=W({},u,Object.fromEntries(Object.entries(w||{}).filter((_=>{var[A]=_;return C.has(A)}))))}else S=W({},l,S),b=W({},c,b),w=W({},u,w);a&&a.register(W({[Jp]:Object.keys($_(S)),[Bi]:S||{},[R_]:b||{},[kh]:w||{}},g?{[T_]:g}:{},m?{[I_]:m}:{}))}}})(e,this._instance.persistence,n,i,s),this.wi(t)}}override(e,t){t===void 0&&(t=!1),xt.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:e,suppressWarning:t})}overrideFeatureFlags(e){if(!this._instance.__loaded||!this._instance.persistence)return xt.uninitializedWarning("posthog.featureFlags.overrideFeatureFlags");if(e===!1)return this._instance.persistence.unregister(Pi),this._instance.persistence.unregister(Lo),this.wi(),No.info("All overrides cleared");if(e&&typeof e=="object"&&("flags"in e||"payloads"in e)){var t,n=e;if(this.oi=!!((t=n.suppressWarning)!==null&&t!==void 0&&t),"flags"in n){if(n.flags===!1)this._instance.persistence.unregister(Pi),No.info("Flag overrides cleared");else if(n.flags){if(_e(n.flags)){for(var i={},s=0;s<n.flags.length;s++)i[n.flags[s]]=!0;this._instance.persistence.register({[Pi]:i})}else this._instance.persistence.register({[Pi]:n.flags});No.info("Flag overrides set",{flags:n.flags})}}return"payloads"in n&&(n.payloads===!1?(this._instance.persistence.unregister(Lo),No.info("Payload overrides cleared")):n.payloads&&(this._instance.persistence.register({[Lo]:n.payloads}),No.info("Payload overrides set",{payloads:n.payloads}))),void this.wi()}this.wi()}onFeatureFlags(e){if(this.addFeatureFlagsHandler(e),this.ai){var{flags:t,flagVariants:n}=this.xi();e(t,n)}return()=>this.removeFeatureFlagsHandler(e)}updateEarlyAccessFeatureEnrollment(e,t,n){var i,s=(this._instance.get_property(jo)||[]).find((c=>c.flagKey===e)),o={["$feature_enrollment/"+e]:t},a={$feature_flag:e,$feature_enrollment:t,$set:o};s&&(a.$early_access_feature_name=s.name),n&&(a.$feature_enrollment_stage=n),this._instance.capture("$feature_enrollment_update",a),this.setPersonPropertiesForFlags(o,!1);var l=W({},this.getFlagVariants(),{[e]:t});(i=this._instance.persistence)==null||i.register({[Jp]:Object.keys($_(l)),[Bi]:l}),this.wi()}getEarlyAccessFeatures(e,t,n){t===void 0&&(t=!1);var i=this._instance.get_property(jo),s=n?"&"+n.map((o=>"stage="+o)).join("&"):"";if(i&&!t)return e(i);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/early_access_features/?token="+this._instance.config.token+s),method:"GET",callback:o=>{var a,l;if(o.json){var c=o.json.earlyAccessFeatures;return(a=this._instance.persistence)==null||a.unregister(jo),(l=this._instance.persistence)==null||l.register({[jo]:c}),e(c)}}})}xi(){var e=this.getFlags(),t=this.getFlagVariants();return{flags:e.filter((n=>t[n])),flagVariants:Object.keys(t).filter((n=>t[n])).reduce(((n,i)=>(n[i]=t[i],n)),{})}}wi(e){var{flags:t,flagVariants:n}=this.xi();this.featureFlagEventHandlers.forEach((i=>i(t,n,{errorsLoading:e})))}setPersonPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this._instance.get_property(Uo)||{};this._instance.register({[Uo]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetPersonPropertiesForFlags(){this._instance.unregister(Uo)}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this._instance.get_property(Qn)||{};Object.keys(n).length!==0&&Object.keys(n).forEach((i=>{n[i]=W({},n[i],e[i]),delete e[i]})),this._instance.register({[Qn]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetGroupPropertiesForFlags(e){if(e){var t=this._instance.get_property(Qn)||{};this._instance.register({[Qn]:W({},t,{[e]:{}})})}else this._instance.unregister(Qn)}reset(){this.ai=!1,this.li=!1,this.ui=!1,this.hi=!1,this.di=!1,this.vi=!1,this.$anon_distinct_id=void 0,this.bi(),this.oi=!1}},O2=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],Go=class{constructor(e,t){this.R=e,this.props={},this.Ei=!1,this.$i=(n=>{var i="";return n.token&&(i=n.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),n.persistence_name?"ph_"+n.persistence_name:"ph_"+i+"_posthog"})(e),this.Y=this.Si(e),this.load(),e.debug&&j.info("Persistence loaded",e.persistence,W({},this.props)),this.update_config(e,e,t),this.save()}isDisabled(){return!!this.ki}Si(e){O2.indexOf(e.persistence.toLowerCase())===-1&&(j.critical("Unknown persistence type "+e.persistence+"; falling back to localStorage+cookie"),e.persistence="localStorage+cookie");var t=(function(i){i===void 0&&(i=[]);var s=[...u2,...i];return W({},Me,{W:function(o){try{var a={};try{a=lr.W(o)||{}}catch{}var l=Fe(a,JSON.parse(Me.q(o)||"{}"));return Me.G(o,l),l}catch{}return null},G:function(o,a,l,c,u,p){try{Me.G(o,a,void 0,void 0,p);var h={};s.forEach((f=>{a[f]&&(h[f]=a[f])})),Object.keys(h).length&&lr.G(o,h,l,c,u,p)}catch(f){Me.B(f)}},V:function(o,a){try{E?.localStorage.removeItem(o),lr.V(o,a)}catch(l){Me.B(l)}}})})(e.cookie_persisted_properties||[]),n=e.persistence.toLowerCase();return n==="localstorage"&&Me.H()?Me:n==="localstorage+cookie"&&t.H()?t:n==="sessionstorage"&&Qe.H()?Qe:n==="memory"?d2:n==="cookie"?lr:t.H()?t:lr}properties(){var e={};return Ae(this.props,(function(t,n){if(n===Bi&&We(t))for(var i=Object.keys(t),s=0;s<i.length;s++)e["$feature/"+i[s]]=t[i[s]];else a=n,l=!1,(Wt(o=ZA)?l:zb&&o.indexOf===zb?o.indexOf(a)!=-1:(Ae(o,(function(c){if(l||(l=c===a))return oc})),l))||(e[n]=t);var o,a,l})),e}load(){if(!this.ki){var e=this.Y.W(this.$i);e&&(this.props=Fe({},e))}}save(){this.ki||this.Y.G(this.$i,this.props,this.Pi,this.Ti,this.Ii,this.R.debug)}remove(){this.Y.V(this.$i,!1),this.Y.V(this.$i,!0)}clear(){this.remove(),this.props={}}register_once(e,t,n){if(We(e)){B(t)&&(t="None"),this.Pi=B(n)?this.Ci:n;var i=!1;if(Ae(e,((s,o)=>{this.props.hasOwnProperty(o)&&this.props[o]!==t||(this.props[o]=s,i=!0)})),i)return this.save(),!0}return!1}register(e,t){if(We(e)){this.Pi=B(t)?this.Ci:t;var n=!1;if(Ae(e,((i,s)=>{e.hasOwnProperty(s)&&this.props[s]!==i&&(this.props[s]=i,n=!0)})),n)return this.save(),!0}return!1}unregister(e){e in this.props&&(delete this.props[e],this.save())}update_campaign_params(){if(!this.Ei){var e=T0(this.R.custom_campaign_params,this.R.mask_personal_data_properties,this.R.custom_personal_data_properties);Hi(xf(e))||this.register(e),this.Ei=!0}}update_search_keyword(){var e;this.register((e=H?.referrer)?$0(e):{})}update_referrer_info(){var e;this.register_once({$referrer:M0(),$referring_domain:H!=null&&H.referrer&&((e=hc(H.referrer))==null?void 0:e.host)||"$direct"},void 0)}set_initial_person_info(){this.props[Rh]||this.props[Th]||this.register_once({[cc]:O0(this.R.mask_personal_data_properties,this.R.custom_personal_data_properties)},void 0)}get_initial_props(){var e={};Ae([Th,Rh],(o=>{var a=this.props[o];a&&Ae(a,(function(l,c){e["$initial_"+sh(c)]=l}))}));var t,n,i=this.props[cc];if(i){var s=(t=P0(i),n={},Ae(t,(function(o,a){n["$initial_"+sh(a)]=o})),n);Fe(e,s)}return e}safe_merge(e){return Ae(this.props,(function(t,n){n in e||(e[n]=t)})),e}update_config(e,t,n){if(this.Ci=this.Pi=e.cookie_expiration,this.set_disabled(e.disable_persistence||!!n),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie),e.persistence!==t.persistence||!((o,a)=>{if(o.length!==a.length)return!1;var l=[...o].sort(),c=[...a].sort();return l.every(((u,p)=>u===c[p]))})(e.cookie_persisted_properties||[],t.cookie_persisted_properties||[])){var i=this.Si(e),s=this.props;this.clear(),this.Y=i,this.props=s,this.save()}}set_disabled(e){this.ki=e,this.ki?this.remove():this.save()}set_cross_subdomain(e){e!==this.Ti&&(this.Ti=e,this.remove(),this.save())}set_secure(e){e!==this.Ii&&(this.Ii=e,this.remove(),this.save())}set_event_timer(e,t){var n=this.props[Vo]||{};n[e]=t,this.props[Vo]=n,this.save()}remove_event_timer(e){var t=(this.props[Vo]||{})[e];return B(t)||(delete this.props[Vo][e],this.save()),t}get_property(e){return this.props[e]}set_property(e,t){this.props[e]=t,this.save()}},M_=Pe("[Product Tours]"),Qp="ph_product_tours",Kh=class{constructor(e){this.Ri=null,this.Fi=null,this._instance=e}onRemoteConfig(e){this._instance.persistence&&this._instance.persistence.register({[a_]:!(e==null||!e.productTours)}),this.loadIfEnabled()}loadIfEnabled(){var e,t;this.Ri||(e=this._instance).config.disable_product_tours||(t=e.persistence)==null||!t.get_property(a_)||this.it((()=>this.Oi()))}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.generateProductTours?e():(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"product-tours",(i=>{i?M_.error("Could not load product tours script",i):e()}))}Oi(){var e;!this.Ri&&(e=re.__PosthogExtensions__)!=null&&e.generateProductTours&&(this.Ri=re.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(e,t){if(t===void 0&&(t=!1),!_e(this.Fi)||t){var n=this._instance.persistence;if(n){var i=n.props[Qp];if(_e(i)&&!t)return this.Fi=i,void e(i,{isLoaded:!0})}this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/product_tours/?token="+this._instance.config.token),method:"GET",callback:s=>{var o=s.statusCode;if(o!==200||!s.json){var a="Product Tours API could not be loaded, status: "+o;return M_.error(a),void e([],{isLoaded:!1,error:a})}var l=_e(s.json.product_tours)?s.json.product_tours:[];this.Fi=l,n&&n.register({[Qp]:l}),e(l,{isLoaded:!0})}})}else e(this.Fi,{isLoaded:!0})}getActiveProductTours(e){fe(this.Ri)?e([],{isLoaded:!1,error:"Product tours not loaded"}):this.Ri.getActiveProductTours(e)}showProductTour(e){var t;(t=this.Ri)==null||t.showTourById(e)}previewTour(e){this.Ri?this.Ri.previewTour(e):this.it((()=>{var t;this.Oi(),(t=this.Ri)==null||t.previewTour(e)}))}dismissProductTour(){var e;(e=this.Ri)==null||e.dismissTour("user_clicked_skip")}nextStep(){var e;(e=this.Ri)==null||e.nextStep()}previousStep(){var e;(e=this.Ri)==null||e.previousStep()}clearCache(){var e;this.Fi=null,(e=this._instance.persistence)==null||e.unregister(Qp)}resetTour(e){var t;(t=this.Ri)==null||t.resetTour(e)}resetAllTours(){var e;(e=this.Ri)==null||e.resetAllTours()}cancelPendingTour(e){var t;(t=this.Ri)==null||t.cancelPendingTour(e)}},Fo=(function(r){return r.Activation="events",r.Cancellation="cancelEvents",r})({}),dL=(function(r){return r.Button="button",r.Tab="tab",r.Selector="selector",r})({}),pL=(function(r){return r.TopLeft="top_left",r.TopRight="top_right",r.TopCenter="top_center",r.MiddleLeft="middle_left",r.MiddleRight="middle_right",r.MiddleCenter="middle_center",r.Left="left",r.Center="center",r.Right="right",r.NextToTrigger="next_to_trigger",r})({}),hL=(function(r){return r.Top="top",r.Left="left",r.Right="right",r.Bottom="bottom",r})({}),eh=(function(r){return r.Popover="popover",r.API="api",r.Widget="widget",r.ExternalSurvey="external_survey",r})({}),fL=(function(r){return r.Open="open",r.MultipleChoice="multiple_choice",r.SingleChoice="single_choice",r.Rating="rating",r.Link="link",r})({}),gL=(function(r){return r.NextQuestion="next_question",r.End="end",r.ResponseBased="response_based",r.SpecificQuestion="specific_question",r})({}),mL=(function(r){return r.Once="once",r.Recurring="recurring",r.Always="always",r})({}),zo=(function(r){return r.SHOWN="survey shown",r.DISMISSED="survey dismissed",r.SENT="survey sent",r.ABANDONED="survey abandoned",r})({}),th=(function(r){return r.SURVEY_ID="$survey_id",r.SURVEY_NAME="$survey_name",r.SURVEY_RESPONSE="$survey_response",r.SURVEY_ITERATION="$survey_iteration",r.SURVEY_ITERATION_START_DATE="$survey_iteration_start_date",r.SURVEY_PARTIALLY_COMPLETED="$survey_partially_completed",r.SURVEY_SUBMISSION_ID="$survey_submission_id",r.SURVEY_QUESTIONS="$survey_questions",r.SURVEY_COMPLETED="$survey_completed",r.PRODUCT_TOUR_ID="$product_tour_id",r.SURVEY_LAST_SEEN_DATE="$survey_last_seen_date",r})({}),Yh=(function(r){return r.Popover="popover",r.Inline="inline",r})({}),Ce=Pe("[Surveys]"),j0="seenSurvey_",P2=(r,e)=>{var t="$survey_"+e+"/"+r.id;return r.current_iteration&&r.current_iteration>0&&(t="$survey_"+e+"/"+r.id+"/"+r.current_iteration),t},O_=r=>((e,t)=>{var n=""+e+t.id;return t.current_iteration&&t.current_iteration>0&&(n=""+e+t.id+"_"+t.current_iteration),n})(j0,r),N2=[eh.Popover,eh.Widget,eh.API],L2={ignoreConditions:!1,ignoreDelay:!1,displayType:Yh.Popover},ta=class{constructor(){this.Mi={},this.Mi={}}on(e,t){return this.Mi[e]||(this.Mi[e]=[]),this.Mi[e].push(t),()=>{this.Mi[e]=this.Mi[e].filter((n=>n!==t))}}emit(e,t){for(var n of this.Mi[e]||[])n(t);for(var i of this.Mi["*"]||[])i(e,t)}};function Ni(r,e,t){if(fe(r))return!1;switch(t){case"exact":return r===e;case"contains":var n=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(n,"i").test(r);case"regex":try{return new RegExp(e).test(r)}catch{return!1}default:return!1}}var Xh=class{constructor(e){this.Ai=new ta,this.ji=(t,n)=>this.Di(t,n)&&this.Li(t,n)&&this.Ni(t,n)&&this.Ui(t,n),this.Di=(t,n)=>n==null||!n.event||t?.event===n?.event,this._instance=e,this.zi=new Set,this.Hi=new Set}init(){var e;if(!B((e=this._instance)==null?void 0:e._addCaptureHook)){var t;(t=this._instance)==null||t._addCaptureHook(((n,i)=>{this.on(n,i)}))}}register(e){var t,n;if(!B((t=this._instance)==null?void 0:t._addCaptureHook)&&(e.forEach((o=>{var a,l;(a=this.Hi)==null||a.add(o),(l=o.steps)==null||l.forEach((c=>{var u;(u=this.zi)==null||u.add(c?.event||"")}))})),(n=this._instance)!=null&&n.autocapture)){var i,s=new Set;e.forEach((o=>{var a;(a=o.steps)==null||a.forEach((l=>{l!=null&&l.selector&&s.add(l?.selector)}))})),(i=this._instance)==null||i.autocapture.setElementSelectors(s)}}on(e,t){var n;t!=null&&e.length!=0&&(this.zi.has(e)||this.zi.has(t?.event))&&this.Hi&&((n=this.Hi)==null?void 0:n.size)>0&&this.Hi.forEach((i=>{this.Bi(t,i)&&this.Ai.emit("actionCaptured",i.name)}))}qi(e){this.onAction("actionCaptured",(t=>e(t)))}Bi(e,t){if(t?.steps==null)return!1;for(var n of t.steps)if(this.ji(e,n))return!0;return!1}onAction(e,t){return this.Ai.on(e,t)}Li(e,t){if(t!=null&&t.url){var n,i=e==null||(n=e.properties)==null?void 0:n.$current_url;if(!i||typeof i!="string"||!Ni(i,t.url,t.url_matching||"contains"))return!1}return!0}Ni(e,t){return!!this.Wi(e,t)&&!!this.Gi(e,t)&&!!this.Vi(e,t)}Wi(e,t){var n;if(t==null||!t.href)return!0;var i=this.Ji(e);if(i.length>0)return i.some((a=>Ni(a.href,t.href,t.href_matching||"exact")));var s,o=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||"";return!!o&&Ni((s=o.match(/(?::|")href="(.*?)"/))?s[1]:"",t.href,t.href_matching||"exact")}Gi(e,t){var n;if(t==null||!t.text)return!0;var i=this.Ji(e);if(i.length>0)return i.some((c=>Ni(c.text,t.text,t.text_matching||"exact")||Ni(c.$el_text,t.text,t.text_matching||"exact")));var s,o,a,l=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||"";return!!l&&(s=(function(c){for(var u,p=[],h=/(?::|")text="(.*?)"/g;!fe(u=h.exec(c));)p.includes(u[1])||p.push(u[1]);return p})(l),o=t.text,a=t.text_matching||"exact",s.some((c=>Ni(c,o,a))))}Vi(e,t){var n,i;if(t==null||!t.selector)return!0;var s=e==null||(n=e.properties)==null?void 0:n.$element_selectors;if(s!=null&&s.includes(t.selector))return!0;var o=(e==null||(i=e.properties)==null?void 0:i.$elements_chain)||"";if(t.selector_regex&&o)try{return new RegExp(t.selector_regex).test(o)}catch{return!1}return!1}Ji(e){var t;return(e==null||(t=e.properties)==null?void 0:t.$elements)==null?[]:e?.properties.$elements}Ui(e,t){return t==null||!t.properties||t.properties.length===0||V0(t.properties.reduce(((n,i)=>{var s=_e(i.value)?i.value.map(String):i.value!=null?[String(i.value)]:[];return n[i.key]={values:s,operator:i.operator||"exact"},n}),{}),e?.properties)}},Jh=class{constructor(e){this._instance=e,this.Ki=new Map,this.Yi=new Map,this.Xi=new Map}Qi(e,t){return!!e&&V0(e.propertyFilters,t?.properties)}Zi(e,t){var n=new Map;return e.forEach((i=>{var s;(s=i.conditions)==null||(s=s[t])==null||(s=s.values)==null||s.forEach((o=>{if(o!=null&&o.name){var a=n.get(o.name)||[];a.push(i.id),n.set(o.name,a)}}))})),n}te(e,t,n){var i=(n===Fo.Activation?this.Ki:this.Yi).get(e),s=[];return this.ie((o=>{s=o.filter((a=>i?.includes(a.id)))})),s.filter((o=>{var a,l=(a=o.conditions)==null||(a=a[n])==null||(a=a.values)==null?void 0:a.find((c=>c.name===e));return this.Qi(l,t)}))}register(e){var t;B((t=this._instance)==null?void 0:t._addCaptureHook)||(this.ee(e),this.re(e))}re(e){var t=e.filter((n=>{var i,s;return((i=n.conditions)==null?void 0:i.actions)&&((s=n.conditions)==null||(s=s.actions)==null||(s=s.values)==null?void 0:s.length)>0}));t.length!==0&&(this.se==null&&(this.se=new Xh(this._instance),this.se.init(),this.se.qi((n=>{this.onAction(n)}))),t.forEach((n=>{var i,s,o,a,l;n.conditions&&(i=n.conditions)!=null&&i.actions&&(s=n.conditions)!=null&&(s=s.actions)!=null&&s.values&&((o=n.conditions)==null||(o=o.actions)==null||(o=o.values)==null?void 0:o.length)>0&&((a=this.se)==null||a.register(n.conditions.actions.values),(l=n.conditions)==null||(l=l.actions)==null||(l=l.values)==null||l.forEach((c=>{if(c&&c.name){var u=this.Xi.get(c.name);u&&u.push(n.id),this.Xi.set(c.name,u||[n.id])}})))})))}ee(e){var t,n=e.filter((s=>{var o,a;return((o=s.conditions)==null?void 0:o.events)&&((a=s.conditions)==null||(a=a.events)==null||(a=a.values)==null?void 0:a.length)>0})),i=e.filter((s=>{var o,a;return((o=s.conditions)==null?void 0:o.cancelEvents)&&((a=s.conditions)==null||(a=a.cancelEvents)==null||(a=a.values)==null?void 0:a.length)>0}));(n.length!==0||i.length!==0)&&((t=this._instance)==null||t._addCaptureHook(((s,o)=>{this.onEvent(s,o)})),this.Ki=this.Zi(e,Fo.Activation),this.Yi=this.Zi(e,Fo.Cancellation))}onEvent(e,t){var n,i=this.ne(),s=this.oe(),o=this.ae(),a=((n=this._instance)==null||(n=n.persistence)==null?void 0:n.props[s])||[];if(o===e&&t&&a.length>0){var l,c;i.info("event matched, removing item from activated items",{event:e,eventPayload:t,existingActivatedItems:a});var u=(t==null||(l=t.properties)==null?void 0:l.$survey_id)||(t==null||(c=t.properties)==null?void 0:c.$product_tour_id);if(u){var p=a.indexOf(u);p>=0&&(a.splice(p,1),this.le(a))}}else{if(this.Yi.has(e)){var h=this.te(e,t,Fo.Cancellation);h.length>0&&(i.info("cancel event matched, cancelling items",{event:e,itemsToCancel:h.map((v=>v.id))}),h.forEach((v=>{var g=a.indexOf(v.id);g>=0&&a.splice(g,1),this.ue(v.id)})),this.le(a))}if(this.Ki.has(e)){i.info("event name matched",{event:e,eventPayload:t,items:this.Ki.get(e)});var f=this.te(e,t,Fo.Activation);this.le(a.concat(f.map((v=>v.id))||[]))}}}onAction(e){var t,n=this.oe(),i=((t=this._instance)==null||(t=t.persistence)==null?void 0:t.props[n])||[];this.Xi.has(e)&&this.le(i.concat(this.Xi.get(e)||[]))}le(e){var t,n=this.ne(),i=this.oe(),s=[...new Set(e)].filter((o=>!this.he(o)));n.info("updating activated items",{activatedItems:s}),(t=this._instance)==null||(t=t.persistence)==null||t.register({[i]:s})}getActivatedIds(){var e,t=this.oe(),n=(e=this._instance)==null||(e=e.persistence)==null?void 0:e.props[t];return n||[]}getEventToItemsMap(){return this.Ki}de(){return this.se}},Qh=class extends Jh{constructor(e){super(e)}oe(){return"$surveys_activated"}ae(){return zo.SHOWN}ie(e){var t;(t=this._instance)==null||t.getSurveys(e)}ue(e){var t;(t=this._instance)==null||t.cancelPendingSurvey(e)}ne(){return Ce}he(){return!1}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}},ef=class{constructor(e){this.ve=void 0,this._surveyManager=null,this.ce=!1,this.fe=[],this.pe=null,this._instance=e,this._surveyEventReceiver=null}onRemoteConfig(e){if(!this._instance.config.disable_surveys){var t=e.surveys;if(fe(t))return Ce.warn("Flags not loaded yet. Not loading surveys.");var n=_e(t);this.ve=n?t.length>0:t,Ce.info("flags response received, isSurveysEnabled: "+this.ve),this.loadIfEnabled()}}reset(){localStorage.removeItem("lastSeenSurveyDate");for(var e=[],t=0;t<localStorage.length;t++){var n=localStorage.key(t);(n!=null&&n.startsWith(j0)||n!=null&&n.startsWith("inProgressSurvey_"))&&e.push(n)}e.forEach((i=>localStorage.removeItem(i)))}loadIfEnabled(){if(!this._surveyManager)if(this.ce)Ce.info("Already initializing surveys, skipping...");else if(this._instance.config.disable_surveys)Ce.info("Disabled. Not loading surveys.");else if(this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())Ce.info("Not loading surveys in cookieless mode without consent.");else{var e=re?.__PosthogExtensions__;if(e){if(!B(this.ve)||this._instance.config.advanced_enable_surveys){var t=this.ve||this._instance.config.advanced_enable_surveys;this.ce=!0;try{var n=e.generateSurveys;if(n)return void this.ge(n,t);var i=e.loadExternalDependency;if(!i)return void this._e("PostHog loadExternalDependency extension not found.");i(this._instance,"surveys",(s=>{s||!e.generateSurveys?this._e("Could not load surveys script",s):this.ge(e.generateSurveys,t)}))}catch(s){throw this._e("Error initializing surveys",s),s}finally{this.ce=!1}}}else Ce.error("PostHog Extensions not found.")}}ge(e,t){this._surveyManager=e(this._instance,t),this._surveyEventReceiver=new Qh(this._instance),Ce.info("Surveys loaded successfully"),this.me({isLoaded:!0})}_e(e,t){Ce.error(e,t),this.me({isLoaded:!1,error:e})}onSurveysLoaded(e){return this.fe.push(e),this._surveyManager&&this.me({isLoaded:!0}),()=>{this.fe=this.fe.filter((t=>t!==e))}}getSurveys(e,t){if(t===void 0&&(t=!1),this._instance.config.disable_surveys)return Ce.info("Disabled. Not loading surveys."),e([]);var n,i=this._instance.get_property(Eh);if(i&&!t)return e(i,{isLoaded:!0});typeof Promise<"u"&&this.pe?this.pe.then((s=>{var{surveys:o,context:a}=s;return e(o,a)})):(typeof Promise<"u"&&(this.pe=new Promise((s=>{n=s}))),this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/surveys/?token="+this._instance.config.token),method:"GET",timeout:this._instance.config.surveys_request_timeout_ms,callback:s=>{var o;this.pe=null;var a=s.statusCode;if(a!==200||!s.json){var l="Surveys API could not be loaded, status: "+a;Ce.error(l);var c={isLoaded:!1,error:l};return e([],c),void(n==null||n({surveys:[],context:c}))}var u,p=s.json.surveys||[],h=p.filter((v=>(function(g){return!(!g.start_date||g.end_date)})(v)&&((function(g){var m;return!((m=g.conditions)==null||(m=m.events)==null||(m=m.values)==null||!m.length)})(v)||(function(g){var m;return!((m=g.conditions)==null||(m=m.actions)==null||(m=m.values)==null||!m.length)})(v))));h.length>0&&((u=this._surveyEventReceiver)==null||u.register(h)),(o=this._instance.persistence)==null||o.register({[Eh]:p});var f={isLoaded:!0};e(p,f),n?.({surveys:p,context:f})}}))}me(e){for(var t of this.fe)try{if(!e.isLoaded)return t([],e);this.getSurveys(t)}catch(n){Ce.error("Error in survey callback",n)}}getActiveMatchingSurveys(e,t){if(t===void 0&&(t=!1),!fe(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(e,t);Ce.warn("init was not called")}be(e){var t=null;return this.getSurveys((n=>{var i;t=(i=n.find((s=>s.id===e)))!==null&&i!==void 0?i:null})),t}ye(e){if(fe(this._surveyManager))return{eligible:!1,reason:"SDK is not enabled or survey functionality is not yet loaded"};var t=typeof e=="string"?this.be(e):e;return t?this._surveyManager.checkSurveyEligibility(t):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(e){if(fe(this._surveyManager))return Ce.warn("init was not called"),{visible:!1,disabledReason:"SDK is not enabled or survey functionality is not yet loaded"};var t=this.ye(e);return{visible:t.eligible,disabledReason:t.reason}}canRenderSurveyAsync(e,t){return fe(this._surveyManager)?(Ce.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:"SDK is not enabled or survey functionality is not yet loaded"})):new Promise((n=>{this.getSurveys((i=>{var s,o=(s=i.find((l=>l.id===e)))!==null&&s!==void 0?s:null;if(o){var a=this.ye(o);n({visible:a.eligible,disabledReason:a.reason})}else n({visible:!1,disabledReason:"Survey not found"})}),t)}))}renderSurvey(e,t,n){var i;if(fe(this._surveyManager))Ce.warn("init was not called");else{var s=typeof e=="string"?this.be(e):e;if(s!=null&&s.id)if(N2.includes(s.type)){var o=H?.querySelector(t);if(o)return(i=s.appearance)!=null&&i.surveyPopupDelaySeconds?(Ce.info("Rendering survey "+s.id+" with delay of "+s.appearance.surveyPopupDelaySeconds+" seconds"),void setTimeout((()=>{var a,l;Ce.info("Rendering survey "+s.id+" with delay of "+((a=s.appearance)==null?void 0:a.surveyPopupDelaySeconds)+" seconds"),(l=this._surveyManager)==null||l.renderSurvey(s,o,n),Ce.info("Survey "+s.id+" rendered")}),1e3*s.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(s,o,n);Ce.warn("Survey element not found")}else Ce.warn("Surveys of type "+s.type+" cannot be rendered in the app");else Ce.warn("Survey not found")}}displaySurvey(e,t){var n;if(fe(this._surveyManager))Ce.warn("init was not called");else{var i=this.be(e);if(i){var s=i;if((n=i.appearance)!=null&&n.surveyPopupDelaySeconds&&t.ignoreDelay&&(s=W({},i,{appearance:W({},i.appearance,{surveyPopupDelaySeconds:0})})),t.displayType!==Yh.Popover&&t.initialResponses&&Ce.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),t.ignoreConditions===!1){var o=this.canRenderSurvey(i);if(!o.visible)return void Ce.warn("Survey is not eligible to be displayed: ",o.disabledReason)}t.displayType!==Yh.Inline?this._surveyManager.handlePopoverSurvey(s,t):this.renderSurvey(s,t.selector,t.properties)}else Ce.warn("Survey not found")}}cancelPendingSurvey(e){fe(this._surveyManager)?Ce.warn("init was not called"):this._surveyManager.cancelSurvey(e)}handlePageUnload(){var e;(e=this._surveyManager)==null||e.handlePageUnload()}},Rr=Pe("[Conversations]"),tf=class{constructor(e){this.we=void 0,this._conversationsManager=null,this.xe=!1,this.Ee=null,this._instance=e}onRemoteConfig(e){if(!this._instance.config.disable_conversations){var t=e.conversations;fe(t)||(Pr(t)?this.we=t:(this.we=t.enabled,this.Ee=t),this.loadIfEnabled())}}reset(){var e;(e=this._conversationsManager)==null||e.reset(),this._conversationsManager=null,this.we=void 0,this.Ee=null}loadIfEnabled(){if(!this._conversationsManager&&!this.xe&&!(this._instance.config.disable_conversations||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var e=re?.__PosthogExtensions__;if(e&&!B(this.we)&&this.we)if(this.Ee&&this.Ee.token){this.xe=!0;try{var t=e.initConversations;if(t)return this.$e(t),void(this.xe=!1);var n=e.loadExternalDependency;if(!n)return void this.Se("PostHog loadExternalDependency extension not found.");n(this._instance,"conversations",(i=>{i||!e.initConversations?this.Se("Could not load conversations script",i):this.$e(e.initConversations),this.xe=!1}))}catch(i){this.Se("Error initializing conversations",i),this.xe=!1}}else Rr.error("Conversations enabled but missing token in remote config.")}}$e(e){if(this.Ee)try{this._conversationsManager=e(this.Ee,this._instance),Rr.info("Conversations loaded successfully")}catch(t){this.Se("Error completing conversations initialization",t)}else Rr.error("Cannot complete initialization: remote config is null")}Se(e,t){Rr.error(e,t),this._conversationsManager=null,this.xe=!1}show(){this._conversationsManager?this._conversationsManager.show():Rr.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return this.we===!0&&!Wt(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 i=this;return Di((function*(){return i._conversationsManager?i._conversationsManager.sendMessage(e,t,n):(Rr.warn("Conversations not available yet."),null)}))()}getMessages(e,t){var n=this;return Di((function*(){return n._conversationsManager?n._conversationsManager.getMessages(e,t):(Rr.warn("Conversations not available yet."),null)}))()}markAsRead(e){var t=this;return Di((function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(Rr.warn("Conversations not available yet."),null)}))()}getTickets(e){var t=this;return Di((function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(Rr.warn("Conversations not available yet."),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}},rf=class{constructor(e){var t;this.ke=!1,this.Pe=!1,this._instance=e,this._instance&&(t=this._instance.config.logs)!=null&&t.captureConsoleLogs&&(this.ke=!0)}onRemoteConfig(e){var t,n=(t=e.logs)==null?void 0:t.captureConsoleLogs;!fe(n)&&n&&(this.ke=!0,this.loadIfEnabled())}reset(){}loadIfEnabled(){if(this.ke&&!this.Pe){var e=Pe("[logs]"),t=re?.__PosthogExtensions__;if(t){var n=t.loadExternalDependency;n?n(this._instance,"logs",(i=>{var s;i||(s=t.logs)==null||!s.initializeLogs?e.error("Could not load logs script",i):(t.logs.initializeLogs(this._instance),this.Pe=!0)})):e.error("PostHog loadExternalDependency extension not found.")}else e.error("PostHog Extensions not found.")}}},P_=Pe("[RateLimiter]"),nf=class{constructor(e){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=t=>{var n=t.text;if(n&&n.length)try{(JSON.parse(n).quota_limited||[]).forEach((i=>{P_.info((i||"events")+" is quota limited."),this.serverLimits[i]=new Date().getTime()+6e4}))}catch(i){return void P_.warn('could not rate limit - continuing. Error: "'+i?.message+'"',{text:n})}},this.instance=e,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){var e;return((e=this.instance.config.rate_limiting)==null?void 0:e.events_per_second)||10}get captureEventsBurstLimit(){var e;return Math.max(((e=this.instance.config.rate_limiting)==null?void 0:e.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(e){var t,n,i;e===void 0&&(e=!1);var{captureEventsBurstLimit:s,captureEventsPerSecond:o}=this,a=new Date().getTime(),l=(t=(n=this.instance.persistence)==null?void 0:n.get_property(Ah))!==null&&t!==void 0?t:{tokens:s,last:a};l.tokens+=(a-l.last)/1e3*o,l.last=a,l.tokens>s&&(l.tokens=s);var c=l.tokens<1;return c||e||(l.tokens=Math.max(0,l.tokens-1)),!c||this.lastEventRateLimited||e||this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:"posthog-js client rate limited. Config is set to "+o+" events per second and "+s+" events burst limit."},{skip_client_rate_limiting:!0}),this.lastEventRateLimited=c,(i=this.instance.persistence)==null||i.set_property(Ah,l),{isRateLimited:c,remainingTokens:l.tokens}}isServerRateLimited(e){var t=this.serverLimits[e||"events"]||!1;return t!==!1&&new Date().getTime()<t}},Jn=Pe("[RemoteConfig]"),sf=class{constructor(e){this._instance=e}get remoteConfig(){var e;return(e=re._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.config}Te(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.loadExternalDependency?(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"remote-config",(()=>e(this.remoteConfig))):(Jn.error("PostHog Extensions not found. Cannot load remote config."),e())}Ie(e){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets","/array/"+this._instance.config.token+"/config"),callback:t=>{e(t.json)}})}load(){try{if(this.remoteConfig)return Jn.info("Using preloaded remote config",this.remoteConfig),void this.yi(this.remoteConfig);if(this._instance.M())return void Jn.warn("Remote config is disabled. Falling back to local config.");this.Te((e=>{if(!e)return Jn.info("No config found after loading remote JS config. Falling back to JSON."),void this.Ie((t=>{this.yi(t)}));this.yi(e)}))}catch(e){Jn.error("Error loading remote config",e)}}yi(e){e?this._instance.config.__preview_remote_config?(this._instance.yi(e),e.hasFeatureFlags!==!1&&this._instance.featureFlags.ensureFlagsLoaded()):Jn.info("__preview_remote_config is disabled. Logging config instead",e):Jn.error("Failed to fetch remote config from PostHog.")}},of=3e3,af=class{constructor(e,t){this.Ce=!0,this.Re=[],this.Fe=cr(t?.flush_interval_ms||of,250,5e3,j.createLogger("flush interval"),of),this.Oe=e}enqueue(e){this.Re.push(e),this.Me||this.Ae()}unload(){this.je();var e=this.Re.length>0?this.De():{},t=Object.values(e);[...t.filter((n=>n.url.indexOf("/e")===0)),...t.filter((n=>n.url.indexOf("/e")!==0))].map((n=>{this.Oe(W({},n,{transport:"sendBeacon"}))}))}enable(){this.Ce=!1,this.Ae()}Ae(){var e=this;this.Ce||(this.Me=setTimeout((()=>{if(this.je(),this.Re.length>0){var t=this.De(),n=function(){var s=t[i],o=new Date().getTime();s.data&&_e(s.data)&&Ae(s.data,(a=>{a.offset=Math.abs(a.timestamp-o),delete a.timestamp})),e.Oe(s)};for(var i in t)n()}}),this.Fe))}je(){clearTimeout(this.Me),this.Me=void 0}De(){var e={};return Ae(this.Re,(t=>{var n,i=t,s=(i?i.batchKey:null)||i.url;B(e[s])&&(e[s]=W({},i,{data:[]})),(n=e[s].data)==null||n.push(i.data)})),this.Re=[],e}},F2=["retriesPerformedSoFar"],lf=class{constructor(e){this.Le=!1,this.Ne=3e3,this.Re=[],this._instance=e,this.Re=[],this.Ue=!0,!B(E)&&"onLine"in E.navigator&&(this.Ue=E.navigator.onLine,this.ze=()=>{this.Ue=!0,this.Lt()},this.He=()=>{this.Ue=!1},je(E,"online",this.ze),je(E,"offline",this.He))}get length(){return this.Re.length}retriableRequest(e){var{retriesPerformedSoFar:t}=e,n=B_(e,F2);Li(t)&&(n.url=_c(n.url,{retry_count:t})),this._instance._send_request(W({},n,{callback:i=>{i.statusCode!==200&&(i.statusCode<400||i.statusCode>=500)&&(t??0)<10?this.Be(W({retriesPerformedSoFar:t},n)):n.callback==null||n.callback(i)}}))}Be(e){var t=e.retriesPerformedSoFar||0;e.retriesPerformedSoFar=t+1;var n=(function(o){var a=3e3*Math.pow(2,o),l=a/2,c=Math.min(18e5,a),u=(Math.random()-.5)*(c-l);return Math.ceil(c+u)})(t),i=Date.now()+n;this.Re.push({retryAt:i,requestOptions:e});var s="Enqueued failed request for retry in "+n;navigator.onLine||(s+=" (Browser is offline)"),j.warn(s),this.Le||(this.Le=!0,this.qe())}qe(){if(this.We&&clearTimeout(this.We),this.Re.length===0)return this.Le=!1,void(this.We=void 0);this.We=setTimeout((()=>{this.Ue&&this.Re.length>0&&this.Lt(),this.qe()}),this.Ne)}Lt(){var e=Date.now(),t=[],n=this.Re.filter((s=>s.retryAt<e||(t.push(s),!1)));if(this.Re=t,n.length>0)for(var{requestOptions:i}of n)this.retriableRequest(i)}unload(){for(var{requestOptions:e}of(this.We&&(clearTimeout(this.We),this.We=void 0),this.Le=!1,B(E)||(this.ze&&(E.removeEventListener("online",this.ze),this.ze=void 0),this.He&&(E.removeEventListener("offline",this.He),this.He=void 0)),this.Re))try{this._instance._send_request(W({},e,{transport:"sendBeacon"}))}catch(t){j.error(t)}this.Re=[]}},cf=class{constructor(e){this.Ge=()=>{var t,n,i,s;this.Ve||(this.Ve={});var o=this.scrollElement(),a=this.scrollY(),l=o?Math.max(0,o.scrollHeight-o.clientHeight):0,c=a+(o?.clientHeight||0),u=o?.scrollHeight||0;this.Ve.lastScrollY=Math.ceil(a),this.Ve.maxScrollY=Math.max(a,(t=this.Ve.maxScrollY)!==null&&t!==void 0?t:0),this.Ve.maxScrollHeight=Math.max(l,(n=this.Ve.maxScrollHeight)!==null&&n!==void 0?n:0),this.Ve.lastContentY=c,this.Ve.maxContentY=Math.max(c,(i=this.Ve.maxContentY)!==null&&i!==void 0?i:0),this.Ve.maxContentHeight=Math.max(u,(s=this.Ve.maxContentHeight)!==null&&s!==void 0?s:0)},this._instance=e}getContext(){return this.Ve}resetContext(){var e=this.Ve;return setTimeout(this.Ge,0),e}startMeasuringScrollPosition(){je(E,"scroll",this.Ge,{capture:!0}),je(E,"scrollend",this.Ge,{capture:!0}),je(E,"resize",this.Ge)}scrollElement(){if(!this._instance.config.scroll_root_selector)return E?.document.documentElement;var e=_e(this._instance.config.scroll_root_selector)?this._instance.config.scroll_root_selector:[this._instance.config.scroll_root_selector];for(var t of e){var n=E?.document.querySelector(t);if(n)return n}}scrollY(){if(this._instance.config.scroll_root_selector){var e=this.scrollElement();return e&&e.scrollTop||0}return E&&(E.scrollY||E.pageYOffset||E.document.documentElement.scrollTop)||0}scrollX(){if(this._instance.config.scroll_root_selector){var e=this.scrollElement();return e&&e.scrollLeft||0}return E&&(E.scrollX||E.pageXOffset||E.document.documentElement.scrollLeft)||0}},D2=r=>O0(r?.config.mask_personal_data_properties,r?.config.custom_personal_data_properties),wc=class{constructor(e,t,n,i){this.Je=s=>{var o=this.Ke();if(!o||o.sessionId!==s){var a={sessionId:s,props:this.Ye(this._instance)};this.Xe.register({[Ch]:a})}},this._instance=e,this.Qe=t,this.Xe=n,this.Ye=i||D2,this.Qe.onSessionId(this.Je)}Ke(){return this.Xe.props[Ch]}getSetOnceProps(){var e,t=(e=this.Ke())==null?void 0:e.props;return t?"r"in t?P0(t):{$referring_domain:t.referringDomain,$pathname:t.initialPathName,utm_source:t.utm_source,utm_campaign:t.utm_campaign,utm_medium:t.utm_medium,utm_content:t.utm_content,utm_term:t.utm_term}:{}}getSessionProps(){var e={};return Ae(xf(this.getSetOnceProps()),((t,n)=>{n==="$current_url"&&(n="url"),e["$session_entry_"+sh(n)]=t})),e}},rh=Pe("[SessionId]"),Sc=class{on(e,t){return this.Ze.on(e,t)}constructor(e,t,n){var i;if(this.tr=[],this.ir=void 0,this.Ze=new ta,this.er=(u,p)=>!(!Li(u)||!Li(p))&&Math.abs(u-p)>this.sessionTimeoutMs,!e.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(e.config.cookieless_mode==="always")throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.R=e.config,this.Xe=e.persistence,this.rr=void 0,this.sr=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null,this.nr=t||on,this.ar=n||on;var s=this.R.persistence_name||this.R.token,o=this.R.session_idle_timeout_seconds||1800;if(this._sessionTimeoutMs=1e3*cr(o,60,36e3,rh.createLogger("session_idle_timeout_seconds"),1800),e.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.lr(),this.ur="ph_"+s+"_window_id",this.hr="ph_"+s+"_primary_window_exists",this.dr()){var a=Qe.W(this.ur),l=Qe.W(this.hr);a&&!l?this.rr=a:Qe.V(this.ur),Qe.G(this.hr,!0)}if((i=this.R.bootstrap)!=null&&i.sessionID)try{var c=(u=>{var p=u.replace(/-/g,"");if(p.length!==32)throw new Error("Not a valid UUID");if(p[12]!=="7")throw new Error("Not a UUIDv7");return parseInt(p.substring(0,12),16)})(this.R.bootstrap.sessionID);this.vr(this.R.bootstrap.sessionID,new Date().getTime(),c)}catch(u){rh.error("Invalid sessionID in bootstrap",u)}this.cr()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(e){return B(this.tr)&&(this.tr=[]),this.tr.push(e),this.sr&&e(this.sr,this.rr),()=>{this.tr=this.tr.filter((t=>t!==e))}}dr(){return this.R.persistence!=="memory"&&!this.Xe.ki&&Qe.H()}pr(e){e!==this.rr&&(this.rr=e,this.dr()&&Qe.G(this.ur,e))}gr(){return this.rr?this.rr:this.dr()?Qe.W(this.ur):null}vr(e,t,n){e===this.sr&&t===this._sessionActivityTimestamp&&n===this._sessionStartTimestamp||(this._sessionStartTimestamp=n,this._sessionActivityTimestamp=t,this.sr=e,this.Xe.register({[ac]:[t,e,n]}))}_r(){var e=this.Xe.props[ac];return _e(e)&&e.length===2&&e.push(e[0]),e||[0,null,0]}resetSessionId(){this.vr(null,null,null)}destroy(){clearTimeout(this.mr),this.mr=void 0,this.ir&&E&&(E.removeEventListener("beforeunload",this.ir,{capture:!1}),this.ir=void 0),this.tr=[]}cr(){this.ir=()=>{this.dr()&&Qe.V(this.hr)},je(E,"beforeunload",this.ir,{capture:!1})}checkAndGetSessionAndWindowId(e,t){if(e===void 0&&(e=!1),t===void 0&&(t=null),this.R.cookieless_mode==="always")throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');var n=t||new Date().getTime(),[i,s,o]=this._r(),a=this.gr(),l=Li(o)&&Math.abs(n-o)>864e5,c=!1,u=!s,p=!u&&!e&&this.er(n,i);u||p||l?(s=this.nr(),a=this.ar(),rh.info("new session ID generated",{sessionId:s,windowId:a,changeReason:{noSessionId:u,activityTimeout:p,sessionPastMaximumLength:l}}),o=n,c=!0):a||(a=this.ar(),c=!0);var h=Li(i)&&e&&!l?i:n,f=Li(o)?o:new Date().getTime();return this.pr(a),this.vr(s,h,f),e||this.lr(),c&&this.tr.forEach((v=>v(s,a,c?{noSessionId:u,activityTimeout:p,sessionPastMaximumLength:l}:void 0))),{sessionId:s,windowId:a,sessionStartTimestamp:f,changeReason:c?{noSessionId:u,activityTimeout:p,sessionPastMaximumLength:l}:void 0,lastActivityTimestamp:i}}lr(){clearTimeout(this.mr),this.mr=setTimeout((()=>{var[e]=this._r();if(this.er(new Date().getTime(),e)){var t=this.sr;this.resetSessionId(),this.Ze.emit("forcedIdleReset",{idleSessionId:t})}}),1.1*this.sessionTimeoutMs)}},H2=["$set_once","$set"],nn=Pe("[SiteApps]"),uf=class{constructor(e){this._instance=e,this.br=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}yr(e,t){if(t){var n=this.globalsForEvent(t);this.br.push(n),this.br.length>1e3&&(this.br=this.br.slice(10))}}get siteAppLoaders(){var e;return(e=re._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.siteApps}init(){if(this.isEnabled){var e=this._instance._addCaptureHook(this.yr.bind(this));this.wr=()=>{e(),this.br=[],this.wr=void 0}}}globalsForEvent(e){var t,n,i,s,o,a,l;if(!e)throw new Error("Event payload is required");var c={},u=this._instance.get_property("$groups")||[],p=this._instance.get_property("$stored_group_properties")||{};for(var[h,f]of Object.entries(p))c[h]={id:u[h],type:h,properties:f};var{$set_once:v,$set:g}=e;return{event:W({},B_(e,H2),{properties:W({},e.properties,g?{$set:W({},(t=(n=e.properties)==null?void 0:n.$set)!==null&&t!==void 0?t:{},g)}:{},v?{$set_once:W({},(i=(s=e.properties)==null?void 0:s.$set_once)!==null&&i!==void 0?i:{},v)}:{}),elements_chain:(o=(a=e.properties)==null?void 0:a.$elements_chain)!==null&&o!==void 0?o:"",distinct_id:(l=e.properties)==null?void 0:l.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:c}}setupSiteApp(e){var t=this.apps[e.id],n=()=>{var a;!t.errored&&this.br.length&&(nn.info("Processing "+this.br.length+" events for site app with id "+e.id),this.br.forEach((l=>t.processEvent==null?void 0:t.processEvent(l))),t.processedBuffer=!0),Object.values(this.apps).every((l=>l.processedBuffer||l.errored))&&((a=this.wr)==null||a.call(this))},i=!1,s=a=>{t.errored=!a,t.loaded=!0,nn.info("Site app with id "+e.id+" "+(a?"loaded":"errored")),i&&n()};try{var{processEvent:o}=e.init({posthog:this._instance,callback:a=>{s(a)}});o&&(t.processEvent=o),i=!0}catch(a){nn.error("Error while initializing PostHog app with config id "+e.id,a),s(!1)}if(i&&t.loaded)try{n()}catch(a){nn.error("Error while processing buffered events PostHog app with config id "+e.id,a),t.errored=!0}}Er(){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)}$r(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(i){nn.error("Error while processing event "+e.event+" for site app "+n.id,i)}}}onRemoteConfig(e){var t,n,i,s=this;if((t=this.siteAppLoaders)!=null&&t.length)return this.isEnabled?(this.Er(),void this._instance.on("eventCaptured",(c=>this.$r(c)))):void nn.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if((n=this.wr)==null||n.call(this),(i=e.siteApps)!=null&&i.length)if(this.isEnabled){var o=function(c){var u;re["__$$ph_site_app_"+c]=s._instance,(u=re.__PosthogExtensions__)==null||u.loadSiteApp==null||u.loadSiteApp(s._instance,l,(p=>{if(p)return nn.error("Error while initializing PostHog app with config id "+c,p)}))};for(var{id:a,url:l}of e.siteApps)o(a)}else nn.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}},U0=function(r,e){if(!r)return!1;var t=r.userAgent;if(t&&Gb(t,e))return!0;try{var n=r?.userAgentData;if(n!=null&&n.brands&&n.brands.some((i=>Gb(i?.brand,e))))return!0}catch{}return!!r.webdriver},qo=(function(r){return r.US="us",r.EU="eu",r.CUSTOM="custom",r})({}),N_="i.posthog.com",df=class{constructor(e){this.Sr={},this.instance=e}get apiHost(){var e=this.instance.config.api_host.trim().replace(/\/$/,"");return e==="https://app.posthog.com"?"https://us.i.posthog.com":e}get flagsApiHost(){var e=this.instance.config.flags_api_host;return e?e.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var e,t=(e=this.instance.config.ui_host)==null?void 0:e.replace(/\/$/,"");return t||(t=this.apiHost.replace("."+N_,".posthog.com")),t==="https://app.posthog.com"?"https://us.posthog.com":t}get region(){return this.Sr[this.apiHost]||(/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?this.Sr[this.apiHost]=qo.US:/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?this.Sr[this.apiHost]=qo.EU:this.Sr[this.apiHost]=qo.CUSTOM),this.Sr[this.apiHost]}endpointFor(e,t){if(t===void 0&&(t=""),t&&(t=t[0]==="/"?t:"/"+t),e==="ui")return this.uiHost+t;if(e==="flags")return this.flagsApiHost+t;if(this.region===qo.CUSTOM)return this.apiHost+t;var n=N_+t;switch(e){case"assets":return"https://"+this.region+"-assets."+n;case"api":return"https://"+this.region+"."+n}}},B2={icontains:(r,e)=>!!E&&e.href.toLowerCase().indexOf(r.toLowerCase())>-1,not_icontains:(r,e)=>!!E&&e.href.toLowerCase().indexOf(r.toLowerCase())===-1,regex:(r,e)=>!!E&&xc(e.href,r),not_regex:(r,e)=>!!E&&!xc(e.href,r),exact:(r,e)=>e.href===r,is_not:(r,e)=>e.href!==r},pf=class r{constructor(e){var t=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(n){n===void 0&&(n=!1),t.getWebExperiments((i=>{r.kr("retrieved web experiments from the server"),t.Pr=new Map,i.forEach((s=>{if(s.feature_flag_key){var o;t.Pr&&(r.kr("setting flag key ",s.feature_flag_key," to web experiment ",s),(o=t.Pr)==null||o.set(s.feature_flag_key,s));var a=t._instance.getFeatureFlag(s.feature_flag_key);ze(a)&&s.variants[a]&&t.Tr(s.name,a,s.variants[a].transforms)}else if(s.variants)for(var l in s.variants){var c=s.variants[l];r.Ir(c)&&t.Tr(s.name,l,c.transforms)}}))}),n)},this._instance=e,this._instance.onFeatureFlags((n=>{this.onFeatureFlags(n)}))}onFeatureFlags(e){if(this._is_bot())r.kr("Refusing to render web experiment since the viewer is a likely bot");else if(!this._instance.config.disable_web_experiments){if(fe(this.Pr))return this.Pr=new Map,this.loadIfEnabled(),void this.previewWebExperiment();r.kr("applying feature flags",e),e.forEach((t=>{var n;if(this.Pr&&(n=this.Pr)!=null&&n.has(t)){var i,s=this._instance.getFeatureFlag(t),o=(i=this.Pr)==null?void 0:i.get(t);s&&o!=null&&o.variants[s]&&this.Tr(o.name,s,o.variants[s].transforms)}}))}}previewWebExperiment(){var e=r.getWindowLocation();if(e!=null&&e.search){var t=fc(e?.search,"__experiment_id"),n=fc(e?.search,"__experiment_variant");t&&n&&(r.kr("previewing web experiments "+t+" && "+n),this.getWebExperiments((i=>{this.Cr(parseInt(t),n,i)}),!1,!0))}}loadIfEnabled(){this._instance.config.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(e,t,n){if(this._instance.config.disable_web_experiments&&!n)return e([]);var i=this._instance.get_property("$web_experiments");if(i&&!t)return e(i);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/web_experiments/?token="+this._instance.config.token),method:"GET",callback:s=>{if(s.statusCode!==200||!s.json)return e([]);var o=s.json.experiments||[];return e(o)}})}Cr(e,t,n){var i=n.filter((s=>s.id===e));i&&i.length>0&&(r.kr("Previewing web experiment ["+i[0].name+"] with variant ["+t+"]"),this.Tr(i[0].name,t,i[0].variants[t].transforms))}static Ir(e){return!fe(e.conditions)&&r.Rr(e)&&r.Fr(e)}static Rr(e){var t;if(fe(e.conditions)||fe((t=e.conditions)==null?void 0:t.url))return!0;var n,i,s,o=r.getWindowLocation();return!!o&&((n=e.conditions)==null||!n.url||B2[(i=(s=e.conditions)==null?void 0:s.urlMatchType)!==null&&i!==void 0?i:"icontains"](e.conditions.url,o))}static getWindowLocation(){return E?.location}static Fr(e){var t;if(fe(e.conditions)||fe((t=e.conditions)==null?void 0:t.utm))return!0;var n=T0();if(n.utm_source){var i,s,o,a,l,c,u,p,h=(i=e.conditions)==null||(i=i.utm)==null||!i.utm_campaign||((s=e.conditions)==null||(s=s.utm)==null?void 0:s.utm_campaign)==n.utm_campaign,f=(o=e.conditions)==null||(o=o.utm)==null||!o.utm_source||((a=e.conditions)==null||(a=a.utm)==null?void 0:a.utm_source)==n.utm_source,v=(l=e.conditions)==null||(l=l.utm)==null||!l.utm_medium||((c=e.conditions)==null||(c=c.utm)==null?void 0:c.utm_medium)==n.utm_medium,g=(u=e.conditions)==null||(u=u.utm)==null||!u.utm_term||((p=e.conditions)==null||(p=p.utm)==null?void 0:p.utm_term)==n.utm_term;return h&&v&&g&&f}return!1}static kr(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];j.info("[WebExperiments] "+e,n)}Tr(e,t,n){this._is_bot()?r.kr("Refusing to render web experiment since the viewer is a likely bot"):t!=="control"?n.forEach((i=>{if(i.selector){var s;r.kr("applying transform of variant "+t+" for experiment "+e+" ",i);var o=(s=document)==null?void 0:s.querySelectorAll(i.selector);o?.forEach((a=>{var l=a;i.html&&(l.innerHTML=i.html),i.css&&l.setAttribute("style",i.css)}))}})):r.kr("Control variants leave the page unmodified.")}_is_bot(){return wt&&this._instance?U0(wt,this._instance.config.custom_blocked_useragents):void 0}},V2=Pe("[PostHog ExternalIntegrations]"),j2={intercom:"intercom-integration",crispChat:"crisp-chat-integration"},hf=class{constructor(e){this._instance=e}it(e,t){var n;(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,e,(i=>{if(i)return V2.error("failed to load script",i);t()}))}startIfEnabledOrStop(){var e=this,t=function(o){var a,l,c;!i||(a=re.__PosthogExtensions__)!=null&&(a=a.integrations)!=null&&a[o]||e.it(j2[o],(()=>{var u;(u=re.__PosthogExtensions__)==null||(u=u.integrations)==null||(u=u[o])==null||u.start(e._instance)})),!i&&(l=re.__PosthogExtensions__)!=null&&(l=l.integrations)!=null&&l[o]&&((c=re.__PosthogExtensions__)==null||(c=c.integrations)==null||(c=c[o])==null||c.stop())};for(var[n,i]of Object.entries((s=this._instance.config.integrations)!==null&&s!==void 0?s:{})){var s;t(n)}}},ff="[SessionRecording]",Do=Pe(ff),kc=class{get started(){var e;return!((e=this.Or)==null||!e.isStarted)}get status(){return this.Or?this.Or.status:this.Mr&&!this.Ar?"disabled":"lazy_loading"}constructor(e){if(this._forceAllowLocalhostNetworkCapture=!1,this.Mr=!1,this.jr=void 0,this._instance=e,!this._instance.sessionManager)throw Do.error("started without valid sessionManager"),new Error(ff+" started without valid sessionManager. This is a bug.");if(this._instance.config.cookieless_mode==="always")throw new Error(ff+' cannot be used with cookieless_mode="always"')}get Ar(){var e,t=!((e=this._instance.get_property(Up))==null||!e.enabled),n=!this._instance.config.disable_session_recording,i=this._instance.config.disable_session_recording||this._instance.consent.isOptedOut();return E&&t&&n&&!i}startIfEnabledOrStop(e){var t;if(!this.Ar||(t=this.Or)==null||!t.isStarted){var n=!B(Object.assign)&&!B(Array.from);this.Ar&&n?(this.Dr(e),Do.info("starting")):this.stopRecording()}}Dr(e){var t,n,i;this.Ar&&(re!=null&&(t=re.__PosthogExtensions__)!=null&&(t=t.rrweb)!=null&&t.record&&(n=re.__PosthogExtensions__)!=null&&n.initSessionRecording?this.Lr(e):(i=re.__PosthogExtensions__)==null||i.loadExternalDependency==null||i.loadExternalDependency(this._instance,this.Nr,(s=>{if(s)return Do.error("could not load recorder",s);this.Lr(e)})))}stopRecording(){var e,t;(e=this.jr)==null||e.call(this),this.jr=void 0,(t=this.Or)==null||t.stop()}Ur(){var e;(e=this._instance.persistence)==null||e.unregister(p0)}zr(e){if(this._instance.persistence){var t,n,i=this._instance.persistence,s=()=>{var o=e.sessionRecording===!1?void 0:e.sessionRecording,a=o?.sampleRate,l=fe(a)?null:parseFloat(a);fe(l)&&this.Ur();var c=o?.minimumDurationMilliseconds;i.register({[Up]:W({enabled:!!o},o,{networkPayloadCapture:W({capturePerformance:e.capturePerformance},o?.networkPayloadCapture),canvasRecording:{enabled:o?.recordCanvas,fps:o?.canvasFps,quality:o?.canvasQuality},sampleRate:l,minimumDurationMilliseconds:B(c)?null:c,endpoint:o?.endpoint,triggerMatchType:o?.triggerMatchType,masking:o?.masking,urlTriggers:o?.urlTriggers})})};s(),(t=this.jr)==null||t.call(this),this.jr=(n=this._instance.sessionManager)==null?void 0:n.onSessionId(s)}}onRemoteConfig(e){"sessionRecording"in e?e.sessionRecording!==!1?(this.zr(e),this.Mr=!0,this.startIfEnabledOrStop()):this.Mr=!0:Do.info("skipping remote config with no sessionRecording",e)}log(e,t){var n;t===void 0&&(t="log"),(n=this.Or)!=null&&n.log?this.Or.log(e,t):Do.warn("log called before recorder was ready")}get Nr(){var e,t,n=(e=this._instance)==null||(e=e.persistence)==null?void 0:e.get_property(Up);return(n==null||(t=n.scriptConfig)==null?void 0:t.script)||"lazy-recorder"}Lr(e){var t,n;if((t=re.__PosthogExtensions__)==null||!t.initSessionRecording)throw Error("Called on script loaded before session recording is available");this.Or||(this.Or=(n=re.__PosthogExtensions__)==null?void 0:n.initSessionRecording(this._instance),this.Or._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),this.Or.start(e)}onRRwebEmit(e){var t;(t=this.Or)==null||t.onRRwebEmit==null||t.onRRwebEmit(e)}overrideLinkedFlag(){var e,t;this.Or||(t=this._instance.persistence)==null||t.register({$replay_override_linked_flag:!0}),(e=this.Or)==null||e.overrideLinkedFlag()}overrideSampling(){var e,t;this.Or||(t=this._instance.persistence)==null||t.register({$replay_override_sampling:!0}),(e=this.Or)==null||e.overrideSampling()}overrideTrigger(e){var t,n;this.Or||(n=this._instance.persistence)==null||n.register({[e==="url"?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),(t=this.Or)==null||t.overrideTrigger(e)}get sdkDebugProperties(){var e;return((e=this.Or)==null?void 0:e.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(e,t){var n;return!((n=this.Or)==null||!n.tryAddCustomEvent(e,t))}},Ko={},gf=()=>{},Fi="posthog",W0=!I2&&yt?.indexOf("MSIE")===-1&&yt?.indexOf("Mozilla")===-1,L_=r=>{var e;return W({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,token:"",autocapture:!0,cross_subdomain_cookie:qA(H?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:gf,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:"if_capture_pageview",defaults:r??"unset",__preview_deferred_init_extensions:!1,debug:et&&ze(et?.search)&&et.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:!0,disable_external_dependency_loading:!1,enable_recording_console_log:void 0,secure_cookie:(E==null||(e=E.location)==null?void 0:e.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_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,surveys_request_timeout_ms:1e4,on_request_error:t=>{var n="Bad HTTP status: "+t.statusCode+" "+t.text;j.error(n)},get_device_id:t=>t,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:"identified_only",before_send:void 0,request_queue_config:{flush_interval_ms:of},error_tracking:{},_onCapture:gf,__preview_eager_load_replay:!1},(t=>({rageclick:!(t&&t>="2025-11-30")||{content_ignorelist:!0},capture_pageview:!(t&&t>="2025-05-24")||"history_change",session_recording:t&&t>="2025-11-30"?{strictMinimumDuration:!0}:{},external_scripts_inject_target:t&&t>="2026-01-30"?"head":"body",internal_or_test_user_hostname:t&&t>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0}))(r))},F_=r=>{var e={};B(r.process_person)||(e.person_profiles=r.process_person),B(r.xhr_headers)||(e.request_headers=r.xhr_headers),B(r.cookie_name)||(e.persistence_name=r.cookie_name),B(r.disable_cookie)||(e.disable_persistence=r.disable_cookie),B(r.store_google)||(e.save_campaign_params=r.store_google),B(r.verbose)||(e.debug=r.verbose);var t=Fe({},e,r);return _e(r.property_blacklist)&&(B(r.property_denylist)?t.property_denylist=r.property_blacklist:_e(r.property_denylist)?t.property_denylist=[...r.property_blacklist,...r.property_denylist]:j.error("Invalid value for property_denylist config: "+r.property_denylist)),t},mf=class{constructor(){this.__forceAllowLocalhost=!1}get Hr(){return this.__forceAllowLocalhost}set Hr(e){j.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=e}},Ec=class r{get decideEndpointWasHit(){var e,t;return(e=(t=this.featureFlags)==null?void 0:t.hasLoadedFlags)!==null&&e!==void 0&&e}get flagsEndpointWasHit(){var e,t;return(e=(t=this.featureFlags)==null?void 0:t.hasLoadedFlags)!==null&&e!==void 0&&e}constructor(){this.webPerformance=new mf,this.Br=!1,this.version=Tr.LIB_VERSION,this.qr=new ta,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=L_(),this.SentryIntegration=Dh,this.sentryIntegration=e=>(function(t,n){var i=R0(t,n);return{name:A0,processEvent:s=>i(s)}})(this,e),this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint="/e/",this.Wr=!1,this.Gr=null,this.Vr=null,this.Jr=null,this.featureFlags=new Gh(this),this.toolbar=new Hh(this),this.scrollManager=new cf(this),this.pageViewManager=new vc(this),this.surveys=new ef(this),this.conversations=new tf(this),this.logs=new rf(this),this.experiments=new pf(this),this.exceptions=new Zh(this),this.rateLimiter=new nf(this),this.requestRouter=new df(this),this.consent=new Nh(this),this.externalIntegrations=new hf(this),this.people={set:(e,t,n)=>{var i=ze(e)?{[e]:t}:e;this.setPersonProperties(i),n?.({})},set_once:(e,t,n)=>{var i=ze(e)?{[e]:t}:e;this.setPersonProperties(void 0,i),n?.({})}},this.on("eventCaptured",(e=>j.info('send "'+e?.event+'"',e)))}init(e,t,n){if(n&&n!==Fi){var i,s=(i=Ko[n])!==null&&i!==void 0?i:new r;return s._init(e,t,n),Ko[n]=s,Ko[Fi][n]=s,s}return this._init(e,t,n)}_init(e,t,n){var i;if(t===void 0&&(t={}),B(e)||oh(e))return j.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={},t.debug=this.Kr(t.debug),this.Yr=t,this.Xr=[],t.person_profiles&&(this.Vr=t.person_profiles),this.set_config(Fe({},L_(t.defaults),F_(t),{name:n,token:e})),this.config.on_xhr_error&&j.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=t.disable_compression?void 0:Mr.GZipJS;var s=this.Qr();this.persistence=new Go(this.config,s),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new Go(W({},this.config,{persistence:"sessionStorage"}),s);var o=W({},this.persistence.props),a=W({},this.sessionPersistence.props);this.register({$initialization_time:new Date().toISOString()}),this.Zr=new af((x=>this.ts(x)),this.config.request_queue_config),this.es=new lf(this),this.__request_queue=[];var l=this.config.cookieless_mode==="always"||this.config.cookieless_mode==="on_reject"&&this.consent.isExplicitlyOptedOut();if(l||(this.sessionManager=new Sc(this),this.sessionPropsManager=new wc(this,this.sessionManager,this.persistence)),this.config.__preview_deferred_init_extensions?(j.info("Deferring extension initialization to improve startup performance"),setTimeout((()=>{this.rs(l)}),0)):(j.info("Initializing extensions synchronously"),this.rs(l)),Tr.DEBUG=Tr.DEBUG||this.config.debug,Tr.DEBUG&&j.info("Starting in debug mode",{this:this,config:t,thisC:W({},this.config),p:o,s:a}),((i=t.bootstrap)==null?void 0:i.distinctID)!==void 0){var c,u,p=this.config.get_device_id(on()),h=(c=t.bootstrap)!=null&&c.isIdentifiedID?p:t.bootstrap.distinctID;this.persistence.set_property(Ir,(u=t.bootstrap)!=null&&u.isIdentifiedID?"identified":"anonymous"),this.register({distinct_id:t.bootstrap.distinctID,$device_id:h})}if(this.ss()){var f,v,g=Object.keys(((f=t.bootstrap)==null?void 0:f.featureFlags)||{}).filter((x=>{var S;return!((S=t.bootstrap)==null||(S=S.featureFlags)==null||!S[x])})).reduce(((x,S)=>{var b;return x[S]=((b=t.bootstrap)==null||(b=b.featureFlags)==null?void 0:b[S])||!1,x}),{}),m=Object.keys(((v=t.bootstrap)==null?void 0:v.featureFlagPayloads)||{}).filter((x=>g[x])).reduce(((x,S)=>{var b,w;return(b=t.bootstrap)!=null&&(b=b.featureFlagPayloads)!=null&&b[S]&&(x[S]=(w=t.bootstrap)==null||(w=w.featureFlagPayloads)==null?void 0:w[S]),x}),{});this.featureFlags.receivedFeatureFlags({featureFlags:g,featureFlagPayloads:m})}if(l)this.register_once({distinct_id:Io,$device_id:null},"");else if(!this.get_distinct_id()){var y=this.config.get_device_id(on());this.register_once({distinct_id:y,$device_id:y},""),this.persistence.set_property(Ir,"anonymous")}return je(E,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),this.toolbar.maybeLoadToolbar(),t.segment?f2(this,(()=>this.ns())):this.ns(),an(this.config._onCapture)&&this.config._onCapture!==gf&&(j.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",(x=>this.config._onCapture(x.event,x)))),this.config.ip&&j.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}rs(e){var t=performance.now();this.historyAutocapture=new Fh(this),this.historyAutocapture.startIfEnabled();var n=[];n.push((()=>{new Bh(this).startIfEnabledOrStop()})),n.push((()=>{var i;this.siteApps=new uf(this),(i=this.siteApps)==null||i.init()})),e||n.push((()=>{this.sessionRecording=new kc(this),this.sessionRecording.startIfEnabledOrStop()})),this.config.disable_scroll_properties||n.push((()=>{this.scrollManager.startMeasuringScrollPosition()})),n.push((()=>{this.autocapture=new $h(this),this.autocapture.startIfEnabled()})),n.push((()=>{this.surveys.loadIfEnabled()})),n.push((()=>{this.logs.loadIfEnabled()})),n.push((()=>{this.conversations.loadIfEnabled()})),n.push((()=>{this.productTours=new Kh(this),this.productTours.loadIfEnabled()})),n.push((()=>{this.heatmaps=new jh(this),this.heatmaps.startIfEnabled()})),n.push((()=>{this.webVitalsAutocapture=new Vh(this)})),n.push((()=>{this.exceptionObserver=new Lh(this),this.exceptionObserver.startIfEnabledOrStop()})),n.push((()=>{this.deadClicksAutocapture=new mc(this,h2),this.deadClicksAutocapture.startIfEnabled()})),n.push((()=>{if(this.os){var i=this.os;this.os=void 0,this.yi(i)}})),this.ls(n,t)}ls(e,t){for(;e.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-t>=30&&e.length>0)return void setTimeout((()=>{this.ls(e,t)}),0);var n=e.shift();if(n)try{n()}catch(s){j.error("Error initializing extension:",s)}}var i=Math.round(performance.now()-t);this.register_for_session({$sdk_debug_extensions_init_method:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",$sdk_debug_extensions_init_time_ms:i}),this.config.__preview_deferred_init_extensions&&j.info("PostHog extensions initialized ("+i+"ms)")}yi(e){var t,n,i,s,o,a,l,c,u;if(!H||!H.body)return j.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout((()=>{this.yi(e)}),500);this.config.__preview_deferred_init_extensions&&(this.os=e),this.compression=void 0,e.supportedCompression&&!this.config.disable_compression&&(this.compression=he(e.supportedCompression,Mr.GZipJS)?Mr.GZipJS:he(e.supportedCompression,Mr.Base64)?Mr.Base64:void 0),(t=e.analytics)!=null&&t.endpoint&&(this.analyticsDefaultEndpoint=e.analytics.endpoint),this.set_config({person_profiles:this.Vr?this.Vr:"identified_only"}),(n=this.siteApps)==null||n.onRemoteConfig(e),(i=this.sessionRecording)==null||i.onRemoteConfig(e),(s=this.autocapture)==null||s.onRemoteConfig(e),(o=this.heatmaps)==null||o.onRemoteConfig(e),this.surveys.onRemoteConfig(e),this.logs.onRemoteConfig(e),this.conversations.onRemoteConfig(e),(a=this.productTours)==null||a.onRemoteConfig(e),(l=this.webVitalsAutocapture)==null||l.onRemoteConfig(e),(c=this.exceptionObserver)==null||c.onRemoteConfig(e),this.exceptions.onRemoteConfig(e),(u=this.deadClicksAutocapture)==null||u.onRemoteConfig(e)}ns(){try{this.config.loaded(this)}catch(n){j.critical("`loaded` function failed",n)}if(this.us(),this.config.internal_or_test_user_hostname&&et!=null&&et.hostname){var e=et.hostname,t=this.config.internal_or_test_user_hostname;(typeof t=="string"?e===t:t.test(e))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout((()=>{(this.consent.isOptedIn()||this.config.cookieless_mode==="always")&&this.hs()}),1),new sf(this).load(),this.featureFlags.flags()}us(){var e;this.is_capturing()&&this.config.request_batching&&((e=this.Zr)==null||e.enable())}_dom_loaded(){this.is_capturing()&&ln(this.__request_queue,(e=>this.ts(e))),this.__request_queue=[],this.us()}_handle_unload(){var e,t;this.surveys.handlePageUnload(),this.config.request_batching?(this.ds()&&this.capture("$pageleave"),(e=this.Zr)==null||e.unload(),(t=this.es)==null||t.unload()):this.ds()&&this.capture("$pageleave",null,{transport:"sendBeacon"})}_send_request(e){this.__loaded&&(W0?this.__request_queue.push(e):this.rateLimiter.isServerRateLimited(e.batchKey)||(e.transport=e.transport||this.config.api_transport,e.url=_c(e.url,{ip:this.config.ip?1:0}),e.headers=W({},this.config.request_headers,e.headers),e.compression=e.compression==="best-available"?this.compression:e.compression,e.disableXHRCredentials=this.config.__preview_disable_xhr_credentials,this.config.__preview_disable_beacon&&(e.disableTransport=["sendBeacon"]),e.fetchOptions=e.fetchOptions||this.config.fetch_options,(t=>{var n,i,s,o=W({},t);o.timeout=o.timeout||6e4,o.url=_c(o.url,{_:new Date().getTime().toString(),ver:Tr.LIB_VERSION,compression:o.compression});var a=(n=o.transport)!==null&&n!==void 0?n:"fetch",l=nc.filter((u=>!o.disableTransport||!u.transport||!o.disableTransport.includes(u.transport))),c=(i=(s=c0(l,(u=>u.transport===a)))==null?void 0:s.method)!==null&&i!==void 0?i:l[0].method;if(!c)throw new Error("No available transport method");c(o)})(W({},e,{callback:t=>{var n,i;this.rateLimiter.checkForLimiting(t),t.statusCode>=400&&((n=(i=this.config).on_request_error)==null||n.call(i,t)),e.callback==null||e.callback(t)}}))))}ts(e){this.es?this.es.retriableRequest(e):this._send_request(e)}_execute_array(e){var t,n=[],i=[],s=[];ln(e,(a=>{a&&(t=a[0],_e(t)?s.push(a):an(a)?a.call(this):_e(a)&&t==="alias"?n.push(a):_e(a)&&t.indexOf("capture")!==-1&&an(this[t])?s.push(a):i.push(a))}));var o=function(a,l){ln(a,(function(c){if(_e(c[0])){var u=l;Ae(c,(function(p){u=u[p[0]].apply(u,p.slice(1))}))}else this[c[0]].apply(this,c.slice(1))}),l)};o(n,this),o(i,this),o(s,this)}ss(){var e,t;return((e=this.config.bootstrap)==null?void 0:e.featureFlags)&&Object.keys((t=this.config.bootstrap)==null?void 0:t.featureFlags).length>0||!1}push(e){this._execute_array([e])}capture(e,t,n){var i;if(this.__loaded&&this.persistence&&this.sessionPersistence&&this.Zr){if(this.is_capturing())if(!B(e)&&ze(e)){var s=!this.config.opt_out_useragent_filter&&this._is_bot();if(!(s&&!this.config.__preview_capture_bot_pageviews)){var o=n!=null&&n.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(o==null||!o.isRateLimited){t!=null&&t.$current_url&&!ze(t?.$current_url)&&(j.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),t==null||delete t.$current_url),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 a=new Date,l=n?.timestamp||a,c=on(),u={uuid:c,event:e,properties:this.calculateEventProperties(e,t||{},l,c)};e==="$pageview"&&this.config.__preview_capture_bot_pageviews&&s&&(u.event="$bot_pageview",u.properties.$browser_type="bot"),o&&(u.properties.$lib_rate_limit_remaining_tokens=o.remainingTokens),n?.$set&&(u.$set=n?.$set);var p,h=e!=="$groupidentify",f=this.vs(n?.$set_once,h);if(f&&(u.$set_once=f),(u=WA(u,n!=null&&n._noTruncate?null:this.config.properties_string_max_length)).timestamp=l,B(n?.timestamp)||(u.properties.$event_time_override_provided=!0,u.properties.$event_time_override_system_time=a),e===zo.DISMISSED||e===zo.SENT){var v=t?.[th.SURVEY_ID],g=t?.[th.SURVEY_ITERATION];p={id:v,current_iteration:g},localStorage.getItem(O_(p))||localStorage.setItem(O_(p),"true"),u.$set=W({},u.$set,{[P2({id:v,current_iteration:g},e===zo.SENT?"responded":"dismissed")]:!0})}else e===zo.SHOWN&&(u.$set=W({},u.$set,{[th.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));var m=W({},u.properties.$set,u.$set);if(Hi(m)||this.setPersonPropertiesForFlags(m),!fe(this.config.before_send)){var y=this.cs(u);if(!y)return;u=y}this.qr.emit("eventCaptured",u);var x={method:"POST",url:(i=n?._url)!==null&&i!==void 0?i:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),data:u,compression:"best-available",batchKey:n?._batchKey};return!this.config.request_batching||n&&(n==null||!n._batchKey)||n!=null&&n.send_instantly?this.ts(x):this.Zr.enqueue(x),u}j.critical("This capture call is ignored due to client rate limiting.")}}else j.error("No event name provided to posthog.capture")}else j.uninitializedWarning("posthog.capture")}_addCaptureHook(e){return this.on("eventCaptured",(t=>e(t.event,t)))}calculateEventProperties(e,t,n,i,s){if(n=n||new Date,!this.persistence||!this.sessionPersistence)return t;var o=s?void 0:this.persistence.remove_event_timer(e),a=W({},t);if(a.token=this.config.token,a.$config_defaults=this.config.defaults,(this.config.cookieless_mode=="always"||this.config.cookieless_mode=="on_reject"&&this.consent.isExplicitlyOptedOut())&&(a.$cookieless_mode=!0),e==="$snapshot"){var l=W({},this.persistence.properties(),this.sessionPersistence.properties());return a.distinct_id=l.distinct_id,(!ze(a.distinct_id)&&!Nr(a.distinct_id)||oh(a.distinct_id))&&j.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),a}var c,u=_2(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties);if(this.sessionManager){var{sessionId:p,windowId:h}=this.sessionManager.checkAndGetSessionAndWindowId(s,n.getTime());a.$session_id=p,a.$window_id=h}this.sessionPropsManager&&Fe(a,this.sessionPropsManager.getSessionProps());try{var f;this.sessionRecording&&Fe(a,this.sessionRecording.sdkDebugProperties),a.$sdk_debug_retry_queue_size=(f=this.es)==null?void 0:f.length}catch(y){a.$sdk_debug_error_capturing_properties=String(y)}if(this.requestRouter.region===qo.CUSTOM&&(a.$lib_custom_api_host=this.config.api_host),c=e!=="$pageview"||s?e!=="$pageleave"||s?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(n):this.pageViewManager.doPageView(n,i),a=Fe(a,c),e==="$pageview"&&H&&(a.title=H.title),!B(o)){var v=n.getTime()-o;a.$duration=parseFloat((v/1e3).toFixed(3))}yt&&this.config.opt_out_useragent_filter&&(a.$browser_type=this._is_bot()?"bot":"browser"),(a=Fe({},u,this.persistence.properties(),this.sessionPersistence.properties(),a)).$is_identified=this._isIdentified(),_e(this.config.property_denylist)?Ae(this.config.property_denylist,(function(y){delete a[y]})):j.error("Invalid value for property_denylist config: "+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);var g=this.config.sanitize_properties;g&&(j.error("sanitize_properties is deprecated. Use before_send instead"),a=g(a,e));var m=this.fs();return a.$process_person_profile=m,m&&!s&&this.ps("_calculate_event_properties"),a}vs(e,t){var n;if(t===void 0&&(t=!0),!this.persistence||!this.fs()||this.Br)return e;var i=this.persistence.get_initial_props(),s=(n=this.sessionPropsManager)==null?void 0:n.getSetOnceProps(),o=Fe({},i,s||{},e||{}),a=this.config.sanitize_properties;return a&&(j.error("sanitize_properties is deprecated. Use before_send instead"),o=a(o,"$set_once")),t&&(this.Br=!0),Hi(o)?void 0:o}register(e,t){var n;(n=this.persistence)==null||n.register(e,t)}register_once(e,t,n){var i;(i=this.persistence)==null||i.register_once(e,t,n)}register_for_session(e){var t;(t=this.sessionPersistence)==null||t.register(e)}unregister(e){var t;(t=this.persistence)==null||t.unregister(e)}unregister_for_session(e){var t;(t=this.sessionPersistence)==null||t.unregister(e)}gs(e,t){this.register({[e]:t})}getFeatureFlag(e,t){return this.featureFlags.getFeatureFlag(e,t)}getFeatureFlagPayload(e){return this.featureFlags.getFeatureFlagPayload(e)}getFeatureFlagResult(e,t){return this.featureFlags.getFeatureFlagResult(e,t)}isFeatureEnabled(e,t){return this.featureFlags.isFeatureEnabled(e,t)}reloadFeatureFlags(){this.featureFlags.reloadFeatureFlags()}updateFlags(e,t,n){var i=n!=null&&n.merge?this.featureFlags.getFlagVariants():{},s=n!=null&&n.merge?this.featureFlags.getFlagPayloads():{},o=W({},i,e),a=W({},s,t),l={};for(var[c,u]of Object.entries(o)){var p=typeof u=="string";l[c]={key:c,enabled:!!p||!!u,variant:p?u:void 0,reason:void 0,metadata:B(a?.[c])?void 0:{id:0,version:void 0,description:void 0,payload:a[c]}}}this.featureFlags.receivedFeatureFlags({flags:l})}updateEarlyAccessFeatureEnrollment(e,t,n){this.featureFlags.updateEarlyAccessFeatureEnrollment(e,t,n)}getEarlyAccessFeatures(e,t,n){return t===void 0&&(t=!1),this.featureFlags.getEarlyAccessFeatures(e,t,n)}on(e,t){return this.qr.on(e,t)}onFeatureFlags(e){return this.featureFlags.onFeatureFlags(e)}onSurveysLoaded(e){return this.surveys.onSurveysLoaded(e)}onSessionId(e){var t,n;return(t=(n=this.sessionManager)==null?void 0:n.onSessionId(e))!==null&&t!==void 0?t:()=>{}}getSurveys(e,t){t===void 0&&(t=!1),this.surveys.getSurveys(e,t)}getActiveMatchingSurveys(e,t){t===void 0&&(t=!1),this.surveys.getActiveMatchingSurveys(e,t)}renderSurvey(e,t){this.surveys.renderSurvey(e,t)}displaySurvey(e,t){t===void 0&&(t=L2),this.surveys.displaySurvey(e,t)}cancelPendingSurvey(e){this.surveys.cancelPendingSurvey(e)}canRenderSurvey(e){return this.surveys.canRenderSurvey(e)}canRenderSurveyAsync(e,t){return t===void 0&&(t=!1),this.surveys.canRenderSurveyAsync(e,t)}identify(e,t,n){if(!this.__loaded||!this.persistence)return j.uninitializedWarning("posthog.identify");if(Nr(e)&&(e=e.toString(),j.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),e)if(["distinct_id","distinctid"].includes(e.toLowerCase()))j.critical('The string "'+e+'" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.');else if(e!==Io){if(this.ps("posthog.identify")){var i=this.get_distinct_id();if(this.register({$user_id:e}),!this.get_property("$device_id")){var s=i;this.register_once({$had_persisted_distinct_id:!0,$device_id:s},"")}e!==i&&e!==this.get_property(Bo)&&(this.unregister(Bo),this.register({distinct_id:e}));var o=(this.persistence.get_property(Ir)||"anonymous")==="anonymous";e!==i&&o?(this.persistence.set_property(Ir,"identified"),this.setPersonPropertiesForFlags(W({},n||{},t||{}),!1),this.capture("$identify",{distinct_id:e,$anon_distinct_id:i},{$set:t||{},$set_once:n||{}}),this.Jr=A_(e,t,n),this.featureFlags.setAnonymousDistinctId(i)):(t||n)&&this.setPersonProperties(t,n),e!==i&&(this.reloadFeatureFlags(),this.unregister(lc))}}else j.critical('The string "'+Io+'" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.');else j.error("Unique user id has not been set in posthog.identify")}setPersonProperties(e,t){if((e||t)&&this.ps("posthog.setPersonProperties")){var n=A_(this.get_distinct_id(),e,t);this.Jr!==n?(this.setPersonPropertiesForFlags(W({},t||{},e||{})),this.capture("$set",{$set:e||{},$set_once:t||{}}),this.Jr=n):j.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.")}}group(e,t,n){if(e&&t){var i=this.getGroups();i[e]!==t&&this.resetGroupPropertiesForFlags(e),this.register({$groups:W({},i,{[e]:t})}),n&&(this.capture("$groupidentify",{$group_type:e,$group_key:t,$group_set:n}),this.setGroupPropertiesForFlags({[e]:n})),i[e]===t||n||this.reloadFeatureFlags()}else j.error("posthog.group requires a group type and group key")}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(e,t){t===void 0&&(t=!0),this.featureFlags.setPersonPropertiesForFlags(e,t)}resetPersonPropertiesForFlags(){this.featureFlags.resetPersonPropertiesForFlags()}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0),this.ps("posthog.setGroupPropertiesForFlags")&&this.featureFlags.setGroupPropertiesForFlags(e,t)}resetGroupPropertiesForFlags(e){this.featureFlags.resetGroupPropertiesForFlags(e)}reset(e){var t,n,i,s;if(j.info("reset"),!this.__loaded)return j.uninitializedWarning("posthog.reset");var o=this.get_property("$device_id");if(this.consent.reset(),(t=this.persistence)==null||t.clear(),(n=this.sessionPersistence)==null||n.clear(),this.surveys.reset(),this.featureFlags.reset(),(i=this.persistence)==null||i.set_property(Ir,"anonymous"),(s=this.sessionManager)==null||s.resetSessionId(),this.Jr=null,this.config.cookieless_mode==="always")this.register_once({distinct_id:Io,$device_id:null},"");else{var a=this.config.get_device_id(on());this.register_once({distinct_id:a,$device_id:e?a:o},"")}this.register({$last_posthog_reset:new Date().toISOString()},1)}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var e,t;return(e=(t=this.sessionManager)==null?void 0:t.checkAndGetSessionAndWindowId(!0).sessionId)!==null&&e!==void 0?e:""}get_session_replay_url(e){if(!this.sessionManager)return"";var{sessionId:t,sessionStartTimestamp:n}=this.sessionManager.checkAndGetSessionAndWindowId(!0),i=this.requestRouter.endpointFor("ui","/project/"+this.config.token+"/replay/"+t);if(e!=null&&e.withTimestamp&&n){var s,o=(s=e.timestampLookBack)!==null&&s!==void 0?s:10;if(!n)return i;i+="?t="+Math.max(Math.floor((new Date().getTime()-n)/1e3)-o,0)}return i}alias(e,t){return e===this.get_property(u0)?(j.critical("Attempting to create alias for existing People user - aborting."),-2):this.ps("posthog.alias")?(B(t)&&(t=this.get_distinct_id()),e!==t?(this.gs(Bo,e),this.capture("$create_alias",{alias:e,distinct_id:t})):(j.warn("alias matches current distinct_id - skipping api call."),this.identify(e),-1)):void 0}set_config(e){var t=W({},this.config);if(We(e)){var n,i,s,o,a,l,c;Fe(this.config,F_(e));var u=this.Qr();(n=this.persistence)==null||n.update_config(this.config,t,u),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new Go(W({},this.config,{persistence:"sessionStorage"}),u);var p=this.Kr(this.config.debug);Pr(p)&&(this.config.debug=p),Pr(this.config.debug)&&(this.config.debug?(Tr.DEBUG=!0,Me.H()&&Me.G("ph_debug","true"),j.info("set_config",{config:e,oldConfig:t,newConfig:W({},this.config)})):(Tr.DEBUG=!1,Me.H()&&Me.V("ph_debug"))),(i=this.exceptionObserver)==null||i.onConfigChange(),(s=this.sessionRecording)==null||s.startIfEnabledOrStop(),(o=this.autocapture)==null||o.startIfEnabled(),(a=this.heatmaps)==null||a.startIfEnabled(),(l=this.exceptionObserver)==null||l.startIfEnabledOrStop(),this.surveys.loadIfEnabled(),this._s(),(c=this.externalIntegrations)==null||c.startIfEnabledOrStop()}}startSessionRecording(e){var t=e===!0,n={sampling:t||!(e==null||!e.sampling),linked_flag:t||!(e==null||!e.linked_flag),url_trigger:t||!(e==null||!e.url_trigger),event_trigger:t||!(e==null||!e.event_trigger)};if(Object.values(n).some(Boolean)){var i,s,o,a,l;(i=this.sessionManager)==null||i.checkAndGetSessionAndWindowId(),n.sampling&&((s=this.sessionRecording)==null||s.overrideSampling()),n.linked_flag&&((o=this.sessionRecording)==null||o.overrideLinkedFlag()),n.url_trigger&&((a=this.sessionRecording)==null||a.overrideTrigger("url")),n.event_trigger&&((l=this.sessionRecording)==null||l.overrideTrigger("event"))}this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var e;return!((e=this.sessionRecording)==null||!e.started)}captureException(e,t){var n=new Error("PostHog syntheticException"),i=this.exceptions.buildProperties(e,{handled:!0,syntheticException:n});return this.exceptions.sendExceptionEvent(W({},i,t))}startExceptionAutocapture(e){this.set_config({capture_exceptions:e==null||e})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(e){return this.toolbar.loadToolbar(e)}get_property(e){var t;return(t=this.persistence)==null?void 0:t.props[e]}getSessionProperty(e){var t;return(t=this.sessionPersistence)==null?void 0:t.props[e]}toString(){var e,t=(e=this.config.name)!==null&&e!==void 0?e:Fi;return t!==Fi&&(t=Fi+"."+t),t}_isIdentified(){var e,t;return((e=this.persistence)==null?void 0:e.get_property(Ir))==="identified"||((t=this.sessionPersistence)==null?void 0:t.get_property(Ir))==="identified"}fs(){var e,t;return!(this.config.person_profiles==="never"||this.config.person_profiles==="identified_only"&&!this._isIdentified()&&Hi(this.getGroups())&&((e=this.persistence)==null||(e=e.props)==null||!e[Bo])&&((t=this.persistence)==null||(t=t.props)==null||!t[uc]))}ds(){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.fs()||this.ps("posthog.createPersonProfile")&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.ps("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:!0})}ps(e){return this.config.person_profiles==="never"?(j.error(e+' was called, but process_person is set to "never". This call will be ignored.'),!1):(this.gs(uc,!0),!0)}Qr(){if(this.config.cookieless_mode==="always")return!0;var e=this.consent.isOptedOut(),t=this.config.opt_out_persistence_by_default||this.config.cookieless_mode==="on_reject";return this.config.disable_persistence||e&&!!t}_s(){var e,t,n,i,s=this.Qr();return((e=this.persistence)==null?void 0:e.ki)!==s&&((n=this.persistence)==null||n.set_disabled(s)),((t=this.sessionPersistence)==null?void 0:t.ki)!==s&&((i=this.sessionPersistence)==null||i.set_disabled(s)),s}opt_in_capturing(e){var t;if(this.config.cookieless_mode!=="always"){var n,i,s;this.config.cookieless_mode==="on_reject"&&this.consent.isExplicitlyOptedOut()&&(this.reset(!0),(n=this.sessionManager)==null||n.destroy(),(i=this.pageViewManager)==null||i.destroy(),this.sessionManager=new Sc(this),this.pageViewManager=new vc(this),this.persistence&&(this.sessionPropsManager=new wc(this,this.sessionManager,this.persistence)),this.sessionRecording=new kc(this),this.sessionRecording.startIfEnabledOrStop()),this.consent.optInOut(!0),this._s(),this.us(),(t=this.sessionRecording)==null||t.startIfEnabledOrStop(),this.config.cookieless_mode=="on_reject"&&this.surveys.loadIfEnabled(),(B(e?.captureEventName)||e!=null&&e.captureEventName)&&this.capture((s=e?.captureEventName)!==null&&s!==void 0?s:"$opt_in",e?.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.hs()}else j.warn('Consent opt in/out is not valid with cookieless_mode="always" and will be ignored')}opt_out_capturing(){var e,t,n;this.config.cookieless_mode!=="always"?(this.config.cookieless_mode==="on_reject"&&this.consent.isOptedIn()&&this.reset(!0),this.consent.optInOut(!1),this._s(),this.config.cookieless_mode==="on_reject"&&(this.register({distinct_id:Io,$device_id:null}),(e=this.sessionManager)==null||e.destroy(),(t=this.pageViewManager)==null||t.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,(n=this.sessionRecording)==null||n.stopRecording(),this.sessionRecording=void 0,this.hs())):j.warn('Consent opt in/out is not valid with cookieless_mode="always" and will be ignored')}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){var e=this.consent.consent;return e===$r.GRANTED?"granted":e===$r.DENIED?"denied":"pending"}is_capturing(){return this.config.cookieless_mode==="always"||(this.config.cookieless_mode==="on_reject"?this.consent.isExplicitlyOptedOut()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this._s()}_is_bot(){return wt?U0(wt,this.config.custom_blocked_useragents):void 0}hs(){H&&(H.visibilityState==="visible"?this.Wr||(this.Wr=!0,this.capture("$pageview",{title:H.title},{send_instantly:!0}),this.Gr&&(H.removeEventListener("visibilitychange",this.Gr),this.Gr=null)):this.Gr||(this.Gr=this.hs.bind(this),je(H,"visibilitychange",this.Gr)))}debug(e){e===!1?(E?.console.log("You've disabled debug mode."),this.set_config({debug:!1})):(E?.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}))}M(){var e,t,n,i,s,o,a,l=this.Yr||{};return"advanced_disable_flags"in l?!!l.advanced_disable_flags:this.config.advanced_disable_flags!==!1?!!this.config.advanced_disable_flags:this.config.advanced_disable_decide===!0?(j.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):(n="advanced_disable_decide",i=!1,s=j,o=(t="advanced_disable_flags")in(e=l)&&!fe(e[t]),a=n in e&&!fe(e[n]),o?e[t]:a?(s&&s.warn("Config field '"+n+"' is deprecated. Please use '"+t+"' instead. The old field will be removed in a future major version."),e[n]):i)}cs(e){if(fe(this.config.before_send))return e;var t=_e(this.config.before_send)?this.config.before_send:[this.config.before_send],n=e;for(var i of t){if(n=i(n),fe(n)){var s="Event '"+e.event+"' was rejected in beforeSend function";return vA(e.event)?j.warn(s+". This can cause unexpected behavior."):j.info(s),null}n.properties&&!Hi(n.properties)||j.warn("Event '"+e.event+"' has no properties after beforeSend function, this is likely an error.")}return n}getPageViewId(){var e;return(e=this.pageViewManager.Kt)==null?void 0:e.pageViewId}captureTraceFeedback(e,t){this.capture("$ai_feedback",{$ai_trace_id:String(e),$ai_feedback_text:t})}captureTraceMetric(e,t,n){this.capture("$ai_metric",{$ai_trace_id:String(e),$ai_metric_name:t,$ai_metric_value:String(n)})}Kr(e){var t=Pr(e)&&!e,n=Me.H()&&Me.q("ph_debug")==="true";return!t&&(!!n||e)}};(function(r,e){for(var t=0;t<e.length;t++)r.prototype[e[t]]=UA(r.prototype[e[t]])})(Ec,["identify"]);var D_;var z0=(D_=Ko[Fi]=new Ec,(function(){function r(){r.done||(r.done=!0,W0=!1,Ae(Ko,(function(e){e._dom_loaded()})))}H!=null&&H.addEventListener?H.readyState==="complete"?r():je(H,"DOMContentLoaded",r,{capture:!1}):E&&j.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")})(),D_);var Af=class{constructor(e={}){this.options=e;if(this.client=e.client,this.featureFlagsCallback=e.onFeatureFlagsLoaded,this.captureCallback=e.onCapture,this.rrwebCallback=e.onRRWebEvent,!this.client&&e.consent&&e.requireExplicitConsent&&typeof window<"u"&&e.apiKey){let t=e.consent;t.getStatus()==="granted"&&this.initPostHog(),t.subscribe(i=>{i==="granted"?this.client?this.client.opt_in_capturing():this.initPostHog():i==="denied"&&this.client&&this.client.opt_out_capturing()});return}!this.client&&typeof window<"u"&&e.apiKey&&this.initPostHog()}initPostHog(){let e=this.options;if(!e.apiKey)return;let t=e.enableFeatureFlags??!0,n=`syntro_${e.apiKey.slice(-6)||"sdk"}`,o={api_host:`${(e.apiHost??"https://telemetry.syntrologie.com").replace(/\/$/,"")}/t/${e.apiKey}`,advanced_disable_feature_flags:!t,advanced_disable_feature_flags_on_first_load:!t,autocapture:e.autocapture??!0,capture_pageview:e.capturePageview??"history_change",capture_pageleave:e.capturePageleave??!0,disable_session_recording:!(e.sessionRecording??!0),opt_out_useragent_filter:!0,session_recording:{recordCrossDomainIFrames:!0},capture_performance:!0,enable_recording_console_log:!0};e.cookieless_mode&&(o.cookieless_mode=e.cookieless_mode);let a=z0.init(e.apiKey,o,n);if(a&&(this.client=a),this.captureCallback&&this.client&&this.client.on("eventCaptured",(...l)=>{let c=l[0],u=typeof c=="string"?c:c?.event,p=typeof c=="string"?void 0:c?.properties;typeof u=="string"&&this.captureCallback?.(u,p)}),t&&this.featureFlagsCallback&&this.client){this.client.onFeatureFlags(()=>{let c=this.getAllFeatureFlags();c&&this.featureFlagsCallback&&this.featureFlagsCallback(c)});let l=this.getAllFeatureFlags();l&&Object.keys(l).length>0&&this.featureFlagsCallback(l)}this.rrwebCallback&&this.client&&this.setupRRWebIntercept()}setupRRWebIntercept(e=30){let t=this.client?.sessionRecording;if(!t){e>0&&setTimeout(()=>this.setupRRWebIntercept(e-1),500);return}let n=null,i=t;for(let o of Object.getOwnPropertyNames(i)){let a=i[o];if(a&&typeof a=="object"&&typeof a.onRRwebEmit=="function"&&typeof a.start=="function"&&a!==t){n=a;break}}if(!n){e>0&&setTimeout(()=>this.setupRRWebIntercept(e-1),500);return}let s=n.onRRwebEmit.bind(n);n.onRRwebEmit=o=>{this.rrwebCallback?.({kind:"rrweb",...o}),s(o)},typeof window<"u"&&(window.__RRWEB_INTERCEPT_READY__=!0)}getAllFeatureFlags(){return this.client?.featureFlags?.getFlagVariants()}getSegmentFlags(){let e=this.getAllFeatureFlags();if(!e)return{};let t={};for(let[n,i]of Object.entries(e))n.startsWith("in_segment_")&&(t[n]=i===!0);return t}identify(e,t){this.client?.identify(e,t)}alias(e,t){this.client?.alias(e,t)}optInCapturing(){this.client?.opt_in_capturing()}optOutCapturing(){this.client?.opt_out_capturing()}track(e,t){this.client?.capture(e,t)}trackCanvasOpened(e){this.track("shadow_canvas_opened",{surface:e})}trackCanvasClosed(e){this.track("shadow_canvas_closed",{surface:e})}trackRectangleViewed(e,t){this.track("shadow_canvas_rectangle_viewed",{rectangleId:e,surface:t})}trackAction(e,t,n){this.track("shadow_canvas_action",{action:e,rectangleId:t,surface:n})}register(e){this.client?.register?.(e)}getSessionId(){return this.client?.get_session_id?.()}startSessionRecording(){this.client?.startSessionRecording?.()}trackExperiment(e,t,n){let i=`$experiment_${e}`;this.register({[i]:n??`variation_${t}`,[`${i}_id`]:t}),this.track("$experiment_started",{$experiment_key:e,$experiment_variation_id:t,$experiment_variation_name:n??`variation_${t}`})}setPersonProperties(e){this.client?.capture("$set",{$set:e})}setPersonPropertiesOnce(e){this.client?.capture("$set",{$set_once:e})}getDistinctId(){return this.client?.get_distinct_id?.()}};function Rf(r={}){return new Af(r)}var q0={posthog:r=>Rf(r),noop:()=>Hp()};function Z0(r,e){let t=q0[r];if(!t)throw new Error(`Unknown telemetry provider: ${r}. Supported: ${Object.keys(q0).join(", ")}`);return t(e)}async function G0(r){Zu(),Z("Syntro Bootstrap","====== INIT ======"),Z("Syntro Bootstrap","Options:",{hasToken:!!r.token,tokenPrefix:`${r.token?.slice(0,15)}...`,hasCanvasOptions:!!r.canvas});let e=vl();if(console.log(`[DIAG] Mode detection: sdkMode=${e}`),console.log("[DIAG] editorSource:",lo()),console.log("[DIAG] editorConf:",ml()),Z("Syntro Bootstrap","SDK mode:",e??"normal"),!e&&typeof window<"u"){let V=!!window.__SYNTRO_EDITOR_PARAMS__,ee=!!window.__SYNTRO_AUDIT_LEGEND__,te=!!window.__SYNTRO_REVIEW_DATA__;if(V||ee||te){let de=[V&&"__SYNTRO_EDITOR_PARAMS__",ee&&"__SYNTRO_AUDIT_LEGEND__",te&&"__SYNTRO_REVIEW_DATA__"].filter(Boolean);console.warn(`[Syntro Bootstrap] \u26A0 Mode detection returned null but mode-specific globals found: ${de.join(", ")}. This suggests URL params were lost (redirect?) but the service worker injected mode data. Check if replaceState failed or if page JS changed the URL before init().`)}}console.log(`[DIAG] Token resolution: options.token=${r.token?r.token.slice(0,15)+"...":"null"}`);let t=r.token;if(!t&&e){let ee=ml()?.syntro_token;ee?.startsWith("syn_")&&(t=ee,Z("Syntro Bootstrap",`\u2713 Using syntro_token from editor_conf (${e} mode)`))}let n;if(t)if(t.startsWith("syn_"))Z("Syntro Bootstrap","Token starts with syn_, decoding..."),n=co(t),Zu(n.d);else if(e)Z("Syntro Bootstrap",`\u2713 Non-syn_ token allowed (${e} mode)`);else throw rl("Syntro Bootstrap","\u274C Token does not start with syn_ and NOT in editor/audit/review mode!"),rl("Syntro Bootstrap","Token received:",t),new Error("Invalid Syntro token: must start with 'syn_'");else if(e)Z("Syntro Bootstrap",`\u2713 No token, but ${e} mode - proceeding`);else throw rl("Syntro Bootstrap","\u274C No token provided and NOT in editor/audit/review mode!"),new Error("Syntro token is required (unless in editor, audit, or review mode)");let i=It("NEXT_PUBLIC_SYNTRO_EXPERIMENT_HOST")||It("VITE_SYNTRO_EXPERIMENT_HOST")||n?.eh,s=It("NEXT_PUBLIC_SYNTRO_TELEMETRY_HOST")||It("VITE_SYNTRO_TELEMETRY_HOST")||n?.th;if(n!=null&&n.obd!==!0&&s)try{let V=`${s.replace(/\/$/,"")}/sdk-otel/v1/logs`;Gu({resource:{serviceName:"syntro-runtime-sdk",serviceVersion:Ks,posthogKey:n.t??"",hostOrigin:typeof window<"u"?window.location.origin:""},emit:Yu({endpoint:V})})}catch{}let o=It("NEXT_PUBLIC_SYNTRO_EDITOR_URL")||It("VITE_SYNTRO_EDITOR_URL")||r.canvas?.editorUrl,a=n?.g||It("NEXT_PUBLIC_SYNTRO_GEO_HOST")||It("VITE_SYNTRO_GEO_HOST")||Ey,l=wy(),c=Ld(),u=r.appSignalsInit??{},p={...c,...l,...u};Z("Syntro Bootstrap","Phase 1: Browser metadata:",c),Z("Syntro Bootstrap","Phase 1: Cached segment attributes:",l),Object.keys(u).length>0&&Z("Syntro Bootstrap","Phase 1: App signals:",u);let h=Fd(a),f=(()=>{try{if(typeof window>"u"||window.self===window.top)return Promise.resolve(null)}catch{}return new Promise(V=>{let ee=setTimeout(()=>{window.removeEventListener("message",te),V(null)},500);function te(de){let be=de.data;be?.jsonrpc==="2.0"&&be?.id===1&&be?.result?.hostInfo&&(clearTimeout(ee),window.removeEventListener("message",te),V(be.result.hostInfo))}window.addEventListener("message",te);try{window.parent.postMessage({jsonrpc:"2.0",id:1,method:"ui/initialize",params:{capabilities:{}}},"*")}catch{clearTimeout(ee),window.removeEventListener("message",te),V(null)}})})(),v,g=r.debug||r.testMode,m=uo({debug:r.debug,history:g?new po(r.testMode?0:100):void 0,testMode:r.testMode});console.log("[Syntro Bootstrap] EventBus created");let y=Uu({elementResolver:typeof window<"u"?(V,ee)=>{let te=document.elementFromPoint(V,ee);if(!te)return null;let de={tag_name:te.tagName.toLowerCase()};te.id&&(de.attr__id=te.id),te.className&&typeof te.className=="string"&&(de.classes=te.className.split(" ").filter(Boolean));for(let be of te.attributes)be.name.startsWith("data-")&&(de[`attr__${be.name}`]=be.value);return de}:void 0});y.onEvent(V=>m.publishEvent(V)),typeof window<"u"&&(setInterval(()=>y.tick(Date.now()),1e3),document.addEventListener("click",V=>{let ee=[],te=V.target;for(;te&&te!==document.body;){let de={tag_name:te.tagName.toLowerCase()};for(let be of te.attributes)(be.name.startsWith("data-")||be.name==="id"||be.name==="class"||be.name==="aria-label")&&(de[`attr__${be.name}`]=be.value);ee.push(de),te=te.parentElement}y.enrichClickAttributes(Date.now(),ee)},!0));let x=Cb(),S,b=V=>{Z("Syntro Bootstrap","Phase 2: PostHog feature flags loaded");let ee=ky(V);if(Z("Syntro Bootstrap","Segment flags from PostHog:",ee),Sy(ee),v){let te=C?.getAll?.()??{},de={...c,...te,...ee,...u};Z("Syntro Bootstrap","Updating GrowthBook with attributes:",de),v.setAttributes?.(de)}if(S&&w?.getDistinctId){let te=w.getDistinctId();te&&s&&n?.t&&S.updateContext({distinctId:te,telemetryHost:s,telemetryKey:n.t})}},w;if(n?.t){let V=n.t==="noop"?"noop":"posthog";w=Z0(V,{apiKey:n.t,apiHost:s,enableFeatureFlags:!0,sessionRecording:!0,cookieless_mode:"on_reject",onFeatureFlagsLoaded:b,onCapture:(ge,Ie)=>{y.ingest({kind:"posthog",event:ge,properties:Ie,timestamp:Date.now()})},onRRWebEvent:ge=>{y.ingest(ge)}}),console.log(`[Syntro Bootstrap] Telemetry client created (${V}) with EventBus wiring`),Object.keys(u).length>0&&(w.track?.("app_signals_init",u),Z("Syntro Bootstrap","Tracked app signals event:",u));let ee=w;m.setPosthogCapture((ge,Ie)=>{ee.track?.(ge,Ie)});let te=w,de=async()=>{let ge=await h;return ge.is_eu==="true"||ge.country_code==="GB"||ge.country_code==="CH"?"denied":"granted"},be=new Ro({initialStatus:"pending",pendingResolver:de,onConsentChange:ge=>{ge==="granted"?te.optInCapturing?.():ge==="denied"&&te.optOutCapturing?.()}});try{My(w,be,{geoPromise:h}),Z("Syntro Bootstrap","SDK defaults installed (D-1..D-5) with consent gate")}catch(ge){Ze("Syntro Bootstrap","installDefaults failed",ge)}try{new Ao({adapters:[new Co,new Eo,new ko],fallbackStatus:de,onAdapterSelected:Ie=>{te.track?.("syntro_consent_adapter_selected",{adapter:Ie??"none"}),Z("Syntro Bootstrap",`Consent adapter selected: ${Ie??"none"}`)}}).start(be).catch(Ie=>{Ze("Syntro Bootstrap","Consent detector failed to start",Ie)})}catch(ge){Ze("Syntro Bootstrap","Consent detector setup failed",ge)}if(x?.name==="shopify"&&s)try{S=new Wl({distinctId:w.getDistinctId?.()??"",telemetryHost:s,telemetryKey:n.t}),Z("Syntro Bootstrap","ShopifyPixelBridge initialized for checkout attribution")}catch(ge){Ze("Syntro Bootstrap","ShopifyPixelBridge init failed",ge)}}let C;n?.e&&(v=_b("growthbook",{clientKey:n.e,apiHost:i,attributes:p,onExperimentViewed:w?.trackExperiment?(V,ee,te)=>{w.trackExperiment(V,ee,te)}:void 0})),C=gp({experiments:v,onMetricChange:(V,ee)=>{Z("Syntro Bootstrap",`Session metric changed: ${V} = ${ee}`)}}),Z("Syntro Bootstrap","SessionMetricTracker created");let _="production";e==="editor"?_="editor":e==="audit"?_="audit":It("NODE_ENV")==="development"&&(_="development");let A=typeof c.surface_type=="string"?c.surface_type:"web",$=typeof c.surface_host=="string"?c.surface_host:"web",T=Lp({telemetry:w,sessionMetrics:C,mode:_,events:m,initialSurfaceType:A,initialSurfaceHost:$});Z("Syntro Bootstrap","Runtime created:",{version:T.version,mode:T.mode,hasContext:!!T.context,hasEvents:!!T.events,hasState:!!T.state}),Z("Syntro Bootstrap","Core app executors already registered");let O=r.cdnBase||It("NEXT_PUBLIC_SYNTRO_CDN_BASE")||It("VITE_SYNTRO_CDN_BASE")||Cy()||"https://cdn.syntrologie.com",Y=iu({cdnBase:O,registry:T.apps,onLoadStart:V=>{Z("Syntro Bootstrap",`Loading app from CDN: ${V}`)},onLoadEnd:(V,ee,te)=>{ee?Z("Syntro Bootstrap",`App loaded successfully: ${V}`):Ze("Syntro Bootstrap",`Failed to load app: ${V}`,te)}});typeof window<"u"&&(window.SynOS={...window.SynOS,appRegistry:T.apps,appLoader:Y,runtime:T,version:T.version},Z("Syntro Bootstrap","Global SynOS object exposed")),typeof window<"u"&&window.parent!==window&&Y.loadApp("adaptive-mcp").catch(V=>{Z("Syntro Bootstrap","auto-load of adaptive-mcp failed (non-fatal):",V)});let F=T.apps.list?.()??[];console.log(`[DIAG] Activation loop: ${F.length} apps in registry:`,F.map(V=>`${V.manifest.id}(${V.state})`).join(", "));for(let V of F)if(V.state==="registered")try{await T.apps.activate(V.manifest.id),console.log(`[DIAG] Activated: ${V.manifest.id} \u2192 widgets: [${T.widgets.list().join(", ")}]`)}catch(ee){console.error(`[DIAG] FAILED to activate: ${V.manifest.id}`,ee),Ze("Syntro Bootstrap",`Failed to auto-activate built-in app: ${V.manifest.id}`,ee)}if(console.log(`[DIAG] Activation complete. Total widgets: [${T.widgets.list().join(", ")}]`),v?.refreshFeatures)try{await v.refreshFeatures(),Z("Syntro Bootstrap","GrowthBook features loaded")}catch(V){Ze("Syntro Bootstrap","Failed to load GrowthBook features:",V)}let N=await h;if(v&&Object.keys(N).length>0){let V={...c,...N,...u};Z("Syntro Bootstrap","Merging geo data into GrowthBook attributes:",N),v.setAttributes?.(V)}let G=await f;G&&v&&(c.surface_type="mcp-app",c.surface_host=G.name,v.setAttributes?.({...c,...N}),T.context.setSurfaceType("mcp-app"),T.context.setSurfaceHost(G.name),Z("Syntro Bootstrap","MCP App detected:",G.name));let K;if(r.fetcher)K=r.fetcher;else if(n?.f){let V=kb(n.f,n.o??{});K=async()=>{let ee=await V.fetch();return{...ee.config,tiles:ee.config.tiles??[]}}}else v&&(K=xi({experiments:v}));let le=new Set,U=K?async()=>{let V=await K(),ee=V.tiles?.length??0,te=V.actions?.length??0,de=V.meta?.variant_id;if((ee>0||te>0)&&(de||console.warn("[Syntro] Config has content but no meta.variant_id \u2014 intervention tracking disabled")),w&&de){let Ie=typeof window<"u"?window.SynOS??(window.SynOS={}):void 0,dt=Ie?.interventionTracker,zt;dt&&dt.variantId===de?zt=dt:(zt=new To(w,de),Ie&&(Ie.interventionTracker=zt),T.navigation.subscribe(()=>{zt.resetPage()})),zt.trackServed(ee,te)}console.log("[Syntro Bootstrap] Config fetched:",`tiles=${V.tiles?.length??0},`,`actions=${V.actions?.length??0},`,`theme=${V.theme?.name??"none"}`),V.actions?.length>0&&console.log("[Syntro Bootstrap] Actions in config:",V.actions.map((Ie,dt)=>`[${dt}] ${Ie.kind}${Ie.anchorId?` anchor="${Ie.anchorId.selector}"`:""}${Ie.label?` "${Ie.label}"`:""}`).join(", "));let be=V,ge=Y.getRequiredApps(be);return ge.length>0?console.log("[Syntro Bootstrap] Required external apps:",ge.join(", ")):Z("Syntro Bootstrap","No external apps required (all executors are built-in)"),ge.length>0&&await Y.loadAppsForConfig(be).then(async dt=>{let zt=dt.filter(Ne=>Ne.success),qt=dt.filter(Ne=>!Ne.success);zt.length>0&&console.log(`[Syntro Bootstrap] Apps loaded from CDN: ${zt.map(Ne=>Ne.appId).join(", ")}`);let Gi=qt.filter(Ne=>!le.has(Ne.appId));Gi.length>0&&(console.error("[Syntro Bootstrap] Apps FAILED to load from CDN:",Gi.map(Ne=>`${Ne.appId} (${Ne.error})`).join(", ")),Gi.forEach(Ne=>le.add(Ne.appId)));for(let Ne of ge)if(T.apps.has(Ne))try{await T.apps.activate(Ne),console.log(`[Syntro Bootstrap] App activated: ${Ne}`)}catch(Ki){console.error(`[Syntro Bootstrap] Failed to activate app: ${Ne}`,Ki)}else console.error(`[Syntro Bootstrap] App "${Ne}" required by config but NOT registered.`,`Available apps: [${Array.from(T.apps.list?.()??[]).join(", ")}]`)}),V}:void 0;if(x){Z("Syntro Bootstrap",`Detected platform: ${x.name}`);try{await x.onInit(),Z("Syntro Bootstrap",`Platform adapter initialized: ${x.name}`)}catch(V){Ze("Syntro Bootstrap",`Platform adapter init failed: ${x.name}`,V)}}let Q=await Od({...r.canvas,fetcher:U,integrations:{experiments:v,telemetry:w},editorUrl:o,runtime:T});if(Q.setOverrideFetcher){let V=Q.setOverrideFetcher.bind(Q);Q.setOverrideFetcher=ee=>{V(async()=>{let de=await ee(),be=de;if(Y.getRequiredApps(be).length>0){let Ie=await Y.loadAppsForConfig(be);for(let dt of Ie)if(dt.success&&T.apps.has(dt.appId))try{await T.apps.activate(dt.appId)}catch{}}return de})}}let De=rr();if(De!==null)try{let V=w,ee=T;De.bindRuntime({getSessionId:()=>{try{return V?.getSessionId?.()??""}catch{return""}},getSurface:()=>{try{let te=ee.context.get().surface;return te?{...te}:null}catch{return null}}})}catch{}return De?.increment("bootstrap_ok"),{canvas:Q,runtime:T,experiments:v,telemetry:w,sessionMetrics:C,appLoader:Y}}async function U2(r){try{return await G0(r)}catch(e){let t=e instanceof Error?e.message:String(e);console.warn("[Syntrologie] SDK initialization failed:",t),rr()?.increment("bootstrap_errors"),typeof document<"u"&&document.getElementById("syntrologie-anti-flicker")?.remove();return}}function W2(r,e={}){if(typeof window>"u")return;let t=window.SynOS?.runtime;t?.events?.publish&&t.events.publish({name:r,source:"custom",props:e})}async function z2(r){if(typeof window>"u")return{appId:r,success:!1,error:"no-window"};let e=window.SynOS?.appLoader;return e?e.loadApp(r):{appId:r,success:!1,error:"syntro-not-initialized"}}var K0={init:U2,loadAdaptive:z2,encodeToken:Nd,decodeToken:co,events:{emit:W2}};typeof window<"u"&&(window.Syntro=K0);function sa(r){let e=r.split(".");return{major:parseInt(e[0]||"0",10),minor:parseInt(e[1]||"0",10)}}function QL(r){let e=[],t=[];if(!r||typeof r!="object")return{valid:!1,errors:["Config must be an object"],warnings:e};let n=r;if(n.tiles||t.push("Config missing required field: tiles"),n.actions||t.push("Config missing required field: actions"),n.fetchedAt||t.push("Config missing required field: fetchedAt"),t.length>0)return{valid:!1,errors:t,warnings:e};let i=n.schemaVersion||"1.0",s=sa(i),o=sa(qr);return s.major>o.major&&e.push(`Config schema v${i} is newer than SDK v${qr}. Some features may not work. Update SDK to latest version.`),s.major<o.major||!n.schemaVersion?(e.push(`Config schema v${i} is older than SDK v${qr}. Migrating config to current version.`),{valid:!0,warnings:e,errors:t,migratedConfig:q2(n,i)}):{valid:!0,warnings:e,errors:t}}function q2(r,e){let t={...r};return sa(e).major===1&&(t=Z2(t)),t.schemaVersion=qr,t}function Z2(r){let e={schemaVersion:"2.0",tiles:[],actions:r.actions||[],fetchedAt:r.fetchedAt||new Date().toISOString()};return r.tiles&&Array.isArray(r.tiles)&&(e.tiles=r.tiles.map(t=>{let n={...t};return t.experiment&&delete n.experiment,n})),r.configVersion&&(e.configVersion=r.configVersion),r.canvasTitle&&(e.canvasTitle=r.canvasTitle),r.theme&&(e.theme=r.theme),r.launcher&&(e.launcher=r.launcher),e}function eF(r){if(!r||typeof r!="object")return!1;let e=r,t=e.schemaVersion||"1.0",n=sa(t),i=sa(qr);return n.major<i.major||!e.schemaVersion}var G2=d.object({url:d.string(),routeId:d.string().optional(),title:d.string().optional(),locale:d.string().optional()}),K2=d.object({url:d.string(),ts:d.number()}),Y2=d.object({sessionId:d.string(),startTs:d.number(),pageHistory:d.array(K2).optional()}),X2=d.object({width:d.number(),height:d.number()}),J2=d.object({x:d.number(),y:d.number(),w:d.number(),h:d.number()}),Q2=d.object({anchorId:d.string(),present:d.boolean(),visible:d.boolean().optional(),boundingBox:J2.optional()}),eR=d.record(d.string(),d.union([d.number(),d.string(),d.boolean(),d.undefined()])),tR=d.object({page:G2,session:Y2,viewport:X2,anchors:d.array(Q2).optional(),augmented:eR.optional()});function nF(r){return tR.safeParse(r)}var Tf=class{constructor(e,t,n,i){this._isFallback=!0;this._isLoading=!0;this._cancelled=!1;this._host=e,this._runtime=t,this._strategy=n,this._defaultValue=i,this._value=i,e.addController(this)}get value(){return this._value}get isFallback(){return this._isFallback}get isLoading(){return this._isLoading}hostConnected(){this._evaluate()}hostDisconnected(){this._cancelled=!0}setStrategy(e){this._strategy=e,this._evaluate()}_evaluate(){if(this._cancelled=!1,!this._runtime||!this._strategy){this._value=this._defaultValue,this._isFallback=!0,this._isLoading=!1,this._host.requestUpdate();return}this._isLoading=!0,this._host.requestUpdate();let e=this._strategy;this._runtime.evaluate(e).then(t=>{this._cancelled||(this._value=t.value,this._isFallback=t.isFallback,this._isLoading=!1,this._host.requestUpdate())})}};var If=class{constructor(e,t){this._unsubscribe=null;this.host=e,this._runtime=t,this._context=t.context.get(),e.addController(this)}hostConnected(){this._context=this._runtime.context.get(),this._unsubscribe=this._runtime.context.subscribe(e=>{this._context=e,this.host.requestUpdate()})}hostDisconnected(){this._unsubscribe?.(),this._unsubscribe=null}get runtime(){return this._runtime}get context(){return this._context}get page(){return this._context?.page??null}get session(){return this._context?.session??null}get viewport(){return this._context?.viewport??null}};var $f=class{constructor(e,t,n,i){this._host=e,this._runtime=t,this._filter=n,this._callback=i,e.addController(this)}hostConnected(){this._subscribe()}hostDisconnected(){this._unsubscribe?.(),this._unsubscribe=void 0}setFilter(e){this._filter=e,this._unsubscribe!==void 0&&(this._unsubscribe(),this._unsubscribe=void 0,this._subscribe())}setCallback(e){this._callback=e,this._unsubscribe!==void 0&&(this._unsubscribe(),this._unsubscribe=void 0,this._subscribe())}_subscribe(){this._runtime&&(this._unsubscribe=this._filter?this._runtime.events.subscribe(this._filter,this._callback):this._runtime.events.subscribe(this._callback))}};var Y0=d.enum(["posthog","canvas","derived"]),rR=d.object({ts:d.number(),name:d.string(),source:Y0,props:d.record(d.string(),d.unknown()).optional(),schemaVersion:d.string()}),nR=d.object({names:d.array(d.string()).optional(),patterns:d.array(d.string()).optional(),sources:d.array(Y0).optional()});function AF(r){return rR.safeParse(r)}function RF(r){return nR.safeParse(r)}var X0=d.union([d.object({type:d.literal("data"),key:d.string(),value:d.string().optional()}),d.object({type:d.literal("css"),value:d.string()}),d.object({type:d.literal("aria"),role:d.string().optional(),label:d.string().optional()}),d.object({type:d.literal("shadow-css"),value:d.string()}),d.object({type:d.literal("ref"),el:d.any()})]),iR=d.object({kind:d.literal("tooltip"),id:d.string(),anchor:X0,content:d.object({title:d.string().optional(),body:d.string()}),placement:d.enum(["top","bottom","left","right","auto"]).optional(),offsetPx:d.number().optional(),blocking:d.boolean().optional(),trigger:d.enum(["immediate","hover","click"]).optional(),dismiss:d.object({onEsc:d.boolean().optional(),closeButton:d.boolean().optional(),timeoutMs:d.number().optional()}).optional()}),sR=d.object({kind:d.literal("highlight"),id:d.string(),anchor:X0,copy:d.string().optional(),ring:d.object({paddingPx:d.number().optional(),radiusPx:d.number().optional()}).optional(),scrim:d.object({opacity:d.number().optional()}).optional(),ringColor:d.string().optional(),blocking:d.boolean().optional(),dismiss:d.object({onClickOutside:d.boolean().optional(),onEsc:d.boolean().optional(),timeoutMs:d.number().optional()}).optional()}),Mf=d.object({id:d.string(),version:d.number(),routes:d.array(d.string()).optional(),steps:d.array(d.union([iR,sR]))});function UF(r){return Mf.parse(r)}var ZF=({configUri:r,experiments:e,featureKey:t="smart-canvas-overlay-uri",credentials:n="include"}={})=>async()=>{let i=Xu({configUri:r,experiments:e,featureKey:t});if(!i)throw new Error("SmartCanvas overlays: recipe URI missing (env + feature unset).");let s=await fetch(i,{credentials:n});if(!s.ok)throw new Error(`SmartCanvas overlays: failed to fetch recipe (${s.status})`);let o=await s.json();return Mf.parse(o)};var oR=d.object({value:d.unknown(),expiresAt:d.number().optional()}),aR=d.object({count:d.number(),resetAt:d.number().optional()});function YF(r){return oR.safeParse(r)}function XF(r){return aR.safeParse(r)}var J0="2026-05-06T01:42:37.033Z (394e30b3e33)";if(typeof window<"u"){console.log(`[Syntro Runtime] Build: ${J0} (Lit)`);let r=window.SynOS,e=r?.appRegistry||ys;window.SynOS={...r,appRegistry:e,_runtimeBuild:J0,_renderer:"lit"},al(),Xm(e)}export{So as ANIMATION_KEYFRAMES,fl as ActivationConfigZ,Yv as AddClassZ,Tt as AnchorIdZ,Q2 as AnchorStateZ,$u as AnchorVisibleConditionZ,vs as AppRegistry,eR as AugmentationZ,Hv as BadgePositionZ,ry as BadgeZ,J2 as BoundingBoxZ,Zs as CanvasEvents,Mf as CanvasRecipeZ,zr as ConditionZ,zl as ContextManager,Fu as CooldownActiveConditionZ,Ls as CounterDefZ,Td as CtaButtonZ,Wu as DEFAULT_COOLDOWN,Tf as DecisionController,js as DecisionStrategyZ,Lu as DismissedConditionZ,Le as EVENT_SCHEMA_VERSION,wl as EventBus,Hu as EventCountConditionZ,nR as EventFilterZ,po as EventHistory,Mu as EventOccurredConditionZ,Y0 as EventSourceZ,ul as ExecutorRegistry,Vs as ExternalStrategyZ,aR as FrequencyEntryZ,Du as FrequencyLimitConditionZ,sR as HighlightStepZ,Dv as HighlightStyleZ,ey as HighlightZ,Qv as InsertHtmlZ,Uv as InsertPositionZ,To as InterventionTracker,Ja as MAX_VISIBLE_TOASTS,Ns as MatchOpZ,jv as ModalContentZ,iy as ModalZ,Bs as ModelStrategyZ,ay as MountWidgetZ,oy as NavigateZ,bo as NavigationMonitor,rR as NormalizedEventZ,qs as NotificationsController,G2 as PageContextZ,K2 as PageHistoryEntryZ,Tu as PageUrlConditionZ,uy as ParallelZ,Bv as PlacementZ,ty as PulseZ,J0 as RUNTIME_SDK_BUILD,Vb as RUNTIME_VERSION,Xv as RemoveClassZ,Iu as RouteConditionZ,Lv as RouteFilterZ,Ds as RuleStrategyZ,Fs as RuleZ,tR as RuntimeContextZ,If as RuntimeController,$f as RuntimeEventsController,qr as SDK_SCHEMA_VERSION,Ks as SDK_VERSION,Fb as STATIC_SLOT_STYLES,Hs as ScoreStrategyZ,Zv as ScrollBehaviorZ,Rd as ScrollLogicalPositionZ,sy as ScrollToZ,X0 as SelectorZ,cy as SequenceZ,Y2 as SessionContextZ,Nu as SessionMetricConditionZ,Bl as SessionMetricTracker,Kv as SetAttrZ,Jv as SetStyleZ,Gv as SetTextZ,Ju as SmartCanvasController,Si as SmartCanvasElementLit,Xe as StandardEvents,Ou as StateEqualsConditionZ,Gl as StateStore,oR as StoredValueZ,K0 as Syntro,Qs as ThemeController,Vv as TooltipContentZ,iR as TooltipStepZ,Wv as TooltipTriggerZ,ny as TooltipZ,qv as TourStepForSchemaZ,dy as TourZ,ja as TriggerWhenZ,Pu as ViewportConditionZ,X2 as ViewportContextZ,ly as WaitZ,zv as WidgetConfigZ,Yl as WidgetRegistry,Cp as applyStaticSlotStyles,IE as coreActionStepSchemas,Cd as createActionEngine,Id as createAnchorResolver,xi as createCanvasConfigFetcher,bp as createContextManager,_p as createDecisionEngine,xp as createEventAccumulator,uo as createEventBus,pp as createGrowthBookClient,Hp as createNoopClient,ZF as createOverlayRecipeFetcher,Rf as createPostHogClient,lv as createPostHogNormalizer,gp as createSessionMetricTracker,Od as createSmartCanvas,mv as createSmartCanvasController,Lp as createSmartCanvasRuntime,Ep as createStateStore,$p as createSurfaceContainer,Op as createSurfaces,_4 as decisionSchemas,co as decodeToken,Nd as encodeToken,Mb as evaluate,Tb as evaluateCondition,Ib as evaluateRule,ql as evaluateRuleStrategy,Zl as evaluateScoreStrategy,Ob as evaluateSync,kr as executorRegistry,$E as getAntiFlickerSnippet,yE as getExecutor,Kl as getSlotAnchorId,wo as getSlotType,Mp as getSlotZIndex,ud as hasExecutor,eF as needsMigration,Ws as normalizePostHogEvent,sa as parseVersion,Tp as playEnterAnimation,Ip as playExitAnimation,wi as registerConfigPredicates,al as registerSmartCanvasElement,Xu as resolveConfigUri,hE as runtimeContext,Ap as setupAdjacentPositioning,Rp as setupInlinePositioning,zs as shouldNormalizeEvent,sr as validateAction,hl as validateActions,b4 as validateActivationConfig,v4 as validateCondition,QL as validateConfig,RF as validateEventFilter,qd as validateEventName,XF as validateFrequencyEntry,AF as validateNormalizedEvent,Zd as validateProps,UF as validateRecipe,nF as validateRuntimeContext,YF as validateStoredValue,y4 as validateStrategy,Pp as widgetRegistry};
1065
+ `)).length,i=0;i<n;i++){var o=r.charCodeAt(i),a=null;o<128?t++:a=o>127&&o<2048?String.fromCharCode(o>>6|192,63&o|128):String.fromCharCode(o>>12|224,o>>6&63|128,63&o|128),Wt(a)||(t>e&&(s+=r.substring(e,t)),s+=a,e=t=i+1)}return t>e&&(s+=r.substring(e,r.length)),s},AT=!!Ih||!!Rh,m0="text/plain",Ic=function(r,e,t){var n;t===void 0&&(t=!0);var[i,s]=r.split("?"),o=W({},e),a=(n=s?.split("&").map((c=>{var u,[p,h]=c.split("="),f=t&&(u=o[p])!==null&&u!==void 0?u:h;return delete o[p],p+"="+f})))!==null&&n!==void 0?n:[],l=eT(o);return l&&a.push(l),i+"?"+a.join("&")},Yo=(r,e)=>JSON.stringify(r,((t,n)=>typeof n=="bigint"?n.toString():n),e),wh=r=>{var{data:e,compression:t}=r;if(e){if(t===Or.GZipJS){var n=ET((function(l,c){var u=l.length;if(typeof TextEncoder<"u")return new TextEncoder().encode(l);for(var p=new Mt(l.length+(l.length>>>1)),h=0,f=function(y){p[h++]=y},v=0;v<u;++v){if(h+5>p.length){var g=new Mt(h+8+(u-v<<1));g.set(p),p=g}var m=l.charCodeAt(v);m<128||c?f(m):m<2048?(f(192|m>>>6),f(128|63&m)):m>55295&&m<57344?(f(240|(m=65536+(1047552&m)|1023&l.charCodeAt(++v))>>>18),f(128|m>>>12&63),f(128|m>>>6&63),f(128|63&m)):(f(224|m>>>12),f(128|m>>>6&63),f(128|63&m))}return Rx(p,0,h)})(Yo(e)),{mtime:0}),i=new Blob([n],{type:m0});return{contentType:m0,body:i,estimatedSize:i.size}}if(t===Or.Base64){var s=(function(l){var c,u,p,h,f,v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",g=0,m=0,y="",x=[];if(!l)return l;l=CT(l);do c=(f=l.charCodeAt(g++)<<16|l.charCodeAt(g++)<<8|l.charCodeAt(g++))>>18&63,u=f>>12&63,p=f>>6&63,h=63&f,x[m++]=v.charAt(c)+v.charAt(u)+v.charAt(p)+v.charAt(h);while(g<l.length);switch(y=x.join(""),l.length%3){case 1:y=y.slice(0,-2)+"==";break;case 2:y=y.slice(0,-1)+"="}return y})(Yo(e)),o=(l=>"data="+encodeURIComponent(typeof l=="string"?l:Yo(l)))(s);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}var a=Yo(e);return{contentType:"application/json",body:a,estimatedSize:new Blob([a]).size}}},hc=[];Rh&&hc.push({transport:"fetch",method:r=>{var e,t,{contentType:n,body:i,estimatedSize:s}=(e=wh(r))!==null&&e!==void 0?e:{},o=new Headers;Ae(r.headers,(function(u,p){o.append(p,u)})),n&&o.append("Content-Type",n);var a=r.url,l=null;if(N_){var c=new N_;l={signal:c.signal,timeout:setTimeout((()=>c.abort()),r.timeout)}}Rh(a,W({method:r?.method||"GET",headers:o,keepalive:r.method==="POST"&&(s||0)<52428.8,body:i,signal:(t=l)==null?void 0:t.signal},r.fetchOptions)).then((u=>u.text().then((p=>{var h={statusCode:u.status,text:p};if(u.status===200)try{h.json=JSON.parse(p)}catch(f){U.error(f)}r.callback==null||r.callback(h)})))).catch((u=>{U.error(u),r.callback==null||r.callback({statusCode:0,text:u})})).finally((()=>l?clearTimeout(l.timeout):null))}}),Ih&&hc.push({transport:"XHR",method:r=>{var e,t=new Ih;t.open(r.method||"GET",r.url,!0);var{contentType:n,body:i}=(e=wh(r))!==null&&e!==void 0?e:{};Ae(r.headers,(function(s,o){t.setRequestHeader(o,s)})),n&&t.setRequestHeader("Content-Type",n),r.timeout&&(t.timeout=r.timeout),r.disableXHRCredentials||(t.withCredentials=!0),t.onreadystatechange=()=>{if(t.readyState===4){var s={statusCode:t.status,text:t.responseText};if(t.status===200)try{s.json=JSON.parse(t.responseText)}catch{}r.callback==null||r.callback(s)}},t.send(i)}}),wt!=null&&wt.sendBeacon&&hc.push({transport:"sendBeacon",method:r=>{var e=Ic(r.url,{beacon:"1"});try{var t,{contentType:n,body:i}=(t=wh(r))!==null&&t!==void 0?t:{},s=typeof i=="string"?new Blob([i],{type:n}):i;wt.sendBeacon(e,s)}catch{}}});var $c=function(r,e){if(!(function(t){try{new RegExp(t)}catch{return!1}return!0})(e))return!1;try{return new RegExp(e).test(r)}catch{return!1}};function v0(r,e,t){return Yo({distinct_id:r,userPropertiesToSet:e,userPropertiesToSetOnce:t})}var Ix={exact:(r,e)=>e.some((t=>r.some((n=>t===n)))),is_not:(r,e)=>e.every((t=>r.every((n=>t!==n)))),regex:(r,e)=>e.some((t=>r.some((n=>$c(t,n))))),not_regex:(r,e)=>e.every((t=>r.every((n=>!$c(t,n))))),icontains:(r,e)=>e.map(dc).some((t=>r.map(dc).some((n=>t.includes(n))))),not_icontains:(r,e)=>e.map(dc).every((t=>r.map(dc).every((n=>!t.includes(n))))),gt:(r,e)=>e.some((t=>{var n=parseFloat(t);return!isNaN(n)&&r.some((i=>n>parseFloat(i)))})),lt:(r,e)=>e.some((t=>{var n=parseFloat(t);return!isNaN(n)&&r.some((i=>n<parseFloat(i)))}))},dc=r=>r.toLowerCase();function $x(r,e){return!r||Object.entries(r).every((t=>{var[n,i]=t,s=e?.[n];if(B(s)||Wt(s))return!1;var o=[String(s)],a=Ix[i.operator];return!!a&&a(i.values,o)}))}var Sh=Oe("[Error tracking]"),_f=class{constructor(e){var t,n;this.Zt=[],this.ti=new Dh([new Bh,new Zh,new Uh,new Vh,new zh,new Wh,new jh,new qh],N2()),this._instance=e,this.Zt=(t=(n=this._instance.persistence)==null?void 0:n.get_property(Kh))!==null&&t!==void 0?t:[]}onRemoteConfig(e){var t,n,i,s=(t=(n=e.errorTracking)==null?void 0:n.suppressionRules)!==null&&t!==void 0?t:[],o=(i=e.errorTracking)==null?void 0:i.captureExtensionExceptions;this.Zt=s,this._instance.persistence&&this._instance.persistence.register({[Kh]:this.Zt,[K_]:o})}get ii(){var e,t=!!this._instance.get_property(K_),n=this._instance.config.error_tracking.captureExtensionExceptions;return(e=n??t)!==null&&e!==void 0&&e}buildProperties(e,t){return this.ti.buildFromUnknown(e,{syntheticException:t?.syntheticException,mechanism:{handled:t?.handled}})}sendExceptionEvent(e){var t=e.$exception_list;if(this.ei(t)){if(this.ri(t))return void Sh.info("Skipping exception capture because a suppression rule matched");if(!this.ii&&this.si(t))return void Sh.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ni(t))return void Sh.info("Skipping exception capture because it was thrown by the PostHog SDK")}return this._instance.capture("$exception",e,{_noTruncate:!0,_batchKey:"exceptionEvent"})}ri(e){if(e.length===0)return!1;var t=e.reduce(((n,i)=>{var{type:s,value:o}=i;return ze(s)&&s.length>0&&n.$exception_types.push(s),ze(o)&&o.length>0&&n.$exception_values.push(o),n}),{$exception_types:[],$exception_values:[]});return this.Zt.some((n=>{var i=n.values.map((s=>{var o,a=Ix[s.operator],l=xe(s.value)?s.value:[s.value],c=(o=t[s.key])!==null&&o!==void 0?o:[];return l.length>0&&a(l,c)}));return n.type==="OR"?i.some(Boolean):i.every(Boolean)}))}si(e){return e.flatMap((t=>{var n,i;return(n=(i=t.stacktrace)==null?void 0:i.frames)!==null&&n!==void 0?n:[]})).some((t=>t.filename&&t.filename.startsWith("chrome-extension://")))}ni(e){if(e.length>0){var t,n,i,s,o=(t=(n=e[0].stacktrace)==null?void 0:n.frames)!==null&&t!==void 0?t:[],a=o[o.length-1];return(i=a==null||(s=a.filename)==null?void 0:s.includes("posthog.com/static"))!==null&&i!==void 0&&i}return!1}ei(e){return!ge(e)&&xe(e)}},xt=Oe("[FeatureFlags]"),Vo=Oe("[FeatureFlags]",{debugEnabled:!0}),kh="$active_feature_flags",Di="$override_feature_flags",y0="$feature_flag_payloads",Uo="$override_feature_flag_payloads",b0="$feature_flag_request_id",_0="$feature_flag_evaluated_at",x0=r=>{var e={};for(var[t,n]of pc(r||{}))n&&(e[t]=n);return e},TT=r=>{var e=r.flags;return e?(r.featureFlags=Object.fromEntries(Object.keys(e).map((t=>{var n;return[t,(n=e[t].variant)!==null&&n!==void 0?n:e[t].enabled]}))),r.featureFlagPayloads=Object.fromEntries(Object.keys(e).filter((t=>e[t].enabled)).filter((t=>{var n;return(n=e[t].metadata)==null?void 0:n.payload})).map((t=>{var n;return[t,(n=e[t].metadata)==null?void 0:n.payload]})))):xt.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),r},RT=(function(r){return r.FeatureFlags="feature_flags",r.Recordings="recordings",r})({}),xf=class{constructor(e){this.oi=!1,this.ai=!1,this.li=!1,this.ui=!1,this.hi=!1,this.di=!1,this.vi=!1,this.ci=!1,this._instance=e,this.featureFlagEventHandlers=[]}fi(){var e,t=(e=this._instance.config.evaluation_contexts)!==null&&e!==void 0?e:this._instance.config.evaluation_environments;return!this._instance.config.evaluation_environments||this._instance.config.evaluation_contexts||this.ci||(xt.warn("evaluation_environments is deprecated. Use evaluation_contexts instead. evaluation_environments will be removed in a future version."),this.ci=!0),t!=null&&t.length?t.filter((n=>{var i=n&&typeof n=="string"&&n.trim().length>0;return i||xt.error("Invalid evaluation context found:",n,"Expected non-empty string"),i})):[]}pi(){return this.fi().length>0}flags(){if(this._instance.config.__preview_remote_config)this.di=!0;else{var e=!this.gi&&(this._instance.config.advanced_disable_feature_flags||this._instance.config.advanced_disable_feature_flags_on_first_load);this.mi({disableFlags:e})}}get hasLoadedFlags(){return this.ai}getFlags(){return Object.keys(this.getFlagVariants())}getFlagsWithDetails(){var e=this._instance.get_property(Yh),t=this._instance.get_property(Di),n=this._instance.get_property(Uo);if(!n&&!t)return e||{};var i=Fe({},e||{}),s=[...new Set([...Object.keys(n||{}),...Object.keys(t||{})])];for(var o of s){var a,l,c=i[o],u=t?.[o],p=B(u)?(a=c?.enabled)!==null&&a!==void 0&&a:!!u,h=B(u)?c.variant:typeof u=="string"?u:void 0,f=n?.[o],v=W({},c,{enabled:p,variant:p?h??c?.variant:void 0});p!==c?.enabled&&(v.original_enabled=c?.enabled),h!==c?.variant&&(v.original_variant=c?.variant),f&&(v.metadata=W({},c?.metadata,{payload:f,original_payload:c==null||(l=c.metadata)==null?void 0:l.payload})),i[o]=v}return this.oi||(xt.warn(" Overriding feature flag details!",{flagDetails:e,overriddenPayloads:n,finalDetails:i}),this.oi=!0),i}getFlagVariants(){var e=this._instance.get_property(Wi),t=this._instance.get_property(Di);if(!t)return e||{};for(var n=Fe({},e),i=Object.keys(t),s=0;s<i.length;s++)n[i[s]]=t[i[s]];return this.oi||(xt.warn(" Overriding feature flags!",{enabledFlags:e,overriddenFlags:t,finalFlags:n}),this.oi=!0),n}getFlagPayloads(){var e=this._instance.get_property(y0),t=this._instance.get_property(Uo);if(!t)return e||{};for(var n=Fe({},e||{}),i=Object.keys(t),s=0;s<i.length;s++)n[i[s]]=t[i[s]];return this.oi||(xt.warn(" Overriding feature flag payloads!",{flagPayloads:e,overriddenPayloads:t,finalPayloads:n}),this.oi=!0),n}reloadFeatureFlags(){this.ui||this._instance.config.advanced_disable_feature_flags||this.gi||(this.gi=setTimeout((()=>{this.mi()}),5))}bi(){clearTimeout(this.gi),this.gi=void 0}ensureFlagsLoaded(){this.ai||this.li||this.gi||this.reloadFeatureFlags()}setAnonymousDistinctId(e){this.$anon_distinct_id=e}setReloadingPaused(e){this.ui=e}mi(e){var t;if(this.bi(),!this._instance.M())if(this.li)this.hi=!0;else{var n=this._instance.config.token,i=this._instance.get_property("$device_id"),s={token:n,distinct_id:this._instance.get_distinct_id(),groups:this._instance.getGroups(),$anon_distinct_id:this.$anon_distinct_id,person_properties:W({},((t=this._instance.persistence)==null?void 0:t.get_initial_props())||{},this._instance.get_property(Ko)||{}),group_properties:this._instance.get_property(ti)};Wt(i)||B(i)||(s.$device_id=i),(e!=null&&e.disableFlags||this._instance.config.advanced_disable_feature_flags)&&(s.disable_flags=!0),this.pi()&&(s.evaluation_contexts=this.fi());var o=this._instance.config.__preview_remote_config,a=o?"/flags/?v=2":"/flags/?v=2&config=true",l=this._instance.config.advanced_only_evaluate_survey_feature_flags?"&only_evaluate_survey_feature_flags=true":"",c=this._instance.requestRouter.endpointFor("flags",a+l);o&&(s.timezone=Ex()),this.li=!0,this._instance._send_request({method:"POST",url:c,data:s,compression:this._instance.config.disable_compression?void 0:Or.Base64,timeout:this._instance.config.feature_flag_request_timeout_ms,callback:u=>{var p,h,f=!0;if(u.statusCode===200&&(this.hi||(this.$anon_distinct_id=void 0),f=!1),this.li=!1,this.di||(this.di=!0,this._instance.yi((h=u.json)!==null&&h!==void 0?h:{})),!s.disable_flags||this.hi)if(this.vi=!f,u.json&&(p=u.json.quotaLimited)!=null&&p.includes(RT.FeatureFlags))xt.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.");else{var v;s.disable_flags||this.receivedFeatureFlags((v=u.json)!==null&&v!==void 0?v:{},f),this.hi&&(this.hi=!1,this.mi())}}})}}getFeatureFlag(e,t){var n;if(t===void 0&&(t={}),this.ai||this.getFlags()&&this.getFlags().length>0){var i=this.getFeatureFlagResult(e,t);return(n=i?.variant)!==null&&n!==void 0?n:i?.enabled}xt.warn('getFeatureFlag for key "'+e+`" failed. Feature flags didn't load in time.`)}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={}),this.ai||this.getFlags()&&this.getFlags().length>0){var n=this.getFlagVariants(),i=e in n,s=n[e],o=this.getFlagPayloads()[e],a=String(s),l=this._instance.get_property(b0)||void 0,c=this._instance.get_property(_0)||void 0,u=this._instance.get_property(yc)||{};if((t.send_event||!("send_event"in t))&&(!(e in u)||!u[e].includes(a))){var p,h,f,v,g,m,y,x,S;xe(u[e])?u[e].push(a):u[e]=[a],(p=this._instance.persistence)==null||p.register({[yc]:u});var b=this.getFeatureFlagDetails(e),w={$feature_flag:e,$feature_flag_response:s,$feature_flag_payload:o||null,$feature_flag_request_id:l,$feature_flag_evaluated_at:c,$feature_flag_bootstrapped_response:((h=this._instance.config.bootstrap)==null||(h=h.featureFlags)==null?void 0:h[e])||null,$feature_flag_bootstrapped_payload:((f=this._instance.config.bootstrap)==null||(f=f.featureFlagPayloads)==null?void 0:f[e])||null,$used_bootstrap_value:!this.vi};B(b==null||(v=b.metadata)==null?void 0:v.version)||(w.$feature_flag_version=b.metadata.version);var A,_=(g=b==null||(m=b.reason)==null?void 0:m.description)!==null&&g!==void 0?g:b==null||(y=b.reason)==null?void 0:y.code;_&&(w.$feature_flag_reason=_),b!=null&&(x=b.metadata)!=null&&x.id&&(w.$feature_flag_id=b.metadata.id),B(b?.original_variant)&&B(b?.original_enabled)||(w.$feature_flag_original_response=B(b.original_variant)?b.original_enabled:b.original_variant),b!=null&&(S=b.metadata)!=null&&S.original_payload&&(w.$feature_flag_original_payload=b==null||(A=b.metadata)==null?void 0:A.original_payload),this._instance.capture("$feature_flag_called",w)}if(i){var C=o;if(!B(o))try{C=JSON.parse(o)}catch{}return{key:e,enabled:!!s,variant:typeof s=="string"?s:void 0,payload:C}}}else xt.warn('getFeatureFlagResult for key "'+e+`" failed. Feature flags didn't load in time.`)}getRemoteConfigPayload(e,t){var n=this._instance.config.token,i={distinct_id:this._instance.get_distinct_id(),token:n};this.pi()&&(i.evaluation_contexts=this.fi()),this._instance._send_request({method:"POST",url:this._instance.requestRouter.endpointFor("flags","/flags/?v=2&config=true"),data:i,compression:this._instance.config.disable_compression?void 0:Or.Base64,timeout:this._instance.config.feature_flag_request_timeout_ms,callback:s=>{var o,a=(o=s.json)==null?void 0:o.featureFlagPayloads;t(a?.[e]||void 0)}})}isFeatureEnabled(e,t){if(t===void 0&&(t={}),this.ai||this.getFlags()&&this.getFlags().length>0){var n=this.getFeatureFlag(e,t);return B(n)?void 0:!!n}xt.warn('isFeatureEnabled for key "'+e+`" failed. Feature flags didn't load in time.`)}addFeatureFlagsHandler(e){this.featureFlagEventHandlers.push(e)}removeFeatureFlagsHandler(e){this.featureFlagEventHandlers=this.featureFlagEventHandlers.filter((t=>t!==e))}receivedFeatureFlags(e,t){if(this._instance.persistence){this.ai=!0;var n=this.getFlagVariants(),i=this.getFlagPayloads(),s=this.getFlagsWithDetails();(function(o,a,l,c,u){l===void 0&&(l={}),c===void 0&&(c={}),u===void 0&&(u={});var p=TT(o),h=p.flags,f=p.featureFlags,v=p.featureFlagPayloads;if(f){var g=o.requestId,m=o.evaluatedAt;if(xe(f)){xt.warn("v1 of the feature flags endpoint is deprecated. Please use the latest version.");var y={};if(f)for(var x=0;x<f.length;x++)y[f[x]]=!0;a&&a.register({[kh]:f,[Wi]:y})}else{var S=f,b=v,w=h;if(o.errorsWhileComputingFlags)if(h){var A=new Set(Object.keys(h).filter((_=>{var C;return!((C=h[_])!=null&&C.failed)})));S=W({},l,Object.fromEntries(Object.entries(S).filter((_=>{var[C]=_;return A.has(C)})))),b=W({},c,Object.fromEntries(Object.entries(b||{}).filter((_=>{var[C]=_;return A.has(C)})))),w=W({},u,Object.fromEntries(Object.entries(w||{}).filter((_=>{var[C]=_;return A.has(C)}))))}else S=W({},l,S),b=W({},c,b),w=W({},u,w);a&&a.register(W({[kh]:Object.keys(x0(S)),[Wi]:S||{},[y0]:b||{},[Yh]:w||{}},g?{[b0]:g}:{},m?{[_0]:m}:{}))}}})(e,this._instance.persistence,n,i,s),this.wi(t)}}override(e,t){t===void 0&&(t=!1),xt.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:e,suppressWarning:t})}overrideFeatureFlags(e){if(!this._instance.__loaded||!this._instance.persistence)return xt.uninitializedWarning("posthog.featureFlags.overrideFeatureFlags");if(e===!1)return this._instance.persistence.unregister(Di),this._instance.persistence.unregister(Uo),this.wi(),Vo.info("All overrides cleared");if(e&&typeof e=="object"&&("flags"in e||"payloads"in e)){var t,n=e;if(this.oi=!!((t=n.suppressWarning)!==null&&t!==void 0&&t),"flags"in n){if(n.flags===!1)this._instance.persistence.unregister(Di),Vo.info("Flag overrides cleared");else if(n.flags){if(xe(n.flags)){for(var i={},s=0;s<n.flags.length;s++)i[n.flags[s]]=!0;this._instance.persistence.register({[Di]:i})}else this._instance.persistence.register({[Di]:n.flags});Vo.info("Flag overrides set",{flags:n.flags})}}return"payloads"in n&&(n.payloads===!1?(this._instance.persistence.unregister(Uo),Vo.info("Payload overrides cleared")):n.payloads&&(this._instance.persistence.register({[Uo]:n.payloads}),Vo.info("Payload overrides set",{payloads:n.payloads}))),void this.wi()}this.wi()}onFeatureFlags(e){if(this.addFeatureFlagsHandler(e),this.ai){var{flags:t,flagVariants:n}=this.xi();e(t,n)}return()=>this.removeFeatureFlagsHandler(e)}updateEarlyAccessFeatureEnrollment(e,t,n){var i,s=(this._instance.get_property(Go)||[]).find((c=>c.flagKey===e)),o={["$feature_enrollment/"+e]:t},a={$feature_flag:e,$feature_enrollment:t,$set:o};s&&(a.$early_access_feature_name=s.name),n&&(a.$feature_enrollment_stage=n),this._instance.capture("$feature_enrollment_update",a),this.setPersonPropertiesForFlags(o,!1);var l=W({},this.getFlagVariants(),{[e]:t});(i=this._instance.persistence)==null||i.register({[kh]:Object.keys(x0(l)),[Wi]:l}),this.wi()}getEarlyAccessFeatures(e,t,n){t===void 0&&(t=!1);var i=this._instance.get_property(Go),s=n?"&"+n.map((o=>"stage="+o)).join("&"):"";if(i&&!t)return e(i);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/early_access_features/?token="+this._instance.config.token+s),method:"GET",callback:o=>{var a,l;if(o.json){var c=o.json.earlyAccessFeatures;return(a=this._instance.persistence)==null||a.unregister(Go),(l=this._instance.persistence)==null||l.register({[Go]:c}),e(c)}}})}xi(){var e=this.getFlags(),t=this.getFlagVariants();return{flags:e.filter((n=>t[n])),flagVariants:Object.keys(t).filter((n=>t[n])).reduce(((n,i)=>(n[i]=t[i],n)),{})}}wi(e){var{flags:t,flagVariants:n}=this.xi();this.featureFlagEventHandlers.forEach((i=>i(t,n,{errorsLoading:e})))}setPersonPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this._instance.get_property(Ko)||{};this._instance.register({[Ko]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetPersonPropertiesForFlags(){this._instance.unregister(Ko)}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this._instance.get_property(ti)||{};Object.keys(n).length!==0&&Object.keys(n).forEach((i=>{n[i]=W({},n[i],e[i]),delete e[i]})),this._instance.register({[ti]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetGroupPropertiesForFlags(e){if(e){var t=this._instance.get_property(ti)||{};this._instance.register({[ti]:W({},t,{[e]:{}})})}else this._instance.unregister(ti)}reset(){this.ai=!1,this.li=!1,this.ui=!1,this.hi=!1,this.di=!1,this.vi=!1,this.$anon_distinct_id=void 0,this.bi(),this.oi=!1}},IT=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],ea=class{constructor(e,t){this.R=e,this.props={},this.Ei=!1,this.$i=(n=>{var i="";return n.token&&(i=n.token.replace(/\+/g,"PL").replace(/\//g,"SL").replace(/=/g,"EQ")),n.persistence_name?"ph_"+n.persistence_name:"ph_"+i+"_posthog"})(e),this.Y=this.Si(e),this.load(),e.debug&&U.info("Persistence loaded",e.persistence,W({},this.props)),this.update_config(e,e,t),this.save()}isDisabled(){return!!this.ki}Si(e){IT.indexOf(e.persistence.toLowerCase())===-1&&(U.critical("Unknown persistence type "+e.persistence+"; falling back to localStorage+cookie"),e.persistence="localStorage+cookie");var t=(function(i){i===void 0&&(i=[]);var s=[...aT,...i];return W({},Me,{W:function(o){try{var a={};try{a=ur.W(o)||{}}catch{}var l=Fe(a,JSON.parse(Me.q(o)||"{}"));return Me.G(o,l),l}catch{}return null},G:function(o,a,l,c,u,p){try{Me.G(o,a,void 0,void 0,p);var h={};s.forEach((f=>{a[f]&&(h[f]=a[f])})),Object.keys(h).length&&ur.G(o,h,l,c,u,p)}catch(f){Me.B(f)}},V:function(o,a){try{E?.localStorage.removeItem(o),ur.V(o,a)}catch(l){Me.B(l)}}})})(e.cookie_persisted_properties||[]),n=e.persistence.toLowerCase();return n==="localstorage"&&Me.H()?Me:n==="localstorage+cookie"&&t.H()?t:n==="sessionstorage"&&Qe.H()?Qe:n==="memory"?lT:n==="cookie"?ur:t.H()?t:ur}properties(){var e={};return Ae(this.props,(function(t,n){if(n===Wi&&We(t))for(var i=Object.keys(t),s=0;s<i.length;s++)e["$feature/"+i[s]]=t[i[s]];else a=n,l=!1,(Wt(o=W2)?l:L_&&o.indexOf===L_?o.indexOf(a)!=-1:(Ae(o,(function(c){if(l||(l=c===a))return mc})),l))||(e[n]=t);var o,a,l})),e}load(){if(!this.ki){var e=this.Y.W(this.$i);e&&(this.props=Fe({},e))}}save(){this.ki||this.Y.G(this.$i,this.props,this.Pi,this.Ti,this.Ii,this.R.debug)}remove(){this.Y.V(this.$i,!1),this.Y.V(this.$i,!0)}clear(){this.remove(),this.props={}}register_once(e,t,n){if(We(e)){B(t)&&(t="None"),this.Pi=B(n)?this.Ci:n;var i=!1;if(Ae(e,((s,o)=>{this.props.hasOwnProperty(o)&&this.props[o]!==t||(this.props[o]=s,i=!0)})),i)return this.save(),!0}return!1}register(e,t){if(We(e)){this.Pi=B(t)?this.Ci:t;var n=!1;if(Ae(e,((i,s)=>{e.hasOwnProperty(s)&&this.props[s]!==i&&(this.props[s]=i,n=!0)})),n)return this.save(),!0}return!1}unregister(e){e in this.props&&(delete this.props[e],this.save())}update_campaign_params(){if(!this.Ei){var e=bx(this.R.custom_campaign_params,this.R.mask_personal_data_properties,this.R.custom_personal_data_properties);ji(Zf(e))||this.register(e),this.Ei=!0}}update_search_keyword(){var e;this.register((e=H?.referrer)?xx(e):{})}update_referrer_info(){var e;this.register_once({$referrer:wx(),$referring_domain:H!=null&&H.referrer&&((e=Sc(H.referrer))==null?void 0:e.host)||"$direct"},void 0)}set_initial_person_info(){this.props[ef]||this.props[tf]||this.register_once({[bc]:Sx(this.R.mask_personal_data_properties,this.R.custom_personal_data_properties)},void 0)}get_initial_props(){var e={};Ae([tf,ef],(o=>{var a=this.props[o];a&&Ae(a,(function(l,c){e["$initial_"+$h(c)]=l}))}));var t,n,i=this.props[bc];if(i){var s=(t=kx(i),n={},Ae(t,(function(o,a){n["$initial_"+$h(a)]=o})),n);Fe(e,s)}return e}safe_merge(e){return Ae(this.props,(function(t,n){n in e||(e[n]=t)})),e}update_config(e,t,n){if(this.Ci=this.Pi=e.cookie_expiration,this.set_disabled(e.disable_persistence||!!n),this.set_cross_subdomain(e.cross_subdomain_cookie),this.set_secure(e.secure_cookie),e.persistence!==t.persistence||!((o,a)=>{if(o.length!==a.length)return!1;var l=[...o].sort(),c=[...a].sort();return l.every(((u,p)=>u===c[p]))})(e.cookie_persisted_properties||[],t.cookie_persisted_properties||[])){var i=this.Si(e),s=this.props;this.clear(),this.Y=i,this.props=s,this.save()}}set_disabled(e){this.ki=e,this.ki?this.remove():this.save()}set_cross_subdomain(e){e!==this.Ti&&(this.Ti=e,this.remove(),this.save())}set_secure(e){e!==this.Ii&&(this.Ii=e,this.remove(),this.save())}set_event_timer(e,t){var n=this.props[Zo]||{};n[e]=t,this.props[Zo]=n,this.save()}remove_event_timer(e){var t=(this.props[Zo]||{})[e];return B(t)||(delete this.props[Zo][e],this.save()),t}get_property(e){return this.props[e]}set_property(e,t){this.props[e]=t,this.save()}},w0=Oe("[Product Tours]"),Eh="ph_product_tours",wf=class{constructor(e){this.Ri=null,this.Fi=null,this._instance=e}onRemoteConfig(e){this._instance.persistence&&this._instance.persistence.register({[X_]:!(e==null||!e.productTours)}),this.loadIfEnabled()}loadIfEnabled(){var e,t;this.Ri||(e=this._instance).config.disable_product_tours||(t=e.persistence)==null||!t.get_property(X_)||this.it((()=>this.Oi()))}it(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.generateProductTours?e():(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"product-tours",(i=>{i?w0.error("Could not load product tours script",i):e()}))}Oi(){var e;!this.Ri&&(e=re.__PosthogExtensions__)!=null&&e.generateProductTours&&(this.Ri=re.__PosthogExtensions__.generateProductTours(this._instance,!0))}getProductTours(e,t){if(t===void 0&&(t=!1),!xe(this.Fi)||t){var n=this._instance.persistence;if(n){var i=n.props[Eh];if(xe(i)&&!t)return this.Fi=i,void e(i,{isLoaded:!0})}this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/product_tours/?token="+this._instance.config.token),method:"GET",callback:s=>{var o=s.statusCode;if(o!==200||!s.json){var a="Product Tours API could not be loaded, status: "+o;return w0.error(a),void e([],{isLoaded:!1,error:a})}var l=xe(s.json.product_tours)?s.json.product_tours:[];this.Fi=l,n&&n.register({[Eh]:l}),e(l,{isLoaded:!0})}})}else e(this.Fi,{isLoaded:!0})}getActiveProductTours(e){ge(this.Ri)?e([],{isLoaded:!1,error:"Product tours not loaded"}):this.Ri.getActiveProductTours(e)}showProductTour(e){var t;(t=this.Ri)==null||t.showTourById(e)}previewTour(e){this.Ri?this.Ri.previewTour(e):this.it((()=>{var t;this.Oi(),(t=this.Ri)==null||t.previewTour(e)}))}dismissProductTour(){var e;(e=this.Ri)==null||e.dismissTour("user_clicked_skip")}nextStep(){var e;(e=this.Ri)==null||e.nextStep()}previousStep(){var e;(e=this.Ri)==null||e.previousStep()}clearCache(){var e;this.Fi=null,(e=this._instance.persistence)==null||e.unregister(Eh)}resetTour(e){var t;(t=this.Ri)==null||t.resetTour(e)}resetAllTours(){var e;(e=this.Ri)==null||e.resetAllTours()}cancelPendingTour(e){var t;(t=this.Ri)==null||t.cancelPendingTour(e)}},jo=(function(r){return r.Activation="events",r.Cancellation="cancelEvents",r})({}),mF=(function(r){return r.Button="button",r.Tab="tab",r.Selector="selector",r})({}),vF=(function(r){return r.TopLeft="top_left",r.TopRight="top_right",r.TopCenter="top_center",r.MiddleLeft="middle_left",r.MiddleRight="middle_right",r.MiddleCenter="middle_center",r.Left="left",r.Center="center",r.Right="right",r.NextToTrigger="next_to_trigger",r})({}),yF=(function(r){return r.Top="top",r.Left="left",r.Right="right",r.Bottom="bottom",r})({}),Ch=(function(r){return r.Popover="popover",r.API="api",r.Widget="widget",r.ExternalSurvey="external_survey",r})({}),bF=(function(r){return r.Open="open",r.MultipleChoice="multiple_choice",r.SingleChoice="single_choice",r.Rating="rating",r.Link="link",r})({}),_F=(function(r){return r.NextQuestion="next_question",r.End="end",r.ResponseBased="response_based",r.SpecificQuestion="specific_question",r})({}),xF=(function(r){return r.Once="once",r.Recurring="recurring",r.Always="always",r})({}),Xo=(function(r){return r.SHOWN="survey shown",r.DISMISSED="survey dismissed",r.SENT="survey sent",r.ABANDONED="survey abandoned",r})({}),Ah=(function(r){return r.SURVEY_ID="$survey_id",r.SURVEY_NAME="$survey_name",r.SURVEY_RESPONSE="$survey_response",r.SURVEY_ITERATION="$survey_iteration",r.SURVEY_ITERATION_START_DATE="$survey_iteration_start_date",r.SURVEY_PARTIALLY_COMPLETED="$survey_partially_completed",r.SURVEY_SUBMISSION_ID="$survey_submission_id",r.SURVEY_QUESTIONS="$survey_questions",r.SURVEY_COMPLETED="$survey_completed",r.PRODUCT_TOUR_ID="$product_tour_id",r.SURVEY_LAST_SEEN_DATE="$survey_last_seen_date",r})({}),Sf=(function(r){return r.Popover="popover",r.Inline="inline",r})({}),Ce=Oe("[Surveys]"),Mx="seenSurvey_",$T=(r,e)=>{var t="$survey_"+e+"/"+r.id;return r.current_iteration&&r.current_iteration>0&&(t="$survey_"+e+"/"+r.id+"/"+r.current_iteration),t},S0=r=>((e,t)=>{var n=""+e+t.id;return t.current_iteration&&t.current_iteration>0&&(n=""+e+t.id+"_"+t.current_iteration),n})(Mx,r),MT=[Ch.Popover,Ch.Widget,Ch.API],PT={ignoreConditions:!1,ignoreDelay:!1,displayType:Sf.Popover},aa=class{constructor(){this.Mi={},this.Mi={}}on(e,t){return this.Mi[e]||(this.Mi[e]=[]),this.Mi[e].push(t),()=>{this.Mi[e]=this.Mi[e].filter((n=>n!==t))}}emit(e,t){for(var n of this.Mi[e]||[])n(t);for(var i of this.Mi["*"]||[])i(e,t)}};function Hi(r,e,t){if(ge(r))return!1;switch(t){case"exact":return r===e;case"contains":var n=e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&").replace(/_/g,".").replace(/%/g,".*");return new RegExp(n,"i").test(r);case"regex":try{return new RegExp(e).test(r)}catch{return!1}default:return!1}}var kf=class{constructor(e){this.Ai=new aa,this.ji=(t,n)=>this.Di(t,n)&&this.Li(t,n)&&this.Ni(t,n)&&this.Ui(t,n),this.Di=(t,n)=>n==null||!n.event||t?.event===n?.event,this._instance=e,this.zi=new Set,this.Hi=new Set}init(){var e;if(!B((e=this._instance)==null?void 0:e._addCaptureHook)){var t;(t=this._instance)==null||t._addCaptureHook(((n,i)=>{this.on(n,i)}))}}register(e){var t,n;if(!B((t=this._instance)==null?void 0:t._addCaptureHook)&&(e.forEach((o=>{var a,l;(a=this.Hi)==null||a.add(o),(l=o.steps)==null||l.forEach((c=>{var u;(u=this.zi)==null||u.add(c?.event||"")}))})),(n=this._instance)!=null&&n.autocapture)){var i,s=new Set;e.forEach((o=>{var a;(a=o.steps)==null||a.forEach((l=>{l!=null&&l.selector&&s.add(l?.selector)}))})),(i=this._instance)==null||i.autocapture.setElementSelectors(s)}}on(e,t){var n;t!=null&&e.length!=0&&(this.zi.has(e)||this.zi.has(t?.event))&&this.Hi&&((n=this.Hi)==null?void 0:n.size)>0&&this.Hi.forEach((i=>{this.Bi(t,i)&&this.Ai.emit("actionCaptured",i.name)}))}qi(e){this.onAction("actionCaptured",(t=>e(t)))}Bi(e,t){if(t?.steps==null)return!1;for(var n of t.steps)if(this.ji(e,n))return!0;return!1}onAction(e,t){return this.Ai.on(e,t)}Li(e,t){if(t!=null&&t.url){var n,i=e==null||(n=e.properties)==null?void 0:n.$current_url;if(!i||typeof i!="string"||!Hi(i,t.url,t.url_matching||"contains"))return!1}return!0}Ni(e,t){return!!this.Wi(e,t)&&!!this.Gi(e,t)&&!!this.Vi(e,t)}Wi(e,t){var n;if(t==null||!t.href)return!0;var i=this.Ji(e);if(i.length>0)return i.some((a=>Hi(a.href,t.href,t.href_matching||"exact")));var s,o=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||"";return!!o&&Hi((s=o.match(/(?::|")href="(.*?)"/))?s[1]:"",t.href,t.href_matching||"exact")}Gi(e,t){var n;if(t==null||!t.text)return!0;var i=this.Ji(e);if(i.length>0)return i.some((c=>Hi(c.text,t.text,t.text_matching||"exact")||Hi(c.$el_text,t.text,t.text_matching||"exact")));var s,o,a,l=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||"";return!!l&&(s=(function(c){for(var u,p=[],h=/(?::|")text="(.*?)"/g;!ge(u=h.exec(c));)p.includes(u[1])||p.push(u[1]);return p})(l),o=t.text,a=t.text_matching||"exact",s.some((c=>Hi(c,o,a))))}Vi(e,t){var n,i;if(t==null||!t.selector)return!0;var s=e==null||(n=e.properties)==null?void 0:n.$element_selectors;if(s!=null&&s.includes(t.selector))return!0;var o=(e==null||(i=e.properties)==null?void 0:i.$elements_chain)||"";if(t.selector_regex&&o)try{return new RegExp(t.selector_regex).test(o)}catch{return!1}return!1}Ji(e){var t;return(e==null||(t=e.properties)==null?void 0:t.$elements)==null?[]:e?.properties.$elements}Ui(e,t){return t==null||!t.properties||t.properties.length===0||$x(t.properties.reduce(((n,i)=>{var s=xe(i.value)?i.value.map(String):i.value!=null?[String(i.value)]:[];return n[i.key]={values:s,operator:i.operator||"exact"},n}),{}),e?.properties)}},Ef=class{constructor(e){this._instance=e,this.Ki=new Map,this.Yi=new Map,this.Xi=new Map}Qi(e,t){return!!e&&$x(e.propertyFilters,t?.properties)}Zi(e,t){var n=new Map;return e.forEach((i=>{var s;(s=i.conditions)==null||(s=s[t])==null||(s=s.values)==null||s.forEach((o=>{if(o!=null&&o.name){var a=n.get(o.name)||[];a.push(i.id),n.set(o.name,a)}}))})),n}te(e,t,n){var i=(n===jo.Activation?this.Ki:this.Yi).get(e),s=[];return this.ie((o=>{s=o.filter((a=>i?.includes(a.id)))})),s.filter((o=>{var a,l=(a=o.conditions)==null||(a=a[n])==null||(a=a.values)==null?void 0:a.find((c=>c.name===e));return this.Qi(l,t)}))}register(e){var t;B((t=this._instance)==null?void 0:t._addCaptureHook)||(this.ee(e),this.re(e))}re(e){var t=e.filter((n=>{var i,s;return((i=n.conditions)==null?void 0:i.actions)&&((s=n.conditions)==null||(s=s.actions)==null||(s=s.values)==null?void 0:s.length)>0}));t.length!==0&&(this.se==null&&(this.se=new kf(this._instance),this.se.init(),this.se.qi((n=>{this.onAction(n)}))),t.forEach((n=>{var i,s,o,a,l;n.conditions&&(i=n.conditions)!=null&&i.actions&&(s=n.conditions)!=null&&(s=s.actions)!=null&&s.values&&((o=n.conditions)==null||(o=o.actions)==null||(o=o.values)==null?void 0:o.length)>0&&((a=this.se)==null||a.register(n.conditions.actions.values),(l=n.conditions)==null||(l=l.actions)==null||(l=l.values)==null||l.forEach((c=>{if(c&&c.name){var u=this.Xi.get(c.name);u&&u.push(n.id),this.Xi.set(c.name,u||[n.id])}})))})))}ee(e){var t,n=e.filter((s=>{var o,a;return((o=s.conditions)==null?void 0:o.events)&&((a=s.conditions)==null||(a=a.events)==null||(a=a.values)==null?void 0:a.length)>0})),i=e.filter((s=>{var o,a;return((o=s.conditions)==null?void 0:o.cancelEvents)&&((a=s.conditions)==null||(a=a.cancelEvents)==null||(a=a.values)==null?void 0:a.length)>0}));(n.length!==0||i.length!==0)&&((t=this._instance)==null||t._addCaptureHook(((s,o)=>{this.onEvent(s,o)})),this.Ki=this.Zi(e,jo.Activation),this.Yi=this.Zi(e,jo.Cancellation))}onEvent(e,t){var n,i=this.ne(),s=this.oe(),o=this.ae(),a=((n=this._instance)==null||(n=n.persistence)==null?void 0:n.props[s])||[];if(o===e&&t&&a.length>0){var l,c;i.info("event matched, removing item from activated items",{event:e,eventPayload:t,existingActivatedItems:a});var u=(t==null||(l=t.properties)==null?void 0:l.$survey_id)||(t==null||(c=t.properties)==null?void 0:c.$product_tour_id);if(u){var p=a.indexOf(u);p>=0&&(a.splice(p,1),this.le(a))}}else{if(this.Yi.has(e)){var h=this.te(e,t,jo.Cancellation);h.length>0&&(i.info("cancel event matched, cancelling items",{event:e,itemsToCancel:h.map((v=>v.id))}),h.forEach((v=>{var g=a.indexOf(v.id);g>=0&&a.splice(g,1),this.ue(v.id)})),this.le(a))}if(this.Ki.has(e)){i.info("event name matched",{event:e,eventPayload:t,items:this.Ki.get(e)});var f=this.te(e,t,jo.Activation);this.le(a.concat(f.map((v=>v.id))||[]))}}}onAction(e){var t,n=this.oe(),i=((t=this._instance)==null||(t=t.persistence)==null?void 0:t.props[n])||[];this.Xi.has(e)&&this.le(i.concat(this.Xi.get(e)||[]))}le(e){var t,n=this.ne(),i=this.oe(),s=[...new Set(e)].filter((o=>!this.he(o)));n.info("updating activated items",{activatedItems:s}),(t=this._instance)==null||(t=t.persistence)==null||t.register({[i]:s})}getActivatedIds(){var e,t=this.oe(),n=(e=this._instance)==null||(e=e.persistence)==null?void 0:e.props[t];return n||[]}getEventToItemsMap(){return this.Ki}de(){return this.se}},Cf=class extends Ef{constructor(e){super(e)}oe(){return"$surveys_activated"}ae(){return Xo.SHOWN}ie(e){var t;(t=this._instance)==null||t.getSurveys(e)}ue(e){var t;(t=this._instance)==null||t.cancelPendingSurvey(e)}ne(){return Ce}he(){return!1}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}},Af=class{constructor(e){this.ve=void 0,this._surveyManager=null,this.ce=!1,this.fe=[],this.pe=null,this._instance=e,this._surveyEventReceiver=null}onRemoteConfig(e){if(!this._instance.config.disable_surveys){var t=e.surveys;if(ge(t))return Ce.warn("Flags not loaded yet. Not loading surveys.");var n=xe(t);this.ve=n?t.length>0:t,Ce.info("flags response received, isSurveysEnabled: "+this.ve),this.loadIfEnabled()}}reset(){localStorage.removeItem("lastSeenSurveyDate");for(var e=[],t=0;t<localStorage.length;t++){var n=localStorage.key(t);(n!=null&&n.startsWith(Mx)||n!=null&&n.startsWith("inProgressSurvey_"))&&e.push(n)}e.forEach((i=>localStorage.removeItem(i)))}loadIfEnabled(){if(!this._surveyManager)if(this.ce)Ce.info("Already initializing surveys, skipping...");else if(this._instance.config.disable_surveys)Ce.info("Disabled. Not loading surveys.");else if(this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())Ce.info("Not loading surveys in cookieless mode without consent.");else{var e=re?.__PosthogExtensions__;if(e){if(!B(this.ve)||this._instance.config.advanced_enable_surveys){var t=this.ve||this._instance.config.advanced_enable_surveys;this.ce=!0;try{var n=e.generateSurveys;if(n)return void this.ge(n,t);var i=e.loadExternalDependency;if(!i)return void this._e("PostHog loadExternalDependency extension not found.");i(this._instance,"surveys",(s=>{s||!e.generateSurveys?this._e("Could not load surveys script",s):this.ge(e.generateSurveys,t)}))}catch(s){throw this._e("Error initializing surveys",s),s}finally{this.ce=!1}}}else Ce.error("PostHog Extensions not found.")}}ge(e,t){this._surveyManager=e(this._instance,t),this._surveyEventReceiver=new Cf(this._instance),Ce.info("Surveys loaded successfully"),this.me({isLoaded:!0})}_e(e,t){Ce.error(e,t),this.me({isLoaded:!1,error:e})}onSurveysLoaded(e){return this.fe.push(e),this._surveyManager&&this.me({isLoaded:!0}),()=>{this.fe=this.fe.filter((t=>t!==e))}}getSurveys(e,t){if(t===void 0&&(t=!1),this._instance.config.disable_surveys)return Ce.info("Disabled. Not loading surveys."),e([]);var n,i=this._instance.get_property(Xh);if(i&&!t)return e(i,{isLoaded:!0});typeof Promise<"u"&&this.pe?this.pe.then((s=>{var{surveys:o,context:a}=s;return e(o,a)})):(typeof Promise<"u"&&(this.pe=new Promise((s=>{n=s}))),this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/surveys/?token="+this._instance.config.token),method:"GET",timeout:this._instance.config.surveys_request_timeout_ms,callback:s=>{var o;this.pe=null;var a=s.statusCode;if(a!==200||!s.json){var l="Surveys API could not be loaded, status: "+a;Ce.error(l);var c={isLoaded:!1,error:l};return e([],c),void(n==null||n({surveys:[],context:c}))}var u,p=s.json.surveys||[],h=p.filter((v=>(function(g){return!(!g.start_date||g.end_date)})(v)&&((function(g){var m;return!((m=g.conditions)==null||(m=m.events)==null||(m=m.values)==null||!m.length)})(v)||(function(g){var m;return!((m=g.conditions)==null||(m=m.actions)==null||(m=m.values)==null||!m.length)})(v))));h.length>0&&((u=this._surveyEventReceiver)==null||u.register(h)),(o=this._instance.persistence)==null||o.register({[Xh]:p});var f={isLoaded:!0};e(p,f),n?.({surveys:p,context:f})}}))}me(e){for(var t of this.fe)try{if(!e.isLoaded)return t([],e);this.getSurveys(t)}catch(n){Ce.error("Error in survey callback",n)}}getActiveMatchingSurveys(e,t){if(t===void 0&&(t=!1),!ge(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(e,t);Ce.warn("init was not called")}be(e){var t=null;return this.getSurveys((n=>{var i;t=(i=n.find((s=>s.id===e)))!==null&&i!==void 0?i:null})),t}ye(e){if(ge(this._surveyManager))return{eligible:!1,reason:"SDK is not enabled or survey functionality is not yet loaded"};var t=typeof e=="string"?this.be(e):e;return t?this._surveyManager.checkSurveyEligibility(t):{eligible:!1,reason:"Survey not found"}}canRenderSurvey(e){if(ge(this._surveyManager))return Ce.warn("init was not called"),{visible:!1,disabledReason:"SDK is not enabled or survey functionality is not yet loaded"};var t=this.ye(e);return{visible:t.eligible,disabledReason:t.reason}}canRenderSurveyAsync(e,t){return ge(this._surveyManager)?(Ce.warn("init was not called"),Promise.resolve({visible:!1,disabledReason:"SDK is not enabled or survey functionality is not yet loaded"})):new Promise((n=>{this.getSurveys((i=>{var s,o=(s=i.find((l=>l.id===e)))!==null&&s!==void 0?s:null;if(o){var a=this.ye(o);n({visible:a.eligible,disabledReason:a.reason})}else n({visible:!1,disabledReason:"Survey not found"})}),t)}))}renderSurvey(e,t,n){var i;if(ge(this._surveyManager))Ce.warn("init was not called");else{var s=typeof e=="string"?this.be(e):e;if(s!=null&&s.id)if(MT.includes(s.type)){var o=H?.querySelector(t);if(o)return(i=s.appearance)!=null&&i.surveyPopupDelaySeconds?(Ce.info("Rendering survey "+s.id+" with delay of "+s.appearance.surveyPopupDelaySeconds+" seconds"),void setTimeout((()=>{var a,l;Ce.info("Rendering survey "+s.id+" with delay of "+((a=s.appearance)==null?void 0:a.surveyPopupDelaySeconds)+" seconds"),(l=this._surveyManager)==null||l.renderSurvey(s,o,n),Ce.info("Survey "+s.id+" rendered")}),1e3*s.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(s,o,n);Ce.warn("Survey element not found")}else Ce.warn("Surveys of type "+s.type+" cannot be rendered in the app");else Ce.warn("Survey not found")}}displaySurvey(e,t){var n;if(ge(this._surveyManager))Ce.warn("init was not called");else{var i=this.be(e);if(i){var s=i;if((n=i.appearance)!=null&&n.surveyPopupDelaySeconds&&t.ignoreDelay&&(s=W({},i,{appearance:W({},i.appearance,{surveyPopupDelaySeconds:0})})),t.displayType!==Sf.Popover&&t.initialResponses&&Ce.warn("initialResponses is only supported for popover surveys. prefill will not be applied."),t.ignoreConditions===!1){var o=this.canRenderSurvey(i);if(!o.visible)return void Ce.warn("Survey is not eligible to be displayed: ",o.disabledReason)}t.displayType!==Sf.Inline?this._surveyManager.handlePopoverSurvey(s,t):this.renderSurvey(s,t.selector,t.properties)}else Ce.warn("Survey not found")}}cancelPendingSurvey(e){ge(this._surveyManager)?Ce.warn("init was not called"):this._surveyManager.cancelSurvey(e)}handlePageUnload(){var e;(e=this._surveyManager)==null||e.handlePageUnload()}},Ir=Oe("[Conversations]"),Tf=class{constructor(e){this.we=void 0,this._conversationsManager=null,this.xe=!1,this.Ee=null,this._instance=e}onRemoteConfig(e){if(!this._instance.config.disable_conversations){var t=e.conversations;ge(t)||(Nr(t)?this.we=t:(this.we=t.enabled,this.Ee=t),this.loadIfEnabled())}}reset(){var e;(e=this._conversationsManager)==null||e.reset(),this._conversationsManager=null,this.we=void 0,this.Ee=null}loadIfEnabled(){if(!this._conversationsManager&&!this.xe&&!(this._instance.config.disable_conversations||this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())){var e=re?.__PosthogExtensions__;if(e&&!B(this.we)&&this.we)if(this.Ee&&this.Ee.token){this.xe=!0;try{var t=e.initConversations;if(t)return this.$e(t),void(this.xe=!1);var n=e.loadExternalDependency;if(!n)return void this.Se("PostHog loadExternalDependency extension not found.");n(this._instance,"conversations",(i=>{i||!e.initConversations?this.Se("Could not load conversations script",i):this.$e(e.initConversations),this.xe=!1}))}catch(i){this.Se("Error initializing conversations",i),this.xe=!1}}else Ir.error("Conversations enabled but missing token in remote config.")}}$e(e){if(this.Ee)try{this._conversationsManager=e(this.Ee,this._instance),Ir.info("Conversations loaded successfully")}catch(t){this.Se("Error completing conversations initialization",t)}else Ir.error("Cannot complete initialization: remote config is null")}Se(e,t){Ir.error(e,t),this._conversationsManager=null,this.xe=!1}show(){this._conversationsManager?this._conversationsManager.show():Ir.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return this.we===!0&&!Wt(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 i=this;return Ui((function*(){return i._conversationsManager?i._conversationsManager.sendMessage(e,t,n):(Ir.warn("Conversations not available yet."),null)}))()}getMessages(e,t){var n=this;return Ui((function*(){return n._conversationsManager?n._conversationsManager.getMessages(e,t):(Ir.warn("Conversations not available yet."),null)}))()}markAsRead(e){var t=this;return Ui((function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(Ir.warn("Conversations not available yet."),null)}))()}getTickets(e){var t=this;return Ui((function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(Ir.warn("Conversations not available yet."),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}},Rf=class{constructor(e){var t;this.ke=!1,this.Pe=!1,this._instance=e,this._instance&&(t=this._instance.config.logs)!=null&&t.captureConsoleLogs&&(this.ke=!0)}onRemoteConfig(e){var t,n=(t=e.logs)==null?void 0:t.captureConsoleLogs;!ge(n)&&n&&(this.ke=!0,this.loadIfEnabled())}reset(){}loadIfEnabled(){if(this.ke&&!this.Pe){var e=Oe("[logs]"),t=re?.__PosthogExtensions__;if(t){var n=t.loadExternalDependency;n?n(this._instance,"logs",(i=>{var s;i||(s=t.logs)==null||!s.initializeLogs?e.error("Could not load logs script",i):(t.logs.initializeLogs(this._instance),this.Pe=!0)})):e.error("PostHog loadExternalDependency extension not found.")}else e.error("PostHog Extensions not found.")}}},k0=Oe("[RateLimiter]"),If=class{constructor(e){this.serverLimits={},this.lastEventRateLimited=!1,this.checkForLimiting=t=>{var n=t.text;if(n&&n.length)try{(JSON.parse(n).quota_limited||[]).forEach((i=>{k0.info((i||"events")+" is quota limited."),this.serverLimits[i]=new Date().getTime()+6e4}))}catch(i){return void k0.warn('could not rate limit - continuing. Error: "'+i?.message+'"',{text:n})}},this.instance=e,this.lastEventRateLimited=this.clientRateLimitContext(!0).isRateLimited}get captureEventsPerSecond(){var e;return((e=this.instance.config.rate_limiting)==null?void 0:e.events_per_second)||10}get captureEventsBurstLimit(){var e;return Math.max(((e=this.instance.config.rate_limiting)==null?void 0:e.events_burst_limit)||10*this.captureEventsPerSecond,this.captureEventsPerSecond)}clientRateLimitContext(e){var t,n,i;e===void 0&&(e=!1);var{captureEventsBurstLimit:s,captureEventsPerSecond:o}=this,a=new Date().getTime(),l=(t=(n=this.instance.persistence)==null?void 0:n.get_property(Qh))!==null&&t!==void 0?t:{tokens:s,last:a};l.tokens+=(a-l.last)/1e3*o,l.last=a,l.tokens>s&&(l.tokens=s);var c=l.tokens<1;return c||e||(l.tokens=Math.max(0,l.tokens-1)),!c||this.lastEventRateLimited||e||this.instance.capture("$$client_ingestion_warning",{$$client_ingestion_warning_message:"posthog-js client rate limited. Config is set to "+o+" events per second and "+s+" events burst limit."},{skip_client_rate_limiting:!0}),this.lastEventRateLimited=c,(i=this.instance.persistence)==null||i.set_property(Qh,l),{isRateLimited:c,remainingTokens:l.tokens}}isServerRateLimited(e){var t=this.serverLimits[e||"events"]||!1;return t!==!1&&new Date().getTime()<t}},ei=Oe("[RemoteConfig]"),$f=class{constructor(e){this._instance=e}get remoteConfig(){var e;return(e=re._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.config}Te(e){var t,n;(t=re.__PosthogExtensions__)!=null&&t.loadExternalDependency?(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"remote-config",(()=>e(this.remoteConfig))):(ei.error("PostHog Extensions not found. Cannot load remote config."),e())}Ie(e){this._instance._send_request({method:"GET",url:this._instance.requestRouter.endpointFor("assets","/array/"+this._instance.config.token+"/config"),callback:t=>{e(t.json)}})}load(){try{if(this.remoteConfig)return ei.info("Using preloaded remote config",this.remoteConfig),void this.yi(this.remoteConfig);if(this._instance.M())return void ei.warn("Remote config is disabled. Falling back to local config.");this.Te((e=>{if(!e)return ei.info("No config found after loading remote JS config. Falling back to JSON."),void this.Ie((t=>{this.yi(t)}));this.yi(e)}))}catch(e){ei.error("Error loading remote config",e)}}yi(e){e?this._instance.config.__preview_remote_config?(this._instance.yi(e),e.hasFeatureFlags!==!1&&this._instance.featureFlags.ensureFlagsLoaded()):ei.info("__preview_remote_config is disabled. Logging config instead",e):ei.error("Failed to fetch remote config from PostHog.")}},Mf=3e3,Pf=class{constructor(e,t){this.Ce=!0,this.Re=[],this.Fe=dr(t?.flush_interval_ms||Mf,250,5e3,U.createLogger("flush interval"),Mf),this.Oe=e}enqueue(e){this.Re.push(e),this.Me||this.Ae()}unload(){this.je();var e=this.Re.length>0?this.De():{},t=Object.values(e);[...t.filter((n=>n.url.indexOf("/e")===0)),...t.filter((n=>n.url.indexOf("/e")!==0))].map((n=>{this.Oe(W({},n,{transport:"sendBeacon"}))}))}enable(){this.Ce=!1,this.Ae()}Ae(){var e=this;this.Ce||(this.Me=setTimeout((()=>{if(this.je(),this.Re.length>0){var t=this.De(),n=function(){var s=t[i],o=new Date().getTime();s.data&&xe(s.data)&&Ae(s.data,(a=>{a.offset=Math.abs(a.timestamp-o),delete a.timestamp})),e.Oe(s)};for(var i in t)n()}}),this.Fe))}je(){clearTimeout(this.Me),this.Me=void 0}De(){var e={};return Ae(this.Re,(t=>{var n,i=t,s=(i?i.batchKey:null)||i.url;B(e[s])&&(e[s]=W({},i,{data:[]})),(n=e[s].data)==null||n.push(i.data)})),this.Re=[],e}},OT=["retriesPerformedSoFar"],Of=class{constructor(e){this.Le=!1,this.Ne=3e3,this.Re=[],this._instance=e,this.Re=[],this.Ue=!0,!B(E)&&"onLine"in E.navigator&&(this.Ue=E.navigator.onLine,this.ze=()=>{this.Ue=!0,this.Lt()},this.He=()=>{this.Ue=!1},Ue(E,"online",this.ze),Ue(E,"offline",this.He))}get length(){return this.Re.length}retriableRequest(e){var{retriesPerformedSoFar:t}=e,n=I0(e,OT);Bi(t)&&(n.url=Ic(n.url,{retry_count:t})),this._instance._send_request(W({},n,{callback:i=>{i.statusCode!==200&&(i.statusCode<400||i.statusCode>=500)&&(t??0)<10?this.Be(W({retriesPerformedSoFar:t},n)):n.callback==null||n.callback(i)}}))}Be(e){var t=e.retriesPerformedSoFar||0;e.retriesPerformedSoFar=t+1;var n=(function(o){var a=3e3*Math.pow(2,o),l=a/2,c=Math.min(18e5,a),u=(Math.random()-.5)*(c-l);return Math.ceil(c+u)})(t),i=Date.now()+n;this.Re.push({retryAt:i,requestOptions:e});var s="Enqueued failed request for retry in "+n;navigator.onLine||(s+=" (Browser is offline)"),U.warn(s),this.Le||(this.Le=!0,this.qe())}qe(){if(this.We&&clearTimeout(this.We),this.Re.length===0)return this.Le=!1,void(this.We=void 0);this.We=setTimeout((()=>{this.Ue&&this.Re.length>0&&this.Lt(),this.qe()}),this.Ne)}Lt(){var e=Date.now(),t=[],n=this.Re.filter((s=>s.retryAt<e||(t.push(s),!1)));if(this.Re=t,n.length>0)for(var{requestOptions:i}of n)this.retriableRequest(i)}unload(){for(var{requestOptions:e}of(this.We&&(clearTimeout(this.We),this.We=void 0),this.Le=!1,B(E)||(this.ze&&(E.removeEventListener("online",this.ze),this.ze=void 0),this.He&&(E.removeEventListener("offline",this.He),this.He=void 0)),this.Re))try{this._instance._send_request(W({},e,{transport:"sendBeacon"}))}catch(t){U.error(t)}this.Re=[]}},Lf=class{constructor(e){this.Ge=()=>{var t,n,i,s;this.Ve||(this.Ve={});var o=this.scrollElement(),a=this.scrollY(),l=o?Math.max(0,o.scrollHeight-o.clientHeight):0,c=a+(o?.clientHeight||0),u=o?.scrollHeight||0;this.Ve.lastScrollY=Math.ceil(a),this.Ve.maxScrollY=Math.max(a,(t=this.Ve.maxScrollY)!==null&&t!==void 0?t:0),this.Ve.maxScrollHeight=Math.max(l,(n=this.Ve.maxScrollHeight)!==null&&n!==void 0?n:0),this.Ve.lastContentY=c,this.Ve.maxContentY=Math.max(c,(i=this.Ve.maxContentY)!==null&&i!==void 0?i:0),this.Ve.maxContentHeight=Math.max(u,(s=this.Ve.maxContentHeight)!==null&&s!==void 0?s:0)},this._instance=e}getContext(){return this.Ve}resetContext(){var e=this.Ve;return setTimeout(this.Ge,0),e}startMeasuringScrollPosition(){Ue(E,"scroll",this.Ge,{capture:!0}),Ue(E,"scrollend",this.Ge,{capture:!0}),Ue(E,"resize",this.Ge)}scrollElement(){if(!this._instance.config.scroll_root_selector)return E?.document.documentElement;var e=xe(this._instance.config.scroll_root_selector)?this._instance.config.scroll_root_selector:[this._instance.config.scroll_root_selector];for(var t of e){var n=E?.document.querySelector(t);if(n)return n}}scrollY(){if(this._instance.config.scroll_root_selector){var e=this.scrollElement();return e&&e.scrollTop||0}return E&&(E.scrollY||E.pageYOffset||E.document.documentElement.scrollTop)||0}scrollX(){if(this._instance.config.scroll_root_selector){var e=this.scrollElement();return e&&e.scrollLeft||0}return E&&(E.scrollX||E.pageXOffset||E.document.documentElement.scrollLeft)||0}},LT=r=>Sx(r?.config.mask_personal_data_properties,r?.config.custom_personal_data_properties),Mc=class{constructor(e,t,n,i){this.Je=s=>{var o=this.Ke();if(!o||o.sessionId!==s){var a={sessionId:s,props:this.Ye(this._instance)};this.Xe.register({[Jh]:a})}},this._instance=e,this.Qe=t,this.Xe=n,this.Ye=i||LT,this.Qe.onSessionId(this.Je)}Ke(){return this.Xe.props[Jh]}getSetOnceProps(){var e,t=(e=this.Ke())==null?void 0:e.props;return t?"r"in t?kx(t):{$referring_domain:t.referringDomain,$pathname:t.initialPathName,utm_source:t.utm_source,utm_campaign:t.utm_campaign,utm_medium:t.utm_medium,utm_content:t.utm_content,utm_term:t.utm_term}:{}}getSessionProps(){var e={};return Ae(Zf(this.getSetOnceProps()),((t,n)=>{n==="$current_url"&&(n="url"),e["$session_entry_"+$h(n)]=t})),e}},Th=Oe("[SessionId]"),Pc=class{on(e,t){return this.Ze.on(e,t)}constructor(e,t,n){var i;if(this.tr=[],this.ir=void 0,this.Ze=new aa,this.er=(u,p)=>!(!Bi(u)||!Bi(p))&&Math.abs(u-p)>this.sessionTimeoutMs,!e.persistence)throw new Error("SessionIdManager requires a PostHogPersistence instance");if(e.config.cookieless_mode==="always")throw new Error('SessionIdManager cannot be used with cookieless_mode="always"');this.R=e.config,this.Xe=e.persistence,this.rr=void 0,this.sr=void 0,this._sessionStartTimestamp=null,this._sessionActivityTimestamp=null,this.nr=t||ln,this.ar=n||ln;var s=this.R.persistence_name||this.R.token,o=this.R.session_idle_timeout_seconds||1800;if(this._sessionTimeoutMs=1e3*dr(o,60,36e3,Th.createLogger("session_idle_timeout_seconds"),1800),e.register({$configured_session_timeout_ms:this._sessionTimeoutMs}),this.lr(),this.ur="ph_"+s+"_window_id",this.hr="ph_"+s+"_primary_window_exists",this.dr()){var a=Qe.W(this.ur),l=Qe.W(this.hr);a&&!l?this.rr=a:Qe.V(this.ur),Qe.G(this.hr,!0)}if((i=this.R.bootstrap)!=null&&i.sessionID)try{var c=(u=>{var p=u.replace(/-/g,"");if(p.length!==32)throw new Error("Not a valid UUID");if(p[12]!=="7")throw new Error("Not a UUIDv7");return parseInt(p.substring(0,12),16)})(this.R.bootstrap.sessionID);this.vr(this.R.bootstrap.sessionID,new Date().getTime(),c)}catch(u){Th.error("Invalid sessionID in bootstrap",u)}this.cr()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(e){return B(this.tr)&&(this.tr=[]),this.tr.push(e),this.sr&&e(this.sr,this.rr),()=>{this.tr=this.tr.filter((t=>t!==e))}}dr(){return this.R.persistence!=="memory"&&!this.Xe.ki&&Qe.H()}pr(e){e!==this.rr&&(this.rr=e,this.dr()&&Qe.G(this.ur,e))}gr(){return this.rr?this.rr:this.dr()?Qe.W(this.ur):null}vr(e,t,n){e===this.sr&&t===this._sessionActivityTimestamp&&n===this._sessionStartTimestamp||(this._sessionStartTimestamp=n,this._sessionActivityTimestamp=t,this.sr=e,this.Xe.register({[vc]:[t,e,n]}))}_r(){var e=this.Xe.props[vc];return xe(e)&&e.length===2&&e.push(e[0]),e||[0,null,0]}resetSessionId(){this.vr(null,null,null)}destroy(){clearTimeout(this.mr),this.mr=void 0,this.ir&&E&&(E.removeEventListener("beforeunload",this.ir,{capture:!1}),this.ir=void 0),this.tr=[]}cr(){this.ir=()=>{this.dr()&&Qe.V(this.hr)},Ue(E,"beforeunload",this.ir,{capture:!1})}checkAndGetSessionAndWindowId(e,t){if(e===void 0&&(e=!1),t===void 0&&(t=null),this.R.cookieless_mode==="always")throw new Error('checkAndGetSessionAndWindowId should not be called with cookieless_mode="always"');var n=t||new Date().getTime(),[i,s,o]=this._r(),a=this.gr(),l=Bi(o)&&Math.abs(n-o)>864e5,c=!1,u=!s,p=!u&&!e&&this.er(n,i);u||p||l?(s=this.nr(),a=this.ar(),Th.info("new session ID generated",{sessionId:s,windowId:a,changeReason:{noSessionId:u,activityTimeout:p,sessionPastMaximumLength:l}}),o=n,c=!0):a||(a=this.ar(),c=!0);var h=Bi(i)&&e&&!l?i:n,f=Bi(o)?o:new Date().getTime();return this.pr(a),this.vr(s,h,f),e||this.lr(),c&&this.tr.forEach((v=>v(s,a,c?{noSessionId:u,activityTimeout:p,sessionPastMaximumLength:l}:void 0))),{sessionId:s,windowId:a,sessionStartTimestamp:f,changeReason:c?{noSessionId:u,activityTimeout:p,sessionPastMaximumLength:l}:void 0,lastActivityTimestamp:i}}lr(){clearTimeout(this.mr),this.mr=setTimeout((()=>{var[e]=this._r();if(this.er(new Date().getTime(),e)){var t=this.sr;this.resetSessionId(),this.Ze.emit("forcedIdleReset",{idleSessionId:t})}}),1.1*this.sessionTimeoutMs)}},NT=["$set_once","$set"],on=Oe("[SiteApps]"),Nf=class{constructor(e){this._instance=e,this.br=[],this.apps={}}get isEnabled(){return!!this._instance.config.opt_in_site_apps}yr(e,t){if(t){var n=this.globalsForEvent(t);this.br.push(n),this.br.length>1e3&&(this.br=this.br.slice(10))}}get siteAppLoaders(){var e;return(e=re._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.siteApps}init(){if(this.isEnabled){var e=this._instance._addCaptureHook(this.yr.bind(this));this.wr=()=>{e(),this.br=[],this.wr=void 0}}}globalsForEvent(e){var t,n,i,s,o,a,l;if(!e)throw new Error("Event payload is required");var c={},u=this._instance.get_property("$groups")||[],p=this._instance.get_property("$stored_group_properties")||{};for(var[h,f]of Object.entries(p))c[h]={id:u[h],type:h,properties:f};var{$set_once:v,$set:g}=e;return{event:W({},I0(e,NT),{properties:W({},e.properties,g?{$set:W({},(t=(n=e.properties)==null?void 0:n.$set)!==null&&t!==void 0?t:{},g)}:{},v?{$set_once:W({},(i=(s=e.properties)==null?void 0:s.$set_once)!==null&&i!==void 0?i:{},v)}:{}),elements_chain:(o=(a=e.properties)==null?void 0:a.$elements_chain)!==null&&o!==void 0?o:"",distinct_id:(l=e.properties)==null?void 0:l.distinct_id}),person:{properties:this._instance.get_property("$stored_person_properties")},groups:c}}setupSiteApp(e){var t=this.apps[e.id],n=()=>{var a;!t.errored&&this.br.length&&(on.info("Processing "+this.br.length+" events for site app with id "+e.id),this.br.forEach((l=>t.processEvent==null?void 0:t.processEvent(l))),t.processedBuffer=!0),Object.values(this.apps).every((l=>l.processedBuffer||l.errored))&&((a=this.wr)==null||a.call(this))},i=!1,s=a=>{t.errored=!a,t.loaded=!0,on.info("Site app with id "+e.id+" "+(a?"loaded":"errored")),i&&n()};try{var{processEvent:o}=e.init({posthog:this._instance,callback:a=>{s(a)}});o&&(t.processEvent=o),i=!0}catch(a){on.error("Error while initializing PostHog app with config id "+e.id,a),s(!1)}if(i&&t.loaded)try{n()}catch(a){on.error("Error while processing buffered events PostHog app with config id "+e.id,a),t.errored=!0}}Er(){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)}$r(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(i){on.error("Error while processing event "+e.event+" for site app "+n.id,i)}}}onRemoteConfig(e){var t,n,i,s=this;if((t=this.siteAppLoaders)!=null&&t.length)return this.isEnabled?(this.Er(),void this._instance.on("eventCaptured",(c=>this.$r(c)))):void on.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.');if((n=this.wr)==null||n.call(this),(i=e.siteApps)!=null&&i.length)if(this.isEnabled){var o=function(c){var u;re["__$$ph_site_app_"+c]=s._instance,(u=re.__PosthogExtensions__)==null||u.loadSiteApp==null||u.loadSiteApp(s._instance,l,(p=>{if(p)return on.error("Error while initializing PostHog app with config id "+c,p)}))};for(var{id:a,url:l}of e.siteApps)o(a)}else on.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}},Px=function(r,e){if(!r)return!1;var t=r.userAgent;if(t&&D_(t,e))return!0;try{var n=r?.userAgentData;if(n!=null&&n.brands&&n.brands.some((i=>D_(i?.brand,e))))return!0}catch{}return!!r.webdriver},Jo=(function(r){return r.US="us",r.EU="eu",r.CUSTOM="custom",r})({}),E0="i.posthog.com",Ff=class{constructor(e){this.Sr={},this.instance=e}get apiHost(){var e=this.instance.config.api_host.trim().replace(/\/$/,"");return e==="https://app.posthog.com"?"https://us.i.posthog.com":e}get flagsApiHost(){var e=this.instance.config.flags_api_host;return e?e.trim().replace(/\/$/,""):this.apiHost}get uiHost(){var e,t=(e=this.instance.config.ui_host)==null?void 0:e.replace(/\/$/,"");return t||(t=this.apiHost.replace("."+E0,".posthog.com")),t==="https://app.posthog.com"?"https://us.posthog.com":t}get region(){return this.Sr[this.apiHost]||(/https:\/\/(app|us|us-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?this.Sr[this.apiHost]=Jo.US:/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?this.Sr[this.apiHost]=Jo.EU:this.Sr[this.apiHost]=Jo.CUSTOM),this.Sr[this.apiHost]}endpointFor(e,t){if(t===void 0&&(t=""),t&&(t=t[0]==="/"?t:"/"+t),e==="ui")return this.uiHost+t;if(e==="flags")return this.flagsApiHost+t;if(this.region===Jo.CUSTOM)return this.apiHost+t;var n=E0+t;switch(e){case"assets":return"https://"+this.region+"-assets."+n;case"api":return"https://"+this.region+"."+n}}},FT={icontains:(r,e)=>!!E&&e.href.toLowerCase().indexOf(r.toLowerCase())>-1,not_icontains:(r,e)=>!!E&&e.href.toLowerCase().indexOf(r.toLowerCase())===-1,regex:(r,e)=>!!E&&$c(e.href,r),not_regex:(r,e)=>!!E&&!$c(e.href,r),exact:(r,e)=>e.href===r,is_not:(r,e)=>e.href!==r},Df=class r{constructor(e){var t=this;this.getWebExperimentsAndEvaluateDisplayLogic=function(n){n===void 0&&(n=!1),t.getWebExperiments((i=>{r.kr("retrieved web experiments from the server"),t.Pr=new Map,i.forEach((s=>{if(s.feature_flag_key){var o;t.Pr&&(r.kr("setting flag key ",s.feature_flag_key," to web experiment ",s),(o=t.Pr)==null||o.set(s.feature_flag_key,s));var a=t._instance.getFeatureFlag(s.feature_flag_key);ze(a)&&s.variants[a]&&t.Tr(s.name,a,s.variants[a].transforms)}else if(s.variants)for(var l in s.variants){var c=s.variants[l];r.Ir(c)&&t.Tr(s.name,l,c.transforms)}}))}),n)},this._instance=e,this._instance.onFeatureFlags((n=>{this.onFeatureFlags(n)}))}onFeatureFlags(e){if(this._is_bot())r.kr("Refusing to render web experiment since the viewer is a likely bot");else if(!this._instance.config.disable_web_experiments){if(ge(this.Pr))return this.Pr=new Map,this.loadIfEnabled(),void this.previewWebExperiment();r.kr("applying feature flags",e),e.forEach((t=>{var n;if(this.Pr&&(n=this.Pr)!=null&&n.has(t)){var i,s=this._instance.getFeatureFlag(t),o=(i=this.Pr)==null?void 0:i.get(t);s&&o!=null&&o.variants[s]&&this.Tr(o.name,s,o.variants[s].transforms)}}))}}previewWebExperiment(){var e=r.getWindowLocation();if(e!=null&&e.search){var t=kc(e?.search,"__experiment_id"),n=kc(e?.search,"__experiment_variant");t&&n&&(r.kr("previewing web experiments "+t+" && "+n),this.getWebExperiments((i=>{this.Cr(parseInt(t),n,i)}),!1,!0))}}loadIfEnabled(){this._instance.config.disable_web_experiments||this.getWebExperimentsAndEvaluateDisplayLogic()}getWebExperiments(e,t,n){if(this._instance.config.disable_web_experiments&&!n)return e([]);var i=this._instance.get_property("$web_experiments");if(i&&!t)return e(i);this._instance._send_request({url:this._instance.requestRouter.endpointFor("api","/api/web_experiments/?token="+this._instance.config.token),method:"GET",callback:s=>{if(s.statusCode!==200||!s.json)return e([]);var o=s.json.experiments||[];return e(o)}})}Cr(e,t,n){var i=n.filter((s=>s.id===e));i&&i.length>0&&(r.kr("Previewing web experiment ["+i[0].name+"] with variant ["+t+"]"),this.Tr(i[0].name,t,i[0].variants[t].transforms))}static Ir(e){return!ge(e.conditions)&&r.Rr(e)&&r.Fr(e)}static Rr(e){var t;if(ge(e.conditions)||ge((t=e.conditions)==null?void 0:t.url))return!0;var n,i,s,o=r.getWindowLocation();return!!o&&((n=e.conditions)==null||!n.url||FT[(i=(s=e.conditions)==null?void 0:s.urlMatchType)!==null&&i!==void 0?i:"icontains"](e.conditions.url,o))}static getWindowLocation(){return E?.location}static Fr(e){var t;if(ge(e.conditions)||ge((t=e.conditions)==null?void 0:t.utm))return!0;var n=bx();if(n.utm_source){var i,s,o,a,l,c,u,p,h=(i=e.conditions)==null||(i=i.utm)==null||!i.utm_campaign||((s=e.conditions)==null||(s=s.utm)==null?void 0:s.utm_campaign)==n.utm_campaign,f=(o=e.conditions)==null||(o=o.utm)==null||!o.utm_source||((a=e.conditions)==null||(a=a.utm)==null?void 0:a.utm_source)==n.utm_source,v=(l=e.conditions)==null||(l=l.utm)==null||!l.utm_medium||((c=e.conditions)==null||(c=c.utm)==null?void 0:c.utm_medium)==n.utm_medium,g=(u=e.conditions)==null||(u=u.utm)==null||!u.utm_term||((p=e.conditions)==null||(p=p.utm)==null?void 0:p.utm_term)==n.utm_term;return h&&v&&g&&f}return!1}static kr(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];U.info("[WebExperiments] "+e,n)}Tr(e,t,n){this._is_bot()?r.kr("Refusing to render web experiment since the viewer is a likely bot"):t!=="control"?n.forEach((i=>{if(i.selector){var s;r.kr("applying transform of variant "+t+" for experiment "+e+" ",i);var o=(s=document)==null?void 0:s.querySelectorAll(i.selector);o?.forEach((a=>{var l=a;i.html&&(l.innerHTML=i.html),i.css&&l.setAttribute("style",i.css)}))}})):r.kr("Control variants leave the page unmodified.")}_is_bot(){return wt&&this._instance?Px(wt,this._instance.config.custom_blocked_useragents):void 0}},DT=Oe("[PostHog ExternalIntegrations]"),HT={intercom:"intercom-integration",crispChat:"crisp-chat-integration"},Hf=class{constructor(e){this._instance=e}it(e,t){var n;(n=re.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,e,(i=>{if(i)return DT.error("failed to load script",i);t()}))}startIfEnabledOrStop(){var e=this,t=function(o){var a,l,c;!i||(a=re.__PosthogExtensions__)!=null&&(a=a.integrations)!=null&&a[o]||e.it(HT[o],(()=>{var u;(u=re.__PosthogExtensions__)==null||(u=u.integrations)==null||(u=u[o])==null||u.start(e._instance)})),!i&&(l=re.__PosthogExtensions__)!=null&&(l=l.integrations)!=null&&l[o]&&((c=re.__PosthogExtensions__)==null||(c=c.integrations)==null||(c=c[o])==null||c.stop())};for(var[n,i]of Object.entries((s=this._instance.config.integrations)!==null&&s!==void 0?s:{})){var s;t(n)}}},Bf="[SessionRecording]",Wo=Oe(Bf),Oc=class{get started(){var e;return!((e=this.Or)==null||!e.isStarted)}get status(){return this.Or?this.Or.status:this.Mr&&!this.Ar?"disabled":"lazy_loading"}constructor(e){if(this._forceAllowLocalhostNetworkCapture=!1,this.Mr=!1,this.jr=void 0,this._instance=e,!this._instance.sessionManager)throw Wo.error("started without valid sessionManager"),new Error(Bf+" started without valid sessionManager. This is a bug.");if(this._instance.config.cookieless_mode==="always")throw new Error(Bf+' cannot be used with cookieless_mode="always"')}get Ar(){var e,t=!((e=this._instance.get_property(gh))==null||!e.enabled),n=!this._instance.config.disable_session_recording,i=this._instance.config.disable_session_recording||this._instance.consent.isOptedOut();return E&&t&&n&&!i}startIfEnabledOrStop(e){var t;if(!this.Ar||(t=this.Or)==null||!t.isStarted){var n=!B(Object.assign)&&!B(Array.from);this.Ar&&n?(this.Dr(e),Wo.info("starting")):this.stopRecording()}}Dr(e){var t,n,i;this.Ar&&(re!=null&&(t=re.__PosthogExtensions__)!=null&&(t=t.rrweb)!=null&&t.record&&(n=re.__PosthogExtensions__)!=null&&n.initSessionRecording?this.Lr(e):(i=re.__PosthogExtensions__)==null||i.loadExternalDependency==null||i.loadExternalDependency(this._instance,this.Nr,(s=>{if(s)return Wo.error("could not load recorder",s);this.Lr(e)})))}stopRecording(){var e,t;(e=this.jr)==null||e.call(this),this.jr=void 0,(t=this.Or)==null||t.stop()}Ur(){var e;(e=this._instance.persistence)==null||e.unregister(rx)}zr(e){if(this._instance.persistence){var t,n,i=this._instance.persistence,s=()=>{var o=e.sessionRecording===!1?void 0:e.sessionRecording,a=o?.sampleRate,l=ge(a)?null:parseFloat(a);ge(l)&&this.Ur();var c=o?.minimumDurationMilliseconds;i.register({[gh]:W({enabled:!!o},o,{networkPayloadCapture:W({capturePerformance:e.capturePerformance},o?.networkPayloadCapture),canvasRecording:{enabled:o?.recordCanvas,fps:o?.canvasFps,quality:o?.canvasQuality},sampleRate:l,minimumDurationMilliseconds:B(c)?null:c,endpoint:o?.endpoint,triggerMatchType:o?.triggerMatchType,masking:o?.masking,urlTriggers:o?.urlTriggers})})};s(),(t=this.jr)==null||t.call(this),this.jr=(n=this._instance.sessionManager)==null?void 0:n.onSessionId(s)}}onRemoteConfig(e){"sessionRecording"in e?e.sessionRecording!==!1?(this.zr(e),this.Mr=!0,this.startIfEnabledOrStop()):this.Mr=!0:Wo.info("skipping remote config with no sessionRecording",e)}log(e,t){var n;t===void 0&&(t="log"),(n=this.Or)!=null&&n.log?this.Or.log(e,t):Wo.warn("log called before recorder was ready")}get Nr(){var e,t,n=(e=this._instance)==null||(e=e.persistence)==null?void 0:e.get_property(gh);return(n==null||(t=n.scriptConfig)==null?void 0:t.script)||"lazy-recorder"}Lr(e){var t,n;if((t=re.__PosthogExtensions__)==null||!t.initSessionRecording)throw Error("Called on script loaded before session recording is available");this.Or||(this.Or=(n=re.__PosthogExtensions__)==null?void 0:n.initSessionRecording(this._instance),this.Or._forceAllowLocalhostNetworkCapture=this._forceAllowLocalhostNetworkCapture),this.Or.start(e)}onRRwebEmit(e){var t;(t=this.Or)==null||t.onRRwebEmit==null||t.onRRwebEmit(e)}overrideLinkedFlag(){var e,t;this.Or||(t=this._instance.persistence)==null||t.register({$replay_override_linked_flag:!0}),(e=this.Or)==null||e.overrideLinkedFlag()}overrideSampling(){var e,t;this.Or||(t=this._instance.persistence)==null||t.register({$replay_override_sampling:!0}),(e=this.Or)==null||e.overrideSampling()}overrideTrigger(e){var t,n;this.Or||(n=this._instance.persistence)==null||n.register({[e==="url"?"$replay_override_url_trigger":"$replay_override_event_trigger"]:!0}),(t=this.Or)==null||t.overrideTrigger(e)}get sdkDebugProperties(){var e;return((e=this.Or)==null?void 0:e.sdkDebugProperties)||{$recording_status:this.status}}tryAddCustomEvent(e,t){var n;return!((n=this.Or)==null||!n.tryAddCustomEvent(e,t))}},ta={},Vf=()=>{},Vi="posthog",Ox=!AT&&yt?.indexOf("MSIE")===-1&&yt?.indexOf("Mozilla")===-1,C0=r=>{var e;return W({api_host:"https://us.i.posthog.com",flags_api_host:null,ui_host:null,token:"",autocapture:!0,cross_subdomain_cookie:j2(H?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:Vf,save_campaign_params:!0,custom_campaign_params:[],custom_blocked_useragents:[],save_referrer:!0,capture_pageleave:"if_capture_pageview",defaults:r??"unset",__preview_deferred_init_extensions:!1,debug:et&&ze(et?.search)&&et.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:!0,disable_external_dependency_loading:!1,enable_recording_console_log:void 0,secure_cookie:(E==null||(e=E.location)==null?void 0:e.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_enable_surveys:!1,advanced_disable_toolbar_metrics:!1,feature_flag_request_timeout_ms:3e3,surveys_request_timeout_ms:1e4,on_request_error:t=>{var n="Bad HTTP status: "+t.statusCode+" "+t.text;U.error(n)},get_device_id:t=>t,capture_performance:void 0,name:"posthog",bootstrap:{},disable_compression:!1,session_idle_timeout_seconds:1800,person_profiles:"identified_only",before_send:void 0,request_queue_config:{flush_interval_ms:Mf},error_tracking:{},_onCapture:Vf,__preview_eager_load_replay:!1},(t=>({rageclick:!(t&&t>="2025-11-30")||{content_ignorelist:!0},capture_pageview:!(t&&t>="2025-05-24")||"history_change",session_recording:t&&t>="2025-11-30"?{strictMinimumDuration:!0}:{},external_scripts_inject_target:t&&t>="2026-01-30"?"head":"body",internal_or_test_user_hostname:t&&t>="2026-01-30"?/^(localhost|127\.0\.0\.1)$/:void 0}))(r))},A0=r=>{var e={};B(r.process_person)||(e.person_profiles=r.process_person),B(r.xhr_headers)||(e.request_headers=r.xhr_headers),B(r.cookie_name)||(e.persistence_name=r.cookie_name),B(r.disable_cookie)||(e.disable_persistence=r.disable_cookie),B(r.store_google)||(e.save_campaign_params=r.store_google),B(r.verbose)||(e.debug=r.verbose);var t=Fe({},e,r);return xe(r.property_blacklist)&&(B(r.property_denylist)?t.property_denylist=r.property_blacklist:xe(r.property_denylist)?t.property_denylist=[...r.property_blacklist,...r.property_denylist]:U.error("Invalid value for property_denylist config: "+r.property_denylist)),t},Uf=class{constructor(){this.__forceAllowLocalhost=!1}get Hr(){return this.__forceAllowLocalhost}set Hr(e){U.error("WebPerformanceObserver is deprecated and has no impact on network capture. Use `_forceAllowLocalhostNetworkCapture` on `posthog.sessionRecording`"),this.__forceAllowLocalhost=e}},Lc=class r{get decideEndpointWasHit(){var e,t;return(e=(t=this.featureFlags)==null?void 0:t.hasLoadedFlags)!==null&&e!==void 0&&e}get flagsEndpointWasHit(){var e,t;return(e=(t=this.featureFlags)==null?void 0:t.hasLoadedFlags)!==null&&e!==void 0&&e}constructor(){this.webPerformance=new Uf,this.Br=!1,this.version=$r.LIB_VERSION,this.qr=new aa,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=C0(),this.SentryIntegration=df,this.sentryIntegration=e=>(function(t,n){var i=yx(t,n);return{name:vx,processEvent:s=>i(s)}})(this,e),this.__request_queue=[],this.__loaded=!1,this.analyticsDefaultEndpoint="/e/",this.Wr=!1,this.Gr=null,this.Vr=null,this.Jr=null,this.featureFlags=new xf(this),this.toolbar=new pf(this),this.scrollManager=new Lf(this),this.pageViewManager=new Ac(this),this.surveys=new Af(this),this.conversations=new Tf(this),this.logs=new Rf(this),this.experiments=new Df(this),this.exceptions=new _f(this),this.rateLimiter=new If(this),this.requestRouter=new Ff(this),this.consent=new lf(this),this.externalIntegrations=new Hf(this),this.people={set:(e,t,n)=>{var i=ze(e)?{[e]:t}:e;this.setPersonProperties(i),n?.({})},set_once:(e,t,n)=>{var i=ze(e)?{[e]:t}:e;this.setPersonProperties(void 0,i),n?.({})}},this.on("eventCaptured",(e=>U.info('send "'+e?.event+'"',e)))}init(e,t,n){if(n&&n!==Vi){var i,s=(i=ta[n])!==null&&i!==void 0?i:new r;return s._init(e,t,n),ta[n]=s,ta[Vi][n]=s,s}return this._init(e,t,n)}_init(e,t,n){var i;if(t===void 0&&(t={}),B(e)||Mh(e))return U.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={},t.debug=this.Kr(t.debug),this.Yr=t,this.Xr=[],t.person_profiles&&(this.Vr=t.person_profiles),this.set_config(Fe({},C0(t.defaults),A0(t),{name:n,token:e})),this.config.on_xhr_error&&U.error("on_xhr_error is deprecated. Use on_request_error instead"),this.compression=t.disable_compression?void 0:Or.GZipJS;var s=this.Qr();this.persistence=new ea(this.config,s),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new ea(W({},this.config,{persistence:"sessionStorage"}),s);var o=W({},this.persistence.props),a=W({},this.sessionPersistence.props);this.register({$initialization_time:new Date().toISOString()}),this.Zr=new Pf((x=>this.ts(x)),this.config.request_queue_config),this.es=new Of(this),this.__request_queue=[];var l=this.config.cookieless_mode==="always"||this.config.cookieless_mode==="on_reject"&&this.consent.isExplicitlyOptedOut();if(l||(this.sessionManager=new Pc(this),this.sessionPropsManager=new Mc(this,this.sessionManager,this.persistence)),this.config.__preview_deferred_init_extensions?(U.info("Deferring extension initialization to improve startup performance"),setTimeout((()=>{this.rs(l)}),0)):(U.info("Initializing extensions synchronously"),this.rs(l)),$r.DEBUG=$r.DEBUG||this.config.debug,$r.DEBUG&&U.info("Starting in debug mode",{this:this,config:t,thisC:W({},this.config),p:o,s:a}),((i=t.bootstrap)==null?void 0:i.distinctID)!==void 0){var c,u,p=this.config.get_device_id(ln()),h=(c=t.bootstrap)!=null&&c.isIdentifiedID?p:t.bootstrap.distinctID;this.persistence.set_property(Mr,(u=t.bootstrap)!=null&&u.isIdentifiedID?"identified":"anonymous"),this.register({distinct_id:t.bootstrap.distinctID,$device_id:h})}if(this.ss()){var f,v,g=Object.keys(((f=t.bootstrap)==null?void 0:f.featureFlags)||{}).filter((x=>{var S;return!((S=t.bootstrap)==null||(S=S.featureFlags)==null||!S[x])})).reduce(((x,S)=>{var b;return x[S]=((b=t.bootstrap)==null||(b=b.featureFlags)==null?void 0:b[S])||!1,x}),{}),m=Object.keys(((v=t.bootstrap)==null?void 0:v.featureFlagPayloads)||{}).filter((x=>g[x])).reduce(((x,S)=>{var b,w;return(b=t.bootstrap)!=null&&(b=b.featureFlagPayloads)!=null&&b[S]&&(x[S]=(w=t.bootstrap)==null||(w=w.featureFlagPayloads)==null?void 0:w[S]),x}),{});this.featureFlags.receivedFeatureFlags({featureFlags:g,featureFlagPayloads:m})}if(l)this.register_once({distinct_id:No,$device_id:null},"");else if(!this.get_distinct_id()){var y=this.config.get_device_id(ln());this.register_once({distinct_id:y,$device_id:y},""),this.persistence.set_property(Mr,"anonymous")}return Ue(E,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),this.toolbar.maybeLoadToolbar(),t.segment?dT(this,(()=>this.ns())):this.ns(),cn(this.config._onCapture)&&this.config._onCapture!==Vf&&(U.warn("onCapture is deprecated. Please use `before_send` instead"),this.on("eventCaptured",(x=>this.config._onCapture(x.event,x)))),this.config.ip&&U.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}rs(e){var t=performance.now();this.historyAutocapture=new uf(this),this.historyAutocapture.startIfEnabled();var n=[];n.push((()=>{new hf(this).startIfEnabledOrStop()})),n.push((()=>{var i;this.siteApps=new Nf(this),(i=this.siteApps)==null||i.init()})),e||n.push((()=>{this.sessionRecording=new Oc(this),this.sessionRecording.startIfEnabledOrStop()})),this.config.disable_scroll_properties||n.push((()=>{this.scrollManager.startMeasuringScrollPosition()})),n.push((()=>{this.autocapture=new nf(this),this.autocapture.startIfEnabled()})),n.push((()=>{this.surveys.loadIfEnabled()})),n.push((()=>{this.logs.loadIfEnabled()})),n.push((()=>{this.conversations.loadIfEnabled()})),n.push((()=>{this.productTours=new wf(this),this.productTours.loadIfEnabled()})),n.push((()=>{this.heatmaps=new gf(this),this.heatmaps.startIfEnabled()})),n.push((()=>{this.webVitalsAutocapture=new ff(this)})),n.push((()=>{this.exceptionObserver=new cf(this),this.exceptionObserver.startIfEnabledOrStop()})),n.push((()=>{this.deadClicksAutocapture=new Cc(this,uT),this.deadClicksAutocapture.startIfEnabled()})),n.push((()=>{if(this.os){var i=this.os;this.os=void 0,this.yi(i)}})),this.ls(n,t)}ls(e,t){for(;e.length>0;){if(this.config.__preview_deferred_init_extensions&&performance.now()-t>=30&&e.length>0)return void setTimeout((()=>{this.ls(e,t)}),0);var n=e.shift();if(n)try{n()}catch(s){U.error("Error initializing extension:",s)}}var i=Math.round(performance.now()-t);this.register_for_session({$sdk_debug_extensions_init_method:this.config.__preview_deferred_init_extensions?"deferred":"synchronous",$sdk_debug_extensions_init_time_ms:i}),this.config.__preview_deferred_init_extensions&&U.info("PostHog extensions initialized ("+i+"ms)")}yi(e){var t,n,i,s,o,a,l,c,u;if(!H||!H.body)return U.info("document not ready yet, trying again in 500 milliseconds..."),void setTimeout((()=>{this.yi(e)}),500);this.config.__preview_deferred_init_extensions&&(this.os=e),this.compression=void 0,e.supportedCompression&&!this.config.disable_compression&&(this.compression=fe(e.supportedCompression,Or.GZipJS)?Or.GZipJS:fe(e.supportedCompression,Or.Base64)?Or.Base64:void 0),(t=e.analytics)!=null&&t.endpoint&&(this.analyticsDefaultEndpoint=e.analytics.endpoint),this.set_config({person_profiles:this.Vr?this.Vr:"identified_only"}),(n=this.siteApps)==null||n.onRemoteConfig(e),(i=this.sessionRecording)==null||i.onRemoteConfig(e),(s=this.autocapture)==null||s.onRemoteConfig(e),(o=this.heatmaps)==null||o.onRemoteConfig(e),this.surveys.onRemoteConfig(e),this.logs.onRemoteConfig(e),this.conversations.onRemoteConfig(e),(a=this.productTours)==null||a.onRemoteConfig(e),(l=this.webVitalsAutocapture)==null||l.onRemoteConfig(e),(c=this.exceptionObserver)==null||c.onRemoteConfig(e),this.exceptions.onRemoteConfig(e),(u=this.deadClicksAutocapture)==null||u.onRemoteConfig(e)}ns(){try{this.config.loaded(this)}catch(n){U.critical("`loaded` function failed",n)}if(this.us(),this.config.internal_or_test_user_hostname&&et!=null&&et.hostname){var e=et.hostname,t=this.config.internal_or_test_user_hostname;(typeof t=="string"?e===t:t.test(e))&&this.setInternalOrTestUser()}this.config.capture_pageview&&setTimeout((()=>{(this.consent.isOptedIn()||this.config.cookieless_mode==="always")&&this.hs()}),1),new $f(this).load(),this.featureFlags.flags()}us(){var e;this.is_capturing()&&this.config.request_batching&&((e=this.Zr)==null||e.enable())}_dom_loaded(){this.is_capturing()&&un(this.__request_queue,(e=>this.ts(e))),this.__request_queue=[],this.us()}_handle_unload(){var e,t;this.surveys.handlePageUnload(),this.config.request_batching?(this.ds()&&this.capture("$pageleave"),(e=this.Zr)==null||e.unload(),(t=this.es)==null||t.unload()):this.ds()&&this.capture("$pageleave",null,{transport:"sendBeacon"})}_send_request(e){this.__loaded&&(Ox?this.__request_queue.push(e):this.rateLimiter.isServerRateLimited(e.batchKey)||(e.transport=e.transport||this.config.api_transport,e.url=Ic(e.url,{ip:this.config.ip?1:0}),e.headers=W({},this.config.request_headers,e.headers),e.compression=e.compression==="best-available"?this.compression:e.compression,e.disableXHRCredentials=this.config.__preview_disable_xhr_credentials,this.config.__preview_disable_beacon&&(e.disableTransport=["sendBeacon"]),e.fetchOptions=e.fetchOptions||this.config.fetch_options,(t=>{var n,i,s,o=W({},t);o.timeout=o.timeout||6e4,o.url=Ic(o.url,{_:new Date().getTime().toString(),ver:$r.LIB_VERSION,compression:o.compression});var a=(n=o.transport)!==null&&n!==void 0?n:"fetch",l=hc.filter((u=>!o.disableTransport||!u.transport||!o.disableTransport.includes(u.transport))),c=(i=(s=Q0(l,(u=>u.transport===a)))==null?void 0:s.method)!==null&&i!==void 0?i:l[0].method;if(!c)throw new Error("No available transport method");c(o)})(W({},e,{callback:t=>{var n,i;this.rateLimiter.checkForLimiting(t),t.statusCode>=400&&((n=(i=this.config).on_request_error)==null||n.call(i,t)),e.callback==null||e.callback(t)}}))))}ts(e){this.es?this.es.retriableRequest(e):this._send_request(e)}_execute_array(e){var t,n=[],i=[],s=[];un(e,(a=>{a&&(t=a[0],xe(t)?s.push(a):cn(a)?a.call(this):xe(a)&&t==="alias"?n.push(a):xe(a)&&t.indexOf("capture")!==-1&&cn(this[t])?s.push(a):i.push(a))}));var o=function(a,l){un(a,(function(c){if(xe(c[0])){var u=l;Ae(c,(function(p){u=u[p[0]].apply(u,p.slice(1))}))}else this[c[0]].apply(this,c.slice(1))}),l)};o(n,this),o(i,this),o(s,this)}ss(){var e,t;return((e=this.config.bootstrap)==null?void 0:e.featureFlags)&&Object.keys((t=this.config.bootstrap)==null?void 0:t.featureFlags).length>0||!1}push(e){this._execute_array([e])}capture(e,t,n){var i;if(this.__loaded&&this.persistence&&this.sessionPersistence&&this.Zr){if(this.is_capturing())if(!B(e)&&ze(e)){var s=!this.config.opt_out_useragent_filter&&this._is_bot();if(!(s&&!this.config.__preview_capture_bot_pageviews)){var o=n!=null&&n.skip_client_rate_limiting?void 0:this.rateLimiter.clientRateLimitContext();if(o==null||!o.isRateLimited){t!=null&&t.$current_url&&!ze(t?.$current_url)&&(U.error("Invalid `$current_url` property provided to `posthog.capture`. Input must be a string. Ignoring provided value."),t==null||delete t.$current_url),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 a=new Date,l=n?.timestamp||a,c=ln(),u={uuid:c,event:e,properties:this.calculateEventProperties(e,t||{},l,c)};e==="$pageview"&&this.config.__preview_capture_bot_pageviews&&s&&(u.event="$bot_pageview",u.properties.$browser_type="bot"),o&&(u.properties.$lib_rate_limit_remaining_tokens=o.remainingTokens),n?.$set&&(u.$set=n?.$set);var p,h=e!=="$groupidentify",f=this.vs(n?.$set_once,h);if(f&&(u.$set_once=f),(u=V2(u,n!=null&&n._noTruncate?null:this.config.properties_string_max_length)).timestamp=l,B(n?.timestamp)||(u.properties.$event_time_override_provided=!0,u.properties.$event_time_override_system_time=a),e===Xo.DISMISSED||e===Xo.SENT){var v=t?.[Ah.SURVEY_ID],g=t?.[Ah.SURVEY_ITERATION];p={id:v,current_iteration:g},localStorage.getItem(S0(p))||localStorage.setItem(S0(p),"true"),u.$set=W({},u.$set,{[$T({id:v,current_iteration:g},e===Xo.SENT?"responded":"dismissed")]:!0})}else e===Xo.SHOWN&&(u.$set=W({},u.$set,{[Ah.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));var m=W({},u.properties.$set,u.$set);if(ji(m)||this.setPersonPropertiesForFlags(m),!ge(this.config.before_send)){var y=this.cs(u);if(!y)return;u=y}this.qr.emit("eventCaptured",u);var x={method:"POST",url:(i=n?._url)!==null&&i!==void 0?i:this.requestRouter.endpointFor("api",this.analyticsDefaultEndpoint),data:u,compression:"best-available",batchKey:n?._batchKey};return!this.config.request_batching||n&&(n==null||!n._batchKey)||n!=null&&n.send_instantly?this.ts(x):this.Zr.enqueue(x),u}U.critical("This capture call is ignored due to client rate limiting.")}}else U.error("No event name provided to posthog.capture")}else U.uninitializedWarning("posthog.capture")}_addCaptureHook(e){return this.on("eventCaptured",(t=>e(t.event,t)))}calculateEventProperties(e,t,n,i,s){if(n=n||new Date,!this.persistence||!this.sessionPersistence)return t;var o=s?void 0:this.persistence.remove_event_timer(e),a=W({},t);if(a.token=this.config.token,a.$config_defaults=this.config.defaults,(this.config.cookieless_mode=="always"||this.config.cookieless_mode=="on_reject"&&this.consent.isExplicitlyOptedOut())&&(a.$cookieless_mode=!0),e==="$snapshot"){var l=W({},this.persistence.properties(),this.sessionPersistence.properties());return a.distinct_id=l.distinct_id,(!ze(a.distinct_id)&&!Fr(a.distinct_id)||Mh(a.distinct_id))&&U.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),a}var c,u=vT(this.config.mask_personal_data_properties,this.config.custom_personal_data_properties);if(this.sessionManager){var{sessionId:p,windowId:h}=this.sessionManager.checkAndGetSessionAndWindowId(s,n.getTime());a.$session_id=p,a.$window_id=h}this.sessionPropsManager&&Fe(a,this.sessionPropsManager.getSessionProps());try{var f;this.sessionRecording&&Fe(a,this.sessionRecording.sdkDebugProperties),a.$sdk_debug_retry_queue_size=(f=this.es)==null?void 0:f.length}catch(y){a.$sdk_debug_error_capturing_properties=String(y)}if(this.requestRouter.region===Jo.CUSTOM&&(a.$lib_custom_api_host=this.config.api_host),c=e!=="$pageview"||s?e!=="$pageleave"||s?this.pageViewManager.doEvent():this.pageViewManager.doPageLeave(n):this.pageViewManager.doPageView(n,i),a=Fe(a,c),e==="$pageview"&&H&&(a.title=H.title),!B(o)){var v=n.getTime()-o;a.$duration=parseFloat((v/1e3).toFixed(3))}yt&&this.config.opt_out_useragent_filter&&(a.$browser_type=this._is_bot()?"bot":"browser"),(a=Fe({},u,this.persistence.properties(),this.sessionPersistence.properties(),a)).$is_identified=this._isIdentified(),xe(this.config.property_denylist)?Ae(this.config.property_denylist,(function(y){delete a[y]})):U.error("Invalid value for property_denylist config: "+this.config.property_denylist+" or property_blacklist config: "+this.config.property_blacklist);var g=this.config.sanitize_properties;g&&(U.error("sanitize_properties is deprecated. Use before_send instead"),a=g(a,e));var m=this.fs();return a.$process_person_profile=m,m&&!s&&this.ps("_calculate_event_properties"),a}vs(e,t){var n;if(t===void 0&&(t=!0),!this.persistence||!this.fs()||this.Br)return e;var i=this.persistence.get_initial_props(),s=(n=this.sessionPropsManager)==null?void 0:n.getSetOnceProps(),o=Fe({},i,s||{},e||{}),a=this.config.sanitize_properties;return a&&(U.error("sanitize_properties is deprecated. Use before_send instead"),o=a(o,"$set_once")),t&&(this.Br=!0),ji(o)?void 0:o}register(e,t){var n;(n=this.persistence)==null||n.register(e,t)}register_once(e,t,n){var i;(i=this.persistence)==null||i.register_once(e,t,n)}register_for_session(e){var t;(t=this.sessionPersistence)==null||t.register(e)}unregister(e){var t;(t=this.persistence)==null||t.unregister(e)}unregister_for_session(e){var t;(t=this.sessionPersistence)==null||t.unregister(e)}gs(e,t){this.register({[e]:t})}getFeatureFlag(e,t){return this.featureFlags.getFeatureFlag(e,t)}getFeatureFlagPayload(e){return this.featureFlags.getFeatureFlagPayload(e)}getFeatureFlagResult(e,t){return this.featureFlags.getFeatureFlagResult(e,t)}isFeatureEnabled(e,t){return this.featureFlags.isFeatureEnabled(e,t)}reloadFeatureFlags(){this.featureFlags.reloadFeatureFlags()}updateFlags(e,t,n){var i=n!=null&&n.merge?this.featureFlags.getFlagVariants():{},s=n!=null&&n.merge?this.featureFlags.getFlagPayloads():{},o=W({},i,e),a=W({},s,t),l={};for(var[c,u]of Object.entries(o)){var p=typeof u=="string";l[c]={key:c,enabled:!!p||!!u,variant:p?u:void 0,reason:void 0,metadata:B(a?.[c])?void 0:{id:0,version:void 0,description:void 0,payload:a[c]}}}this.featureFlags.receivedFeatureFlags({flags:l})}updateEarlyAccessFeatureEnrollment(e,t,n){this.featureFlags.updateEarlyAccessFeatureEnrollment(e,t,n)}getEarlyAccessFeatures(e,t,n){return t===void 0&&(t=!1),this.featureFlags.getEarlyAccessFeatures(e,t,n)}on(e,t){return this.qr.on(e,t)}onFeatureFlags(e){return this.featureFlags.onFeatureFlags(e)}onSurveysLoaded(e){return this.surveys.onSurveysLoaded(e)}onSessionId(e){var t,n;return(t=(n=this.sessionManager)==null?void 0:n.onSessionId(e))!==null&&t!==void 0?t:()=>{}}getSurveys(e,t){t===void 0&&(t=!1),this.surveys.getSurveys(e,t)}getActiveMatchingSurveys(e,t){t===void 0&&(t=!1),this.surveys.getActiveMatchingSurveys(e,t)}renderSurvey(e,t){this.surveys.renderSurvey(e,t)}displaySurvey(e,t){t===void 0&&(t=PT),this.surveys.displaySurvey(e,t)}cancelPendingSurvey(e){this.surveys.cancelPendingSurvey(e)}canRenderSurvey(e){return this.surveys.canRenderSurvey(e)}canRenderSurveyAsync(e,t){return t===void 0&&(t=!1),this.surveys.canRenderSurveyAsync(e,t)}identify(e,t,n){if(!this.__loaded||!this.persistence)return U.uninitializedWarning("posthog.identify");if(Fr(e)&&(e=e.toString(),U.warn("The first argument to posthog.identify was a number, but it should be a string. It has been converted to a string.")),e)if(["distinct_id","distinctid"].includes(e.toLowerCase()))U.critical('The string "'+e+'" was set in posthog.identify which indicates an error. This ID should be unique to the user and not a hardcoded string.');else if(e!==No){if(this.ps("posthog.identify")){var i=this.get_distinct_id();if(this.register({$user_id:e}),!this.get_property("$device_id")){var s=i;this.register_once({$had_persisted_distinct_id:!0,$device_id:s},"")}e!==i&&e!==this.get_property(qo)&&(this.unregister(qo),this.register({distinct_id:e}));var o=(this.persistence.get_property(Mr)||"anonymous")==="anonymous";e!==i&&o?(this.persistence.set_property(Mr,"identified"),this.setPersonPropertiesForFlags(W({},n||{},t||{}),!1),this.capture("$identify",{distinct_id:e,$anon_distinct_id:i},{$set:t||{},$set_once:n||{}}),this.Jr=v0(e,t,n),this.featureFlags.setAnonymousDistinctId(i)):(t||n)&&this.setPersonProperties(t,n),e!==i&&(this.reloadFeatureFlags(),this.unregister(yc))}}else U.critical('The string "'+No+'" was set in posthog.identify which indicates an error. This ID is only used as a sentinel value.');else U.error("Unique user id has not been set in posthog.identify")}setPersonProperties(e,t){if((e||t)&&this.ps("posthog.setPersonProperties")){var n=v0(this.get_distinct_id(),e,t);this.Jr!==n?(this.setPersonPropertiesForFlags(W({},t||{},e||{})),this.capture("$set",{$set:e||{},$set_once:t||{}}),this.Jr=n):U.info("A duplicate setPersonProperties call was made with the same properties. It has been ignored.")}}group(e,t,n){if(e&&t){var i=this.getGroups();i[e]!==t&&this.resetGroupPropertiesForFlags(e),this.register({$groups:W({},i,{[e]:t})}),n&&(this.capture("$groupidentify",{$group_type:e,$group_key:t,$group_set:n}),this.setGroupPropertiesForFlags({[e]:n})),i[e]===t||n||this.reloadFeatureFlags()}else U.error("posthog.group requires a group type and group key")}resetGroups(){this.register({$groups:{}}),this.resetGroupPropertiesForFlags(),this.reloadFeatureFlags()}setPersonPropertiesForFlags(e,t){t===void 0&&(t=!0),this.featureFlags.setPersonPropertiesForFlags(e,t)}resetPersonPropertiesForFlags(){this.featureFlags.resetPersonPropertiesForFlags()}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0),this.ps("posthog.setGroupPropertiesForFlags")&&this.featureFlags.setGroupPropertiesForFlags(e,t)}resetGroupPropertiesForFlags(e){this.featureFlags.resetGroupPropertiesForFlags(e)}reset(e){var t,n,i,s;if(U.info("reset"),!this.__loaded)return U.uninitializedWarning("posthog.reset");var o=this.get_property("$device_id");if(this.consent.reset(),(t=this.persistence)==null||t.clear(),(n=this.sessionPersistence)==null||n.clear(),this.surveys.reset(),this.featureFlags.reset(),(i=this.persistence)==null||i.set_property(Mr,"anonymous"),(s=this.sessionManager)==null||s.resetSessionId(),this.Jr=null,this.config.cookieless_mode==="always")this.register_once({distinct_id:No,$device_id:null},"");else{var a=this.config.get_device_id(ln());this.register_once({distinct_id:a,$device_id:e?a:o},"")}this.register({$last_posthog_reset:new Date().toISOString()},1)}get_distinct_id(){return this.get_property("distinct_id")}getGroups(){return this.get_property("$groups")||{}}get_session_id(){var e,t;return(e=(t=this.sessionManager)==null?void 0:t.checkAndGetSessionAndWindowId(!0).sessionId)!==null&&e!==void 0?e:""}get_session_replay_url(e){if(!this.sessionManager)return"";var{sessionId:t,sessionStartTimestamp:n}=this.sessionManager.checkAndGetSessionAndWindowId(!0),i=this.requestRouter.endpointFor("ui","/project/"+this.config.token+"/replay/"+t);if(e!=null&&e.withTimestamp&&n){var s,o=(s=e.timestampLookBack)!==null&&s!==void 0?s:10;if(!n)return i;i+="?t="+Math.max(Math.floor((new Date().getTime()-n)/1e3)-o,0)}return i}alias(e,t){return e===this.get_property(ex)?(U.critical("Attempting to create alias for existing People user - aborting."),-2):this.ps("posthog.alias")?(B(t)&&(t=this.get_distinct_id()),e!==t?(this.gs(qo,e),this.capture("$create_alias",{alias:e,distinct_id:t})):(U.warn("alias matches current distinct_id - skipping api call."),this.identify(e),-1)):void 0}set_config(e){var t=W({},this.config);if(We(e)){var n,i,s,o,a,l,c;Fe(this.config,A0(e));var u=this.Qr();(n=this.persistence)==null||n.update_config(this.config,t,u),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new ea(W({},this.config,{persistence:"sessionStorage"}),u);var p=this.Kr(this.config.debug);Nr(p)&&(this.config.debug=p),Nr(this.config.debug)&&(this.config.debug?($r.DEBUG=!0,Me.H()&&Me.G("ph_debug","true"),U.info("set_config",{config:e,oldConfig:t,newConfig:W({},this.config)})):($r.DEBUG=!1,Me.H()&&Me.V("ph_debug"))),(i=this.exceptionObserver)==null||i.onConfigChange(),(s=this.sessionRecording)==null||s.startIfEnabledOrStop(),(o=this.autocapture)==null||o.startIfEnabled(),(a=this.heatmaps)==null||a.startIfEnabled(),(l=this.exceptionObserver)==null||l.startIfEnabledOrStop(),this.surveys.loadIfEnabled(),this._s(),(c=this.externalIntegrations)==null||c.startIfEnabledOrStop()}}startSessionRecording(e){var t=e===!0,n={sampling:t||!(e==null||!e.sampling),linked_flag:t||!(e==null||!e.linked_flag),url_trigger:t||!(e==null||!e.url_trigger),event_trigger:t||!(e==null||!e.event_trigger)};if(Object.values(n).some(Boolean)){var i,s,o,a,l;(i=this.sessionManager)==null||i.checkAndGetSessionAndWindowId(),n.sampling&&((s=this.sessionRecording)==null||s.overrideSampling()),n.linked_flag&&((o=this.sessionRecording)==null||o.overrideLinkedFlag()),n.url_trigger&&((a=this.sessionRecording)==null||a.overrideTrigger("url")),n.event_trigger&&((l=this.sessionRecording)==null||l.overrideTrigger("event"))}this.set_config({disable_session_recording:!1})}stopSessionRecording(){this.set_config({disable_session_recording:!0})}sessionRecordingStarted(){var e;return!((e=this.sessionRecording)==null||!e.started)}captureException(e,t){var n=new Error("PostHog syntheticException"),i=this.exceptions.buildProperties(e,{handled:!0,syntheticException:n});return this.exceptions.sendExceptionEvent(W({},i,t))}startExceptionAutocapture(e){this.set_config({capture_exceptions:e==null||e})}stopExceptionAutocapture(){this.set_config({capture_exceptions:!1})}loadToolbar(e){return this.toolbar.loadToolbar(e)}get_property(e){var t;return(t=this.persistence)==null?void 0:t.props[e]}getSessionProperty(e){var t;return(t=this.sessionPersistence)==null?void 0:t.props[e]}toString(){var e,t=(e=this.config.name)!==null&&e!==void 0?e:Vi;return t!==Vi&&(t=Vi+"."+t),t}_isIdentified(){var e,t;return((e=this.persistence)==null?void 0:e.get_property(Mr))==="identified"||((t=this.sessionPersistence)==null?void 0:t.get_property(Mr))==="identified"}fs(){var e,t;return!(this.config.person_profiles==="never"||this.config.person_profiles==="identified_only"&&!this._isIdentified()&&ji(this.getGroups())&&((e=this.persistence)==null||(e=e.props)==null||!e[qo])&&((t=this.persistence)==null||(t=t.props)==null||!t[_c]))}ds(){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.fs()||this.ps("posthog.createPersonProfile")&&this.setPersonProperties({},{})}setInternalOrTestUser(){this.ps("posthog.setInternalOrTestUser")&&this.setPersonProperties({$internal_or_test_user:!0})}ps(e){return this.config.person_profiles==="never"?(U.error(e+' was called, but process_person is set to "never". This call will be ignored.'),!1):(this.gs(_c,!0),!0)}Qr(){if(this.config.cookieless_mode==="always")return!0;var e=this.consent.isOptedOut(),t=this.config.opt_out_persistence_by_default||this.config.cookieless_mode==="on_reject";return this.config.disable_persistence||e&&!!t}_s(){var e,t,n,i,s=this.Qr();return((e=this.persistence)==null?void 0:e.ki)!==s&&((n=this.persistence)==null||n.set_disabled(s)),((t=this.sessionPersistence)==null?void 0:t.ki)!==s&&((i=this.sessionPersistence)==null||i.set_disabled(s)),s}opt_in_capturing(e){var t;if(this.config.cookieless_mode!=="always"){var n,i,s;this.config.cookieless_mode==="on_reject"&&this.consent.isExplicitlyOptedOut()&&(this.reset(!0),(n=this.sessionManager)==null||n.destroy(),(i=this.pageViewManager)==null||i.destroy(),this.sessionManager=new Pc(this),this.pageViewManager=new Ac(this),this.persistence&&(this.sessionPropsManager=new Mc(this,this.sessionManager,this.persistence)),this.sessionRecording=new Oc(this),this.sessionRecording.startIfEnabledOrStop()),this.consent.optInOut(!0),this._s(),this.us(),(t=this.sessionRecording)==null||t.startIfEnabledOrStop(),this.config.cookieless_mode=="on_reject"&&this.surveys.loadIfEnabled(),(B(e?.captureEventName)||e!=null&&e.captureEventName)&&this.capture((s=e?.captureEventName)!==null&&s!==void 0?s:"$opt_in",e?.captureProperties,{send_instantly:!0}),this.config.capture_pageview&&this.hs()}else U.warn('Consent opt in/out is not valid with cookieless_mode="always" and will be ignored')}opt_out_capturing(){var e,t,n;this.config.cookieless_mode!=="always"?(this.config.cookieless_mode==="on_reject"&&this.consent.isOptedIn()&&this.reset(!0),this.consent.optInOut(!1),this._s(),this.config.cookieless_mode==="on_reject"&&(this.register({distinct_id:No,$device_id:null}),(e=this.sessionManager)==null||e.destroy(),(t=this.pageViewManager)==null||t.destroy(),this.sessionManager=void 0,this.sessionPropsManager=void 0,(n=this.sessionRecording)==null||n.stopRecording(),this.sessionRecording=void 0,this.hs())):U.warn('Consent opt in/out is not valid with cookieless_mode="always" and will be ignored')}has_opted_in_capturing(){return this.consent.isOptedIn()}has_opted_out_capturing(){return this.consent.isOptedOut()}get_explicit_consent_status(){var e=this.consent.consent;return e===Pr.GRANTED?"granted":e===Pr.DENIED?"denied":"pending"}is_capturing(){return this.config.cookieless_mode==="always"||(this.config.cookieless_mode==="on_reject"?this.consent.isExplicitlyOptedOut()||this.consent.isOptedIn():!this.has_opted_out_capturing())}clear_opt_in_out_capturing(){this.consent.reset(),this._s()}_is_bot(){return wt?Px(wt,this.config.custom_blocked_useragents):void 0}hs(){H&&(H.visibilityState==="visible"?this.Wr||(this.Wr=!0,this.capture("$pageview",{title:H.title},{send_instantly:!0}),this.Gr&&(H.removeEventListener("visibilitychange",this.Gr),this.Gr=null)):this.Gr||(this.Gr=this.hs.bind(this),Ue(H,"visibilitychange",this.Gr)))}debug(e){e===!1?(E?.console.log("You've disabled debug mode."),this.set_config({debug:!1})):(E?.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}))}M(){var e,t,n,i,s,o,a,l=this.Yr||{};return"advanced_disable_flags"in l?!!l.advanced_disable_flags:this.config.advanced_disable_flags!==!1?!!this.config.advanced_disable_flags:this.config.advanced_disable_decide===!0?(U.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):(n="advanced_disable_decide",i=!1,s=U,o=(t="advanced_disable_flags")in(e=l)&&!ge(e[t]),a=n in e&&!ge(e[n]),o?e[t]:a?(s&&s.warn("Config field '"+n+"' is deprecated. Please use '"+t+"' instead. The old field will be removed in a future major version."),e[n]):i)}cs(e){if(ge(this.config.before_send))return e;var t=xe(this.config.before_send)?this.config.before_send:[this.config.before_send],n=e;for(var i of t){if(n=i(n),ge(n)){var s="Event '"+e.event+"' was rejected in beforeSend function";return f2(e.event)?U.warn(s+". This can cause unexpected behavior."):U.info(s),null}n.properties&&!ji(n.properties)||U.warn("Event '"+e.event+"' has no properties after beforeSend function, this is likely an error.")}return n}getPageViewId(){var e;return(e=this.pageViewManager.Kt)==null?void 0:e.pageViewId}captureTraceFeedback(e,t){this.capture("$ai_feedback",{$ai_trace_id:String(e),$ai_feedback_text:t})}captureTraceMetric(e,t,n){this.capture("$ai_metric",{$ai_trace_id:String(e),$ai_metric_name:t,$ai_metric_value:String(n)})}Kr(e){var t=Nr(e)&&!e,n=Me.H()&&Me.q("ph_debug")==="true";return!t&&(!!n||e)}};(function(r,e){for(var t=0;t<e.length;t++)r.prototype[e[t]]=B2(r.prototype[e[t]])})(Lc,["identify"]);var T0;var Lx=(T0=ta[Vi]=new Lc,(function(){function r(){r.done||(r.done=!0,Ox=!1,Ae(ta,(function(e){e._dom_loaded()})))}H!=null&&H.addEventListener?H.readyState==="complete"?r():Ue(H,"DOMContentLoaded",r,{capture:!1}):E&&U.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")})(),T0);var Qf=class{constructor(e={}){this.options=e;if(this.client=e.client,this.featureFlagsCallback=e.onFeatureFlagsLoaded,this.captureCallback=e.onCapture,this.rrwebCallback=e.onRRWebEvent,!this.client&&e.consent&&e.requireExplicitConsent&&typeof window<"u"&&e.apiKey){let t=e.consent;t.getStatus()==="granted"&&this.initPostHog(),t.subscribe(i=>{i==="granted"?this.client?this.client.opt_in_capturing():this.initPostHog():i==="denied"&&this.client&&this.client.opt_out_capturing()});return}!this.client&&typeof window<"u"&&e.apiKey&&this.initPostHog()}initPostHog(){let e=this.options;if(!e.apiKey)return;let t=e.enableFeatureFlags??!0,n=`syntro_${e.apiKey.slice(-6)||"sdk"}`,o={api_host:`${(e.apiHost??"https://telemetry.syntrologie.com").replace(/\/$/,"")}/t/${e.apiKey}`,advanced_disable_feature_flags:!t,advanced_disable_feature_flags_on_first_load:!t,autocapture:e.autocapture??!0,capture_pageview:e.capturePageview??"history_change",capture_pageleave:e.capturePageleave??!0,disable_session_recording:!(e.sessionRecording??!0),opt_out_useragent_filter:!0,session_recording:{recordCrossDomainIFrames:!0},capture_performance:!0,enable_recording_console_log:!0};e.cookieless_mode&&(o.cookieless_mode=e.cookieless_mode);let a=Lx.init(e.apiKey,o,n);if(a&&(this.client=a),this.captureCallback&&this.client&&this.client.on("eventCaptured",(...l)=>{let c=l[0],u=typeof c=="string"?c:c?.event,p=typeof c=="string"?void 0:c?.properties;typeof u=="string"&&this.captureCallback?.(u,p)}),t&&this.featureFlagsCallback&&this.client){this.client.onFeatureFlags(()=>{let c=this.getAllFeatureFlags();c&&this.featureFlagsCallback&&this.featureFlagsCallback(c)});let l=this.getAllFeatureFlags();l&&Object.keys(l).length>0&&this.featureFlagsCallback(l)}this.rrwebCallback&&this.client&&this.setupRRWebIntercept()}setupRRWebIntercept(e=30){let t=this.client?.sessionRecording;if(!t){e>0&&setTimeout(()=>this.setupRRWebIntercept(e-1),500);return}let n=null,i=t;for(let o of Object.getOwnPropertyNames(i)){let a=i[o];if(a&&typeof a=="object"&&typeof a.onRRwebEmit=="function"&&typeof a.start=="function"&&a!==t){n=a;break}}if(!n){e>0&&setTimeout(()=>this.setupRRWebIntercept(e-1),500);return}let s=n.onRRwebEmit.bind(n);n.onRRwebEmit=o=>{this.rrwebCallback?.({kind:"rrweb",...o}),s(o)},typeof window<"u"&&(window.__RRWEB_INTERCEPT_READY__=!0)}getAllFeatureFlags(){return this.client?.featureFlags?.getFlagVariants()}getSegmentFlags(){let e=this.getAllFeatureFlags();if(!e)return{};let t={};for(let[n,i]of Object.entries(e))n.startsWith("in_segment_")&&(t[n]=i===!0);return t}identify(e,t){this.client?.identify(e,t)}alias(e,t){this.client?.alias(e,t)}optInCapturing(){this.client?.opt_in_capturing()}optOutCapturing(){this.client?.opt_out_capturing()}track(e,t){this.client?.capture(e,t)}trackCanvasOpened(e){this.track("shadow_canvas_opened",{surface:e})}trackCanvasClosed(e){this.track("shadow_canvas_closed",{surface:e})}trackRectangleViewed(e,t){this.track("shadow_canvas_rectangle_viewed",{rectangleId:e,surface:t})}trackAction(e,t,n){this.track("shadow_canvas_action",{action:e,rectangleId:t,surface:n})}register(e){this.client?.register?.(e)}getSessionId(){return this.client?.get_session_id?.()}startSessionRecording(){this.client?.startSessionRecording?.()}trackExperiment(e,t,n){let i=`$experiment_${e}`;this.register({[i]:n??`variation_${t}`,[`${i}_id`]:t}),this.track("$experiment_started",{$experiment_key:e,$experiment_variation_id:t,$experiment_variation_name:n??`variation_${t}`})}setPersonProperties(e){this.client?.capture("$set",{$set:e})}setPersonPropertiesOnce(e){this.client?.capture("$set",{$set_once:e})}getDistinctId(){return this.client?.get_distinct_id?.()}};function eg(r={}){return new Qf(r)}var Nx={posthog:r=>eg(r),noop:()=>dh()};function Fx(r,e){let t=Nx[r];if(!t)throw new Error(`Unknown telemetry provider: ${r}. Supported: ${Object.keys(Nx).join(", ")}`);return t(e)}async function Dx(r){nd(),Z("Syntro Bootstrap","====== INIT ======"),Z("Syntro Bootstrap","Options:",{hasToken:!!r.token,tokenPrefix:`${r.token?.slice(0,15)}...`,hasCanvasOptions:!!r.canvas});let e=Al();if(console.log(`[DIAG] Mode detection: sdkMode=${e}`),console.log("[DIAG] editorSource:",go()),console.log("[DIAG] editorConf:",Cl()),Z("Syntro Bootstrap","SDK mode:",e??"normal"),!e&&typeof window<"u"){let V=!!window.__SYNTRO_EDITOR_PARAMS__,J=!!window.__SYNTRO_AUDIT_LEGEND__,Q=!!window.__SYNTRO_REVIEW_DATA__;if(V||J||Q){let ue=[V&&"__SYNTRO_EDITOR_PARAMS__",J&&"__SYNTRO_AUDIT_LEGEND__",Q&&"__SYNTRO_REVIEW_DATA__"].filter(Boolean);console.warn(`[Syntro Bootstrap] \u26A0 Mode detection returned null but mode-specific globals found: ${ue.join(", ")}. This suggests URL params were lost (redirect?) but the service worker injected mode data. Check if replaceState failed or if page JS changed the URL before init().`)}}console.log(`[DIAG] Token resolution: options.token=${r.token?r.token.slice(0,15)+"...":"null"}`);let t=r.token;if(!t&&e){let J=Cl()?.syntro_token;J?.startsWith("syn_")&&(t=J,Z("Syntro Bootstrap",`\u2713 Using syntro_token from editor_conf (${e} mode)`))}let n;if(t)if(t.startsWith("syn_"))Z("Syntro Bootstrap","Token starts with syn_, decoding..."),n=mo(t),nd(n.d);else if(e)Z("Syntro Bootstrap",`\u2713 Non-syn_ token allowed (${e} mode)`);else throw ll("Syntro Bootstrap","\u274C Token does not start with syn_ and NOT in editor/audit/review mode!"),ll("Syntro Bootstrap","Token received:",t),new Error("Invalid Syntro token: must start with 'syn_'");else if(e)Z("Syntro Bootstrap",`\u2713 No token, but ${e} mode - proceeding`);else throw ll("Syntro Bootstrap","\u274C No token provided and NOT in editor/audit/review mode!"),new Error("Syntro token is required (unless in editor, audit, or review mode)");let i=It("NEXT_PUBLIC_SYNTRO_EXPERIMENT_HOST")||It("VITE_SYNTRO_EXPERIMENT_HOST")||n?.eh,s=It("NEXT_PUBLIC_SYNTRO_TELEMETRY_HOST")||It("VITE_SYNTRO_TELEMETRY_HOST")||n?.th;if(n!=null&&n.obd!==!0&&s)try{let V=`${s.replace(/\/$/,"")}/sdk-otel/v1/logs`,J=id({resource:{serviceName:"syntro-runtime-sdk",serviceVersion:to,posthogKey:n.t??"",hostOrigin:typeof window<"u"?window.location.origin:""},emit:od({endpoint:V})}),Q=ld()??"https://cdn.syntrologie.com/runtime-sdk/",ue=wd(J,{attributedScriptUrlPrefix:Q});J.attachAdapterCleanup(ue)}catch{}let o=It("NEXT_PUBLIC_SYNTRO_EDITOR_URL")||It("VITE_SYNTRO_EDITOR_URL")||r.canvas?.editorUrl,a=n?.g||It("NEXT_PUBLIC_SYNTRO_GEO_HOST")||It("VITE_SYNTRO_GEO_HOST")||gb,l=pb(),c=lp(),u=r.appSignalsInit??{},p={...c,...l,...u};Z("Syntro Bootstrap","Phase 1: Browser metadata:",c),Z("Syntro Bootstrap","Phase 1: Cached segment attributes:",l),Object.keys(u).length>0&&Z("Syntro Bootstrap","Phase 1: App signals:",u);let h=cp(a),f=(()=>{try{if(typeof window>"u"||window.self===window.top)return Promise.resolve(null)}catch{}return new Promise(V=>{let J=setTimeout(()=>{window.removeEventListener("message",Q),V(null)},500);function Q(ue){let _e=ue.data;_e?.jsonrpc==="2.0"&&_e?.id===1&&_e?.result?.hostInfo&&(clearTimeout(J),window.removeEventListener("message",Q),V(_e.result.hostInfo))}window.addEventListener("message",Q);try{window.parent.postMessage({jsonrpc:"2.0",id:1,method:"ui/initialize",params:{capabilities:{}}},"*")}catch{clearTimeout(J),window.removeEventListener("message",Q),V(null)}})})(),v,g=r.debug||r.testMode,m=vo({debug:r.debug,history:g?new yo(r.testMode?0:100):void 0,testMode:r.testMode});console.log("[Syntro Bootstrap] EventBus created");let y=Qu({elementResolver:typeof window<"u"?(V,J)=>{let Q=document.elementFromPoint(V,J);if(!Q)return null;let ue={tag_name:Q.tagName.toLowerCase()};Q.id&&(ue.attr__id=Q.id),Q.className&&typeof Q.className=="string"&&(ue.classes=Q.className.split(" ").filter(Boolean));for(let _e of Q.attributes)_e.name.startsWith("data-")&&(ue[`attr__${_e.name}`]=_e.value);return ue}:void 0});y.onEvent(V=>m.publishEvent(V)),typeof window<"u"&&(setInterval(()=>y.tick(Date.now()),1e3),document.addEventListener("click",V=>{let J=[],Q=V.target;for(;Q&&Q!==document.body;){let ue={tag_name:Q.tagName.toLowerCase()};for(let _e of Q.attributes)(_e.name.startsWith("data-")||_e.name==="id"||_e.name==="class"||_e.name==="aria-label")&&(ue[`attr__${_e.name}`]=_e.value);J.push(ue),Q=Q.parentElement}y.enrichClickAttributes(Date.now(),J)},!0));let x=m_(),S,b=V=>{Z("Syntro Bootstrap","Phase 2: PostHog feature flags loaded");let J=fb(V);if(Z("Syntro Bootstrap","Segment flags from PostHog:",J),hb(J),v){let Q=A?.getAll?.()??{},ue={...c,...Q,...J,...u};Z("Syntro Bootstrap","Updating GrowthBook with attributes:",ue),v.setAttributes?.(ue)}if(S&&w?.getDistinctId){let Q=w.getDistinctId();Q&&s&&n?.t&&S.updateContext({distinctId:Q,telemetryHost:s,telemetryKey:n.t})}},w;if(n?.t){let V=n.t==="noop"?"noop":"posthog";w=Fx(V,{apiKey:n.t,apiHost:s,enableFeatureFlags:!0,sessionRecording:!0,cookieless_mode:"on_reject",onFeatureFlagsLoaded:b,onCapture:(me,Ie)=>{y.ingest({kind:"posthog",event:me,properties:Ie,timestamp:Date.now()})},onRRWebEvent:me=>{y.ingest(me)}}),console.log(`[Syntro Bootstrap] Telemetry client created (${V}) with EventBus wiring`),Object.keys(u).length>0&&(w.track?.("app_signals_init",u),Z("Syntro Bootstrap","Tracked app signals event:",u));let J=w;m.setPosthogCapture((me,Ie)=>{J.track?.(me,Ie)});let Q=w,ue=async()=>{let me=await h;return me.is_eu==="true"||me.country_code==="GB"||me.country_code==="CH"?"denied":"granted"},_e=new Oo({initialStatus:"pending",pendingResolver:ue,onConsentChange:me=>{me==="granted"?Q.optInCapturing?.():me==="denied"&&Q.optOutCapturing?.()}});try{wb(w,_e,{geoPromise:h}),Z("Syntro Bootstrap","SDK defaults installed (D-1..D-5) with consent gate")}catch(me){Ze("Syntro Bootstrap","installDefaults failed",me)}try{new Po({adapters:[new Mo,new $o,new Io],fallbackStatus:ue,onAdapterSelected:Ie=>{Q.track?.("syntro_consent_adapter_selected",{adapter:Ie??"none"}),Z("Syntro Bootstrap",`Consent adapter selected: ${Ie??"none"}`)}}).start(_e).catch(Ie=>{Ze("Syntro Bootstrap","Consent detector failed to start",Ie)})}catch(me){Ze("Syntro Bootstrap","Consent detector setup failed",me)}if(x?.name==="shopify"&&s)try{S=new ec({distinctId:w.getDistinctId?.()??"",telemetryHost:s,telemetryKey:n.t}),Z("Syntro Bootstrap","ShopifyPixelBridge initialized for checkout attribution")}catch(me){Ze("Syntro Bootstrap","ShopifyPixelBridge init failed",me)}}let A;n?.e&&(v=u_("growthbook",{clientKey:n.e,apiHost:i,attributes:p,onExperimentViewed:w?.trackExperiment?(V,J,Q)=>{w.trackExperiment(V,J,Q)}:void 0})),A=Vp({experiments:v,onMetricChange:(V,J)=>{Z("Syntro Bootstrap",`Session metric changed: ${V} = ${J}`)}}),Z("Syntro Bootstrap","SessionMetricTracker created");let _="production";e==="editor"?_="editor":e==="audit"?_="audit":It("NODE_ENV")==="development"&&(_="development");let C=typeof c.surface_type=="string"?c.surface_type:"web",I=typeof c.surface_host=="string"?c.surface_host:"web",R=lh({telemetry:w,sessionMetrics:A,mode:_,events:m,initialSurfaceType:C,initialSurfaceHost:I});Z("Syntro Bootstrap","Runtime created:",{version:R.version,mode:R.mode,hasContext:!!R.context,hasEvents:!!R.events,hasState:!!R.state}),Z("Syntro Bootstrap","Core app executors already registered");let P=r.cdnBase||It("NEXT_PUBLIC_SYNTRO_CDN_BASE")||It("VITE_SYNTRO_CDN_BASE")||mb()||"https://cdn.syntrologie.com",Y=fu({cdnBase:P,registry:R.apps,onLoadStart:V=>{Z("Syntro Bootstrap",`Loading app from CDN: ${V}`)},onLoadEnd:(V,J,Q)=>{J?Z("Syntro Bootstrap",`App loaded successfully: ${V}`):Ze("Syntro Bootstrap",`Failed to load app: ${V}`,Q)}});typeof window<"u"&&(window.SynOS={...window.SynOS,appRegistry:R.apps,appLoader:Y,runtime:R,version:R.version},Z("Syntro Bootstrap","Global SynOS object exposed")),typeof window<"u"&&window.parent!==window&&Y.loadApp("adaptive-mcp").catch(V=>{Z("Syntro Bootstrap","auto-load of adaptive-mcp failed (non-fatal):",V)});let F=R.apps.list?.()??[];console.log(`[DIAG] Activation loop: ${F.length} apps in registry:`,F.map(V=>`${V.manifest.id}(${V.state})`).join(", "));for(let V of F)if(V.state==="registered")try{await R.apps.activate(V.manifest.id),console.log(`[DIAG] Activated: ${V.manifest.id} \u2192 widgets: [${R.widgets.list().join(", ")}]`)}catch(J){console.error(`[DIAG] FAILED to activate: ${V.manifest.id}`,J),Ze("Syntro Bootstrap",`Failed to auto-activate built-in app: ${V.manifest.id}`,J)}if(console.log(`[DIAG] Activation complete. Total widgets: [${R.widgets.list().join(", ")}]`),v?.refreshFeatures)try{await v.refreshFeatures(),Z("Syntro Bootstrap","GrowthBook features loaded")}catch(V){Ze("Syntro Bootstrap","Failed to load GrowthBook features:",V)}let L=await h;if(v&&Object.keys(L).length>0){let V={...c,...L,...u};Z("Syntro Bootstrap","Merging geo data into GrowthBook attributes:",L),v.setAttributes?.(V)}let G=await f;G&&v&&(c.surface_type="mcp-app",c.surface_host=G.name,v.setAttributes?.({...c,...L}),R.context.setSurfaceType("mcp-app"),R.context.setSurfaceHost(G.name),Z("Syntro Bootstrap","MCP App detected:",G.name));let K;if(r.fetcher)K=r.fetcher;else if(n?.f){let V=f_(n.f,n.o??{});K=async()=>{let J=await V.fetch();return{...J.config,tiles:J.config.tiles??[]}}}else v&&(K=Ei({experiments:v}));let le=new Set,j=K?async()=>{let V=await K(),J=V.tiles?.length??0,Q=V.actions?.length??0,ue=V.meta?.variant_id;if((J>0||Q>0)&&(ue||console.warn("[Syntro] Config has content but no meta.variant_id \u2014 intervention tracking disabled")),w&&ue){let Ie=typeof window<"u"?window.SynOS??(window.SynOS={}):void 0,dt=Ie?.interventionTracker,zt;dt&&dt.variantId===ue?zt=dt:(zt=new Lo(w,ue),Ie&&(Ie.interventionTracker=zt),R.navigation.subscribe(()=>{zt.resetPage()})),zt.trackServed(J,Q)}console.log("[Syntro Bootstrap] Config fetched:",`tiles=${V.tiles?.length??0},`,`actions=${V.actions?.length??0},`,`theme=${V.theme?.name??"none"}`),V.actions?.length>0&&console.log("[Syntro Bootstrap] Actions in config:",V.actions.map((Ie,dt)=>`[${dt}] ${Ie.kind}${Ie.anchorId?` anchor="${Ie.anchorId.selector}"`:""}${Ie.label?` "${Ie.label}"`:""}`).join(", "));let _e=V,me=Y.getRequiredApps(_e);return me.length>0?console.log("[Syntro Bootstrap] Required external apps:",me.join(", ")):Z("Syntro Bootstrap","No external apps required (all executors are built-in)"),me.length>0&&await Y.loadAppsForConfig(_e).then(async dt=>{let zt=dt.filter(Le=>Le.success),qt=dt.filter(Le=>!Le.success);zt.length>0&&console.log(`[Syntro Bootstrap] Apps loaded from CDN: ${zt.map(Le=>Le.appId).join(", ")}`);let Ji=qt.filter(Le=>!le.has(Le.appId));Ji.length>0&&(console.error("[Syntro Bootstrap] Apps FAILED to load from CDN:",Ji.map(Le=>`${Le.appId} (${Le.error})`).join(", ")),Ji.forEach(Le=>le.add(Le.appId)));for(let Le of me)if(R.apps.has(Le))try{await R.apps.activate(Le),console.log(`[Syntro Bootstrap] App activated: ${Le}`)}catch(Qi){console.error(`[Syntro Bootstrap] Failed to activate app: ${Le}`,Qi)}else console.error(`[Syntro Bootstrap] App "${Le}" required by config but NOT registered.`,`Available apps: [${Array.from(R.apps.list?.()??[]).join(", ")}]`)}),V}:void 0;if(x){Z("Syntro Bootstrap",`Detected platform: ${x.name}`);try{await x.onInit(),Z("Syntro Bootstrap",`Platform adapter initialized: ${x.name}`)}catch(V){Ze("Syntro Bootstrap",`Platform adapter init failed: ${x.name}`,V)}}let te=await sp({...r.canvas,fetcher:j,integrations:{experiments:v,telemetry:w},editorUrl:o,runtime:R});if(te.setOverrideFetcher){let V=te.setOverrideFetcher.bind(te);te.setOverrideFetcher=J=>{V(async()=>{let ue=await J(),_e=ue;if(Y.getRequiredApps(_e).length>0){let Ie=await Y.loadAppsForConfig(_e);for(let dt of Ie)if(dt.success&&R.apps.has(dt.appId))try{await R.apps.activate(dt.appId)}catch{}}return ue})}}let De=rr();if(De!==null)try{let V=w,J=R;De.bindRuntime({getSessionId:()=>{try{return V?.getSessionId?.()??""}catch{return""}},getSurface:()=>{try{let Q=J.context.get().surface;return Q?{...Q}:null}catch{return null}}})}catch{}return De?.increment("bootstrap_ok"),{canvas:te,runtime:R,experiments:v,telemetry:w,sessionMetrics:A,appLoader:Y}}async function BT(r){try{return await Dx(r)}catch(e){let t=e instanceof Error?e.message:String(e);console.warn("[Syntrologie] SDK initialization failed:",t),rr()?.increment("bootstrap_errors"),typeof document<"u"&&document.getElementById("syntrologie-anti-flicker")?.remove();return}}function VT(r,e={}){if(typeof window>"u")return;let t=window.SynOS?.runtime;t?.events?.publish&&t.events.publish({name:r,source:"custom",props:e})}async function UT(r){if(typeof window>"u")return{appId:r,success:!1,error:"no-window"};let e=window.SynOS?.appLoader;return e?e.loadApp(r):{appId:r,success:!1,error:"syntro-not-initialized"}}var Hx={init:BT,loadAdaptive:UT,encodeToken:ap,decodeToken:mo,events:{emit:VT}};typeof window<"u"&&(window.Syntro=Hx);function da(r){let e=r.split(".");return{major:parseInt(e[0]||"0",10),minor:parseInt(e[1]||"0",10)}}function iD(r){let e=[],t=[];if(!r||typeof r!="object")return{valid:!1,errors:["Config must be an object"],warnings:e};let n=r;if(n.tiles||t.push("Config missing required field: tiles"),n.actions||t.push("Config missing required field: actions"),n.fetchedAt||t.push("Config missing required field: fetchedAt"),t.length>0)return{valid:!1,errors:t,warnings:e};let i=n.schemaVersion||"1.0",s=da(i),o=da(Gr);return s.major>o.major&&e.push(`Config schema v${i} is newer than SDK v${Gr}. Some features may not work. Update SDK to latest version.`),s.major<o.major||!n.schemaVersion?(e.push(`Config schema v${i} is older than SDK v${Gr}. Migrating config to current version.`),{valid:!0,warnings:e,errors:t,migratedConfig:jT(n,i)}):{valid:!0,warnings:e,errors:t}}function jT(r,e){let t={...r};return da(e).major===1&&(t=WT(t)),t.schemaVersion=Gr,t}function WT(r){let e={schemaVersion:"2.0",tiles:[],actions:r.actions||[],fetchedAt:r.fetchedAt||new Date().toISOString()};return r.tiles&&Array.isArray(r.tiles)&&(e.tiles=r.tiles.map(t=>{let n={...t};return t.experiment&&delete n.experiment,n})),r.configVersion&&(e.configVersion=r.configVersion),r.canvasTitle&&(e.canvasTitle=r.canvasTitle),r.theme&&(e.theme=r.theme),r.launcher&&(e.launcher=r.launcher),e}function sD(r){if(!r||typeof r!="object")return!1;let e=r,t=e.schemaVersion||"1.0",n=da(t),i=da(Gr);return n.major<i.major||!e.schemaVersion}var zT=d.object({url:d.string(),routeId:d.string().optional(),title:d.string().optional(),locale:d.string().optional()}),qT=d.object({url:d.string(),ts:d.number()}),ZT=d.object({sessionId:d.string(),startTs:d.number(),pageHistory:d.array(qT).optional()}),GT=d.object({width:d.number(),height:d.number()}),KT=d.object({x:d.number(),y:d.number(),w:d.number(),h:d.number()}),YT=d.object({anchorId:d.string(),present:d.boolean(),visible:d.boolean().optional(),boundingBox:KT.optional()}),XT=d.record(d.string(),d.union([d.number(),d.string(),d.boolean(),d.undefined()])),JT=d.object({page:zT,session:ZT,viewport:GT,anchors:d.array(YT).optional(),augmented:XT.optional()});function lD(r){return JT.safeParse(r)}var tg=class{constructor(e,t,n,i){this._isFallback=!0;this._isLoading=!0;this._cancelled=!1;this._host=e,this._runtime=t,this._strategy=n,this._defaultValue=i,this._value=i,e.addController(this)}get value(){return this._value}get isFallback(){return this._isFallback}get isLoading(){return this._isLoading}hostConnected(){this._evaluate()}hostDisconnected(){this._cancelled=!0}setStrategy(e){this._strategy=e,this._evaluate()}_evaluate(){if(this._cancelled=!1,!this._runtime||!this._strategy){this._value=this._defaultValue,this._isFallback=!0,this._isLoading=!1,this._host.requestUpdate();return}this._isLoading=!0,this._host.requestUpdate();let e=this._strategy;this._runtime.evaluate(e).then(t=>{this._cancelled||(this._value=t.value,this._isFallback=t.isFallback,this._isLoading=!1,this._host.requestUpdate())})}};var rg=class{constructor(e,t){this._unsubscribe=null;this.host=e,this._runtime=t,this._context=t.context.get(),e.addController(this)}hostConnected(){this._context=this._runtime.context.get(),this._unsubscribe=this._runtime.context.subscribe(e=>{this._context=e,this.host.requestUpdate()})}hostDisconnected(){this._unsubscribe?.(),this._unsubscribe=null}get runtime(){return this._runtime}get context(){return this._context}get page(){return this._context?.page??null}get session(){return this._context?.session??null}get viewport(){return this._context?.viewport??null}};var ng=class{constructor(e,t,n,i){this._host=e,this._runtime=t,this._filter=n,this._callback=i,e.addController(this)}hostConnected(){this._subscribe()}hostDisconnected(){this._unsubscribe?.(),this._unsubscribe=void 0}setFilter(e){this._filter=e,this._unsubscribe!==void 0&&(this._unsubscribe(),this._unsubscribe=void 0,this._subscribe())}setCallback(e){this._callback=e,this._unsubscribe!==void 0&&(this._unsubscribe(),this._unsubscribe=void 0,this._subscribe())}_subscribe(){this._runtime&&(this._unsubscribe=this._filter?this._runtime.events.subscribe(this._filter,this._callback):this._runtime.events.subscribe(this._callback))}};var Bx=d.enum(["posthog","canvas","derived"]),QT=d.object({ts:d.number(),name:d.string(),source:Bx,props:d.record(d.string(),d.unknown()).optional(),schemaVersion:d.string()}),eR=d.object({names:d.array(d.string()).optional(),patterns:d.array(d.string()).optional(),sources:d.array(Bx).optional()});function MD(r){return QT.safeParse(r)}function PD(r){return eR.safeParse(r)}var Vx=d.union([d.object({type:d.literal("data"),key:d.string(),value:d.string().optional()}),d.object({type:d.literal("css"),value:d.string()}),d.object({type:d.literal("aria"),role:d.string().optional(),label:d.string().optional()}),d.object({type:d.literal("shadow-css"),value:d.string()}),d.object({type:d.literal("ref"),el:d.any()})]),tR=d.object({kind:d.literal("tooltip"),id:d.string(),anchor:Vx,content:d.object({title:d.string().optional(),body:d.string()}),placement:d.enum(["top","bottom","left","right","auto"]).optional(),offsetPx:d.number().optional(),blocking:d.boolean().optional(),trigger:d.enum(["immediate","hover","click"]).optional(),dismiss:d.object({onEsc:d.boolean().optional(),closeButton:d.boolean().optional(),timeoutMs:d.number().optional()}).optional()}),rR=d.object({kind:d.literal("highlight"),id:d.string(),anchor:Vx,copy:d.string().optional(),ring:d.object({paddingPx:d.number().optional(),radiusPx:d.number().optional()}).optional(),scrim:d.object({opacity:d.number().optional()}).optional(),ringColor:d.string().optional(),blocking:d.boolean().optional(),dismiss:d.object({onClickOutside:d.boolean().optional(),onEsc:d.boolean().optional(),timeoutMs:d.number().optional()}).optional()}),ig=d.object({id:d.string(),version:d.number(),routes:d.array(d.string()).optional(),steps:d.array(d.union([tR,rR]))});function GD(r){return ig.parse(r)}var JD=({configUri:r,experiments:e,featureKey:t="smart-canvas-overlay-uri",credentials:n="include"}={})=>async()=>{let i=Sd({configUri:r,experiments:e,featureKey:t});if(!i)throw new Error("SmartCanvas overlays: recipe URI missing (env + feature unset).");let s=await fetch(i,{credentials:n});if(!s.ok)throw new Error(`SmartCanvas overlays: failed to fetch recipe (${s.status})`);let o=await s.json();return ig.parse(o)};var nR=d.object({value:d.unknown(),expiresAt:d.number().optional()}),iR=d.object({count:d.number(),resetAt:d.number().optional()});function t3(r){return nR.safeParse(r)}function r3(r){return iR.safeParse(r)}var Ux="2026-05-07T04:09:15.562Z (e170c20927b)";if(typeof window<"u"){console.log(`[Syntro Runtime] Build: ${Ux} (Lit)`);let r=window.SynOS,e=r?.appRegistry||ws;window.SynOS={...r,appRegistry:e,_runtimeBuild:Ux,_renderer:"lit"},vl(),kv(e)}export{Ro as ANIMATION_KEYFRAMES,kl as ActivationConfigZ,By as AddClassZ,Rt as AnchorIdZ,YT as AnchorStateZ,Vu as AnchorVisibleConditionZ,xs as AppRegistry,XT as AugmentationZ,Ry as BadgePositionZ,qy as BadgeZ,KT as BoundingBoxZ,Xs as CanvasEvents,ig as CanvasRecipeZ,Zr as ConditionZ,tc as ContextManager,Zu as CooldownActiveConditionZ,Bs as CounterDefZ,tp as CtaButtonZ,ed as DEFAULT_COOLDOWN,tg as DecisionController,qs as DecisionStrategyZ,qu as DismissedConditionZ,Ne as EVENT_SCHEMA_VERSION,Ml as EventBus,Ku as EventCountConditionZ,eR as EventFilterZ,yo as EventHistory,Uu as EventOccurredConditionZ,Bx as EventSourceZ,_l as ExecutorRegistry,zs as ExternalStrategyZ,iR as FrequencyEntryZ,Gu as FrequencyLimitConditionZ,rR as HighlightStepZ,Ty as HighlightStyleZ,Wy as HighlightZ,jy as InsertHtmlZ,Py as InsertPositionZ,Lo as InterventionTracker,il as MAX_VISIBLE_TOASTS,Hs as MatchOpZ,My as ModalContentZ,Gy as ModalZ,Ws as ModelStrategyZ,Xy as MountWidgetZ,Yy as NavigateZ,Eo as NavigationMonitor,QT as NormalizedEventZ,Ys as NotificationsController,zT as PageContextZ,qT as PageHistoryEntryZ,Hu as PageUrlConditionZ,eb as ParallelZ,Iy as PlacementZ,zy as PulseZ,Ux as RUNTIME_SDK_BUILD,$_ as RUNTIME_VERSION,Vy as RemoveClassZ,Bu as RouteConditionZ,Cy as RouteFilterZ,Us as RuleStrategyZ,Vs as RuleZ,JT as RuntimeContextZ,rg as RuntimeController,ng as RuntimeEventsController,Gr as SDK_SCHEMA_VERSION,to as SDK_VERSION,A_ as STATIC_SLOT_STYLES,js as ScoreStrategyZ,Fy as ScrollBehaviorZ,ep as ScrollLogicalPositionZ,Ky as ScrollToZ,Vx as SelectorZ,Qy as SequenceZ,ZT as SessionContextZ,zu as SessionMetricConditionZ,Yl as SessionMetricTracker,Hy as SetAttrZ,Uy as SetStyleZ,Dy as SetTextZ,kd as SmartCanvasController,Ai as SmartCanvasElementLit,Xe as StandardEvents,ju as StateEqualsConditionZ,ic as StateStore,nR as StoredValueZ,Hx as Syntro,so as ThemeController,$y as TooltipContentZ,tR as TooltipStepZ,Oy as TooltipTriggerZ,Zy as TooltipZ,Ny as TourStepForSchemaZ,tb as TourZ,Ga as TriggerWhenZ,Wu as ViewportConditionZ,GT as ViewportContextZ,Jy as WaitZ,Ly as WidgetConfigZ,oc as WidgetRegistry,Jp as applyStaticSlotStyles,AC as coreActionStepSchemas,Jd as createActionEngine,rp as createAnchorResolver,Ei as createCanvasConfigFetcher,zp as createContextManager,qp as createDecisionEngine,Zp as createEventAccumulator,vo as createEventBus,Dp as createGrowthBookClient,dh as createNoopClient,JD as createOverlayRecipeFetcher,eg as createPostHogClient,Lv as createPostHogNormalizer,Vp as createSessionMetricTracker,sp as createSmartCanvas,oy as createSmartCanvasController,lh as createSmartCanvasRuntime,Xp as createStateStore,nh as createSurfaceContainer,sh as createSurfaces,E5 as decisionSchemas,mo as decodeToken,ap as encodeToken,w_ as evaluate,b_ as evaluateCondition,__ as evaluateRule,rc as evaluateRuleStrategy,nc as evaluateScoreStrategy,S_ as evaluateSync,Cr as executorRegistry,TC as getAntiFlickerSnippet,hC as getExecutor,sc as getSlotAnchorId,To as getSlotType,ih as getSlotZIndex,Nd as hasExecutor,sD as needsMigration,Gs as normalizePostHogEvent,da as parseVersion,th as playEnterAnimation,rh as playExitAnimation,Ci as registerConfigPredicates,vl as registerSmartCanvasElement,Sd as resolveConfigUri,lC as runtimeContext,Qp as setupAdjacentPositioning,eh as setupInlinePositioning,Ks as shouldNormalizeEvent,ar as validateAction,Sl as validateActions,k5 as validateActivationConfig,w5 as validateCondition,iD as validateConfig,PD as validateEventFilter,yp as validateEventName,r3 as validateFrequencyEntry,MD as validateNormalizedEvent,bp as validateProps,GD as validateRecipe,lD as validateRuntimeContext,t3 as validateStoredValue,S5 as validateStrategy,oh as widgetRegistry};
1066
1066
  /*! Bundled license information:
1067
1067
 
1068
1068
  @lit/reactive-element/css-tag.js: