@syntrologie/runtime-sdk 2.17.0 → 2.19.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 SyntrologieSDK=(()=>{var fa=Object.defineProperty;var cx=Object.getOwnPropertyDescriptor;var ux=Object.getOwnPropertyNames;var dx=Object.prototype.hasOwnProperty;var vg=r=>{throw TypeError(r)};var px=(r,e,t)=>e in r?fa(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var yg=(r,e)=>{for(var t in e)fa(r,t,{get:e[t],enumerable:!0})},hx=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of ux(e))!dx.call(r,i)&&i!==t&&fa(r,i,{get:()=>e[i],enumerable:!(n=cx(e,i))||n.enumerable});return r};var fx=r=>hx(fa({},"__esModule",{value:!0}),r);var Se=(r,e,t)=>px(r,typeof e!="symbol"?e+"":e,t),yu=(r,e,t)=>e.has(r)||vg("Cannot "+t);var q=(r,e,t)=>(yu(r,e,"read from private field"),t?t.call(r):e.get(r)),ye=(r,e,t)=>e.has(r)?vg("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),oe=(r,e,t,n)=>(yu(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),we=(r,e,t)=>(yu(r,e,"access private method"),t);var bu=(r,e,t,n)=>({set _(i){oe(r,e,i,t)},get _(){return q(r,e,n)}});var mR={};yg(mR,{ANIMATION_KEYFRAMES:()=>Yi,ActivationConfigZ:()=>fo,AddClassZ:()=>pp,AnchorIdZ:()=>bt,AnchorStateZ:()=>ex,AnchorVisibleConditionZ:()=>Qa,AppRegistry:()=>pi,AugmentationZ:()=>tx,BadgePositionZ:()=>tp,BadgeZ:()=>yp,BoundingBoxZ:()=>Q0,CanvasEvents:()=>Pi,CanvasRecipeZ:()=>fu,ConditionZ:()=>br,ContextManager:()=>Eo,CooldownActiveConditionZ:()=>sl,CounterDefZ:()=>Si,CtaButtonZ:()=>Ll,DEFAULT_COOLDOWN:()=>vl,DecisionController:()=>du,DecisionStrategyZ:()=>Ti,DismissedConditionZ:()=>il,EVENT_SCHEMA_VERSION:()=>Pe,EventBus:()=>vo,EventCountConditionZ:()=>al,EventFilterZ:()=>ix,EventHistory:()=>Bi,EventOccurredConditionZ:()=>el,EventSourceZ:()=>dg,ExecutorRegistry:()=>po,ExternalStrategyZ:()=>Ri,FrequencyEntryZ:()=>lx,FrequencyLimitConditionZ:()=>ol,HighlightStepZ:()=>ox,HighlightStyleZ:()=>ep,HighlightZ:()=>mp,InsertHtmlZ:()=>gp,InsertPositionZ:()=>sp,InterventionTracker:()=>Xi,MAX_VISIBLE_TOASTS:()=>Qs,MatchOpZ:()=>wi,ModalContentZ:()=>ip,ModalZ:()=>_p,ModelStrategyZ:()=>Ai,MountWidgetZ:()=>Sp,NavigateZ:()=>wp,NavigationMonitor:()=>Gi,NormalizedEventZ:()=>nx,NotificationsController:()=>Mi,PageContextZ:()=>K0,PageHistoryEntryZ:()=>Y0,PageUrlConditionZ:()=>Xa,ParallelZ:()=>Cp,PlacementZ:()=>rp,PulseZ:()=>vp,RUNTIME_SDK_BUILD:()=>hg,RUNTIME_VERSION:()=>bh,RemoveClassZ:()=>hp,RouteConditionZ:()=>Ja,RouteFilterZ:()=>Jd,RuleStrategyZ:()=>Ei,RuleZ:()=>ki,RuntimeContextZ:()=>rx,RuntimeController:()=>pu,RuntimeEventsController:()=>hu,SDK_SCHEMA_VERSION:()=>_r,SDK_VERSION:()=>wl,STATIC_SLOT_STYLES:()=>vh,ScoreStrategyZ:()=>Ci,ScrollBehaviorZ:()=>cp,ScrollLogicalPositionZ:()=>Ol,ScrollToZ:()=>xp,SelectorZ:()=>pg,SequenceZ:()=>Ep,SessionContextZ:()=>X0,SessionMetricConditionZ:()=>nl,SessionMetricTracker:()=>ko,SetAttrZ:()=>dp,SetStyleZ:()=>fp,SetTextZ:()=>up,SmartCanvasController:()=>kl,SmartCanvasElementLit:()=>Un,StandardEvents:()=>qe,StateEqualsConditionZ:()=>tl,StateStore:()=>Io,StoredValueZ:()=>ax,Syntro:()=>ug,ThemeController:()=>Oi,TooltipContentZ:()=>np,TooltipStepZ:()=>sx,TooltipTriggerZ:()=>op,TooltipZ:()=>bp,TourStepForSchemaZ:()=>lp,TourZ:()=>Ap,TriggerWhenZ:()=>Xs,ViewportConditionZ:()=>rl,ViewportContextZ:()=>J0,WaitZ:()=>kp,WidgetConfigZ:()=>ap,WidgetRegistry:()=>Mo,applyStaticSlotStyles:()=>xc,coreActionStepSchemas:()=>my,createActionEngine:()=>Pl,createAnchorResolver:()=>Nl,createCanvasConfigFetcher:()=>Dn,createContextManager:()=>vc,createDecisionEngine:()=>yc,createEventAccumulator:()=>bc,createEventBus:()=>Hi,createGrowthBookClient:()=>dc,createNoopClient:()=>$c,createOverlayRecipeFetcher:()=>hR,createPostHogClient:()=>uu,createPostHogNormalizer:()=>_d,createSessionMetricTracker:()=>pc,createSmartCanvas:()=>Bl,createSmartCanvasController:()=>Ed,createSmartCanvasRuntime:()=>Ic,createStateStore:()=>_c,createSurfaceContainer:()=>Cc,createSurfaces:()=>Rc,decisionSchemas:()=>OE,decodeToken:()=>Di,encodeToken:()=>Vl,evaluate:()=>ph,evaluateCondition:()=>uh,evaluateRule:()=>dh,evaluateRuleStrategy:()=>Co,evaluateScoreStrategy:()=>Ao,evaluateSync:()=>hh,executorRegistry:()=>ir,getAntiFlickerSnippet:()=>by,getExecutor:()=>fy,getSlotAnchorId:()=>$o,getSlotType:()=>Ki,getSlotZIndex:()=>Ac,hasExecutor:()=>Il,needsMigration:()=>lR,normalizePostHogEvent:()=>Ii,parseVersion:()=>ps,playEnterAnimation:()=>kc,playExitAnimation:()=>Ec,registerConfigPredicates:()=>Vn,registerSmartCanvasElement:()=>lo,resolveConfigUri:()=>Sl,runtimeContext:()=>iy,setupAdjacentPositioning:()=>wc,setupInlinePositioning:()=>Sc,shouldNormalizeEvent:()=>$i,validateAction:()=>jt,validateActions:()=>ho,validateActivationConfig:()=>PE,validateCondition:()=>$E,validateConfig:()=>sR,validateEventFilter:()=>dR,validateEventName:()=>zl,validateFrequencyEntry:()=>gR,validateNormalizedEvent:()=>uR,validateProps:()=>ql,validateRecipe:()=>pR,validateRuntimeContext:()=>cR,validateStoredValue:()=>fR,validateStrategy:()=>ME,widgetRegistry:()=>Tc});function gx(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 mx=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 bg(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(!mx.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 _g=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=bg(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=gx(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=bg(p.html))}}};function xg(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 xg(t)}return r}var wg=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=xg(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)}}},Sg=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)}}},kg=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))}}},Eg=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)}}},Cg=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)}}},_u=[{kind:"content:insertHtml",executor:_g},{kind:"content:setText",executor:wg},{kind:"content:setAttr",executor:Sg},{kind:"content:addClass",executor:kg},{kind:"content:removeClass",executor:Eg},{kind:"content:setStyle",executor:Cg}],xu={id:"adaptive-content",version:"1.0.0",name:"Content",description:"DOM manipulation for text, attributes, and styles",executors:_u};var Ag=r=>{throw TypeError(r)},Rg=(r,e,t)=>e.has(r)||Ag("Cannot "+t),Ue=(r,e,t)=>(Rg(r,e,"read from private field"),t?t.call(r):e.get(r)),Lr=(r,e,t)=>e.has(r)?Ag("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),cr=(r,e,t,n)=>(Rg(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var $g=["top","right","bottom","left"];var Nr=Math.min,ur=Math.max,fs=Math.round,gs=Math.floor,Pt=r=>({x:r,y:r}),vx={left:"right",right:"left",bottom:"top",top:"bottom"},yx={start:"end",end:"start"};function ma(r,e,t){return ur(r,Nr(e,t))}function an(r,e){return typeof r=="function"?r(e):r}function Fr(r){return r.split("-")[0]}function ri(r){return r.split("-")[1]}function wu(r){return r==="x"?"y":"x"}function va(r){return r==="y"?"height":"width"}var bx=new Set(["top","bottom"]);function dr(r){return bx.has(Fr(r))?"y":"x"}function ya(r){return wu(dr(r))}function Mg(r,e,t){t===void 0&&(t=!1);let n=ri(r),i=ya(r),s=va(i),o=i==="x"?n===(t?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=hs(o)),[o,hs(o)]}function Pg(r){let e=hs(r);return[ga(r),e,ga(e)]}function ga(r){return r.replace(/start|end/g,e=>yx[e])}var Tg=["left","right"],Ig=["right","left"],_x=["top","bottom"],xx=["bottom","top"];function wx(r,e,t){switch(r){case"top":case"bottom":return t?e?Ig:Tg:e?Tg:Ig;case"left":case"right":return e?_x:xx;default:return[]}}function Og(r,e,t,n){let i=ri(r),s=wx(Fr(r),t==="start",n);return i&&(s=s.map(o=>o+"-"+i),e&&(s=s.concat(s.map(ga)))),s}function hs(r){return r.replace(/left|right|bottom|top/g,e=>vx[e])}function Sx(r){return{top:0,right:0,bottom:0,left:0,...r}}function Su(r){return typeof r!="number"?Sx(r):{top:r,right:r,bottom:r,left:r}}function ln(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 Lg(r,e,t){let{reference:n,floating:i}=r,s=dr(e),o=ya(e),a=va(o),l=Fr(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 Dg(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}=an(e,r),v=Su(f),m=a[h?p==="floating"?"reference":"floating":p],y=ln(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=ln(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 Hg=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}=Lg(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:Dg},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}=Lg(c,h,l)),m=-1)}return{x:u,y:p,placement:h,strategy:i,middlewareData:f}},Bg=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}=an(r,e)||{};if(c==null)return{};let p=Su(u),h={x:t,y:n},f=ya(i),v=va(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=Nr(p[y],$),P=Nr(p[x],$),Y=T,F=_-g[v]-P,L=_/2-g[v]/2+A,G=ma(Y,L,F),K=!l.arrow&&ri(i)!=null&&L!==G&&s.reference[v]/2-(L<Y?T: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 Vg=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}=an(r,e);if((t=s.arrow)!=null&&t.alignmentOffset)return{};let y=Fr(i),x=dr(a),S=Fr(a)===a,b=await(l.isRTL==null?void 0:l.isRTL(c.floating)),w=h||(S||!g?[hs(a)]:Pg(a)),C=v!=="none";!h&&C&&w.push(...Og(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 L=Mg(i,o,b);$.push(A[L[0]],A[L[1]])}if(T=[...T,{placement:i,overflows:$}],!$.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!==dr(G):!1)||T.every(j=>dr(j.placement)===x?j.overflows[0]>0:!0)))return{data:{index:L,overflows:T},reset:{placement:G}};let K=(Y=T.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=T.filter(j=>{if(C){let ee=dr(j.placement);return ee===x||ee==="y"}return!0}).map(j=>[j.placement,j.overflows.filter(ee=>ee>0).reduce((ee,D)=>ee+D,0)]).sort((j,ee)=>j[1]-ee[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 Ng(r,e){return{top:r.top-e.height,right:r.right-e.width,bottom:r.bottom-e.height,left:r.left-e.width}}function Fg(r){return $g.some(e=>r[e]>=0)}var Ug=function(r){return r===void 0&&(r={}),{name:"hide",options:r,async fn(e){let{rects:t,platform:n}=e,{strategy:i="referenceHidden",...s}=an(r,e);switch(i){case"referenceHidden":{let o=await n.detectOverflow(e,{...s,elementContext:"reference"}),a=Ng(o,t.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:Fg(a)}}}case"escaped":{let o=await n.detectOverflow(e,{...s,altBoundary:!0}),a=Ng(o,t.floating);return{data:{escapedOffsets:a,escaped:Fg(a)}}}default:return{}}}}};var kx=new Set(["left","top"]);async function Ex(r,e){let{placement:t,platform:n,elements:i}=r,s=await(n.isRTL==null?void 0:n.isRTL(i.floating)),o=Fr(t),a=ri(t),l=dr(t)==="y",c=kx.has(o)?-1:1,u=s&&l?-1:1,p=an(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 jg=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 Ex(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}}}}},Wg=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}=an(r,e),u={x:t,y:n},p=await s.detectOverflow(e,c),h=dr(Fr(i)),f=wu(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=ma(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=ma(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 ba(){return typeof window<"u"}function cn(r){return qg(r)?(r.nodeName||"").toLowerCase():"#document"}function dt(r){var e;return(r==null||(e=r.ownerDocument)==null?void 0:e.defaultView)||window}function Ot(r){var e;return(e=(qg(r)?r.ownerDocument:r.document)||window.document)==null?void 0:e.documentElement}function qg(r){return ba()?r instanceof Node||r instanceof dt(r).Node:!1}function kt(r){return ba()?r instanceof Element||r instanceof dt(r).Element:!1}function Lt(r){return ba()?r instanceof HTMLElement||r instanceof dt(r).HTMLElement:!1}function zg(r){return!ba()||typeof ShadowRoot>"u"?!1:r instanceof ShadowRoot||r instanceof dt(r).ShadowRoot}var Cx=new Set(["inline","contents"]);function ii(r){let{overflow:e,overflowX:t,overflowY:n,display:i}=Et(r);return/auto|scroll|overlay|hidden|clip/.test(e+n+t)&&!Cx.has(i)}var Ax=new Set(["table","td","th"]);function Zg(r){return Ax.has(cn(r))}var Rx=[":popover-open",":modal"];function ms(r){return Rx.some(e=>{try{return r.matches(e)}catch{return!1}})}var Tx=["transform","translate","scale","rotate","perspective"],Ix=["transform","translate","scale","rotate","perspective","filter"],$x=["paint","layout","strict","content"];function _a(r){let e=xa(),t=kt(r)?Et(r):r;return Tx.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)||Ix.some(n=>(t.willChange||"").includes(n))||$x.some(n=>(t.contain||"").includes(n))}function Gg(r){let e=pr(r);for(;Lt(e)&&!un(e);){if(_a(e))return e;if(ms(e))return null;e=pr(e)}return null}function xa(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}var Mx=new Set(["html","body","#document"]);function un(r){return Mx.has(cn(r))}function Et(r){return dt(r).getComputedStyle(r)}function vs(r){return kt(r)?{scrollLeft:r.scrollLeft,scrollTop:r.scrollTop}:{scrollLeft:r.scrollX,scrollTop:r.scrollY}}function pr(r){if(cn(r)==="html")return r;let e=r.assignedSlot||r.parentNode||zg(r)&&r.host||Ot(r);return zg(e)?e.host:e}function Kg(r){let e=pr(r);return un(e)?r.ownerDocument?r.ownerDocument.body:r.body:Lt(e)&&ii(e)?e:Kg(e)}function ni(r,e,t){var n;e===void 0&&(e=[]),t===void 0&&(t=!0);let i=Kg(r),s=i===((n=r.ownerDocument)==null?void 0:n.body),o=dt(i);if(s){let a=wa(o);return e.concat(o,o.visualViewport||[],ii(i)?i:[],a&&t?ni(a):[])}return e.concat(i,ni(i,[],t))}function wa(r){return r.parent&&Object.getPrototypeOf(r.parent)?r.frameElement:null}function Qg(r){let e=Et(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=fs(t)!==s||fs(n)!==o;return a&&(t=s,n=o),{width:t,height:n,$:a}}function Eu(r){return kt(r)?r:r.contextElement}function si(r){let e=Eu(r);if(!Lt(e))return Pt(1);let t=e.getBoundingClientRect(),{width:n,height:i,$:s}=Qg(e),o=(s?fs(t.width):t.width)/n,a=(s?fs(t.height):t.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}var Px=Pt(0);function em(r){let e=dt(r);return!xa()||!e.visualViewport?Px:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Ox(r,e,t){return e===void 0&&(e=!1),!t||e&&t!==dt(r)?!1:e}function dn(r,e,t,n){e===void 0&&(e=!1),t===void 0&&(t=!1);let i=r.getBoundingClientRect(),s=Eu(r),o=Pt(1);e&&(n?kt(n)&&(o=si(n)):o=si(r));let a=Ox(s,t,n)?em(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=dt(s),f=n&&kt(n)?dt(n):n,v=h,g=wa(v);for(;g&&n&&f!==v;){let m=si(g),y=g.getBoundingClientRect(),x=Et(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=dt(g),g=wa(v)}}return ln({width:u,height:p,x:l,y:c})}function Sa(r,e){let t=vs(r).scrollLeft;return e?e.left+t:dn(Ot(r)).left+t}function tm(r,e){let t=r.getBoundingClientRect(),n=t.left+e.scrollLeft-Sa(r,t),i=t.top+e.scrollTop;return{x:n,y:i}}function Lx(r){let{elements:e,rect:t,offsetParent:n,strategy:i}=r,s=i==="fixed",o=Ot(n),a=e?ms(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)&&((cn(n)!=="body"||ii(o))&&(l=vs(n)),Lt(n))){let f=dn(n);c=si(n),u.x=f.x+n.clientLeft,u.y=f.y+n.clientTop}let h=o&&!p&&!s?tm(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 Nx(r){return Array.from(r.getClientRects())}function Fx(r){let e=Ot(r),t=vs(r),n=r.ownerDocument.body,i=ur(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),s=ur(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),o=-t.scrollLeft+Sa(r),a=-t.scrollTop;return Et(n).direction==="rtl"&&(o+=ur(e.clientWidth,n.clientWidth)-i),{width:i,height:s,x:o,y:a}}var Yg=25;function Dx(r,e){let t=dt(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=xa();(!u||u&&e==="fixed")&&(a=i.offsetLeft,l=i.offsetTop)}let c=Sa(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<=Yg&&(s-=v)}else c<=Yg&&(s+=c);return{width:s,height:o,x:a,y:l}}var Hx=new Set(["absolute","fixed"]);function Bx(r,e){let t=dn(r,!0,e==="fixed"),n=t.top+r.clientTop,i=t.left+r.clientLeft,s=Lt(r)?si(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 Xg(r,e,t){let n;if(e==="viewport")n=Dx(r,t);else if(e==="document")n=Fx(Ot(r));else if(kt(e))n=Bx(e,t);else{let i=em(r);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return ln(n)}function rm(r,e){let t=pr(r);return t===e||!kt(t)||un(t)?!1:Et(t).position==="fixed"||rm(t,e)}function Vx(r,e){let t=e.get(r);if(t)return t;let n=ni(r,[],!1).filter(a=>kt(a)&&cn(a)!=="body"),i=null,s=Et(r).position==="fixed",o=s?pr(r):r;for(;kt(o)&&!un(o);){let a=Et(o),l=_a(o);!l&&a.position==="fixed"&&(i=null),(s?!l&&!i:!l&&a.position==="static"&&!!i&&Hx.has(i.position)||ii(o)&&!l&&rm(r,o))?n=n.filter(u=>u!==o):i=a,o=pr(o)}return e.set(r,n),n}function Ux(r){let{element:e,boundary:t,rootBoundary:n,strategy:i}=r,o=[...t==="clippingAncestors"?ms(e)?[]:Vx(e,this._c):[].concat(t),n],a=o[0],l=o.reduce((c,u)=>{let p=Xg(e,u,i);return c.top=ur(p.top,c.top),c.right=Nr(p.right,c.right),c.bottom=Nr(p.bottom,c.bottom),c.left=ur(p.left,c.left),c},Xg(e,a,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function jx(r){let{width:e,height:t}=Qg(r);return{width:e,height:t}}function Wx(r,e,t){let n=Lt(e),i=Ot(e),s=t==="fixed",o=dn(r,!0,s,e),a={scrollLeft:0,scrollTop:0},l=Pt(0);function c(){l.x=Sa(i)}if(n||!n&&!s)if((cn(e)!=="body"||ii(i))&&(a=vs(e)),n){let f=dn(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?tm(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 ku(r){return Et(r).position==="static"}function Jg(r,e){if(!Lt(r)||Et(r).position==="fixed")return null;if(e)return e(r);let t=r.offsetParent;return Ot(r)===t&&(t=t.ownerDocument.body),t}function nm(r,e){let t=dt(r);if(ms(r))return t;if(!Lt(r)){let i=pr(r);for(;i&&!un(i);){if(kt(i)&&!ku(i))return i;i=pr(i)}return t}let n=Jg(r,e);for(;n&&Zg(n)&&ku(n);)n=Jg(n,e);return n&&un(n)&&ku(n)&&!_a(n)?t:n||Gg(r)||t}var zx=async function(r){let e=this.getOffsetParent||nm,t=this.getDimensions,n=await t(r.floating);return{reference:Wx(r.reference,await e(r.floating),r.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function qx(r){return Et(r).direction==="rtl"}var Zx={convertOffsetParentRelativeRectToViewportRelativeRect:Lx,getDocumentElement:Ot,getClippingRect:Ux,getOffsetParent:nm,getElementRects:zx,getClientRects:Nx,getDimensions:jx,getScale:si,isElement:kt,isRTL:qx};function im(r,e){return r.x===e.x&&r.y===e.y&&r.width===e.width&&r.height===e.height}function Gx(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=gs(p),g=gs(i.clientWidth-(u+h)),m=gs(i.clientHeight-(p+f)),y=gs(u),S={rootMargin:-v+"px "+-g+"px "+-m+"px "+-y+"px",threshold:ur(0,Nr(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&&!im(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 ka(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=Eu(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?Gx(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?dn(r):null;l&&m();function m(){let y=dn(r);g&&!im(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 Ea=jg;var Ca=Wg,Aa=Vg;var sm=Ug,om=Bg;var Ra=(r,e,t)=>{let n=new Map,i={platform:Zx,...t},s={...i.platform,_c:n};return Hg(r,e,{...i,platform:s})};var Ta=globalThis,Ia=Ta.ShadowRoot&&(Ta.ShadyCSS===void 0||Ta.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Cu=Symbol(),am=new WeakMap,ys=class{constructor(e,t,n){if(this._$cssResult$=!0,n!==Cu)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(Ia&&e===void 0){let n=t!==void 0&&t.length===1;n&&(e=am.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&am.set(t,e))}return e}toString(){return this.cssText}},lm=r=>new ys(typeof r=="string"?r:r+"",void 0,Cu),pn=(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 ys(t,r,Cu)},cm=(r,e)=>{if(Ia)r.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let n=document.createElement("style"),i=Ta.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=t.cssText,r.appendChild(n)}},Au=Ia?r=>r:r=>r instanceof CSSStyleSheet?(e=>{let t="";for(let n of e.cssRules)t+=n.cssText;return lm(t)})(r):r;var{is:Kx,defineProperty:Yx,getOwnPropertyDescriptor:Xx,getOwnPropertyNames:Jx,getOwnPropertySymbols:Qx,getPrototypeOf:ew}=Object,Dr=globalThis,um=Dr.trustedTypes,tw=um?um.emptyScript:"",rw=Dr.reactiveElementPolyfillSupport,bs=(r,e)=>r,Ru={toAttribute(r,e){switch(e){case Boolean:r=r?tw: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}},pm=(r,e)=>!Kx(r,e),dm={attribute:!0,type:String,converter:Ru,reflect:!1,useDefault:!1,hasChanged:pm};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),Dr.litPropertyMetadata??(Dr.litPropertyMetadata=new WeakMap);var hr=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=dm){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&&Yx(this.prototype,e,i)}}static getPropertyDescriptor(e,t,n){let{get:i,set:s}=Xx(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)??dm}static _$Ei(){if(this.hasOwnProperty(bs("elementProperties")))return;let e=ew(this);e.finalize(),e.l!==void 0&&(this.l=[...e.l]),this.elementProperties=new Map(e.elementProperties)}static finalize(){if(this.hasOwnProperty(bs("finalized")))return;if(this.finalized=!0,this._$Ei(),this.hasOwnProperty(bs("properties"))){let t=this.properties,n=[...Jx(t),...Qx(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(Au(i))}else e!==void 0&&t.push(Au(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 cm(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:Ru).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:Ru;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??pm)(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){}};hr.elementStyles=[],hr.shadowRootOptions={mode:"open"},hr[bs("elementProperties")]=new Map,hr[bs("finalized")]=new Map,rw?.({ReactiveElement:hr}),(Dr.reactiveElementVersions??(Dr.reactiveElementVersions=[])).push("2.1.2");var xs=globalThis,hm=r=>r,$a=xs.trustedTypes,fm=$a?$a.createPolicy("lit-html",{createHTML:r=>r}):void 0,_m="$lit$",Hr=`lit$${Math.random().toFixed(9).slice(2)}$`,xm="?"+Hr,nw=`<${xm}>`,gn=document,ws=()=>gn.createComment(""),Ss=r=>r===null||typeof r!="object"&&typeof r!="function",Lu=Array.isArray,iw=r=>Lu(r)||typeof r?.[Symbol.iterator]=="function",Tu=`[
2
- \f\r]`,_s=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,gm=/-->/g,mm=/>/g,hn=RegExp(`>|${Tu}(?:([^\\s"'>=/]+)(${Tu}*=${Tu}*(?:[^
3
- \f\r"'\`<>=]|("|')|))|$)`,"g"),vm=/'/g,ym=/"/g,wm=/^(?:script|style|textarea|title)$/i,Nu=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),N=Nu(1),DR=Nu(2),HR=Nu(3),Nt=Symbol.for("lit-noChange"),Q=Symbol.for("lit-nothing"),bm=new WeakMap,fn=gn.createTreeWalker(gn,129);function Sm(r,e){if(!Lu(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return fm!==void 0?fm.createHTML(e):e}var sw=(r,e)=>{let t=r.length-1,n=[],i,s=e===2?"<svg>":e===3?"<math>":"",o=_s;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===_s?u[1]==="!--"?o=gm:u[1]!==void 0?o=mm:u[2]!==void 0?(wm.test(u[2])&&(i=RegExp("</"+u[2],"g")),o=hn):u[3]!==void 0&&(o=hn):o===hn?u[0]===">"?(o=i??_s,p=-1):u[1]===void 0?p=-2:(p=o.lastIndex-u[2].length,c=u[1],o=u[3]===void 0?hn:u[3]==='"'?ym:vm):o===ym||o===vm?o=hn:o===gm||o===mm?o=_s:(o=hn,i=void 0);let f=o===hn&&r[a+1].startsWith("/>")?" ":"";s+=o===_s?l+nw:p>=0?(n.push(c),l.slice(0,p)+_m+l.slice(p)+Hr+f):l+Hr+(p===-2?a:f)}return[Sm(r,s+(r[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),n]},ks=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]=sw(e,t);if(this.el=r.createElement(c,n),fn.currentNode=this.el.content,t===2||t===3){let p=this.el.content.firstChild;p.replaceWith(...p.childNodes)}for(;(i=fn.nextNode())!==null&&l.length<a;){if(i.nodeType===1){if(i.hasAttributes())for(let p of i.getAttributeNames())if(p.endsWith(_m)){let h=u[o++],f=i.getAttribute(p).split(Hr),v=/([.?@])?(.*)/.exec(h);l.push({type:1,index:s,name:v[2],strings:f,ctor:v[1]==="."?$u:v[1]==="?"?Mu:v[1]==="@"?Pu:ai}),i.removeAttribute(p)}else p.startsWith(Hr)&&(l.push({type:6,index:s}),i.removeAttribute(p));if(wm.test(i.tagName)){let p=i.textContent.split(Hr),h=p.length-1;if(h>0){i.textContent=$a?$a.emptyScript:"";for(let f=0;f<h;f++)i.append(p[f],ws()),fn.nextNode(),l.push({type:2,index:++s});i.append(p[h],ws())}}}else if(i.nodeType===8)if(i.data===xm)l.push({type:2,index:s});else{let p=-1;for(;(p=i.data.indexOf(Hr,p+1))!==-1;)l.push({type:7,index:s}),p+=Hr.length-1}s++}}static createElement(e,t){let n=gn.createElement("template");return n.innerHTML=e,n}};function oi(r,e,t=r,n){if(e===Nt)return e;let i=n!==void 0?t._$Co?.[n]:t._$Cl,s=Ss(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 Iu=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??gn).importNode(t,!0);fn.currentNode=i;let s=fn.nextNode(),o=0,a=0,l=n[0];for(;l!==void 0;){if(o===l.index){let c;l.type===2?c=new Es(s,s.nextSibling,this,e):l.type===1?c=new l.ctor(s,l.name,l.strings,this,e):l.type===6&&(c=new Ou(s,this,e)),this._$AV.push(c),l=n[++a]}o!==l?.index&&(s=fn.nextNode(),o++)}return fn.currentNode=gn,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++}},Es=class r{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(e,t,n,i){this.type=2,this._$AH=Q,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),Ss(e)?e===Q||e==null||e===""?(this._$AH!==Q&&this._$AR(),this._$AH=Q):e!==this._$AH&&e!==Nt&&this._(e):e._$litType$!==void 0?this.$(e):e.nodeType!==void 0?this.T(e):iw(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!==Q&&Ss(this._$AH)?this._$AA.nextSibling.data=e:this.T(gn.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=ks.createElement(Sm(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(t);else{let s=new Iu(i,this),o=s.u(this.options);s.p(t),this.T(o),this._$AH=s}}_$AC(e){let t=bm.get(e.strings);return t===void 0&&bm.set(e.strings,t=new ks(e)),t}k(e){Lu(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(ws()),this.O(ws()),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=hm(e).nextSibling;hm(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=Q,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=Q}_$AI(e,t=this,n,i){let s=this.strings,o=!1;if(s===void 0)e=oi(this,e,t,0),o=!Ss(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=oi(this,a[n+l],t,l),c===Nt&&(c=this._$AH[l]),o||(o=!Ss(c)||c!==this._$AH[l]),c===Q?e=Q:e!==Q&&(e+=(c??"")+s[l+1]),this._$AH[l]=c}o&&!i&&this.j(e)}j(e){e===Q?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,e??"")}},$u=class extends ai{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===Q?void 0:e}},Mu=class extends ai{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==Q)}},Pu=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)??Q)===Nt)return;let n=this._$AH,i=e===Q&&n!==Q||e.capture!==n.capture||e.once!==n.once||e.passive!==n.passive,s=e!==Q&&(n===Q||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)}},Ou=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 ow=xs.litHtmlPolyfillSupport;ow?.(ks,Es),(xs.litHtmlVersions??(xs.litHtmlVersions=[])).push("3.3.2");var km=(r,e,t)=>{let n=t?.renderBefore??e,i=n._$litPart$;if(i===void 0){let s=t?.renderBefore??null;n._$litPart$=i=new Es(e.insertBefore(ws(),s),s,void 0,t??{})}return i._$AI(r),i};var Cs=globalThis,be=class extends hr{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=km(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,Cs.litElementHydrateSupport?.({LitElement:be});var aw=Cs.litElementPolyfillSupport;aw?.({LitElement:be});(Cs.litElementVersions??(Cs.litElementVersions=[])).push("4.2.2");var Ma={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},Pa=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 Em="important",lw=" !"+Em,R=Pa(class extends li{constructor(r){if(super(r),r.type!==Ma.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(lw);n.includes("-")||s?t.setProperty(n,s?i.slice(0,-11):i,s?Em:""):t[n]=i}}return Nt}});var cw={light:50,medium:100,heavy:200},uw=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"],dw={init(r,e,t){let n=cw[t.intensity],i=t.colors.length>0?t.colors:uw,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())}},pw={light:20,medium:40,heavy:80},hw="\u{1F389}",fw={init(r,e,t){let n=pw[t.intensity],i=typeof t.props?.emoji=="string"?t.props.emoji:hw,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())}},gw={light:20,medium:40,heavy:80},mw={light:3,medium:4,heavy:5},vw={init(r,e,t){let n=gw[t.intensity],i=mw[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())}},yw={light:30,medium:60,heavy:120},bw={init(r,e,t){let n=yw[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()}}},_w=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 ww(r,e){return[r,e,`${r}cc`,`${e}cc`,"#ffffff",`${r}80`]}function Sw(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 ww(t,n||t)}catch{}return null}var Cm=new Map([["confetti",dw],["fireworks",vw],["sparkles",bw],["emoji-rain",fw]]),kw=async(r,e)=>{let t=Cm.get(r.effect);if(!t)return console.warn(`[adaptive-overlays] Unknown celebration effect: "${r.effect}". Available: ${[...Cm.keys()].join(", ")}`),{cleanup:()=>{}};let n=r.colors??Sw(e.overlayRoot)??xw,i={duration:r.duration??3e3,intensity:r.intensity??"medium",colors:n,props:r.props},s=new _w;return s.start(e.overlayRoot,t,i),e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:celebrate",effect:r.effect}),{cleanup:()=>{s.stop()}}},Hu="syntro_active_tour",Oa=new Map;function Ew(r){try{let e=localStorage.getItem(Hu);if(!e)return null;let t=JSON.parse(e);return t.tourId!==r?null:t}catch{return null}}function Fu(r){try{localStorage.setItem(Hu,JSON.stringify(r))}catch{}}function Cw(){try{localStorage.removeItem(Hu)}catch{}}function Is(){return window.location.pathname}function Aw(r){if(!r.route)return!0;let e=Is();return r.route.includes("*")?new RegExp(`^${r.route.replace(/\*/g,".*")}$`).test(e):e===r.route}var $m=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(Oa.has(t))return{cleanup:async()=>{let S=Oa.get(t);S&&await S.cleanup()}};if(!e.applyAction)throw new Error("Tour executor requires applyAction in context");let o=Ew(t),a=!!o;if(!a&&!s)return{cleanup:()=>{}};o||(o={tourId:t,currentStepId:i||n[0].id,startedAt:Date.now()},Fu(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,Fu(o)}let c=n[l];if(!Aw(c))return e.publishEvent("tour.waiting_for_route",{tourId:t,stepId:c.id,expectedRoute:c.route,currentRoute:Is()}),{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"){Cw(),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,Fu(o),e.publishEvent("tour.step_changed",{tourId:t,previousStepId:c.id,nextStepId:S}),b.route&&b.route!==Is()){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=Is(),b=()=>{let _=Is();_!==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,Oa.delete(t),await v(),f&&f(),e.publishEvent("tour.paused",{tourId:t,stepId:o.currentStepId})};return Oa.set(t,{cleanup:x}),{cleanup:x}},qt={white:"#ffffff",black:"#000000"},pt={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"},De={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Zt={0:"#301f09",1:"#5f3e12",2:"#8f5e1b",3:"#be7d24",4:"#ee9c2d",5:"#f1b057",6:"#f5c481",7:"#f8d7ab",8:"#fcebd5",9:"#fdf5ea"},it={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},vn={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},As={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},Rs={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},Ts={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"},oT={primary:O[10],secondary:O[9],tertiary:O[8]},aT={primary:O[2],secondary:O[0]},lT={primary:O[4],secondary:O[3]},cT={primary:{text:qt.white,icon:qt.white,border:pt[3],backgroundDefault:pt[3],backgroundHover:pt[2]},neutral:{text:O[10],textHover:qt.white,icon:O[10],iconHover:qt.white,border:O[4],background:O[2]},link:{text:qt.white,icon:qt.white,hover:pt[5]},error:{text:it[5],hover:it[6]},success:{text:De[5],hover:De[6]}},uT={slateGrey:{content:O[10],pillOutline:O[10],borderPrimary:O[5],borderSecondary:O[5],background:O[3]},brand:{content:pt[9],pillOutline:pt[9],borderPrimary:pt[6],borderSecondary:pt[6],background:pt[0]},red:{content:it[8],pillOutline:it[4],borderPrimary:it[2],borderSecondary:it[2],background:it[0]},yellow:{content:Zt[8],pillOutline:Zt[4],borderPrimary:Zt[2],borderSecondary:Zt[2],background:Zt[0]},green:{content:De[8],pillOutline:De[4],borderPrimary:De[2],borderSecondary:De[2],background:De[0]},purple:{content:Rs[8],pillOutline:Rs[4],borderPrimary:Rs[2],borderSecondary:Rs[2],background:Rs[0]},blue:{content:vn[8],pillOutline:vn[4],borderPrimary:vn[2],borderSecondary:vn[2],background:vn[0]},orange:{content:As[8],pillOutline:As[4],borderPrimary:As[2],borderSecondary:As[2],background:As[0]},pink:{content:Ts[8],pillOutline:Ts[4],borderPrimary:Ts[2],borderSecondary:Ts[2],background:Ts[0]}},dT={green:{content:De[8],border:De[2],background:De[0]},yellow:{content:Zt[8],border:Zt[2],background:Zt[0]},red:{content:it[8],border:it[2],background:it[0]}},pT={green:{content:De[1],background:De[9]},yellow:{content:Zt[1],background:Zt[9]},red:{content:it[1],background:it[9]}},hT={content:O[10],border:O[4],background:O[3]},fT={backgroundDefault:O[2],backgroundHover:O[1],selected:O[3]},gT={background:O[2],icon:O[10],borderDefault:O[4],borderSelected:pt[3],textLabel:O[9],textPlaceholder:O[8],textHint:O[8]},mT={backgroundDefault:O[2],backgroundDisabled:O[0],textLabel:O[9],textPlaceholder:O[8],textHint:O[8],textError:it[5],iconDefault:O[9],iconPlaceholder:O[10],iconError:it[5],borderDefault:O[4],borderSelected:pt[3],borderError:it[5]},vT={handleDefault:qt.white,handleDisabled:O[10],off:{backgroundDefault:O[4],backgroundHover:O[5],backgroundDisabled:O[4]},on:{backgroundDefault:De[3],backgroundHover:De[2],backgroundDisabled:O[4]}},yT={off:{backgroundDefault:"#00000000",backgroundHover:O[5],backgroundDisabled:O[2],border:O[6]},on:{backgroundDefault:De[0],backgroundHover:De[1],backgroundDisabled:O[2],border:De[3]}},bT={content:O[10],background:O[4]},_T={background:O[4],active:De[3]},xT={background:O[1],content:O[9],border:O[4]},wT={backgroundDefault:O[1],backgroundHover:O[3],backgroundActive:O[4],border:O[4],contentPrimary:O[10],contentSecondary:O[9],contentTertiary:O[8]},ST={background:O[1],content:O[9],border:O[4]},kT={activeBackground:O[3],activeContent:pt[5],inactiveContent:O[9],border:O[4]},ET={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]}},CT={textPrimaryDefault:O[10],textPrimaryHover:O[10],textSecondaryDefault:O[8],textSecondaryHover:O[9],iconPrimary:O[10],iconSecondary:O[8]},AT={background:De[1],active:De[5]},RT={textDefault:O[10],textSelected:qt.white,textDisabled:O[7],backgroundDefault:O[2],backgroundMiddle:O[3],backgroundSelected:pt[3],border:O[4]},TT=O[9],IT={size:56,inset:12,background:qt.black,color:qt.white,border:`2px solid ${pt[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)"},Am=typeof CSS<"u"&&CSS.supports?.("clip-path","path('M0 0 H1 V1 Z')");function Rw(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, ${vn[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||vn[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(!Am)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,P=$.top-n,Y=$.width+n*2,F=$.height+n*2;if(Object.assign(g.style,{left:`${T}px`,top:`${P}px`,width:`${Y}px`,height:`${F}px`}),Am){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 ${T+K} ${P} A ${K} ${K} 0 0 0 ${T} ${P+K} L ${T} ${P+F-K} A ${K} ${K} 0 0 0 ${T+K} ${P+F} L ${T+Y-K} ${P+F} A ${K} ${K} 0 0 0 ${T+Y} ${P+F-K} L ${T+Y} ${P+K} A ${K} ${K} 0 0 0 ${T+Y-K} ${P} L ${T+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:`${T}px`,height:`${F}px`}),Object.assign(G.style,{left:`${T+Y}px`,top:`${P}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 Tw=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 Gt(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(!Tw.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 mn={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)"},Mm=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 SyntrologieSDK=(()=>{var Ca=Object.defineProperty;var aw=Object.getOwnPropertyDescriptor;var lw=Object.getOwnPropertyNames;var cw=Object.prototype.hasOwnProperty;var Yg=r=>{throw TypeError(r)};var uw=(r,e,t)=>e in r?Ca(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var Xg=(r,e)=>{for(var t in e)Ca(r,t,{get:e[t],enumerable:!0})},dw=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of lw(e))!cw.call(r,i)&&i!==t&&Ca(r,i,{get:()=>e[i],enumerable:!(n=aw(e,i))||n.enumerable});return r};var pw=r=>dw(Ca({},"__esModule",{value:!0}),r);var pe=(r,e,t)=>uw(r,typeof e!="symbol"?e+"":e,t),Mu=(r,e,t)=>e.has(r)||Yg("Cannot "+t);var q=(r,e,t)=>(Mu(r,e,"read from private field"),t?t.call(r):e.get(r)),ye=(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),oe=(r,e,t,n)=>(Mu(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),we=(r,e,t)=>(Mu(r,e,"access private method"),t);var Pu=(r,e,t,n)=>({set _(i){oe(r,e,i,t)},get _(){return q(r,e,n)}});var yR={};Xg(yR,{ANIMATION_KEYFRAMES:()=>is,ActivationConfigZ:()=>Ao,AddClassZ:()=>zp,AnchorIdZ:()=>_t,AnchorStateZ:()=>Jx,AnchorVisibleConditionZ:()=>dl,AppRegistry:()=>vi,AugmentationZ:()=>Qx,BadgePositionZ:()=>Op,BadgeZ:()=>Xp,BoundingBoxZ:()=>Xx,CanvasEvents:()=>Di,CanvasRecipeZ:()=>Iu,ConditionZ:()=>Sr,ContextManager:()=>Do,CooldownActiveConditionZ:()=>vl,CounterDefZ:()=>Ti,CtaButtonZ:()=>Xl,DEFAULT_COOLDOWN:()=>Rl,DecisionController:()=>Au,DecisionStrategyZ:()=>Oi,DismissedConditionZ:()=>ml,EVENT_SCHEMA_VERSION:()=>Pe,EventBus:()=>Io,EventCountConditionZ:()=>bl,EventFilterZ:()=>rw,EventHistory:()=>Gi,EventOccurredConditionZ:()=>pl,EventSourceZ:()=>Wg,ExecutorRegistry:()=>Eo,ExternalStrategyZ:()=>Pi,FrequencyEntryZ:()=>ow,FrequencyLimitConditionZ:()=>yl,HighlightStepZ:()=>iw,HighlightStyleZ:()=>Pp,HighlightZ:()=>Kp,InsertHtmlZ:()=>Gp,InsertPositionZ:()=>Dp,InterventionTracker:()=>ss,MAX_VISIBLE_TOASTS:()=>co,MatchOpZ:()=>Ai,ModalContentZ:()=>Fp,ModalZ:()=>Qp,ModelStrategyZ:()=>Mi,MountWidgetZ:()=>rh,NavigateZ:()=>th,NavigationMonitor:()=>rs,NormalizedEventZ:()=>tw,NotificationsController:()=>Fi,PageContextZ:()=>Zx,PageHistoryEntryZ:()=>Gx,PageUrlConditionZ:()=>cl,ParallelZ:()=>sh,PlacementZ:()=>Lp,PulseZ:()=>Yp,RUNTIME_SDK_BUILD:()=>qg,RUNTIME_VERSION:()=>Jh,RemoveClassZ:()=>qp,RouteConditionZ:()=>ul,RouteFilterZ:()=>$p,RuleStrategyZ:()=>Ii,RuleZ:()=>Ri,RuntimeContextZ:()=>ew,RuntimeController:()=>Tu,RuntimeEventsController:()=>Ru,SDK_SCHEMA_VERSION:()=>Er,SDK_VERSION:()=>Vi,STATIC_SLOT_STYLES:()=>Yh,ScoreStrategyZ:()=>$i,ScrollBehaviorZ:()=>Up,ScrollLogicalPositionZ:()=>Yl,ScrollToZ:()=>eh,SelectorZ:()=>zg,SequenceZ:()=>ih,SessionContextZ:()=>Kx,SessionMetricConditionZ:()=>gl,SessionMetricTracker:()=>Fo,SetAttrZ:()=>Wp,SetStyleZ:()=>Zp,SetTextZ:()=>jp,SmartCanvasController:()=>Bl,SmartCanvasElementLit:()=>Zn,StandardEvents:()=>Ze,StateEqualsConditionZ:()=>hl,StateStore:()=>jo,StoredValueZ:()=>sw,Syntro:()=>jg,ThemeController:()=>Ui,TooltipContentZ:()=>Np,TooltipStepZ:()=>nw,TooltipTriggerZ:()=>Hp,TooltipZ:()=>Jp,TourStepForSchemaZ:()=>Vp,TourZ:()=>oh,TriggerWhenZ:()=>ao,ViewportConditionZ:()=>fl,ViewportContextZ:()=>Yx,WaitZ:()=>nh,WidgetConfigZ:()=>Bp,WidgetRegistry:()=>zo,applyStaticSlotStyles:()=>Fc,coreActionStepSchemas:()=>fb,createActionEngine:()=>Kl,createAnchorResolver:()=>Jl,createCanvasConfigFetcher:()=>jn,createContextManager:()=>Pc,createDecisionEngine:()=>Oc,createEventAccumulator:()=>Lc,createEventBus:()=>Zi,createGrowthBookClient:()=>Ac,createNoopClient:()=>Zc,createOverlayRecipeFetcher:()=>gR,createPostHogClient:()=>Cu,createPostHogNormalizer:()=>Od,createSessionMetricTracker:()=>Tc,createSmartCanvas:()=>rc,createSmartCanvasController:()=>ip,createSmartCanvasRuntime:()=>qc,createStateStore:()=>Nc,createSurfaceContainer:()=>Uc,createSurfaces:()=>Wc,decisionSchemas:()=>NC,decodeToken:()=>qi,encodeToken:()=>nc,evaluate:()=>zh,evaluateCondition:()=>jh,evaluateRule:()=>Wh,evaluateRuleStrategy:()=>Ho,evaluateScoreStrategy:()=>Bo,evaluateSync:()=>qh,executorRegistry:()=>lr,getAntiFlickerSnippet:()=>vb,getExecutor:()=>pb,getSlotAnchorId:()=>Wo,getSlotType:()=>ns,getSlotZIndex:()=>jc,hasExecutor:()=>ql,needsMigration:()=>uR,normalizePostHogEvent:()=>Li,parseVersion:()=>_s,playEnterAnimation:()=>Bc,playExitAnimation:()=>Vc,registerConfigPredicates:()=>qn,registerSmartCanvasElement:()=>wo,resolveConfigUri:()=>Hl,runtimeContext:()=>rb,setupAdjacentPositioning:()=>Dc,setupInlinePositioning:()=>Hc,shouldNormalizeEvent:()=>Ni,validateAction:()=>Wt,validateActions:()=>Co,validateActivationConfig:()=>LC,validateCondition:()=>PC,validateConfig:()=>aR,validateEventFilter:()=>hR,validateEventName:()=>ac,validateFrequencyEntry:()=>vR,validateNormalizedEvent:()=>pR,validateProps:()=>lc,validateRecipe:()=>fR,validateRuntimeContext:()=>dR,validateStoredValue:()=>mR,validateStrategy:()=>OC,widgetRegistry:()=>zc});function hw(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 fw=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 Jg(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(!fw.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 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-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=Jg(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=hw(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=Jg(p.html))}}};function em(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 em(t)}return r}var 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-content] Anchor not found after waiting: ${r.anchorId.selector}`),{cleanup:()=>{}};let n=em(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)}}},rm=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)}}},nm=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))}}},im=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)}}},sm=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)}}},Ou=[{kind:"content:insertHtml",executor:Qg},{kind:"content:setText",executor:tm},{kind:"content:setAttr",executor:rm},{kind:"content:addClass",executor:nm},{kind:"content:removeClass",executor:im},{kind:"content:setStyle",executor:sm}],Lu={id:"adaptive-content",version:"1.0.0",name:"Content",description:"DOM manipulation for text, attributes, and styles",executors:Ou};var om=r=>{throw TypeError(r)},am=(r,e,t)=>e.has(r)||om("Cannot "+t),je=(r,e,t)=>(am(r,e,"read from private field"),t?t.call(r):e.get(r)),Br=(r,e,t)=>e.has(r)?om("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),hr=(r,e,t,n)=>(am(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t);var um=["top","right","bottom","left"];var Vr=Math.min,fr=Math.max,ks=Math.round,Es=Math.floor,Pt=r=>({x:r,y:r}),gw={left:"right",right:"left",bottom:"top",top:"bottom"},mw={start:"end",end:"start"};function Ta(r,e,t){return fr(r,Vr(e,t))}function pn(r,e){return typeof r=="function"?r(e):r}function Ur(r){return r.split("-")[0]}function ai(r){return r.split("-")[1]}function Nu(r){return r==="x"?"y":"x"}function Ra(r){return r==="y"?"height":"width"}var vw=new Set(["top","bottom"]);function gr(r){return vw.has(Ur(r))?"y":"x"}function Ia(r){return Nu(gr(r))}function dm(r,e,t){t===void 0&&(t=!1);let n=ai(r),i=Ia(r),s=Ra(i),o=i==="x"?n===(t?"end":"start")?"right":"left":n==="start"?"bottom":"top";return e.reference[s]>e.floating[s]&&(o=Ss(o)),[o,Ss(o)]}function pm(r){let e=Ss(r);return[Aa(r),e,Aa(e)]}function Aa(r){return r.replace(/start|end/g,e=>mw[e])}var lm=["left","right"],cm=["right","left"],yw=["top","bottom"],bw=["bottom","top"];function _w(r,e,t){switch(r){case"top":case"bottom":return t?e?cm:lm:e?lm:cm;case"left":case"right":return e?yw:bw;default:return[]}}function hm(r,e,t,n){let i=ai(r),s=_w(Ur(r),t==="start",n);return i&&(s=s.map(o=>o+"-"+i),e&&(s=s.concat(s.map(Aa)))),s}function Ss(r){return r.replace(/left|right|bottom|top/g,e=>gw[e])}function xw(r){return{top:0,right:0,bottom:0,left:0,...r}}function Fu(r){return typeof r!="number"?xw(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 fm(r,e,t){let{reference:n,floating:i}=r,s=gr(e),o=Ia(e),a=Ra(o),l=Ur(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(ai(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 vm(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=Fu(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 ym=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}=fm(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:vm},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}=fm(c,h,l)),m=-1)}return{x:u,y:p,placement:h,strategy:i,middlewareData:f}},bm=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=Fu(u),h={x:t,y:n},f=Ia(i),v=Ra(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,R=Vr(p[y],$),P=Vr(p[x],$),Y=R,F=_-g[v]-P,L=_/2-g[v]/2+A,G=Ta(Y,L,F),K=!l.arrow&&ai(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 _m=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=Ur(i),x=gr(a),S=Ur(a)===a,b=await(l.isRTL==null?void 0:l.isRTL(c.floating)),w=h||(S||!g?[Ss(a)]:pm(a)),C=v!=="none";!h&&C&&w.push(...hm(a,g,v,b));let _=[a,...w],A=await l.detectOverflow(e,m),$=[],R=((n=s.flip)==null?void 0:n.overflows)||[];if(u&&$.push(A[y]),p){let L=dm(i,o,b);$.push(A[L[0]],A[L[1]])}if(R=[...R,{placement:i,overflows:$}],!$.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!==gr(G):!1)||R.every(j=>gr(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(C){let te=gr(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 gm(r,e){return{top:r.top-e.height,right:r.right-e.width,bottom:r.bottom-e.height,left:r.left-e.width}}function mm(r){return um.some(e=>r[e]>=0)}var xm=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=gm(o,t.reference);return{data:{referenceHiddenOffsets:a,referenceHidden:mm(a)}}}case"escaped":{let o=await n.detectOverflow(e,{...s,altBoundary:!0}),a=gm(o,t.floating);return{data:{escapedOffsets:a,escaped:mm(a)}}}default:return{}}}}};var ww=new Set(["left","top"]);async function Sw(r,e){let{placement:t,platform:n,elements:i}=r,s=await(n.isRTL==null?void 0:n.isRTL(i.floating)),o=Ur(t),a=ai(t),l=gr(t)==="y",c=ww.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 wm=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 Sw(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}}}}},Sm=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=gr(Ur(i)),f=Nu(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=Ta(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=Ta(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 $a(){return typeof window<"u"}function fn(r){return Em(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=(Em(r)?r.ownerDocument:r.document)||window.document)==null?void 0:e.documentElement}function Em(r){return $a()?r instanceof Node||r instanceof pt(r).Node:!1}function kt(r){return $a()?r instanceof Element||r instanceof pt(r).Element:!1}function Lt(r){return $a()?r instanceof HTMLElement||r instanceof pt(r).HTMLElement:!1}function km(r){return!$a()||typeof ShadowRoot>"u"?!1:r instanceof ShadowRoot||r instanceof pt(r).ShadowRoot}var kw=new Set(["inline","contents"]);function ci(r){let{overflow:e,overflowX:t,overflowY:n,display:i}=Et(r);return/auto|scroll|overlay|hidden|clip/.test(e+n+t)&&!kw.has(i)}var Ew=new Set(["table","td","th"]);function Cm(r){return Ew.has(fn(r))}var Cw=[":popover-open",":modal"];function Cs(r){return Cw.some(e=>{try{return r.matches(e)}catch{return!1}})}var Aw=["transform","translate","scale","rotate","perspective"],Tw=["transform","translate","scale","rotate","perspective","filter"],Rw=["paint","layout","strict","content"];function Ma(r){let e=Pa(),t=kt(r)?Et(r):r;return Aw.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)||Tw.some(n=>(t.willChange||"").includes(n))||Rw.some(n=>(t.contain||"").includes(n))}function Am(r){let e=mr(r);for(;Lt(e)&&!gn(e);){if(Ma(e))return e;if(Cs(e))return null;e=mr(e)}return null}function Pa(){return typeof CSS>"u"||!CSS.supports?!1:CSS.supports("-webkit-backdrop-filter","none")}var Iw=new Set(["html","body","#document"]);function gn(r){return Iw.has(fn(r))}function Et(r){return pt(r).getComputedStyle(r)}function As(r){return kt(r)?{scrollLeft:r.scrollLeft,scrollTop:r.scrollTop}:{scrollLeft:r.scrollX,scrollTop:r.scrollY}}function mr(r){if(fn(r)==="html")return r;let e=r.assignedSlot||r.parentNode||km(r)&&r.host||Ot(r);return km(e)?e.host:e}function Tm(r){let e=mr(r);return gn(e)?r.ownerDocument?r.ownerDocument.body:r.body:Lt(e)&&ci(e)?e:Tm(e)}function li(r,e,t){var n;e===void 0&&(e=[]),t===void 0&&(t=!0);let i=Tm(r),s=i===((n=r.ownerDocument)==null?void 0:n.body),o=pt(i);if(s){let a=Oa(o);return e.concat(o,o.visualViewport||[],ci(i)?i:[],a&&t?li(a):[])}return e.concat(i,li(i,[],t))}function Oa(r){return r.parent&&Object.getPrototypeOf(r.parent)?r.frameElement:null}function Mm(r){let e=Et(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=ks(t)!==s||ks(n)!==o;return a&&(t=s,n=o),{width:t,height:n,$:a}}function Hu(r){return kt(r)?r:r.contextElement}function ui(r){let e=Hu(r);if(!Lt(e))return Pt(1);let t=e.getBoundingClientRect(),{width:n,height:i,$:s}=Mm(e),o=(s?ks(t.width):t.width)/n,a=(s?ks(t.height):t.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!a||!Number.isFinite(a))&&(a=1),{x:o,y:a}}var $w=Pt(0);function Pm(r){let e=pt(r);return!Pa()||!e.visualViewport?$w:{x:e.visualViewport.offsetLeft,y:e.visualViewport.offsetTop}}function Mw(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=Hu(r),o=Pt(1);e&&(n?kt(n)&&(o=ui(n)):o=ui(r));let a=Mw(s,t,n)?Pm(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&&kt(n)?pt(n):n,v=h,g=Oa(v);for(;g&&n&&f!==v;){let m=ui(g),y=g.getBoundingClientRect(),x=Et(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=Oa(v)}}return hn({width:u,height:p,x:l,y:c})}function La(r,e){let t=As(r).scrollLeft;return e?e.left+t:mn(Ot(r)).left+t}function Om(r,e){let t=r.getBoundingClientRect(),n=t.left+e.scrollLeft-La(r,t),i=t.top+e.scrollTop;return{x:n,y:i}}function Pw(r){let{elements:e,rect:t,offsetParent:n,strategy:i}=r,s=i==="fixed",o=Ot(n),a=e?Cs(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"||ci(o))&&(l=As(n)),Lt(n))){let f=mn(n);c=ui(n),u.x=f.x+n.clientLeft,u.y=f.y+n.clientTop}let h=o&&!p&&!s?Om(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 Ow(r){return Array.from(r.getClientRects())}function Lw(r){let e=Ot(r),t=As(r),n=r.ownerDocument.body,i=fr(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),s=fr(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),o=-t.scrollLeft+La(r),a=-t.scrollTop;return Et(n).direction==="rtl"&&(o+=fr(e.clientWidth,n.clientWidth)-i),{width:i,height:s,x:o,y:a}}var Rm=25;function Nw(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=Pa();(!u||u&&e==="fixed")&&(a=i.offsetLeft,l=i.offsetTop)}let c=La(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<=Rm&&(s-=v)}else c<=Rm&&(s+=c);return{width:s,height:o,x:a,y:l}}var Fw=new Set(["absolute","fixed"]);function Dw(r,e){let t=mn(r,!0,e==="fixed"),n=t.top+r.clientTop,i=t.left+r.clientLeft,s=Lt(r)?ui(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 Im(r,e,t){let n;if(e==="viewport")n=Nw(r,t);else if(e==="document")n=Lw(Ot(r));else if(kt(e))n=Dw(e,t);else{let i=Pm(r);n={x:e.x-i.x,y:e.y-i.y,width:e.width,height:e.height}}return hn(n)}function Lm(r,e){let t=mr(r);return t===e||!kt(t)||gn(t)?!1:Et(t).position==="fixed"||Lm(t,e)}function Hw(r,e){let t=e.get(r);if(t)return t;let n=li(r,[],!1).filter(a=>kt(a)&&fn(a)!=="body"),i=null,s=Et(r).position==="fixed",o=s?mr(r):r;for(;kt(o)&&!gn(o);){let a=Et(o),l=Ma(o);!l&&a.position==="fixed"&&(i=null),(s?!l&&!i:!l&&a.position==="static"&&!!i&&Fw.has(i.position)||ci(o)&&!l&&Lm(r,o))?n=n.filter(u=>u!==o):i=a,o=mr(o)}return e.set(r,n),n}function Bw(r){let{element:e,boundary:t,rootBoundary:n,strategy:i}=r,o=[...t==="clippingAncestors"?Cs(e)?[]:Hw(e,this._c):[].concat(t),n],a=o[0],l=o.reduce((c,u)=>{let p=Im(e,u,i);return c.top=fr(p.top,c.top),c.right=Vr(p.right,c.right),c.bottom=Vr(p.bottom,c.bottom),c.left=fr(p.left,c.left),c},Im(e,a,i));return{width:l.right-l.left,height:l.bottom-l.top,x:l.left,y:l.top}}function Vw(r){let{width:e,height:t}=Mm(r);return{width:e,height:t}}function Uw(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=La(i)}if(n||!n&&!s)if((fn(e)!=="body"||ci(i))&&(a=As(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?Om(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 Du(r){return Et(r).position==="static"}function $m(r,e){if(!Lt(r)||Et(r).position==="fixed")return null;if(e)return e(r);let t=r.offsetParent;return Ot(r)===t&&(t=t.ownerDocument.body),t}function Nm(r,e){let t=pt(r);if(Cs(r))return t;if(!Lt(r)){let i=mr(r);for(;i&&!gn(i);){if(kt(i)&&!Du(i))return i;i=mr(i)}return t}let n=$m(r,e);for(;n&&Cm(n)&&Du(n);)n=$m(n,e);return n&&gn(n)&&Du(n)&&!Ma(n)?t:n||Am(r)||t}var jw=async function(r){let e=this.getOffsetParent||Nm,t=this.getDimensions,n=await t(r.floating);return{reference:Uw(r.reference,await e(r.floating),r.strategy),floating:{x:0,y:0,width:n.width,height:n.height}}};function Ww(r){return Et(r).direction==="rtl"}var zw={convertOffsetParentRelativeRectToViewportRelativeRect:Pw,getDocumentElement:Ot,getClippingRect:Bw,getOffsetParent:Nm,getElementRects:jw,getClientRects:Ow,getDimensions:Vw,getScale:ui,isElement:kt,isRTL:Ww};function Fm(r,e){return r.x===e.x&&r.y===e.y&&r.width===e.width&&r.height===e.height}function qw(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=Es(p),g=Es(i.clientWidth-(u+h)),m=Es(i.clientHeight-(p+f)),y=Es(u),S={rootMargin:-v+"px "+-g+"px "+-m+"px "+-y+"px",threshold:fr(0,Vr(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&&!Fm(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 Na(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=Hu(r),u=i||s?[...c?li(c):[],...li(e)]:[];u.forEach(y=>{i&&y.addEventListener("scroll",t,{passive:!0}),s&&y.addEventListener("resize",t)});let p=c&&a?qw(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&&!Fm(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 Fa=wm;var Da=Sm,Ha=_m;var Dm=xm,Hm=bm;var Ba=(r,e,t)=>{let n=new Map,i={platform:zw,...t},s={...i.platform,_c:n};return ym(r,e,{...i,platform:s})};var Va=globalThis,Ua=Va.ShadowRoot&&(Va.ShadyCSS===void 0||Va.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,Bu=Symbol(),Bm=new WeakMap,Ts=class{constructor(e,t,n){if(this._$cssResult$=!0,n!==Bu)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(Ua&&e===void 0){let n=t!==void 0&&t.length===1;n&&(e=Bm.get(t)),e===void 0&&((this.o=e=new CSSStyleSheet).replaceSync(this.cssText),n&&Bm.set(t,e))}return e}toString(){return this.cssText}},Vm=r=>new Ts(typeof r=="string"?r:r+"",void 0,Bu),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 Ts(t,r,Bu)},Um=(r,e)=>{if(Ua)r.adoptedStyleSheets=e.map(t=>t instanceof CSSStyleSheet?t:t.styleSheet);else for(let t of e){let n=document.createElement("style"),i=Va.litNonce;i!==void 0&&n.setAttribute("nonce",i),n.textContent=t.cssText,r.appendChild(n)}},Vu=Ua?r=>r:r=>r instanceof CSSStyleSheet?(e=>{let t="";for(let n of e.cssRules)t+=n.cssText;return Vm(t)})(r):r;var{is:Zw,defineProperty:Gw,getOwnPropertyDescriptor:Kw,getOwnPropertyNames:Yw,getOwnPropertySymbols:Xw,getPrototypeOf:Jw}=Object,jr=globalThis,jm=jr.trustedTypes,Qw=jm?jm.emptyScript:"",e1=jr.reactiveElementPolyfillSupport,Rs=(r,e)=>r,Uu={toAttribute(r,e){switch(e){case Boolean:r=r?Qw: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}},zm=(r,e)=>!Zw(r,e),Wm={attribute:!0,type:String,converter:Uu,reflect:!1,useDefault:!1,hasChanged:zm};Symbol.metadata??(Symbol.metadata=Symbol("metadata")),jr.litPropertyMetadata??(jr.litPropertyMetadata=new WeakMap);var vr=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=Wm){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&&Gw(this.prototype,e,i)}}static getPropertyDescriptor(e,t,n){let{get:i,set:s}=Kw(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)??Wm}static _$Ei(){if(this.hasOwnProperty(Rs("elementProperties")))return;let e=Jw(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=[...Yw(t),...Xw(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(Vu(i))}else e!==void 0&&t.push(Vu(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 Um(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:Uu).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:Uu;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??zm)(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){}};vr.elementStyles=[],vr.shadowRootOptions={mode:"open"},vr[Rs("elementProperties")]=new Map,vr[Rs("finalized")]=new Map,e1?.({ReactiveElement:vr}),(jr.reactiveElementVersions??(jr.reactiveElementVersions=[])).push("2.1.2");var $s=globalThis,qm=r=>r,ja=$s.trustedTypes,Zm=ja?ja.createPolicy("lit-html",{createHTML:r=>r}):void 0,Qm="$lit$",Wr=`lit$${Math.random().toFixed(9).slice(2)}$`,ev="?"+Wr,t1=`<${ev}>`,_n=document,Ms=()=>_n.createComment(""),Ps=r=>r===null||typeof r!="object"&&typeof r!="function",Ku=Array.isArray,r1=r=>Ku(r)||typeof r?.[Symbol.iterator]=="function",ju=`[
2
+ \f\r]`,Is=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,Gm=/-->/g,Km=/>/g,yn=RegExp(`>|${ju}(?:([^\\s"'>=/]+)(${ju}*=${ju}*(?:[^
3
+ \f\r"'\`<>=]|("|')|))|$)`,"g"),Ym=/'/g,Xm=/"/g,tv=/^(?:script|style|textarea|title)$/i,Yu=r=>(e,...t)=>({_$litType$:r,strings:e,values:t}),N=Yu(1),BR=Yu(2),VR=Yu(3),Nt=Symbol.for("lit-noChange"),ee=Symbol.for("lit-nothing"),Jm=new WeakMap,bn=_n.createTreeWalker(_n,129);function rv(r,e){if(!Ku(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return Zm!==void 0?Zm.createHTML(e):e}var n1=(r,e)=>{let t=r.length-1,n=[],i,s=e===2?"<svg>":e===3?"<math>":"",o=Is;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===Is?u[1]==="!--"?o=Gm:u[1]!==void 0?o=Km:u[2]!==void 0?(tv.test(u[2])&&(i=RegExp("</"+u[2],"g")),o=yn):u[3]!==void 0&&(o=yn):o===yn?u[0]===">"?(o=i??Is,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]==='"'?Xm:Ym):o===Xm||o===Ym?o=yn:o===Gm||o===Km?o=Is:(o=yn,i=void 0);let f=o===yn&&r[a+1].startsWith("/>")?" ":"";s+=o===Is?l+t1:p>=0?(n.push(c),l.slice(0,p)+Qm+l.slice(p)+Wr+f):l+Wr+(p===-2?a:f)}return[rv(r,s+(r[t]||"<?>")+(e===2?"</svg>":e===3?"</math>":"")),n]},Os=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]=n1(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(Qm)){let h=u[o++],f=i.getAttribute(p).split(Wr),v=/([.?@])?(.*)/.exec(h);l.push({type:1,index:s,name:v[2],strings:f,ctor:v[1]==="."?zu:v[1]==="?"?qu:v[1]==="@"?Zu:pi}),i.removeAttribute(p)}else p.startsWith(Wr)&&(l.push({type:6,index:s}),i.removeAttribute(p));if(tv.test(i.tagName)){let p=i.textContent.split(Wr),h=p.length-1;if(h>0){i.textContent=ja?ja.emptyScript:"";for(let f=0;f<h;f++)i.append(p[f],Ms()),bn.nextNode(),l.push({type:2,index:++s});i.append(p[h],Ms())}}}else if(i.nodeType===8)if(i.data===ev)l.push({type:2,index:s});else{let p=-1;for(;(p=i.data.indexOf(Wr,p+1))!==-1;)l.push({type:7,index:s}),p+=Wr.length-1}s++}}static createElement(e,t){let n=_n.createElement("template");return n.innerHTML=e,n}};function di(r,e,t=r,n){if(e===Nt)return e;let i=n!==void 0?t._$Co?.[n]:t._$Cl,s=Ps(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=di(r,i._$AS(r,e.values),i,n)),e}var Wu=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 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 Gu(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++}},Ls=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=di(this,e,t),Ps(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):r1(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&&Ps(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=Os.createElement(rv(n.h,n.h[0]),this.options)),n);if(this._$AH?._$AD===i)this._$AH.p(t);else{let s=new Wu(i,this),o=s.u(this.options);s.p(t),this.T(o),this._$AH=s}}_$AC(e){let t=Jm.get(e.strings);return t===void 0&&Jm.set(e.strings,t=new Os(e)),t}k(e){Ku(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(Ms()),this.O(Ms()),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=qm(e).nextSibling;qm(e).remove(),e=n}}setConnected(e){this._$AM===void 0&&(this._$Cv=e,this._$AP?.(e))}},pi=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=di(this,e,t,0),o=!Ps(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=di(this,a[n+l],t,l),c===Nt&&(c=this._$AH[l]),o||(o=!Ps(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??"")}},zu=class extends pi{constructor(){super(...arguments),this.type=3}j(e){this.element[this.name]=e===ee?void 0:e}},qu=class extends pi{constructor(){super(...arguments),this.type=4}j(e){this.element.toggleAttribute(this.name,!!e&&e!==ee)}},Zu=class extends pi{constructor(e,t,n,i,s){super(e,t,n,i,s),this.type=5}_$AI(e,t=this){if((e=di(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)}},Gu=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){di(this,e)}};var i1=$s.litHtmlPolyfillSupport;i1?.(Os,Ls),($s.litHtmlVersions??($s.litHtmlVersions=[])).push("3.3.2");var nv=(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(Ms(),s),s,void 0,t??{})}return i._$AI(r),i};var Ns=globalThis,be=class extends vr{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=nv(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,Ns.litElementHydrateSupport?.({LitElement:be});var s1=Ns.litElementPolyfillSupport;s1?.({LitElement:be});(Ns.litElementVersions??(Ns.litElementVersions=[])).push("4.2.2");var Wa={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},za=r=>(...e)=>({_$litDirective$:r,values:e}),hi=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 iv="important",o1=" !"+iv,T=za(class extends hi{constructor(r){if(super(r),r.type!==Wa.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(o1);n.includes("-")||s?t.setProperty(n,s?i.slice(0,-11):i,s?iv:""):t[n]=i}}return Nt}});var a1={light:50,medium:100,heavy:200},l1=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"],c1={init(r,e,t){let n=a1[t.intensity],i=t.colors.length>0?t.colors:l1,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())}},u1={light:20,medium:40,heavy:80},d1="\u{1F389}",p1={init(r,e,t){let n=u1[t.intensity],i=typeof t.props?.emoji=="string"?t.props.emoji:d1,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())}},h1={light:20,medium:40,heavy:80},f1={light:3,medium:4,heavy:5},g1={init(r,e,t){let n=h1[t.intensity],i=f1[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())}},m1={light:30,medium:60,heavy:120},v1={init(r,e,t){let n=m1[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()}}},y1=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)}},b1=["#ff0000","#00ff00","#0000ff","#ffff00","#ff00ff","#00ffff","#ff8800","#8800ff"];function _1(r,e){return[r,e,`${r}cc`,`${e}cc`,"#ffffff",`${r}80`]}function x1(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 _1(t,n||t)}catch{}return null}var sv=new Map([["confetti",c1],["fireworks",g1],["sparkles",v1],["emoji-rain",p1]]),w1=async(r,e)=>{let t=sv.get(r.effect);if(!t)return console.warn(`[adaptive-overlays] Unknown celebration effect: "${r.effect}". Available: ${[...sv.keys()].join(", ")}`),{cleanup:()=>{}};let n=r.colors??x1(e.overlayRoot)??b1,i={duration:r.duration??3e3,intensity:r.intensity??"medium",colors:n,props:r.props},s=new y1;return s.start(e.overlayRoot,t,i),e.publishEvent("action.applied",{id:e.generateId(),kind:"overlays:celebrate",effect:r.effect}),{cleanup:()=>{s.stop()}}},Qu="syntro_active_tour",qa=new Map;function S1(r){try{let e=localStorage.getItem(Qu);if(!e)return null;let t=JSON.parse(e);return t.tourId!==r?null:t}catch{return null}}function Xu(r){try{localStorage.setItem(Qu,JSON.stringify(r))}catch{}}function k1(){try{localStorage.removeItem(Qu)}catch{}}function Bs(){return window.location.pathname}function E1(r){if(!r.route)return!0;let e=Bs();return r.route.includes("*")?new RegExp(`^${r.route.replace(/\*/g,".*")}$`).test(e):e===r.route}var uv=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(qa.has(t))return{cleanup:async()=>{let S=qa.get(t);S&&await S.cleanup()}};if(!e.applyAction)throw new Error("Tour executor requires applyAction in context");let o=S1(t),a=!!o;if(!a&&!s)return{cleanup:()=>{}};o||(o={tourId:t,currentStepId:i||n[0].id,startedAt:Date.now()},Xu(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,Xu(o)}let c=n[l];if(!E1(c))return e.publishEvent("tour.waiting_for_route",{tourId:t,stepId:c.id,expectedRoute:c.route,currentRoute:Bs()}),{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"){k1(),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,Xu(o),e.publishEvent("tour.step_changed",{tourId:t,previousStepId:c.id,nextStepId:S}),b.route&&b.route!==Bs()){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=Bs(),b=()=>{let _=Bs();_!==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,qa.delete(t),await v(),f&&f(),e.publishEvent("tour.paused",{tourId:t,stepId:o.currentStepId})};return qa.set(t,{cleanup:x}),{cleanup:x}},Gt={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"},Kt={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"},Ds={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},Hs={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"},lI={primary:O[10],secondary:O[9],tertiary:O[8]},cI={primary:O[2],secondary:O[0]},uI={primary:O[4],secondary:O[3]},dI={primary:{text:Gt.white,icon:Gt.white,border:ht[3],backgroundDefault:ht[3],backgroundHover:ht[2]},neutral:{text:O[10],textHover:Gt.white,icon:O[10],iconHover:Gt.white,border:O[4],background:O[2]},link:{text:Gt.white,icon:Gt.white,hover:ht[5]},error:{text:st[5],hover:st[6]},success:{text:He[5],hover:He[6]}},pI={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:Kt[8],pillOutline:Kt[4],borderPrimary:Kt[2],borderSecondary:Kt[2],background:Kt[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: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:Hs[8],pillOutline:Hs[4],borderPrimary:Hs[2],borderSecondary:Hs[2],background:Hs[0]}},hI={green:{content:He[8],border:He[2],background:He[0]},yellow:{content:Kt[8],border:Kt[2],background:Kt[0]},red:{content:st[8],border:st[2],background:st[0]}},fI={green:{content:He[1],background:He[9]},yellow:{content:Kt[1],background:Kt[9]},red:{content:st[1],background:st[9]}},gI={content:O[10],border:O[4],background:O[3]},mI={backgroundDefault:O[2],backgroundHover:O[1],selected:O[3]},vI={background:O[2],icon:O[10],borderDefault:O[4],borderSelected:ht[3],textLabel:O[9],textPlaceholder:O[8],textHint:O[8]},yI={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]},bI={handleDefault:Gt.white,handleDisabled:O[10],off:{backgroundDefault:O[4],backgroundHover:O[5],backgroundDisabled:O[4]},on:{backgroundDefault:He[3],backgroundHover:He[2],backgroundDisabled:O[4]}},_I={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]}},xI={content:O[10],background:O[4]},wI={background:O[4],active:He[3]},SI={background:O[1],content:O[9],border:O[4]},kI={backgroundDefault:O[1],backgroundHover:O[3],backgroundActive:O[4],border:O[4],contentPrimary:O[10],contentSecondary:O[9],contentTertiary:O[8]},EI={background:O[1],content:O[9],border:O[4]},CI={activeBackground:O[3],activeContent:ht[5],inactiveContent:O[9],border:O[4]},AI={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]}},TI={textPrimaryDefault:O[10],textPrimaryHover:O[10],textSecondaryDefault:O[8],textSecondaryHover:O[9],iconPrimary:O[10],iconSecondary:O[8]},RI={background:He[1],active:He[5]},II={textDefault:O[10],textSelected:Gt.white,textDisabled:O[7],backgroundDefault:O[2],backgroundMiddle:O[3],backgroundSelected:ht[3],border:O[4]},$I=O[9],MI={size:56,inset:12,background:Gt.black,color:Gt.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)"},ov=typeof CSS<"u"&&CSS.supports?.("clip-path","path('M0 0 H1 V1 Z')");function C1(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(!ov)for(let $=0;$<4;$++){let R=document.createElement("div");R.style.position="fixed",R.style.background="inherit",m.push(R),f.appendChild(R)}let y=$=>{f.style.clipPath=$,f.style.webkitClipPath=$},x=()=>{if(!r.isConnected){A.destroy();return}let $=r.getBoundingClientRect(),R=$.left-n,P=$.top-n,Y=$.width+n*2,F=$.height+n*2;if(Object.assign(g.style,{left:`${R}px`,top:`${P}px`,width:`${Y}px`,height:`${F}px`}),ov){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 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 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 Yt(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)"},dv=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 SyntrologieSDK=(()=>{var fa=Object.defineProperty;var cx=Object.getOwnProper
14
14
  transform: translate(-50%, -50%) scale(0.95);
15
15
  max-width: ${u[n]};
16
16
  width: 90%;
17
- background: ${mn.bg};
18
- border-radius: ${mn.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: ${mn.title};">${Gt(t.title)}</h2>`),p+=`<div class="syntro-modal-body" style="color: ${mn.text}; line-height: 1.5;">${Gt(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};">${Yt(t.title)}</h2>`),p+=`<div class="syntro-modal-body" style="color: ${xn.text}; line-height: 1.5;">${Yt(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,7 +30,7 @@ var SyntrologieSDK=(()=>{var fa=Object.defineProperty;var cx=Object.getOwnProper
30
30
  border: none;
31
31
  cursor: pointer;
32
32
  padding: 4px;
33
- color: ${mn.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">
@@ -40,7 +40,7 @@ var SyntrologieSDK=(()=>{var fa=Object.defineProperty;var cx=Object.getOwnProper
40
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+=`
41
41
  <button
42
42
  class="syntro-modal-btn ${C?"syntro-modal-btn-primary":""}"
43
- data-syntro-action="${Gt(w.actionId)}"
43
+ data-syntro-action="${Yt(w.actionId)}"
44
44
  style="
45
45
  padding: 10px 20px;
46
46
  border-radius: 8px;
@@ -48,67 +48,67 @@ var SyntrologieSDK=(()=>{var fa=Object.defineProperty;var cx=Object.getOwnProper
48
48
  font-weight: 500;
49
49
  cursor: pointer;
50
50
  transition: background 150ms ease;
51
- ${C?`background: ${mn.accent}; color: white; border: none;`:`background: transparent; color: ${mn.accent}; border: 1px solid currentColor; opacity: 0.7;`}
51
+ ${C?`background: ${xn.accent}; color: white; border: none;`:`background: transparent; color: ${xn.accent}; border: 1px solid currentColor; opacity: 0.7;`}
52
52
  "
53
53
  >
54
- ${Gt(w.label)}
54
+ ${Yt(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 Iw(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 $w(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=Gt(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=[Ea(t.offsetPx??8),Aa(),Ca({padding:8}),sm(),om({element:o})],l=t.placement&&t.placement!=="auto"?t.placement:"top",c=ka(r,n,async()=>{if(!r.isConnected){v.destroy();return}let g=Iw(r),m=await Ra(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 Rm="#1969fe",Mw="#24ad32",Pw="#0e1114",Du="#677384",Ow="#a8afba",Tm="#f6f7f9",Lw="#ffffff";function Im(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, ${Lw})`,color:`var(--se-color-text-primary, ${Pw})`,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 Nw(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",$s,Ms,ci,fr,Ps,La,ui,Bu=class extends be{constructor(){super(...arguments),this.runtimeRef=null,this._workflowEntries=[],this._actionVersion=0,Lr(this,$s,null),Lr(this,Ms,null),Lr(this,ci,[]),Lr(this,fr,new Set),Lr(this,Ps,{}),Lr(this,La,!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=Nw(r);if(cr(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,fr).has(s)&&o.notification&&!a.includes(s)&&!l[s]){Ue(this,fr).add(s),t?.set("notified",[...Ue(this,fr)]);let c=Im(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();cr(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,La)&&this._stateNs){let r=this._stateNs.get("notified")??[];for(let t of r)Ue(this,fr).add(t);let e=this._stateNs.get("completed")??{};cr(this,Ps,{...e}),cr(this,La,!0)}cr(this,$s,this.runtimeRef.events.subscribe({names:["tour.started","tour.resumed"]},()=>{this._actionVersion+=1})),cr(this,Ms,this.runtimeRef.events.subscribe({patterns:["^tour\\."]},r=>{this._handleTourEvent(r)})),this._rescanWorkflows()}}_teardownSubscriptions(){var r,e;(r=Ue(this,$s))==null||r.call(this),cr(this,$s,null),(e=Ue(this,Ms))==null||e.call(this),cr(this,Ms,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,fr).has(e)){Ue(this,fr).add(e),t?.set("notified",[...Ue(this,fr)]);let o=Ue(this,ui).get(e);if(o?.meta.notification){let a=Im(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,Ps)[e]=i,t?.set("completed",{...Ue(this,Ps)}),{...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, ${Rm})`,transition:"width 0.3s ease",width:`${t}%`};return N`
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");_&&(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 T1(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 R1(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=Yt(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=[Fa(t.offsetPx??8),Ha(),Da({padding:8}),Dm(),Hm({element:o})],l=t.placement&&t.placement!=="auto"?t.placement:"top",c=Na(r,n,async()=>{if(!r.isConnected){v.destroy();return}let g=T1(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 R={top:"0deg",right:"90deg",bottom:"180deg",left:"270deg"};o.style.transform=`rotate(${R[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 av="#1969fe",I1="#24ad32",$1="#0e1114",Ju="#677384",M1="#a8afba",lv="#f6f7f9",P1="#ffffff";function cv(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, ${P1})`,color:`var(--se-color-text-primary, ${$1})`,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 O1(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 mi="syntro-workflow-tracker",Vs,Us,fi,yr,js,Za,gi,ed=class extends be{constructor(){super(...arguments),this.runtimeRef=null,this._workflowEntries=[],this._actionVersion=0,Br(this,Vs,null),Br(this,Us,null),Br(this,fi,[]),Br(this,yr,new Set),Br(this,js,{}),Br(this,Za,!1),Br(this,gi,new Map)}createRenderRoot(){return this}get _stateNs(){return this.runtimeRef?.state?.user?.ns?.("workflows")??null}_rescanWorkflows(){let r=this.runtimeRef?.actions?.getActive?.()??[],e=O1(r);if(hr(this,gi,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,yr).has(s)&&o.notification&&!a.includes(s)&&!l[s]){je(this,yr).add(s),t?.set("notified",[...je(this,yr)]);let c=cv(o.notification);je(this,fi).push(c)}}}connectedCallback(){super.connectedCallback(),this._initSubscriptions()}disconnectedCallback(){super.disconnectedCallback(),this._teardownSubscriptions();for(let r of je(this,fi))r();hr(this,fi,[])}updated(r){r.has("runtimeRef")&&(this._teardownSubscriptions(),this._initSubscriptions()),r.has("_actionVersion")&&this._rescanWorkflows()}_initSubscriptions(){if(this.runtimeRef?.events?.subscribe){if(!je(this,Za)&&this._stateNs){let r=this._stateNs.get("notified")??[];for(let t of r)je(this,yr).add(t);let e=this._stateNs.get("completed")??{};hr(this,js,{...e}),hr(this,Za,!0)}hr(this,Vs,this.runtimeRef.events.subscribe({names:["tour.started","tour.resumed"]},()=>{this._actionVersion+=1})),hr(this,Us,this.runtimeRef.events.subscribe({patterns:["^tour\\."]},r=>{this._handleTourEvent(r)})),this._rescanWorkflows()}}_teardownSubscriptions(){var r,e;(r=je(this,Vs))==null||r.call(this),hr(this,Vs,null),(e=je(this,Us))==null||e.call(this),hr(this,Us,null)}_handleTourEvent(r){let e=r.props?.tourId;if(!e)return;if(!je(this,gi).has(e)&&r.name==="tour.started"){this._actionVersion+=1;return}if(!je(this,gi).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,yr).has(e)){je(this,yr).add(e),t?.set("notified",[...je(this,yr)]);let o=je(this,gi).get(e);if(o?.meta.notification){let a=cv(o.meta.notification);je(this,fi).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,js)[e]=i,t?.set("completed",{...je(this,js)}),{...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, ${av})`,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, ${Tm})`:`var(--se-color-text-secondary, ${Ow})`,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, ${Rm})`:"rgba(255,255,255,0.12)"},a={color:`var(--se-color-success, ${Mw})`},l={flex:"1",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},c=e?N`<span role="img" aria-label="completed" style=${R(a)}>&#10003;</span>`:t?N`<span style=${R(o)}></span>`:N`<span style=${R(o)}></span>`;return N`
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, ${lv})`:`var(--se-color-text-secondary, ${M1})`,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, ${av})`:"rgba(255,255,255,0.12)"},a={color:`var(--se-color-success, ${I1})`},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":Q}
71
- data-completed=${e?"true":Q}
72
- aria-current=${t?"step":Q}
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, ${Tm})`,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},o={flexShrink:"0",padding:"2px 6px",border:"none",borderRadius:"4px",background:"transparent",color:`var(--se-color-text-tertiary, ${Du})`,fontSize:"12px",cursor:"pointer",lineHeight:"1"},a={marginBottom:"8px"},l={fontSize:"10px",color:`var(--se-color-text-tertiary, ${Du})`,marginTop:"4px"},c={display:"flex",flexDirection:"column"};return N`
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, ${lv})`,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},o={flexShrink:"0",padding:"2px 6px",border:"none",borderRadius:"4px",background:"transparent",color:`var(--se-color-text-tertiary, ${Ju})`,fontSize:"12px",cursor:"pointer",lineHeight:"1"},a={marginBottom:"8px"},l={fontSize:"10px",color:`var(--se-color-text-tertiary, ${Ju})`,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?N`<span data-testid="workflow-icon" style="flex-shrink:0;font-size:14px">${r.meta.icon}</span>`:Q}
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, ${Du})`};return N`<div style=${R(t)}>No active workflows</div>`}return N`
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, ${Ju})`};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
- `}};$s=new WeakMap;Ms=new WeakMap;ci=new WeakMap;fr=new WeakMap;Ps=new WeakMap;La=new WeakMap;ui=new WeakMap;Bu.properties={runtimeRef:{attribute:!1},_workflowEntries:{state:!0},_actionVersion:{state:!0}};typeof window<"u"&&!customElements.get(di)&&customElements.define(di,Bu);var Fw={mount(r,e){let t=e?.runtime??null;typeof window<"u"&&!customElements.get(di)&&customElements.define(di,Bu);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}},Pm=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=Rw(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")}}},Om=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
+ `}};Vs=new WeakMap;Us=new WeakMap;fi=new WeakMap;yr=new WeakMap;js=new WeakMap;Za=new WeakMap;gi=new WeakMap;ed.properties={runtimeRef:{attribute:!1},_workflowEntries:{state:!0},_actionVersion:{state:!0}};typeof window<"u"&&!customElements.get(mi)&&customElements.define(mi,ed);var L1={mount(r,e){let t=e?.runtime??null;typeof window<"u"&&!customElements.get(mi)&&customElements.define(mi,ed);let n=document.createElement(mi);return n.runtimeRef=t,r.appendChild(n),()=>{n.remove()}},update(r,e){let t=r.querySelector(mi);if(!t)return;let n=e?.runtime??null;t.runtimeRef=n}},pv=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=C1(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")}}},hv=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,23 +132,23 @@ var SyntrologieSDK=(()=>{var fa=Object.defineProperty;var cx=Object.getOwnProper
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"))}}},Lm=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)}}},Nm=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">${Gt(n.title)}</div>`),i+=`<div class="syntro-tt-body">${Gt(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"))}}},fv=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)}}},gv=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">${Yt(n.title)}</div>`),i+=`<div class="syntro-tt-body">${Yt(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
- data-syntro-action="${Gt(o.actionId)}"
138
+ data-syntro-action="${Yt(o.actionId)}"
139
139
  >
140
- ${Gt(o.label)}
140
+ ${Yt(o.label)}
141
141
  </button>
142
142
  `}i+="</div>"}else n.cta&&(i+=`<div class="syntro-tt-actions">
143
143
  <button class="syntro-tt-btn syntro-tt-btn-primary" data-syntro-action="cta">
144
- ${Gt(n.cta.label)}
144
+ ${Yt(n.cta.label)}
145
145
  </button>
146
- </div>`);let s=$w(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()}}},Vu=[{kind:"overlays:highlight",executor:Pm},{kind:"overlays:pulse",executor:Om},{kind:"overlays:badge",executor:Lm},{kind:"overlays:tooltip",executor:Nm},{kind:"overlays:modal",executor:Mm},{kind:"overlays:tour",executor:$m},{kind:"overlays:celebrate",executor:kw}],Uu={id:"adaptive-overlays",version:"1.0.0",name:"Overlays",description:"Tooltips, highlights, badges, modals, celebrations, visual overlays, and workflow tracking",executors:Vu,widgets:[{id:"adaptive-overlays:workflow-tracker",component:Fw,metadata:{name:"Workflow Tracker",icon:"\u{1F4CB}",description:"Tracks multi-step workflow progress across tours"}}]};function ju(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 Wu(r,e){e.executors.unregisterBySource(r),e.widgets.unregisterBySource(r)}var Dw=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"]),Hw=new Set(["adaptive-content","adaptive-faq","adaptive-nav","adaptive-overlays"]),Bw={faq:"adaptive-faq",nav:"adaptive-nav",gamification:"adaptive-gamification",overlays:"adaptive-overlays",content:"adaptive-content","adaptive-viz":"adaptive-viz"};function Fm(r){return Bw[r]??r}function Dm(r){return Dw.has(r)}function Hm(r){if(Dm(r))return null;let e=r.indexOf(":");return e===-1?null:Fm(r.slice(0,e))}function zu(r){let e=r.indexOf(":");return e===-1?null:Fm(r.slice(0,e))}function qu(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=Hm(y.kind);if(x&&m.add(x),y.kind==="core:mountWidget"){let S=y.widget?.widgetId;if(S){let b=zu(S);b&&m.add(b)}}}if(g.tiles){for(let y of g.tiles)if(y.widget){let x=zu(y.widget);x&&m.add(x)}}for(let y of Hw)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 pi=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=ju({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)}Wu(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()}},Os=new pi;var Ls=class extends li{constructor(e){if(super(e),this.it=Q,e.type!==Ma.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(e){if(e===Q||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:[]}}};Ls.directiveName="unsafeHTML",Ls.resultType=1;var Na=Pa(Ls);function Yu(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var _n=Yu();function qm(r){_n=r}var yn={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(st.caret,"$1"),t=t.replace(i,o),n},getRegex:()=>new RegExp(t,e)};return n}var Vw=(()=>{try{return!!new RegExp("(?<=1)(?<!1)")}catch{return!1}})(),st={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)}}>`)},Uw=/^(?:[ \t]*(?:\n|$))+/,jw=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Ww=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Hs=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zw=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Xu=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Zm=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Gm=me(Zm).replace(/bull/g,Xu).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(),qw=me(Zm).replace(/bull/g,Xu).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(),Ju=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Zw=/^[^\n]+/,Qu=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,Gw=me(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Qu).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Kw=me(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,Xu).getRegex(),Ua="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",ed=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,Yw=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",ed).replace("tag",Ua).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Km=me(Ju).replace("hr",Hs).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",Ua).getRegex(),Xw=me(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Km).getRegex(),td={blockquote:Xw,code:jw,def:Gw,fences:Ww,heading:zw,hr:Hs,html:Yw,lheading:Gm,list:Kw,newline:Uw,paragraph:Km,table:yn,text:Zw},Bm=me("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Hs).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",Ua).getRegex(),Jw={...td,lheading:qw,table:Bm,paragraph:me(Ju).replace("hr",Hs).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Bm).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",Ua).getRegex()},Qw={...td,html:me(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",ed).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:yn,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:me(Ju).replace("hr",Hs).replace("heading",` *#{1,6} *[^
147
- ]`).replace("lheading",Gm).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},e1=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,t1=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Ym=/^( {2,}|\\)\n(?!\s*$)/,r1=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,ja=/[\p{P}\p{S}]/u,rd=/[\s\p{P}\p{S}]/u,Xm=/[^\s\p{P}\p{S}]/u,n1=me(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,rd).getRegex(),Jm=/(?!~)[\p{P}\p{S}]/u,i1=/(?!~)[\s\p{P}\p{S}]/u,s1=/(?:[^\s\p{P}\p{S}]|~)/u,Qm=/(?![*_])[\p{P}\p{S}]/u,o1=/(?![*_])[\s\p{P}\p{S}]/u,a1=/(?:[^\s\p{P}\p{S}]|[*_])/u,l1=me(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Vw?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),ev=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,c1=me(ev,"u").replace(/punct/g,ja).getRegex(),u1=me(ev,"u").replace(/punct/g,Jm).getRegex(),tv="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",d1=me(tv,"gu").replace(/notPunctSpace/g,Xm).replace(/punctSpace/g,rd).replace(/punct/g,ja).getRegex(),p1=me(tv,"gu").replace(/notPunctSpace/g,s1).replace(/punctSpace/g,i1).replace(/punct/g,Jm).getRegex(),h1=me("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Xm).replace(/punctSpace/g,rd).replace(/punct/g,ja).getRegex(),f1=me(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,Qm).getRegex(),g1="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",m1=me(g1,"gu").replace(/notPunctSpace/g,a1).replace(/punctSpace/g,o1).replace(/punct/g,Qm).getRegex(),v1=me(/\\(punct)/,"gu").replace(/punct/g,ja).getRegex(),y1=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(),b1=me(ed).replace("(?:-->|$)","-->").getRegex(),_1=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",b1).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Ha=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,x1=me(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Ha).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),rv=me(/^!?\[(label)\]\[(ref)\]/).replace("label",Ha).replace("ref",Qu).getRegex(),nv=me(/^!?\[(ref)\](?:\[\])?/).replace("ref",Qu).getRegex(),w1=me("reflink|nolink(?!\\()","g").replace("reflink",rv).replace("nolink",nv).getRegex(),Vm=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,nd={_backpedal:yn,anyPunctuation:v1,autolink:y1,blockSkip:l1,br:Ym,code:t1,del:yn,delLDelim:yn,delRDelim:yn,emStrongLDelim:c1,emStrongRDelimAst:d1,emStrongRDelimUnd:h1,escape:e1,link:x1,nolink:nv,punctuation:n1,reflink:rv,reflinkSearch:w1,tag:_1,text:r1,url:yn},S1={...nd,link:me(/^!?\[(label)\]\((.*?)\)/).replace("label",Ha).getRegex(),reflink:me(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Ha).getRegex()},Zu={...nd,emStrongRDelimAst:p1,emStrongLDelim:u1,delLDelim:f1,delRDelim:m1,url:me(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Vm).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",Vm).getRegex()},k1={...Zu,br:me(Ym).replace("{2,}","*").getRegex(),text:me(Zu.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Fa={normal:td,gfm:Jw,pedantic:Qw},Ns={normal:nd,gfm:Zu,breaks:k1,pedantic:S1},E1={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},Um=r=>E1[r];function Kt(r,e){if(e){if(st.escapeTest.test(r))return r.replace(st.escapeReplace,Um)}else if(st.escapeTestNoEncode.test(r))return r.replace(st.escapeReplaceNoEncode,Um);return r}function jm(r){try{r=encodeURI(r).replace(st.percentDecode,"%")}catch{return null}return r}function Wm(r,e){let t=r.replace(st.findPipe,(s,o,a)=>{let l=!1,c=o;for(;--c>=0&&a[c]==="\\";)l=!l;return l?"|":" |"}),n=t.split(st.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(st.slashPipe,"|");return n}function Fs(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 C1(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 A1(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 zm(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 R1(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=R1(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()}}},td=[{kind:"overlays:highlight",executor:pv},{kind:"overlays:pulse",executor:hv},{kind:"overlays:badge",executor:fv},{kind:"overlays:tooltip",executor:gv},{kind:"overlays:modal",executor:dv},{kind:"overlays:tour",executor:uv},{kind:"overlays:celebrate",executor:w1}],rd={id:"adaptive-overlays",version:"1.0.0",name:"Overlays",description:"Tooltips, highlights, badges, modals, celebrations, visual overlays, and workflow tracking",executors:td,widgets:[{id:"adaptive-overlays:workflow-tracker",component:L1,metadata:{name:"Workflow Tracker",icon:"\u{1F4CB}",description:"Tracks multi-step workflow progress across tours"}}]};function nd(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 id(r,e){e.executors.unregisterBySource(r),e.widgets.unregisterBySource(r)}var N1=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"]),F1=new Set(["adaptive-content","adaptive-faq","adaptive-nav","adaptive-overlays"]),D1={faq:"adaptive-faq",nav:"adaptive-nav",gamification:"adaptive-gamification",overlays:"adaptive-overlays",content:"adaptive-content","adaptive-viz":"adaptive-viz"};function mv(r){return D1[r]??r}function vv(r){return N1.has(r)}function yv(r){if(vv(r))return null;let e=r.indexOf(":");return e===-1?null:mv(r.slice(0,e))}function sd(r){let e=r.indexOf(":");return e===-1?null:mv(r.slice(0,e))}function od(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=yv(y.kind);if(x&&m.add(x),y.kind==="core:mountWidget"){let S=y.widget?.widgetId;if(S){let b=sd(S);b&&m.add(b)}}}if(g.tiles){for(let y of g.tiles)if(y.widget){let x=sd(y.widget);x&&m.add(x)}}for(let y of F1)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 vi=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=nd({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)}id(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 vi;var Xt={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"},Jt={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"},zs={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},qs={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"},Zs={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"};var KI={primary:M[10],secondary:M[9],tertiary:M[8]},YI={primary:M[2],secondary:M[0]},XI={primary:M[4],secondary:M[3]},JI={primary:{text:Xt.white,icon:Xt.white,border:ft[3],backgroundDefault:ft[3],backgroundHover:ft[2]},neutral:{text:M[10],textHover:Xt.white,icon:M[10],iconHover:Xt.white,border:M[4],background:M[2]},link:{text:Xt.white,icon:Xt.white,hover:ft[5]},error:{text:ot[5],hover:ot[6]},success:{text:Be[5],hover:Be[6]}},QI={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:Jt[8],pillOutline:Jt[4],borderPrimary:Jt[2],borderSecondary:Jt[2],background:Jt[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:zs[8],pillOutline:zs[4],borderPrimary:zs[2],borderSecondary:zs[2],background:zs[0]},orange:{content:qs[8],pillOutline:qs[4],borderPrimary:qs[2],borderSecondary:qs[2],background:qs[0]},pink:{content:Zs[8],pillOutline:Zs[4],borderPrimary:Zs[2],borderSecondary:Zs[2],background:Zs[0]}},e$={green:{content:Be[8],border:Be[2],background:Be[0]},yellow:{content:Jt[8],border:Jt[2],background:Jt[0]},red:{content:ot[8],border:ot[2],background:ot[0]}},t$={green:{content:Be[1],background:Be[9]},yellow:{content:Jt[1],background:Jt[9]},red:{content:ot[1],background:ot[9]}},r$={content:M[10],border:M[4],background:M[3]},n$={backgroundDefault:M[2],backgroundHover:M[1],selected:M[3]},i$={background:M[2],icon:M[10],borderDefault:M[4],borderSelected:ft[3],textLabel:M[9],textPlaceholder:M[8],textHint:M[8]},s$={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]},o$={handleDefault:Xt.white,handleDisabled:M[10],off:{backgroundDefault:M[4],backgroundHover:M[5],backgroundDisabled:M[4]},on:{backgroundDefault:Be[3],backgroundHover:Be[2],backgroundDisabled:M[4]}},a$={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]}},l$={content:M[10],background:M[4]},c$={background:M[4],active:Be[3]},u$={background:M[1],content:M[9],border:M[4]},d$={backgroundDefault:M[1],backgroundHover:M[3],backgroundActive:M[4],border:M[4],contentPrimary:M[10],contentSecondary:M[9],contentTertiary:M[8]},p$={background:M[1],content:M[9],border:M[4]},h$={activeBackground:M[3],activeContent:ft[5],inactiveContent:M[9],border:M[4]},f$={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]}},g$={textPrimaryDefault:M[10],textPrimaryHover:M[10],textSecondaryDefault:M[8],textSecondaryHover:M[9],iconPrimary:M[10],iconSecondary:M[8]},m$={background:Be[1],active:Be[5]},v$={textDefault:M[10],textSelected:Xt.white,textDisabled:M[7],backgroundDefault:M[2],backgroundMiddle:M[3],backgroundSelected:ft[3],border:M[4]},y$=M[9];var b$={size:56,inset:12,background:Xt.black,color:Xt.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 Gs=class extends hi{constructor(e){if(super(e),this.it=ee,e.type!==Wa.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:[]}}};Gs.directiveName="unsafeHTML",Gs.resultType=1;var Ga=za(Gs);function ud(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var En=ud();function Ev(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 H1=(()=>{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)}}>`)},B1=/^(?:[ \t]*(?:\n|$))+/,V1=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,U1=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,Js=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,j1=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,dd=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Cv=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Av=ve(Cv).replace(/bull/g,dd).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(),W1=ve(Cv).replace(/bull/g,dd).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(),pd=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,z1=/^[^\n]+/,hd=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,q1=ve(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",hd).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Z1=ve(/^(bull)([ \t][^\n]+?)?(?:\n|$)/).replace(/bull/g,dd).getRegex(),el="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",fd=/<!--(?:-?>|[\s\S]*?(?:-->|$))/,G1=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",fd).replace("tag",el).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Tv=ve(pd).replace("hr",Js).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",el).getRegex(),K1=ve(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Tv).getRegex(),gd={blockquote:K1,code:V1,def:q1,fences:U1,heading:j1,hr:Js,html:G1,lheading:Av,list:Z1,newline:B1,paragraph:Tv,table:Sn,text:z1},bv=ve("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",Js).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",el).getRegex(),Y1={...gd,lheading:W1,table:bv,paragraph:ve(pd).replace("hr",Js).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",bv).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",el).getRegex()},X1={...gd,html:ve(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",fd).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(pd).replace("hr",Js).replace("heading",` *#{1,6} *[^
147
+ ]`).replace("lheading",Av).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},J1=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Q1=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Rv=/^( {2,}|\\)\n(?!\s*$)/,eS=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,tl=/[\p{P}\p{S}]/u,md=/[\s\p{P}\p{S}]/u,Iv=/[^\s\p{P}\p{S}]/u,tS=ve(/^((?![*_])punctSpace)/,"u").replace(/punctSpace/g,md).getRegex(),$v=/(?!~)[\p{P}\p{S}]/u,rS=/(?!~)[\s\p{P}\p{S}]/u,nS=/(?:[^\s\p{P}\p{S}]|~)/u,Mv=/(?![*_])[\p{P}\p{S}]/u,iS=/(?![*_])[\s\p{P}\p{S}]/u,sS=/(?:[^\s\p{P}\p{S}]|[*_])/u,oS=ve(/link|precode-code|html/,"g").replace("link",/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",H1?"(?<!`)()":"(^^|[^`])").replace("code",/(?<b>`+)[^`]+\k<b>(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Pv=/^(?:\*+(?:((?!\*)punct)|[^\s*]))|^_+(?:((?!_)punct)|([^\s_]))/,aS=ve(Pv,"u").replace(/punct/g,tl).getRegex(),lS=ve(Pv,"u").replace(/punct/g,$v).getRegex(),Ov="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",cS=ve(Ov,"gu").replace(/notPunctSpace/g,Iv).replace(/punctSpace/g,md).replace(/punct/g,tl).getRegex(),uS=ve(Ov,"gu").replace(/notPunctSpace/g,nS).replace(/punctSpace/g,rS).replace(/punct/g,$v).getRegex(),dS=ve("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Iv).replace(/punctSpace/g,md).replace(/punct/g,tl).getRegex(),pS=ve(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,Mv).getRegex(),hS="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",fS=ve(hS,"gu").replace(/notPunctSpace/g,sS).replace(/punctSpace/g,iS).replace(/punct/g,Mv).getRegex(),gS=ve(/\\(punct)/,"gu").replace(/punct/g,tl).getRegex(),mS=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(),vS=ve(fd).replace("(?:-->|$)","-->").getRegex(),yS=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",vS).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Xa=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+[^`]*?`+(?!`)|[^\[\]\\`])*?/,bS=ve(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Xa).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Lv=ve(/^!?\[(label)\]\[(ref)\]/).replace("label",Xa).replace("ref",hd).getRegex(),Nv=ve(/^!?\[(ref)\](?:\[\])?/).replace("ref",hd).getRegex(),_S=ve("reflink|nolink(?!\\()","g").replace("reflink",Lv).replace("nolink",Nv).getRegex(),_v=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,vd={_backpedal:Sn,anyPunctuation:gS,autolink:mS,blockSkip:oS,br:Rv,code:Q1,del:Sn,delLDelim:Sn,delRDelim:Sn,emStrongLDelim:aS,emStrongRDelimAst:cS,emStrongRDelimUnd:dS,escape:J1,link:bS,nolink:Nv,punctuation:tS,reflink:Lv,reflinkSearch:_S,tag:yS,text:eS,url:Sn},xS={...vd,link:ve(/^!?\[(label)\]\((.*?)\)/).replace("label",Xa).getRegex(),reflink:ve(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Xa).getRegex()},ad={...vd,emStrongRDelimAst:uS,emStrongLDelim:lS,delLDelim:pS,delRDelim:fS,url:ve(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",_v).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",_v).getRegex()},wS={...ad,br:ve(Rv).replace("{2,}","*").getRegex(),text:ve(ad.text).replace("\\b_","\\b_| {2,}\\n").replace(/\{2,\}/g,"*").getRegex()},Ka={normal:gd,gfm:Y1,pedantic:X1},Ks={normal:vd,gfm:ad,breaks:wS,pedantic:xS},SS={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},xv=r=>SS[r];function Qt(r,e){if(e){if(at.escapeTest.test(r))return r.replace(at.escapeReplace,xv)}else if(at.escapeTestNoEncode.test(r))return r.replace(at.escapeReplaceNoEncode,xv);return r}function wv(r){try{r=encodeURI(r).replace(at.percentDecode,"%")}catch{return null}return r}function Sv(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 Ys(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 kS(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 ES(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 kv(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 CS(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 Ba=class{constructor(r){Se(this,"options");Se(this,"rules");Se(this,"lexer");this.options=r||_n}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:Fs(t,`
150
- `)}}}fences(r){let e=this.rules.block.fences.exec(r);if(e){let t=e[0],n=R1(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=Fs(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:Fs(e[0],`
151
- `)}}blockquote(r){let e=this.rules.block.blockquote.exec(r);if(e){let t=Fs(e[0],`
149
+ `)}var Ja=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:Ys(t,`
150
+ `)}}}fences(r){let e=this.rules.block.fences.exec(r);if(e){let t=e[0],n=CS(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=Ys(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:Ys(e[0],`
151
+ `)}}blockquote(r){let e=this.rules.block.blockquote.exec(r);if(e){let t=Ys(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,17 +159,17 @@ ${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=A1(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=ES(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
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
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+=`
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=Wm(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(Wm(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=Fs(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=C1(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)),zm(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 zm(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}}}},Ft=class Gu{constructor(e){Se(this,"tokens");Se(this,"options");Se(this,"state");Se(this,"inlineQueue");Se(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||_n,this.options.tokenizer=this.options.tokenizer||new Ba,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:st,block:Fa.normal,inline:Ns.normal};this.options.pedantic?(t.block=Fa.pedantic,t.inline=Ns.pedantic):this.options.gfm&&(t.block=Fa.gfm,this.options.breaks?t.inline=Ns.breaks:t.inline=Ns.gfm),this.tokenizer.rules=t}static get rules(){return{block:Fa,inline:Ns}}static lex(e,t){return new Gu(t).lex(e)}static lexInline(e,t){return new Gu(t).inlineTokens(e)}lex(e){e=e.replace(st.carriageReturn,`
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(st.tabCharGlobal," ").replace(st.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+=`
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=Sv(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(Sv(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=Ys(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=kS(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)),kv(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 kv(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 ld{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 Ja,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:Ka.normal,inline:Ks.normal};this.options.pedantic?(t.block=Ka.pedantic,t.inline=Ks.pedantic):this.options.gfm&&(t.block=Ka.gfm,this.options.breaks?t.inline=Ks.breaks:t.inline=Ks.gfm),this.tokenizer.rules=t}static get rules(){return{block:Ka,inline:Ks}}static lex(e,t){return new ld(t).lex(e)}static lexInline(e,t){return new ld(t).inlineTokens(e)}lex(e){e=e.replace(at.carriageReturn,`
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
  `)?"":`
175
175
  `)+i.raw,o.text+=`
@@ -182,9 +182,9 @@ ${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}},Va=class{constructor(r){Se(this,"options");Se(this,"parser");this.options=r||_n}space(r){return""}code({text:r,lang:e,escaped:t}){let n=(e||"").match(st.notSpaceStart)?.[0],i=r.replace(st.endingNewline,"")+`
186
- `;return n?'<pre><code class="language-'+Kt(n)+'">'+(t?i:Kt(i,!0))+`</code></pre>
187
- `:"<pre><code>"+(t?i:Kt(i,!0))+`</code></pre>
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}},Qa=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
+ `;return n?'<pre><code class="language-'+Qt(n)+'">'+(t?i:Qt(i,!0))+`</code></pre>
187
+ `:"<pre><code>"+(t?i:Qt(i,!0))+`</code></pre>
188
188
  `}blockquote({tokens:r}){return`<blockquote>
189
189
  ${this.parser.parse(r)}</blockquote>
190
190
  `}html({text:r}){return r}def(r){return""}heading({tokens:r,depth:e}){return`<h${e}>${this.parser.parseInline(r)}</h${e}>
@@ -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>${Kt(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=jm(r);if(i===null)return n;r=i;let s='<a href="'+r+'"';return e&&(s+=' title="'+Kt(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=jm(r);if(i===null)return Kt(t);r=i;let s=`<img src="${r}" alt="${Kt(t)}"`;return e&&(s+=` title="${Kt(e)}"`),s+=">",s}text(r){return"tokens"in r&&r.tokens?this.parser.parseInline(r.tokens):"escaped"in r&&r.escaped?r.text:Kt(r.text)}},id=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}},Dt=class Ku{constructor(e){Se(this,"options");Se(this,"renderer");Se(this,"textRenderer");this.options=e||_n,this.options.renderer=this.options.renderer||new Va,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new id}static parse(e,t){return new Ku(t).parse(e)}static parseInline(e,t){return new Ku(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}},Da,Ds=(Da=class{constructor(r){Se(this,"options");Se(this,"block");this.options=r||_n}preprocess(r){return r}postprocess(r){return r}processAllTokens(r){return r}emStrongMask(r){return r}provideLexer(){return this.block?Ft.lex:Ft.lexInline}provideParser(){return this.block?Dt.parse:Dt.parseInline}},Se(Da,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),Se(Da,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),Da),sd=class{constructor(...r){Se(this,"defaults",Yu());Se(this,"options",this.setOptions);Se(this,"parse",this.parseMarkdown(!0));Se(this,"parseInline",this.parseMarkdown(!1));Se(this,"Parser",Dt);Se(this,"Renderer",Va);Se(this,"TextRenderer",id);Se(this,"Lexer",Ft);Se(this,"Tokenizer",Ba);Se(this,"Hooks",Ds);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 Va(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 Ba(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 Ds;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];Ds.passThroughHooks.has(s)?i[o]=c=>{if(this.defaults.async&&Ds.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 Ft.lex(r,e??this.defaults)}parser(r,e){return Dt.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?Ft.lex:Ft.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?Dt.parse:Dt.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?Ft.lex:Ft.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?Dt.parse:Dt.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>"+Kt(t.message+"",!0)+"</pre>";return e?Promise.resolve(n):n}if(e)return Promise.reject(t);throw t}}},bn=new sd;function ke(r,e){return bn.parse(r,e)}ke.options=ke.setOptions=function(r){return bn.setOptions(r),ke.defaults=bn.defaults,qm(ke.defaults),ke};ke.getDefaults=Yu;ke.defaults=_n;ke.use=function(...r){return bn.use(...r),ke.defaults=bn.defaults,qm(ke.defaults),ke};ke.walkTokens=function(r,e){return bn.walkTokens(r,e)};ke.parseInline=bn.parseInline;ke.Parser=Dt;ke.parser=Dt.parse;ke.Renderer=Va;ke.TextRenderer=id;ke.Lexer=Ft;ke.lexer=Ft.lex;ke.Tokenizer=Ba;ke.Hooks=Ds;ke.parse=ke;var JT=ke.options,QT=ke.setOptions,eI=ke.use,tI=ke.walkTokens,rI=ke.parseInline;var nI=Dt.parse,iI=Ft.lex;function sv(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 T1(r,e,t){let n=sv(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 I1(r,e,t){let n=sv(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 $1(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 M1=[{kind:"faq:scroll_to",executor:T1},{kind:"faq:toggle_item",executor:I1},{kind:"faq:update",executor:$1}],Yt={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"},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"},He={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"},Vs={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},Jt={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},Us={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"},pI={primary:M[10],secondary:M[9],tertiary:M[8]},hI={primary:M[2],secondary:M[0]},fI={primary:M[4],secondary:M[3]},gI={primary:{text:Yt.white,icon:Yt.white,border:ht[3],backgroundDefault:ht[3],backgroundHover:ht[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:ht[5]},error:{text:ot[5],hover:ot[6]},success:{text:He[5],hover:He[6]}},mI={slateGrey:{content:M[10],pillOutline:M[10],borderPrimary:M[5],borderSecondary:M[5],background:M[3]},brand:{content:ht[9],pillOutline:ht[9],borderPrimary:ht[6],borderSecondary:ht[6],background:ht[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:He[8],pillOutline:He[4],borderPrimary:He[2],borderSecondary:He[2],background:He[0]},purple:{content:Jt[8],pillOutline:Jt[4],borderPrimary:Jt[2],borderSecondary:Jt[2],background:Jt[0]},blue:{content:Bs[8],pillOutline:Bs[4],borderPrimary:Bs[2],borderSecondary:Bs[2],background:Bs[0]},orange:{content:Vs[8],pillOutline:Vs[4],borderPrimary:Vs[2],borderSecondary:Vs[2],background:Vs[0]},pink:{content:Us[8],pillOutline:Us[4],borderPrimary:Us[2],borderSecondary:Us[2],background:Us[0]}},vI={green:{content:He[8],border:He[2],background:He[0]},yellow:{content:Xt[8],border:Xt[2],background:Xt[0]},red:{content:ot[8],border:ot[2],background:ot[0]}},yI={green:{content:He[1],background:He[9]},yellow:{content:Xt[1],background:Xt[9]},red:{content:ot[1],background:ot[9]}},bI={content:M[10],border:M[4],background:M[3]},_I={backgroundDefault:M[2],backgroundHover:M[1],selected:M[3]},xI={background:M[2],icon:M[10],borderDefault:M[4],borderSelected:ht[3],textLabel:M[9],textPlaceholder:M[8],textHint:M[8]},wI={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:ht[3],borderError:ot[5]},SI={handleDefault:Yt.white,handleDisabled:M[10],off:{backgroundDefault:M[4],backgroundHover:M[5],backgroundDisabled:M[4]},on:{backgroundDefault:He[3],backgroundHover:He[2],backgroundDisabled:M[4]}},kI={off:{backgroundDefault:"#00000000",backgroundHover:M[5],backgroundDisabled:M[2],border:M[6]},on:{backgroundDefault:He[0],backgroundHover:He[1],backgroundDisabled:M[2],border:He[3]}},EI={content:M[10],background:M[4]},CI={background:M[4],active:He[3]},AI={background:M[1],content:M[9],border:M[4]},RI={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]},II={activeBackground:M[3],activeContent:ht[5],inactiveContent:M[9],border:M[4]},$I={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]}},MI={textPrimaryDefault:M[10],textPrimaryHover:M[10],textSecondaryDefault:M[8],textSecondaryHover:M[9],iconPrimary:M[10],iconSecondary:M[8]},PI={background:He[1],active:He[5]},OI={textDefault:M[10],textSelected:Yt.white,textDisabled:M[7],backgroundDefault:M[2],backgroundMiddle:M[3],backgroundSelected:ht[3],border:M[4]},LI=M[9],NI={size:56,inset:12,background:Yt.black,color:Yt.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)"},tt={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"}},od={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:Jt[8],color:Jt[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:Jt[0],color:Jt[6]},categoryHeader:{color:M[8]},emptyState:{color:M[7]},feedbackPrompt:{color:M[8]}}};var iv=new sd({async:!1,gfm:!0,breaks:!0});function P1(r){return typeof r=="string"?r:r.type==="rich"?r.html:r.content}function O1(r){return typeof r=="string"?iv.parse(r):r.type==="rich"?r.html:iv.parse(r.content)}function L1(r){return r?r===!0?{style:"thumbs"}:r:null}function N1(r){return r.prompt??"Was this helpful?"}function F1(r){return r&&r!=="auto"?r:typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var ov=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)||P1(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=O1(r);return N`<div style="margin:0" data-faq-markdown="">${Na(e)}</div>`}_renderFeedback(r,e,t,n){let i=od[n],s={...tt.feedback,...i.feedbackPrompt};return N`
205
- <div style=${R(s)}>
206
- <span>${N1(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>${Qt(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=wv(r);if(i===null)return n;r=i;let s='<a href="'+r+'"';return e&&(s+=' title="'+Qt(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=wv(r);if(i===null)return Qt(t);r=i;let s=`<img src="${r}" alt="${Qt(t)}"`;return e&&(s+=` title="${Qt(e)}"`),s+=">",s}text(r){return"tokens"in r&&r.tokens?this.parser.parseInline(r.tokens):"escaped"in r&&r.escaped?r.text:Qt(r.text)}},yd=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 cd{constructor(e){pe(this,"options");pe(this,"renderer");pe(this,"textRenderer");this.options=e||En,this.options.renderer=this.options.renderer||new Qa,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new yd}static parse(e,t){return new cd(t).parse(e)}static parseInline(e,t){return new cd(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}},Ya,Xs=(Ya=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(Ya,"passThroughHooks",new Set(["preprocess","postprocess","processAllTokens","emStrongMask"])),pe(Ya,"passThroughHooksRespectAsync",new Set(["preprocess","postprocess","processAllTokens"])),Ya),bd=class{constructor(...r){pe(this,"defaults",ud());pe(this,"options",this.setOptions);pe(this,"parse",this.parseMarkdown(!0));pe(this,"parseInline",this.parseMarkdown(!1));pe(this,"Parser",Ht);pe(this,"Renderer",Qa);pe(this,"TextRenderer",yd);pe(this,"Lexer",Dt);pe(this,"Tokenizer",Ja);pe(this,"Hooks",Xs);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 Qa(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 Ja(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 Xs;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];Xs.passThroughHooks.has(s)?i[o]=c=>{if(this.defaults.async&&Xs.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>"+Qt(t.message+"",!0)+"</pre>";return e?Promise.resolve(n):n}if(e)return Promise.reject(t);throw t}}},kn=new bd;function Se(r,e){return kn.parse(r,e)}Se.options=Se.setOptions=function(r){return kn.setOptions(r),Se.defaults=kn.defaults,Ev(Se.defaults),Se};Se.getDefaults=ud;Se.defaults=En;Se.use=function(...r){return kn.use(...r),Se.defaults=kn.defaults,Ev(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=Qa;Se.TextRenderer=yd;Se.Lexer=Dt;Se.lexer=Dt.lex;Se.Tokenizer=Ja;Se.Hooks=Xs;Se.parse=Se;var A$=Se.options,T$=Se.setOptions,R$=Se.use,I$=Se.walkTokens,$$=Se.parseInline;var M$=Ht.parse,P$=Dt.lex;function Dv(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=Dv(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 TS(r,e,t){let n=Dv(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 RS(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 IS=[{kind:"faq:scroll_to",executor:AS},{kind:"faq:toggle_item",executor:TS},{kind:"faq:update",executor:RS}],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"}},_d={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 Fv=new bd({async:!1,gfm:!0,breaks:!0});function $S(r){return typeof r=="string"?r:r.type==="rich"?r.html:r.content}function MS(r){return typeof r=="string"?Fv.parse(r):r.type==="rich"?r.html:Fv.parse(r.content)}function PS(r){return r?r===!0?{style:"thumbs"}:r:null}function OS(r){return r.prompt??"Was this helpful?"}function LS(r){return r&&r!=="auto"?r:typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var Hv=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)||$S(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=MS(r);return N`<div style="margin:0" data-faq-markdown="">${Ga(e)}</div>`}_renderFeedback(r,e,t,n){let i=_d[n],s={...rt.feedback,...i.feedbackPrompt};return N`
205
+ <div style=${T(s)}>
206
+ <span>${OS(e)}</span>
207
207
  <button
208
208
  type="button"
209
- style=${R({...tt.feedbackButton,...t==="up"?tt.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({...tt.feedbackButton,...t==="down"?tt.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=od[t],s=this._expandedIds.has(r.config.id),o=this._highlightId===r.config.id,a=this._hoveredId===r.config.id,l={...tt.item,...i.item,...s?i.itemExpanded:{},...o?{boxShadow:`0 0 0 2px ${Jt[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={...tt.question,...i.question,...a?i.questionHover:{}},u={...tt.chevron,transform:s?"rotate(90deg)":"rotate(0deg)"},p={...tt.answer,...i.answer,maxHeight:s?"500px":"0",paddingBottom:s?"16px":"0"};return N`
220
+ `}_renderItem(r,e,t,n){let i=_d[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):Q}
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=F1(this.faqConfig.theme),e=od[r],t=L1(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={...tt.container,...e.container},c={...tt.emptyState,...e.emptyState},u={...tt.categoryHeader,...e.categoryHeader},p={...tt.searchInput,...e.searchInput};return n.length===0?N`
245
+ `}_renderItems(r,e,t){return r.map((n,i)=>this._renderItem(n,i===r.length-1,e,t))}render(){let r=LS(this.faqConfig.theme),e=_d[r],t=PS(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
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
262
  ${this.faqConfig.searchable?N`
263
- <div style=${R(tt.searchWrapper)}>
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
- `:Q}
278
+ `:ee}
279
279
 
280
- <div style=${R(tt.accordion)}>
280
+ <div style=${T(rt.accordion)}>
281
281
  ${a?Array.from(a.entries()).map(([h,f])=>N`
282
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
- `:Q}
289
+ `:ee}
290
290
  ${this._renderItems(f,r,t)}
291
291
  `):this._renderItems(s,r,t)}
292
292
  </div>
293
293
 
294
294
  ${this.faqConfig.searchable&&s.length===0&&this._searchQuery?N`
295
295
  <div
296
- style=${R({...tt.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
- `:Q}
300
+ `:ee}
301
301
  </div>
302
- `}};ov.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",ov);var D1={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()}},av={id:"adaptive-faq",version:"2.0.0",name:"FAQ Accordion",description:"Collapsible Q&A accordion with actions, rich content, feedback, and personalization",executors:M1,widgets:[{id:"adaptive-faq:accordion",component:D1,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={};yg(d,{BRAND:()=>uS,DIRTY:()=>xn,EMPTY_PATH:()=>U1,INVALID:()=>re,NEVER:()=>GS,OK:()=>rt,ParseStatus:()=>Ke,Schema:()=>ue,ZodAny:()=>Ur,ZodArray:()=>yr,ZodBigInt:()=>Sn,ZodBoolean:()=>kn,ZodBranded:()=>Ws,ZodCatch:()=>Ln,ZodDate:()=>En,ZodDefault:()=>On,ZodDiscriminatedUnion:()=>qa,ZodEffects:()=>Rt,ZodEnum:()=>Mn,ZodError:()=>ft,ZodFirstPartyTypeKind:()=>ne,ZodFunction:()=>Ga,ZodIntersection:()=>Tn,ZodIssueCode:()=>I,ZodLazy:()=>In,ZodLiteral:()=>$n,ZodMap:()=>yi,ZodNaN:()=>_i,ZodNativeEnum:()=>Pn,ZodNever:()=>Ht,ZodNull:()=>An,ZodNullable:()=>tr,ZodNumber:()=>wn,ZodObject:()=>gt,ZodOptional:()=>Ct,ZodParsedType:()=>z,ZodPipeline:()=>zs,ZodPromise:()=>jr,ZodReadonly:()=>Nn,ZodRecord:()=>Za,ZodSchema:()=>ue,ZodSet:()=>bi,ZodString:()=>Vr,ZodSymbol:()=>mi,ZodTransformer:()=>Rt,ZodTuple:()=>er,ZodType:()=>ue,ZodUndefined:()=>Cn,ZodUnion:()=>Rn,ZodUnknown:()=>vr,ZodVoid:()=>vi,addIssueToContext:()=>H,any:()=>bS,array:()=>SS,bigint:()=>fS,boolean:()=>yv,coerce:()=>ZS,custom:()=>gv,date:()=>gS,datetimeRegex:()=>hv,defaultErrorMap:()=>gr,discriminatedUnion:()=>AS,effect:()=>HS,enum:()=>NS,function:()=>PS,getErrorMap:()=>hi,getParsedType:()=>Qt,instanceof:()=>pS,intersection:()=>RS,isAborted:()=>Wa,isAsync:()=>fi,isDirty:()=>za,isValid:()=>Br,late:()=>dS,lazy:()=>OS,literal:()=>LS,makeIssue:()=>js,map:()=>$S,nan:()=>hS,nativeEnum:()=>FS,never:()=>xS,null:()=>yS,nullable:()=>VS,number:()=>vv,object:()=>kS,objectUtil:()=>ad,oboolean:()=>qS,onumber:()=>zS,optional:()=>BS,ostring:()=>WS,pipeline:()=>jS,preprocess:()=>US,promise:()=>DS,quotelessJson:()=>H1,record:()=>IS,set:()=>MS,setErrorMap:()=>V1,strictObject:()=>ES,string:()=>mv,symbol:()=>mS,transformer:()=>HS,tuple:()=>TS,undefined:()=>vS,union:()=>CS,unknown:()=>_S,util:()=>he,void:()=>wS});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 ad;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(ad||(ad={}));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 I=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"]),H1=r=>JSON.stringify(r,null,2).replace(/"([^"]+)":/g,"$1:"),ft=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()}};ft.create=r=>new ft(r);var B1=(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,he.jsonStringifyReplacer)}`;break;case I.unrecognized_keys:t=`Unrecognized key(s) in object: ${he.joinValues(r.keys,", ")}`;break;case I.invalid_union:t="Invalid input";break;case I.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${he.joinValues(r.options)}`;break;case I.invalid_enum_value:t=`Invalid enum value. Expected ${he.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}"`:he.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,he.assertNever(r)}return{message:t}},gr=B1;var lv=gr;function V1(r){lv=r}function hi(){return lv}var js=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}},U1=[];function H(r,e){let t=hi(),n=js({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===gr?void 0:gr].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 re;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 re;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}}},re=Object.freeze({status:"aborted"}),xn=r=>({status:"dirty",value:r}),rt=r=>({status:"valid",value:r}),Wa=r=>r.status==="aborted",za=r=>r.status==="dirty",Br=r=>r.status==="valid",fi=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 At=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}},cv=(r,e)=>{if(Br(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 ft(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(fi(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 cv(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 Br(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=>Br(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(fi(i)?i:Promise.resolve(i));return cv(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 Rt({schema:this,typeName:ne.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 Ct.create(this,this._def)}nullable(){return tr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return yr.create(this)}promise(){return jr.create(this,this._def)}or(e){return Rn.create([this,e],this._def)}and(e){return Tn.create(this,e,this._def)}transform(e){return new Rt({...ce(this._def),schema:this,typeName:ne.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let t=typeof e=="function"?e:()=>e;return new On({...ce(this._def),innerType:this,defaultValue:t,typeName:ne.ZodDefault})}brand(){return new Ws({typeName:ne.ZodBranded,type:this,...ce(this._def)})}catch(e){let t=typeof e=="function"?e:()=>e;return new Ln({...ce(this._def),innerType:this,catchValue:t,typeName:ne.ZodCatch})}describe(e){let t=this.constructor;return new t({...this._def,description:e})}pipe(e){return zs.create(this,e)}readonly(){return Nn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},j1=/^c[^\s-]{8,}$/i,W1=/^[0-9a-z]+$/,z1=/^[0-9A-HJKMNP-TV-Z]{26}$/i,q1=/^[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,Z1=/^[a-z0-9_-]{21}$/i,G1=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,K1=/^[-+]?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)?)??$/,Y1=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,X1="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ld,J1=/^(?:(?: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])$/,Q1=/^(?:(?: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])$/,eS=/^(([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]))$/,tS=/^(([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])$/,rS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,nS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dv="((\\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])))",iS=new RegExp(`^${dv}$`);function pv(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 sS(r){return new RegExp(`^${pv(r)}$`)}function hv(r){let e=`${dv}T${pv(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 oS(r,e){return!!((e==="v4"||!e)&&J1.test(r)||(e==="v6"||!e)&&eS.test(r))}function aS(r,e){if(!G1.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 lS(r,e){return!!((e==="v4"||!e)&&Q1.test(r)||(e==="v6"||!e)&&tS.test(r))}var Vr=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 H(s,{code:I.invalid_type,expected:z.string,received:s.parsedType}),re}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),H(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),H(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?H(i,{code:I.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&H(i,{code:I.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Y1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"email",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")ld||(ld=new RegExp(X1,"u")),ld.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"emoji",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")q1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"uuid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Z1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"nanoid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")j1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"cuid",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")W1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"cuid2",code:I.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")z1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(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),H(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),H(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),H(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),H(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),H(i,{code:I.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?hv(s).test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{code:I.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?iS.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{code:I.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?sS(s).test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{code:I.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?K1.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"duration",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?oS(e.data,s.version)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"ip",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?aS(e.data,s.alg)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"jwt",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?lS(e.data,s.version)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"cidr",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?rS.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"base64",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?nS.test(e.data)||(i=this._getOrReturnCtx(e,i),H(i,{validation:"base64url",code:I.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: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}};Vr.create=r=>new Vr({checks:[],typeName:ne.ZodString,coerce:r?.coerce??!1,...ce(r)});function cS(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 wn=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 H(s,{code:I.invalid_type,expected:z.number,received:s.parsedType}),re}let n,i=new Ke;for(let s of this._def.checks)s.kind==="int"?he.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),H(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),H(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),H(n,{code:I.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),i.dirty()):s.kind==="multipleOf"?cS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),H(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),H(n,{code:I.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)}};wn.create=r=>new wn({checks:[],typeName:ne.ZodNumber,coerce:r?.coerce||!1,...ce(r)});var Sn=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),H(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),H(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),H(n,{code:I.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 H(t,{code:I.invalid_type,expected:z.bigint,received:t.parsedType}),re}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}};Sn.create=r=>new Sn({checks:[],typeName:ne.ZodBigInt,coerce:r?.coerce??!1,...ce(r)});var kn=class extends ue{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==z.boolean){let n=this._getOrReturnCtx(e);return H(n,{code:I.invalid_type,expected:z.boolean,received:n.parsedType}),re}return rt(e.data)}};kn.create=r=>new kn({typeName:ne.ZodBoolean,coerce:r?.coerce||!1,...ce(r)});var En=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 H(s,{code:I.invalid_type,expected:z.date,received:s.parsedType}),re}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return H(s,{code:I.invalid_date}),re}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),H(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),H(i,{code:I.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}};En.create=r=>new En({checks:[],coerce:r?.coerce||!1,typeName:ne.ZodDate,...ce(r)});var mi=class extends ue{_parse(e){if(this._getType(e)!==z.symbol){let n=this._getOrReturnCtx(e);return H(n,{code:I.invalid_type,expected:z.symbol,received:n.parsedType}),re}return rt(e.data)}};mi.create=r=>new mi({typeName:ne.ZodSymbol,...ce(r)});var Cn=class extends ue{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return H(n,{code:I.invalid_type,expected:z.undefined,received:n.parsedType}),re}return rt(e.data)}};Cn.create=r=>new Cn({typeName:ne.ZodUndefined,...ce(r)});var An=class extends ue{_parse(e){if(this._getType(e)!==z.null){let n=this._getOrReturnCtx(e);return H(n,{code:I.invalid_type,expected:z.null,received:n.parsedType}),re}return rt(e.data)}};An.create=r=>new An({typeName:ne.ZodNull,...ce(r)});var Ur=class extends ue{constructor(){super(...arguments),this._any=!0}_parse(e){return rt(e.data)}};Ur.create=r=>new Ur({typeName:ne.ZodAny,...ce(r)});var vr=class extends ue{constructor(){super(...arguments),this._unknown=!0}_parse(e){return rt(e.data)}};vr.create=r=>new vr({typeName:ne.ZodUnknown,...ce(r)});var Ht=class extends ue{_parse(e){let t=this._getOrReturnCtx(e);return H(t,{code:I.invalid_type,expected:z.never,received:t.parsedType}),re}};Ht.create=r=>new Ht({typeName:ne.ZodNever,...ce(r)});var vi=class extends ue{_parse(e){if(this._getType(e)!==z.undefined){let n=this._getOrReturnCtx(e);return H(n,{code:I.invalid_type,expected:z.void,received:n.parsedType}),re}return rt(e.data)}};vi.create=r=>new vi({typeName:ne.ZodVoid,...ce(r)});var yr=class r extends ue{_parse(e){let{ctx:t,status:n}=this._processInputParams(e),i=this._def;if(t.parsedType!==z.array)return H(t,{code:I.invalid_type,expected:z.array,received:t.parsedType}),re;if(i.exactLength!==null){let o=t.data.length>i.exactLength.value,a=t.data.length<i.exactLength.value;(o||a)&&(H(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&&(H(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&&(H(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 At(t,o,t.path,a)))).then(o=>Ke.mergeArray(n,o));let s=[...t.data].map((o,a)=>i.type._parseSync(new At(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)}};yr.create=(r,e)=>new yr({type:r,minLength:null,maxLength:null,exactLength:null,typeName:ne.ZodArray,...ce(e)});function gi(r){if(r instanceof gt){let e={};for(let t in r.shape){let n=r.shape[t];e[t]=Ct.create(gi(n))}return new gt({...r._def,shape:()=>e})}else return r instanceof yr?new yr({...r._def,type:gi(r.element)}):r instanceof Ct?Ct.create(gi(r.unwrap())):r instanceof tr?tr.create(gi(r.unwrap())):r instanceof er?er.create(r.items.map(e=>gi(e))):r}var gt=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=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 H(c,{code:I.invalid_type,expected:z.object,received:c.parsedType}),re}let{status:n,ctx:i}=this._processInputParams(e),{shape:s,keys:o}=this._getCached(),a=[];if(!(this._def.catchall instanceof Ht&&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 At(i,p,i.path,c)),alwaysSet:c in i.data})}if(this._def.catchall instanceof Ht){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&&(H(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 At(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:ne.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 gi(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 Ct;)s=s._def.innerType;t[n]=s}return new r({...this._def,shape:()=>t})}keyof(){return fv(he.objectKeys(this.shape))}};gt.create=(r,e)=>new gt({shape:()=>r,unknownKeys:"strip",catchall:Ht.create(),typeName:ne.ZodObject,...ce(e)});gt.strictCreate=(r,e)=>new gt({shape:()=>r,unknownKeys:"strict",catchall:Ht.create(),typeName:ne.ZodObject,...ce(e)});gt.lazycreate=(r,e)=>new gt({shape:r,unknownKeys:"strip",catchall:Ht.create(),typeName:ne.ZodObject,...ce(e)});var Rn=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 ft(a.ctx.common.issues));return H(t,{code:I.invalid_union,unionErrors:o}),re}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 ft(l));return H(t,{code:I.invalid_union,unionErrors:a}),re}}get options(){return this._def.options}};Rn.create=(r,e)=>new Rn({options:r,typeName:ne.ZodUnion,...ce(e)});var mr=r=>r instanceof In?mr(r.schema):r instanceof Rt?mr(r.innerType()):r instanceof $n?[r.value]:r instanceof Mn?r.options:r instanceof Pn?he.objectValues(r.enum):r instanceof On?mr(r._def.innerType):r instanceof Cn?[void 0]:r instanceof An?[null]:r instanceof Ct?[void 0,...mr(r.unwrap())]:r instanceof tr?[null,...mr(r.unwrap())]:r instanceof Ws||r instanceof Nn?mr(r.unwrap()):r instanceof Ln?mr(r._def.innerType):[],qa=class r extends ue{_parse(e){let{ctx:t}=this._processInputParams(e);if(t.parsedType!==z.object)return H(t,{code:I.invalid_type,expected:z.object,received:t.parsedType}),re;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}):(H(t,{code:I.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),re)}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=mr(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:ne.ZodDiscriminatedUnion,discriminator:e,options:t,optionsMap:i,...ce(n)})}};function cd(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=cd(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=cd(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 Tn=class extends ue{_parse(e){let{status:t,ctx:n}=this._processInputParams(e),i=(s,o)=>{if(Wa(s)||Wa(o))return re;let a=cd(s.value,o.value);return a.valid?((za(s)||za(o))&&t.dirty(),{status:t.value,value:a.data}):(H(n,{code:I.invalid_intersection_types}),re)};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}))}};Tn.create=(r,e,t)=>new Tn({left:r,right:e,typeName:ne.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 H(n,{code:I.invalid_type,expected:z.array,received:n.parsedType}),re;if(n.data.length<this._def.items.length)return H(n,{code:I.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),re;!this._def.rest&&n.data.length>this._def.items.length&&(H(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 At(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:ne.ZodTuple,rest:null,...ce(e)})};var Za=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 H(n,{code:I.invalid_type,expected:z.object,received:n.parsedType}),re;let i=[],s=this._def.keyType,o=this._def.valueType;for(let a in n.data)i.push({key:s._parse(new At(n,a,n.path,a)),value:o._parse(new At(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:ne.ZodRecord,...ce(n)}):new r({keyType:Vr.create(),valueType:e,typeName:ne.ZodRecord,...ce(t)})}},yi=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 H(n,{code:I.invalid_type,expected:z.map,received:n.parsedType}),re;let i=this._def.keyType,s=this._def.valueType,o=[...n.data.entries()].map(([a,l],c)=>({key:i._parse(new At(n,a,n.path,[c,"key"])),value:s._parse(new At(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 re;(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 re;(c.status==="dirty"||u.status==="dirty")&&t.dirty(),a.set(c.value,u.value)}return{status:t.value,value:a}}}};yi.create=(r,e,t)=>new yi({valueType:e,keyType:r,typeName:ne.ZodMap,...ce(t)});var bi=class r extends ue{_parse(e){let{status:t,ctx:n}=this._processInputParams(e);if(n.parsedType!==z.set)return H(n,{code:I.invalid_type,expected:z.set,received:n.parsedType}),re;let i=this._def;i.minSize!==null&&n.data.size<i.minSize.value&&(H(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&&(H(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 re;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 At(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)}};bi.create=(r,e)=>new bi({valueType:r,minSize:null,maxSize:null,typeName:ne.ZodSet,...ce(e)});var Ga=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 H(t,{code:I.invalid_type,expected:z.function,received:t.parsedType}),re;function n(a,l){return js({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,hi(),gr].filter(c=>!!c),issueData:{code:I.invalid_arguments,argumentsError:l}})}function i(a,l){return js({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,hi(),gr].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 jr){let a=this;return rt(async function(...l){let c=new ft([]),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 rt(function(...l){let c=a._def.args.safeParse(l,s);if(!c.success)throw new ft([n(l,c.error)]);let u=Reflect.apply(o,this,c.data),p=a._def.returns.safeParse(u,s);if(!p.success)throw new ft([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(vr.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(vr.create()),returns:t||vr.create(),typeName:ne.ZodFunction,...ce(n)})}},In=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})}};In.create=(r,e)=>new In({getter:r,typeName:ne.ZodLazy,...ce(e)});var $n=class extends ue{_parse(e){if(e.data!==this._def.value){let t=this._getOrReturnCtx(e);return H(t,{received:t.data,code:I.invalid_literal,expected:this._def.value}),re}return{status:"valid",value:e.data}}get value(){return this._def.value}};$n.create=(r,e)=>new $n({value:r,typeName:ne.ZodLiteral,...ce(e)});function fv(r,e){return new Mn({values:r,typeName:ne.ZodEnum,...ce(e)})}var Mn=class r extends ue{_parse(e){if(typeof e.data!="string"){let t=this._getOrReturnCtx(e),n=this._def.values;return H(t,{expected:he.joinValues(n),received:t.parsedType,code:I.invalid_type}),re}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 H(t,{received:t.data,code:I.invalid_enum_value,options:n}),re}return rt(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})}};Mn.create=fv;var Pn=class extends ue{_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 H(n,{expected:he.joinValues(i),received:n.parsedType,code:I.invalid_type}),re}if(this._cache||(this._cache=new Set(he.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let i=he.objectValues(t);return H(n,{received:n.data,code:I.invalid_enum_value,options:i}),re}return rt(e.data)}get enum(){return this._def.values}};Pn.create=(r,e)=>new Pn({values:r,typeName:ne.ZodNativeEnum,...ce(e)});var jr=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 H(t,{code:I.invalid_type,expected:z.promise,received:t.parsedType}),re;let n=t.parsedType===z.promise?t.data:Promise.resolve(t.data);return rt(n.then(i=>this._def.type.parseAsync(i,{path:t.path,errorMap:t.common.contextualErrorMap})))}};jr.create=(r,e)=>new jr({type:r,typeName:ne.ZodPromise,...ce(e)});var Rt=class extends ue{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===ne.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=>{H(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 re;let l=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return l.status==="aborted"?re:l.status==="dirty"?xn(l.value):t.value==="dirty"?xn(l.value):l});{if(t.value==="aborted")return re;let a=this._def.schema._parseSync({data:o,path:n.path,parent:n});return a.status==="aborted"?re:a.status==="dirty"?xn(a.value):t.value==="dirty"?xn(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"?re:(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"?re:(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(!Br(o))return re;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=>Br(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:t.value,value:a})):re);he.assertNever(i)}};Rt.create=(r,e,t)=>new Rt({schema:r,typeName:ne.ZodEffects,effect:e,...ce(t)});Rt.createWithPreprocess=(r,e,t)=>new Rt({schema:e,effect:{type:"preprocess",transform:r},typeName:ne.ZodEffects,...ce(t)});var Ct=class extends ue{_parse(e){return this._getType(e)===z.undefined?rt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ct.create=(r,e)=>new Ct({innerType:r,typeName:ne.ZodOptional,...ce(e)});var tr=class extends ue{_parse(e){return this._getType(e)===z.null?rt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};tr.create=(r,e)=>new tr({innerType:r,typeName:ne.ZodNullable,...ce(e)});var On=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}};On.create=(r,e)=>new On({innerType:r,typeName:ne.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...ce(e)});var Ln=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 fi(i)?i.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new ft(n.common.issues)},input:n.data})})):{status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new ft(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Ln.create=(r,e)=>new Ln({innerType:r,typeName:ne.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...ce(e)});var _i=class extends ue{_parse(e){if(this._getType(e)!==z.nan){let n=this._getOrReturnCtx(e);return H(n,{code:I.invalid_type,expected:z.nan,received:n.parsedType}),re}return{status:"valid",value:e.data}}};_i.create=r=>new _i({typeName:ne.ZodNaN,...ce(r)});var uS=Symbol("zod_brand"),Ws=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}},zs=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"?re:s.status==="dirty"?(t.dirty(),xn(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"?re: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:ne.ZodPipeline})}},Nn=class extends ue{_parse(e){let t=this._def.innerType._parse(e),n=i=>(Br(i)&&(i.value=Object.freeze(i.value)),i);return fi(t)?t.then(i=>n(i)):n(t)}unwrap(){return this._def.innerType}};Nn.create=(r,e)=>new Nn({innerType:r,typeName:ne.ZodReadonly,...ce(e)});function uv(r,e){let t=typeof r=="function"?r(e):typeof r=="string"?{message:r}:r;return typeof t=="string"?{message:t}:t}function gv(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=uv(e,n),l=a.fatal??t??!0;i.addIssue({code:"custom",...a,fatal:l})}});if(!s){let o=uv(e,n),a=o.fatal??t??!0;i.addIssue({code:"custom",...o,fatal:a})}}):Ur.create()}var dS={object:gt.lazycreate},ne;(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"})(ne||(ne={}));var pS=(r,e={message:`Input not instance of ${r.name}`})=>gv(t=>t instanceof r,e),mv=Vr.create,vv=wn.create,hS=_i.create,fS=Sn.create,yv=kn.create,gS=En.create,mS=mi.create,vS=Cn.create,yS=An.create,bS=Ur.create,_S=vr.create,xS=Ht.create,wS=vi.create,SS=yr.create,kS=gt.create,ES=gt.strictCreate,CS=Rn.create,AS=qa.create,RS=Tn.create,TS=er.create,IS=Za.create,$S=yi.create,MS=bi.create,PS=Ga.create,OS=In.create,LS=$n.create,NS=Mn.create,FS=Pn.create,DS=jr.create,HS=Rt.create,BS=Ct.create,VS=tr.create,US=Rt.createWithPreprocess,jS=zs.create,WS=()=>mv().optional(),zS=()=>vv().optional(),qS=()=>yv().optional(),ZS={string:(r=>Vr.create({...r,coerce:!0})),number:(r=>wn.create({...r,coerce:!0})),boolean:(r=>kn.create({...r,coerce:!0})),bigint:(r=>Sn.create({...r,coerce:!0})),date:(r=>En.create({...r,coerce:!0}))};var GS=re;var m$=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),v$={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.")},KS=["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"],YS=d.enum(KS).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),XS=["time_on_page","page_views","scroll_depth"],JS=d.enum(XS).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage."),QS=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"}'),ek=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."),tk=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"}`),rk=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}'),nk=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."),ik=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.'),sk=d.object({type:d.literal("session_metric"),key:JS,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}'),ok=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."),ak=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."),lk=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."),ck=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(YS).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),ck).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."),dk=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"}}}}'),pk=d.discriminatedUnion("type",[QS,ek,tk,rk,nk,ik,sk,ok,ak,lk,dk]),hk=d.object({conditions:d.array(pk).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."),fk=d.object({type:d.literal("rules"),rules:d.array(hk).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."),gk=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."),mk=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."),vk=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",[fk,gk,mk,vk]),y$=yk.nullable().optional(),b$=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),_$=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional(),bk='<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"',_k={"\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 bv(r,e={}){let t=_k[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${bk} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var _v=r=>{throw TypeError(r)},ud=(r,e,t)=>e.has(r)||_v("Cannot "+t),dd=(r,e,t)=>(ud(r,e,"read from private field"),t?t.call(r):e.get(r)),Ka=(r,e,t)=>e.has(r)?_v("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),qs=(r,e,t,n)=>(ud(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),Ye=(r,e,t)=>(ud(r,e,"access private method"),t);function xk(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 wk(){if(typeof window>"u")return!1;try{return window!==window.top}catch{return!0}}var Sk="#6a59ce",xv="#677384",wv="#87919f";function kk(r){return r.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function Ek(r){return bv(r)||kk(r)}function Sv(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 Ck(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 Ak(r){return r==="dark"?"dark":r==="light"?"light":typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var Zs,Gs,ze,pd,hd,Ev,gd,Cv,Av,Rv,Ks,fd,Tv=class extends be{constructor(){super(...arguments),Ka(this,ze),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,Ka(this,Zs,null),Ka(this,Gs,null)}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),Ye(this,ze,pd).call(this)}disconnectedCallback(){super.disconnectedCallback(),Ye(this,ze,hd).call(this)}updated(r){r.has("runtime")&&(Ye(this,ze,hd).call(this),Ye(this,ze,pd).call(this))}render(){let r=Ye(this,ze,Ev).call(this),e=Ye(this,ze,gd).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"?wv:xv}),s=R({fontSize:"13px",padding:"16px",textAlign:"center",color:e==="dark"?xv:wv});if(r.length===0)return N`
302
+ `}};Hv.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",Hv);var NS={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()}},Bv={id:"adaptive-faq",version:"2.0.0",name:"FAQ Accordion",description:"Collapsible Q&A accordion with actions, rich content, feedback, and personalization",executors:IS,widgets:[{id:"adaptive-faq:accordion",component:NS,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={};Xg(d,{BRAND:()=>lk,DIRTY:()=>Cn,EMPTY_PATH:()=>BS,INVALID:()=>ne,NEVER:()=>qk,OK:()=>nt,ParseStatus:()=>Ye,Schema:()=>de,ZodAny:()=>Zr,ZodArray:()=>wr,ZodBigInt:()=>Tn,ZodBoolean:()=>Rn,ZodBranded:()=>eo,ZodCatch:()=>Bn,ZodDate:()=>In,ZodDefault:()=>Hn,ZodDiscriminatedUnion:()=>il,ZodEffects:()=>Tt,ZodEnum:()=>Fn,ZodError:()=>gt,ZodFirstPartyTypeKind:()=>ie,ZodFunction:()=>ol,ZodIntersection:()=>On,ZodIssueCode:()=>I,ZodLazy:()=>Ln,ZodLiteral:()=>Nn,ZodMap:()=>Si,ZodNaN:()=>Ei,ZodNativeEnum:()=>Dn,ZodNever:()=>Bt,ZodNull:()=>Mn,ZodNullable:()=>rr,ZodNumber:()=>An,ZodObject:()=>mt,ZodOptional:()=>Ct,ZodParsedType:()=>z,ZodPipeline:()=>to,ZodPromise:()=>Gr,ZodReadonly:()=>Vn,ZodRecord:()=>sl,ZodSchema:()=>de,ZodSet:()=>ki,ZodString:()=>qr,ZodSymbol:()=>xi,ZodTransformer:()=>Tt,ZodTuple:()=>tr,ZodType:()=>de,ZodUndefined:()=>$n,ZodUnion:()=>Pn,ZodUnknown:()=>xr,ZodVoid:()=>wi,addIssueToContext:()=>D,any:()=>vk,array:()=>xk,bigint:()=>pk,boolean:()=>Xv,coerce:()=>zk,custom:()=>Gv,date:()=>hk,datetimeRegex:()=>qv,defaultErrorMap:()=>br,discriminatedUnion:()=>Ek,effect:()=>Fk,enum:()=>Ok,function:()=>$k,getErrorMap:()=>yi,getParsedType:()=>er,instanceof:()=>uk,intersection:()=>Ck,isAborted:()=>rl,isAsync:()=>bi,isDirty:()=>nl,isValid:()=>zr,late:()=>ck,lazy:()=>Mk,literal:()=>Pk,makeIssue:()=>Qs,map:()=>Rk,nan:()=>dk,nativeEnum:()=>Lk,never:()=>bk,null:()=>mk,nullable:()=>Hk,number:()=>Yv,object:()=>wk,objectUtil:()=>xd,oboolean:()=>Wk,onumber:()=>jk,optional:()=>Dk,ostring:()=>Uk,pipeline:()=>Vk,preprocess:()=>Bk,promise:()=>Nk,quotelessJson:()=>FS,record:()=>Tk,set:()=>Ik,setErrorMap:()=>HS,strictObject:()=>Sk,string:()=>Kv,symbol:()=>fk,transformer:()=>Fk,tuple:()=>Ak,undefined:()=>gk,union:()=>kk,unknown:()=>yk,util:()=>he,void:()=>_k});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 xd;(function(r){r.mergeShapes=(e,t)=>({...e,...t})})(xd||(xd={}));var z=he.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),er=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=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"]),FS=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 DS=(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,he.jsonStringifyReplacer)}`;break;case I.unrecognized_keys:t=`Unrecognized key(s) in object: ${he.joinValues(r.keys,", ")}`;break;case I.invalid_union:t="Invalid input";break;case I.invalid_union_discriminator:t=`Invalid discriminator value. Expected ${he.joinValues(r.options)}`;break;case I.invalid_enum_value:t=`Invalid enum value. Expected ${he.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}"`:he.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,he.assertNever(r)}return{message:t}},br=DS;var Vv=br;function HS(r){Vv=r}function yi(){return Vv}var Qs=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}},BS=[];function D(r,e){let t=yi(),n=Qs({issueData:e,data:r.data,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,t,t===br?void 0:br].filter(i=>!!i)});r.common.issues.push(n)}var Ye=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}),rl=r=>r.status==="aborted",nl=r=>r.status==="dirty",zr=r=>r.status==="valid",bi=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 At=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}},Uv=(r,e)=>{if(zr(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 er(e.data)}_getOrReturnCtx(e,t){return t||{common:e.parent.common,data:e.data,parsedType:er(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ye,ctx:{common:e.parent.common,data:e.data,parsedType:er(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let t=this._parse(e);if(bi(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:er(e)},i=this._parseSync({data:e,path:n.path,parent:n});return Uv(n,i)}"~validate"(e){let t={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:er(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:t});return zr(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=>zr(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:er(e)},i=this._parse({data:e,path:n.path,parent:n}),s=await(bi(i)?i:Promise.resolve(i));return Uv(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 Tt({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 Ct.create(this,this._def)}nullable(){return rr.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return wr.create(this)}promise(){return Gr.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 Tt({...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 eo({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 to.create(this,e)}readonly(){return Vn.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},VS=/^c[^\s-]{8,}$/i,US=/^[0-9a-z]+$/,jS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,WS=/^[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,zS=/^[a-z0-9_-]{21}$/i,qS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ZS=/^[-+]?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)?)??$/,GS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,KS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",wd,YS=/^(?:(?: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])$/,XS=/^(?:(?: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])$/,JS=/^(([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]))$/,QS=/^(([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])$/,ek=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,tk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Wv="((\\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])))",rk=new RegExp(`^${Wv}$`);function zv(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 nk(r){return new RegExp(`^${zv(r)}$`)}function qv(r){let e=`${Wv}T${zv(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 ik(r,e){return!!((e==="v4"||!e)&&YS.test(r)||(e==="v6"||!e)&&JS.test(r))}function sk(r,e){if(!qS.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 ok(r,e){return!!((e==="v4"||!e)&&XS.test(r)||(e==="v6"||!e)&&QS.test(r))}var qr=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:I.invalid_type,expected:z.string,received:s.parsedType}),ne}let n=new Ye,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")GS.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")wd||(wd=new RegExp(KS,"u")),wd.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")WS.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")zS.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")VS.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")US.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")jS.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"?qv(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"?rk.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{code:I.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?nk(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"?ZS.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"duration",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?ik(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"?sk(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"?ok(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"?ek.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"base64",code:I.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?tk.test(e.data)||(i=this._getOrReturnCtx(e,i),D(i,{validation:"base64url",code:I.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: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}};qr.create=r=>new qr({checks:[],typeName:ie.ZodString,coerce:r?.coerce??!1,...ce(r)});function ak(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:I.invalid_type,expected:z.number,received:s.parsedType}),ne}let n,i=new Ye;for(let s of this._def.checks)s.kind==="int"?he.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"?ak(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()):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 Ye;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()):he.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}};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:I.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: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 Ye,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()):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 xi=class extends de{_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)}};xi.create=r=>new xi({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:I.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:I.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 xr=class extends de{constructor(){super(...arguments),this._unknown=!0}_parse(e){return nt(e.data)}};xr.create=r=>new xr({typeName:ie.ZodUnknown,...ce(r)});var Bt=class extends de{_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 wi=class extends de{_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)}};wi.create=r=>new wi({typeName:ie.ZodVoid,...ce(r)});var wr=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: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 At(t,o,t.path,a)))).then(o=>Ye.mergeArray(n,o));let s=[...t.data].map((o,a)=>i.type._parseSync(new At(t,o,t.path,a)));return Ye.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)}};wr.create=(r,e)=>new wr({type:r,minLength:null,maxLength:null,exactLength:null,typeName:ie.ZodArray,...ce(e)});function _i(r){if(r instanceof mt){let e={};for(let t in r.shape){let n=r.shape[t];e[t]=Ct.create(_i(n))}return new mt({...r._def,shape:()=>e})}else return r instanceof wr?new wr({...r._def,type:_i(r.element)}):r instanceof Ct?Ct.create(_i(r.unwrap())):r instanceof rr?rr.create(_i(r.unwrap())):r instanceof tr?tr.create(r.items.map(e=>_i(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: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 At(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 At(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=>Ye.mergeObjectSync(n,c)):Ye.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 _i(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 Ct;)s=s._def.innerType;t[n]=s}return new r({...this._def,shape:()=>t})}keyof(){return Zv(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: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}};Pn.create=(r,e)=>new Pn({options:r,typeName:ie.ZodUnion,...ce(e)});var _r=r=>r instanceof Ln?_r(r.schema):r instanceof Tt?_r(r.innerType()):r instanceof Nn?[r.value]:r instanceof Fn?r.options:r instanceof Dn?he.objectValues(r.enum):r instanceof Hn?_r(r._def.innerType):r instanceof $n?[void 0]:r instanceof Mn?[null]:r instanceof Ct?[void 0,..._r(r.unwrap())]:r instanceof rr?[null,..._r(r.unwrap())]:r instanceof eo||r instanceof Vn?_r(r.unwrap()):r instanceof Bn?_r(r._def.innerType):[],il=class r extends de{_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=_r(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 Sd(r,e){let t=er(r),n=er(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=Sd(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=Sd(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(rl(s)||rl(o))return ne;let a=Sd(s.value,o.value);return a.valid?((nl(s)||nl(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}))}};On.create=(r,e,t)=>new On({left:r,right:e,typeName:ie.ZodIntersection,...ce(t)});var tr=class r extends de{_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 At(n,o,n.path,a)):null}).filter(o=>!!o);return n.common.async?Promise.all(s).then(o=>Ye.mergeArray(t,o)):Ye.mergeArray(t,s)}get items(){return this._def.items}rest(e){return new r({...this._def,rest:e})}};tr.create=(r,e)=>{if(!Array.isArray(r))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new tr({items:r,typeName:ie.ZodTuple,rest:null,...ce(e)})};var sl=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: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 At(n,a,n.path,a)),value:o._parse(new At(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ye.mergeObjectAsync(t,i):Ye.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:qr.create(),valueType:e,typeName:ie.ZodRecord,...ce(t)})}},Si=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: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 At(n,a,n.path,[c,"key"])),value:s._parse(new At(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}}}};Si.create=(r,e,t)=>new Si({valueType:e,keyType:r,typeName:ie.ZodMap,...ce(t)});var ki=class r extends de{_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 At(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)}};ki.create=(r,e)=>new ki({valueType:r,minSize:null,maxSize:null,typeName:ie.ZodSet,...ce(e)});var ol=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:I.invalid_type,expected:z.function,received:t.parsedType}),ne;function n(a,l){return Qs({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,yi(),br].filter(c=>!!c),issueData:{code:I.invalid_arguments,argumentsError:l}})}function i(a,l){return Qs({data:a,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,yi(),br].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 Gr){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:tr.create(e).rest(xr.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||tr.create([]).rest(xr.create()),returns:t||xr.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:I.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 Zv(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: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})}};Fn.create=Zv;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:I.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:I.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 Gr=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: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})))}};Gr.create=(r,e)=>new Gr({type:r,typeName:ie.ZodPromise,...ce(e)});var Tt=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(!zr(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=>zr(o)?Promise.resolve(i.transform(o.value,s)).then(a=>({status:t.value,value:a})):ne);he.assertNever(i)}};Tt.create=(r,e,t)=>new Tt({schema:r,typeName:ie.ZodEffects,effect:e,...ce(t)});Tt.createWithPreprocess=(r,e,t)=>new Tt({schema:e,effect:{type:"preprocess",transform:r},typeName:ie.ZodEffects,...ce(t)});var Ct=class extends de{_parse(e){return this._getType(e)===z.undefined?nt(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ct.create=(r,e)=>new Ct({innerType:r,typeName:ie.ZodOptional,...ce(e)});var rr=class extends de{_parse(e){return this._getType(e)===z.null?nt(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};rr.create=(r,e)=>new rr({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 bi(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 Ei=class extends de{_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}}};Ei.create=r=>new Ei({typeName:ie.ZodNaN,...ce(r)});var lk=Symbol("zod_brand"),eo=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}},to=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=>(zr(i)&&(i.value=Object.freeze(i.value)),i);return bi(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 jv(r,e){let t=typeof r=="function"?r(e):typeof r=="string"?{message:r}:r;return typeof t=="string"?{message:t}:t}function Gv(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=jv(e,n),l=a.fatal??t??!0;i.addIssue({code:"custom",...a,fatal:l})}});if(!s){let o=jv(e,n),a=o.fatal??t??!0;i.addIssue({code:"custom",...o,fatal:a})}}):Zr.create()}var ck={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 uk=(r,e={message:`Input not instance of ${r.name}`})=>Gv(t=>t instanceof r,e),Kv=qr.create,Yv=An.create,dk=Ei.create,pk=Tn.create,Xv=Rn.create,hk=In.create,fk=xi.create,gk=$n.create,mk=Mn.create,vk=Zr.create,yk=xr.create,bk=Bt.create,_k=wi.create,xk=wr.create,wk=mt.create,Sk=mt.strictCreate,kk=Pn.create,Ek=il.create,Ck=On.create,Ak=tr.create,Tk=sl.create,Rk=Si.create,Ik=ki.create,$k=ol.create,Mk=Ln.create,Pk=Nn.create,Ok=Fn.create,Lk=Dn.create,Nk=Gr.create,Fk=Tt.create,Dk=Ct.create,Hk=rr.create,Bk=Tt.createWithPreprocess,Vk=to.create,Uk=()=>Kv().optional(),jk=()=>Yv().optional(),Wk=()=>Xv().optional(),zk={string:(r=>qr.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 qk=ne;var wM=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),SM={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.")},Zk=["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"],Gk=d.enum(Zk).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),Kk=["time_on_page","page_views","scroll_depth"],Yk=d.enum(Kk).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage."),Xk=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"}'),Jk=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."),Qk=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"}`),eE=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}'),tE=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."),rE=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.'),nE=d.object({type:d.literal("session_metric"),key:Yk,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}'),iE=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."),sE=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."),oE=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."),aE=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."),lE=d.object({events:d.array(Gk).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),aE).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."),cE=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:lE.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"}}}}'),uE=d.discriminatedUnion("type",[Xk,Jk,Qk,eE,tE,rE,nE,iE,sE,oE,cE]),dE=d.object({conditions:d.array(uE).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."),pE=d.object({type:d.literal("rules"),rules:d.array(dE).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."),hE=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."),fE=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."),gE=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."),mE=d.discriminatedUnion("type",[pE,hE,fE,gE]),kM=mE.nullable().optional(),EM=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),CM=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional(),vE='<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"',yE={"\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 Jv(r,e={}){let t=yE[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${vE} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var Qv=r=>{throw TypeError(r)};var kd=(r,e,t)=>e.has(r)||Qv("Cannot "+t),Ed=(r,e,t)=>(kd(r,e,"read from private field"),t?t.call(r):e.get(r)),al=(r,e,t)=>e.has(r)?Qv("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),ro=(r,e,t,n)=>(kd(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),Xe=(r,e,t)=>(kd(r,e,"access private method"),t);function bE(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 _E(){if(typeof window>"u")return!1;try{return window!==window.top}catch{return!0}}var xE="#6a59ce",ey="#677384",ty="#87919f";function wE(r){return r.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;")}function SE(r){return Jv(r)||wE(r)}function ry(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 kE(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 EE(r){return r==="dark"?"dark":r==="light"?"light":typeof window<"u"&&window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}var no,io,qe,Cd,Ad,iy,Rd,sy,oy,ay,so,Td,ly=class extends be{constructor(){super(...arguments),al(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,al(this,no,null),al(this,io,null)}createRenderRoot(){return this}connectedCallback(){super.connectedCallback(),Xe(this,qe,Cd).call(this)}disconnectedCallback(){super.disconnectedCallback(),Xe(this,qe,Ad).call(this)}updated(r){r.has("runtime")&&(Xe(this,qe,Ad).call(this),Xe(this,qe,Cd).call(this))}render(){let r=Xe(this,qe,iy).call(this),e=Xe(this,qe,Rd).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"?ty:ey}),s=T({fontSize:"13px",padding:"16px",textAlign:"center",color:e==="dark"?ey:ty});if(r.length===0)return N`
303
303
  <div
304
304
  style=${t}
305
305
  data-adaptive-id=${this.instanceId}
@@ -318,12 +318,12 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
318
318
  >
319
319
  <div style=${n}>
320
320
  ${a?Array.from(o.entries()).map(([l,c])=>N`
321
- ${l?N`<div style=${i} data-category-header=${l}>${l}</div>`:Q}
322
- ${c.map((u,p)=>Ye(this,ze,fd).call(this,u,p,c.length))}
323
- `):r.map((l,c)=>Ye(this,ze,fd).call(this,l,c,r.length))}
321
+ ${l?N`<div style=${i} data-category-header=${l}>${l}</div>`:ee}
322
+ ${c.map((u,p)=>Xe(this,qe,Td).call(this,u,p,c.length))}
323
+ `):r.map((l,c)=>Xe(this,qe,Td).call(this,l,c,r.length))}
324
324
  </div>
325
325
  </div>
326
- `}};Zs=new WeakMap;Gs=new WeakMap;ze=new WeakSet;pd=function(){this.runtime&&(qs(this,Zs,this.runtime.context.subscribe(()=>{this._renderTick+=1})),this.runtime.accumulator?.subscribe&&qs(this,Gs,this.runtime.accumulator.subscribe(()=>{this._renderTick+=1})))};hd=function(){var r,e;(r=dd(this,Zs))==null||r.call(this),qs(this,Zs,null),(e=dd(this,Gs))==null||e.call(this),qs(this,Gs,null)};Ev=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};gd=function(){return Ak(this.config.theme)};Cv=function(r){let e=this._expandedIds.has(r),t;if(this.config.expandBehavior==="single"){for(let n of this._expandedIds)n!==r&&Ye(this,ze,Ks).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,ze,Ks).call(this,"nav:toggled",{tipId:r,expanded:!e}),this._expandedIds=t};Av=function(r,e){let t=r.trim().toLowerCase();if(t.startsWith("javascript:")||t.startsWith("data:"))return;Ye(this,ze,Ks).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=xk({href:r,external:e,windowOrigin:typeof window<"u"?window.location.origin:"",isIframe:wk()});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,Iv(n.url.toString())||(window.history.pushState(null,"",n.url.toString()),window.dispatchEvent(new PopStateEvent("popstate")))};Rv=function(r){let e=document.querySelector(r.selector);e instanceof HTMLElement&&(Ye(this,ze,Ks).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"}),Ck(e),setTimeout(()=>e.focus(),400))};Ks=function(r,e){this.runtime?.events.publish(r,{instanceId:this.instanceId,timestamp:Date.now(),...e})};fd=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,ze,gd).call(this),g=c?Array.isArray(c.route)?c.route[0]:c.route:o,m=c?Sv(Array.isArray(c.route)?c.route:[c.route]):g?Sv([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, ${Sk})`,color:"#ffffff"}),P=R({fontSize:"16px",flexShrink:"0"}),Y=F=>{F.preventDefault(),F.stopPropagation(),x&&c?Ye(this,ze,Rv).call(this,c):g&&Ye(this,ze,Av).call(this,g,l??!1)};return N`
326
+ `}};no=new WeakMap;io=new WeakMap;qe=new WeakSet;Cd=function(){this.runtime&&(ro(this,no,this.runtime.context.subscribe(()=>{this._renderTick+=1})),this.runtime.accumulator?.subscribe&&ro(this,io,this.runtime.accumulator.subscribe(()=>{this._renderTick+=1})))};Ad=function(){var r,e;(r=Ed(this,no))==null||r.call(this),ro(this,no,null),(e=Ed(this,io))==null||e.call(this),ro(this,io,null)};iy=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};Rd=function(){return EE(this.config.theme)};sy=function(r){let e=this._expandedIds.has(r),t;if(this.config.expandBehavior==="single"){for(let n of this._expandedIds)n!==r&&Xe(this,qe,so).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);Xe(this,qe,so).call(this,"nav:toggled",{tipId:r,expanded:!e}),this._expandedIds=t};oy=function(r,e){let t=r.trim().toLowerCase();if(t.startsWith("javascript:")||t.startsWith("data:"))return;Xe(this,qe,so).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=bE({href:r,external:e,windowOrigin:typeof window<"u"?window.location.origin:"",isIframe:_E()});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,cy(n.url.toString())||(window.history.pushState(null,"",n.url.toString()),window.dispatchEvent(new PopStateEvent("popstate")))};ay=function(r){let e=document.querySelector(r.selector);e instanceof HTMLElement&&(Xe(this,qe,so).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"}),kE(e),setTimeout(()=>e.focus(),400))};so=function(r,e){this.runtime?.events.publish(r,{instanceId:this.instanceId,timestamp:Date.now(),...e})};Td=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=Xe(this,qe,Rd).call(this),g=c?Array.isArray(c.route)?c.route[0]:c.route:o,m=c?ry(Array.isArray(c.route)?c.route:[c.route]):g?ry([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)"}}),C=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)"}),A=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"}),$=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, ${xE})`,color:"#ffffff"}),P=T({fontSize:"16px",flexShrink:"0"}),Y=F=>{F.preventDefault(),F.stopPropagation(),x&&c?Xe(this,qe,ay).call(this,c):g&&Xe(this,qe,oy).call(this,g,l??!1)};return N`
327
327
  <div
328
328
  style=${w}
329
329
  data-nav-tip-id=${n}
@@ -332,11 +332,11 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
332
332
  type="button"
333
333
  style=${C}
334
334
  aria-expanded=${p}
335
- @click=${()=>Ye(this,ze,Cv).call(this,n)}
335
+ @click=${()=>Xe(this,qe,sy).call(this,n)}
336
336
  @mouseenter=${()=>{this._hoveredId=n}}
337
337
  @mouseleave=${()=>{this._hoveredId=null}}
338
338
  >
339
- ${a?N`<span style=${P}>${Na(Ek(a))}</span>`:Q}
339
+ ${a?N`<span style=${P}>${Ga(SE(a))}</span>`:ee}
340
340
  <span>${i}</span>
341
341
  <span style=${_}>${"\u203A"}</span>
342
342
  </button>
@@ -345,45 +345,45 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
345
345
  ${S?N`
346
346
  <a
347
347
  href=${g||"#"}
348
- style=${T}
349
- target=${l?"_blank":Q}
350
- rel=${l?"noopener noreferrer":Q}
348
+ style=${R}
349
+ target=${l?"_blank":ee}
350
+ rel=${l?"noopener noreferrer":ee}
351
351
  @click=${Y}
352
352
  >${b}</a>
353
- `:Q}
353
+ `:ee}
354
354
  </div>
355
355
  </div>
356
- `};Tv.properties={config:{attribute:!1},runtime:{attribute:!1},instanceId:{type:String},_expandedIds:{state:!0},_renderTick:{state:!0},_hoveredId:{state:!0}};var kv="syntro-nav-tips";function Rk(){typeof window>"u"||customElements.get(kv)||customElements.define(kv,Tv)}var Tk=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 Iv(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 Ik(r){try{return new URL(r,window.location.origin).origin===window.location.origin}catch{return!1}}var $k=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&&Ik(t)?Iv(t)||(window.history.pushState(null,"",t),window.dispatchEvent(new PopStateEvent("popstate"))):window.location.href=t,{cleanup:()=>{}}},Mk={mount(r,e){Rk();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()}},Pk=[{kind:"navigation:scrollTo",executor:Tk},{kind:"navigation:navigate",executor:$k}],$v={id:"adaptive-nav",version:"2.0.0",name:"Navigation Tips",description:"Navigation actions and accordion-based tips with per-item conditional visibility",executors:Pk,widgets:[{id:"adaptive-nav:tips",component:Mk,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 Ok=[xu,av,$v,Uu],Lk=Ok.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 Mv(r){let e=0;for(let t of Lk)r.has(t.id)||(r.register(t),e++);console.log("[Syntro Runtime] Registered",e,"built-in runtime modules")}var Fn=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 Ya=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 md=class extends Event{constructor(e,t){super("context-provider",{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t}},xi=class extends Ya{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 Fn(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 md(this.context,this.host))}};var Dk='<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"',Pv={"\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 Ys(r,e={}){let t=Pv[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${Dk} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var Hk=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),Be={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.")},Ov=["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"],Lv=d.enum(Ov).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),Nv=["time_on_page","page_views","scroll_depth"],Fv=d.enum(Nv).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage.");var Xa=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"}'),Ja=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."),Qa=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"}`),el=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}'),tl=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."),rl=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.'),nl=d.object({type:d.literal("session_metric"),key:Fv,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}'),il=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."),sl=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."),ol=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."),wi=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."),Si=d.object({events:d.array(Lv).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),wi).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."),al=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:Si.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"}}}}'),br=d.discriminatedUnion("type",[Xa,Ja,Qa,el,tl,rl,nl,il,sl,ol,al]),ki=d.object({conditions:d.array(br).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."),Ei=d.object({type:d.literal("rules"),rules:d.array(ki).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."),Ci=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."),Ai=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."),Ri=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."),Ti=d.discriminatedUnion("type",[Ei,Ci,Ai,Ri]),Xs=Ti.nullable().optional();var Bk=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),Vk=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional();function Uk(r,e,t="currentColor"){let n=Ys(r,{size:e,color:t});if(!n)return N`<span style=${R({fontSize:`${e}px`,lineHeight:"1"})}>${r}</span>`;let i=document.createElement("span");return i.style.display="flex",i.innerHTML=n,N`${i}`}var jk=[":toggled",":clicked",":feedback",":navigate",":expanded",":collapsed",":dismissed",":submitted",":interacted",":tip_clicked",":tip_focused"],ll=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=>{jk.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 Q;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`
356
+ `};ly.properties={config:{attribute:!1},runtime:{attribute:!1},instanceId:{type:String},_expandedIds:{state:!0},_renderTick:{state:!0},_hoveredId:{state:!0}};var ny="syntro-nav-tips";function CE(){typeof window>"u"||customElements.get(ny)||customElements.define(ny,ly)}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 cy(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 TE(r){try{return new URL(r,window.location.origin).origin===window.location.origin}catch{return!1}}var RE=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&&TE(t)?cy(t)||(window.history.pushState(null,"",t),window.dispatchEvent(new PopStateEvent("popstate"))):window.location.href=t,{cleanup:()=>{}}},IE={mount(r,e){CE();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()}},$E=[{kind:"navigation:scrollTo",executor:AE},{kind:"navigation:navigate",executor:RE}],uy={id:"adaptive-nav",version:"2.0.0",name:"Navigation Tips",description:"Navigation actions and accordion-based tips with per-item conditional visibility",executors:$E,widgets:[{id:"adaptive-nav:tips",component:IE,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 ME=[Lu,Bv,uy,rd],PE=ME.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 dy(r){let e=0;for(let t of PE)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 ll=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 Id=class extends Event{constructor(e,t){super("context-provider",{bubbles:!0,composed:!0}),this.context=e,this.contextTarget=t}},Ci=class extends ll{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 Id(this.context,this.host))}};var NE='<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"',py={"\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 oo(r,e={}){let t=py[r];if(!t)return"";let n=e.size??14,i=e.color??"currentColor";return`${NE} width="${n}" height="${n}" stroke="${i}">${t.join("")}</svg>`}var FE=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.")},hy=["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"],fy=d.enum(hy).describe("Event name to count. ui.* = user interactions and behavioral detectors, nav.* = page navigation, behavior.* = derived behavioral signals."),gy=["time_on_page","page_views","scroll_depth"],my=d.enum(gy).describe("Session metric key. time_on_page = seconds on current page, page_views = pages visited this session, scroll_depth = 0-100 percentage.");var cl=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"}'),ul=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."),dl=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"}`),pl=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}'),hl=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."),fl=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.'),gl=d.object({type:d.literal("session_metric"),key:my,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}'),ml=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."),vl=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."),yl=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."),Ai=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."),Ti=d.object({events:d.array(fy).min(1).describe("Event names to count. Use values from the countable events enum."),match:d.record(d.string(),Ai).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."),bl=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:Ti.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"}}}}'),Sr=d.discriminatedUnion("type",[cl,ul,dl,pl,hl,fl,gl,ml,vl,yl,bl]),Ri=d.object({conditions:d.array(Sr).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."),Ii=d.object({type:d.literal("rules"),rules:d.array(Ri).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."),$i=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."),Mi=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."),Pi=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."),Oi=d.discriminatedUnion("type",[Ii,$i,Mi,Pi]),ao=Oi.nullable().optional();var DE=d.object({events:d.array(d.string()),urlContains:d.string().optional(),props:d.record(d.union([d.string(),d.number(),d.boolean()])).optional()}),HE=d.object({title:d.string().optional(),body:d.string().optional(),icon:d.string().optional()}).nullable().optional();function BE(r,e,t="currentColor"){let n=oo(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 VE=[":toggled",":clicked",":feedback",":navigate",":expanded",":collapsed",":dismissed",":submitted",":interacted",":tip_clicked",":tip_focused"],_l=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=>{VE.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
- ${Uk(s,o)}
364
+ <div style=${T(p)}>
365
+ <div style=${T(h)}>
366
+ ${BE(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?N`<p style=${R(v)}>${i}</p>`:Q}
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?N`<div data-widget-mount-parent></div>`:N`<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
- `}};ll.properties={config:{attribute:!1},surface:{type:String},runtimeRef:{attribute:!1},_hovered:{state:!0}};customElements.define("syntro-tile-card",ll);var cl=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=${R({display:"flex",flexDirection:"column",gap:"0.75rem",width:"100%"})}>
385
+ `}};_l.properties={config:{attribute:!1},surface:{type:String},runtimeRef:{attribute:!1},_hovered:{state:!0}};customElements.define("syntro-tile-card",_l);var xl=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
387
  ${this.tiles.map(n=>N`
388
388
  <syntro-tile-card
389
389
  .config=${n}
@@ -392,33 +392,33 @@ 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
- `}};cl.properties={tiles:{attribute:!1},runtimeRef:{attribute:!1},surface:{type:String}};customElements.define("syntro-tile-stack",cl);var vd={peek:30,mid:70,full:95},Wk=.5,yd=8,Dv=100,Hv=8,ul=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??vd.peek,mid:t.mid??vd.mid,full:t.full??vd.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-Dv,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))>Wk)return s?n<t.peek-yd?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null:this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(this.dragOffsetVh>Hv)return n<t.peek-yd?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null;if(this.dragOffsetVh<-Hv)return this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(n<t.peek-yd&&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-Dv*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 Q;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=${R(a)}>
395
+ `}};xl.properties={tiles:{attribute:!1},runtimeRef:{attribute:!1},surface:{type:String}};customElements.define("syntro-tile-stack",xl);var $d={peek:30,mid:70,full:95},UE=.5,Md=8,vy=100,yy=8,wl=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??$d.peek,mid:t.mid??$d.mid,full:t.full??$d.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-vy,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))>UE)return s?n<t.peek-Md?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null:this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(this.dragOffsetVh>yy)return n<t.peek-Md?null:this._dragStartSnap==="full"?"mid":this._dragStartSnap==="mid"?"peek":null;if(this.dragOffsetVh<-yy)return this._dragStartSnap==="peek"?"mid":(this._dragStartSnap==="mid","full");if(n<t.peek-Md&&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-vy*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
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>`:Q}
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?N`<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>`:Q}
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)}
@@ -426,7 +426,7 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
426
426
  >
427
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)"})}
429
+ style=${T({color:"var(--sc-notification-error-color)"})}
430
430
  >Failed to load: ${this.error}</div>`:N`<syntro-tile-stack
431
431
  .tiles=${this.tiles}
432
432
  .surface=${"overlay"}
@@ -435,7 +435,7 @@ 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
- `}};ul.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",ul);var Pe="1.0.0",Ie={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"},at={Mutation:0,MouseMove:1,MouseInteraction:2,Scroll:3,ViewportResize:4,Input:5,TouchMove:6,MediaInteraction:7,Drag:12},Js={MouseUp:0,MouseDown:1,Click:2,ContextMenu:3,DblClick:4,Focus:5,Blur:6,TouchStart:7,TouchEnd:9},bd={hesitationMs:3e3,hesitationRadiusPx:10,rageClickCount:3,rageClickWindowMs:1e3,rageClickRadiusPx:30,scrollThrashReversals:3,scrollThrashWindowMs:2e3,focusBounceMaxInputs:0,idleMs:5e3,hoverSampleMs:100};var dl=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===at.MouseInteraction){let n=e.data.id??0;if(e.data.type===Js.Focus)this.focused.set(n,{id:n,focusTs:t,inputCount:0});else if(e.data.type===Js.Blur){let i=this.focused.get(n);i&&i.inputCount<=this.config.focusBounceMaxInputs&&this.emit({ts:t,name:Ie.UI_FOCUS_BOUNCE,source:"rrweb",schemaVersion:Pe,props:{elementId:n,duration_ms:t-i.focusTs}}),this.focused.delete(n)}}else if(e.data.source===at.Input){let n=e.data.id??0,i=this.focused.get(n);i&&i.inputCount++}}};var pl=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!==at.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:Ie.UI_HESITATE,source:"rrweb",schemaVersion:Pe,props:{x:this.anchorX,y:this.anchorY,duration_ms:t}}),this.emitted=!0)}};var hl=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!==at.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?Bv(t):null,i=this.currentElement?Bv(this.currentElement):null;n!==i&&(this.currentElement&&this.hoverStartTs!==null&&this.emit({ts:e,name:Ie.UI_HOVER,source:"rrweb",schemaVersion:Pe,props:{x:this.lastX,y:this.lastY,duration_ms:e-this.hoverStartTs,element:this.currentElement}}),this.currentElement=t,this.hoverStartTs=e)}};function Bv(r){return`${r.tag_name??""}|${r.attr__id??""}|${(r.classes??[]).join(",")}`}var fl=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===at.MouseMove||t===at.MouseInteraction||t===at.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:Ie.UI_IDLE,source:"rrweb",schemaVersion:Pe,props:{idle_ms:e-this.lastActivityTs}}),this.emitted=!0)}};var gl=class{constructor(e,t){this.config=e,this.emit=t,this.clicks=[]}ingest(e){if(e.type!==3||e.data.source!==at.MouseInteraction||e.data.type!==Js.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:Ie.UI_RAGE_CLICK,source:"rrweb",schemaVersion:Pe,props:{x:t,y:n,clickCount:o.length,duration_ms:i-o[0].ts}}),this.clicks=[])}};var ml=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!==at.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:Ie.UI_SCROLL_THRASH,source:"rrweb",schemaVersion:Pe,props:{reversals:this.reversals.length,duration_ms:n-this.reversals[0]}}),this.reversals=[])}this.lastDirection=i}this.lastY=t}};var Vv={$click:Ie.UI_CLICK,$scroll:Ie.UI_SCROLL,$input:Ie.UI_INPUT,$change:Ie.UI_CHANGE,$submit:Ie.UI_SUBMIT,$pageview:Ie.NAV_PAGE_VIEW,$pageleave:Ie.NAV_PAGE_LEAVE,$session_start:"session.start",$identify:"user.identify"};function zk(r){let e=r.event;if(typeof e!="string")return"posthog.unknown";if(Vv[e])return Vv[e];if(e==="$autocapture"){let t=r.properties?.$tag_name,n=r.properties?.$event_type;return n==="submit"?Ie.UI_SUBMIT:n==="change"?Ie.UI_CHANGE:t==="input"||t==="textarea"?Ie.UI_INPUT:Ie.UI_CLICK}return e.startsWith("$")?e.replace("$","posthog."):`posthog.${e}`}var Uv=new Set(["a","button","input","select","textarea"]);function qk(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 Zk(r,e){if(e&&Uv.has(e)||!r)return e;for(let t of r){let n=t.tag_name;if(n&&Uv.has(n))return n}return e}function Gk(r,e){return r.map((t,n)=>{let i=e[n];return!i||t.tag_name!==i.tag_name?t:{...i,...t}})}function Kk(r,e){let t={},n=r.properties||{},i=n.$elements??(typeof n.$elements_chain=="string"?qk(n.$elements_chain):void 0),s=i&&e?Gk(i,e):i,o=n.$tag_name??s?.[0]?.tag_name,a=r.event==="$autocapture"||r.event==="$click";return t.tagName=a?Zk(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 Ii(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:zk(r),source:"posthog",props:Kk(r,e),schemaVersion:Pe}}function $i(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 _d(r){return(e,t)=>{if(typeof e!="string")return;let n={event:e,properties:t,timestamp:Date.now()};if($i(n)){let i=Ii(n);r(i)}}}function xd(r){let e={...bd,...r?.config},t=[];function n(v){for(let g of t)g(v)}let i=new pl(e,n),s=new gl(e,n),o=new ml(e,n),a=new dl(e,n),l=new fl(e,n),c=new hl(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($i(m)){let y=h(m)?f(typeof m.timestamp=="number"?m.timestamp:Date.now()):void 0;n(Ii(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 qe={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 Qs=3;var vl=3e4;var Xk=0;function wd(r,e){return r.replace(/\{\{props\.(\w+)\}\}/g,(t,n)=>!e||!(n in e)?t:String(e[n]))}function Jk(r,e){if(r===e)return!0;try{return new RegExp(e).test(r)}catch{return!1}}function jv(r,e){for(let t of e){let n=t.notifications;if(!(!n||n.length===0))for(let i of n){if(!Jk(r.name,i.on))continue;let s=Date.now(),o=i.ttl??8e3;return{notification:{id:`notif-${++Xk}-${s}`,title:wd(i.title,r.props),body:i.body?wd(i.body,r.props):void 0,icon:i.icon,tileId:t.id,itemId:i.deepLink?.itemId?wd(i.deepLink.itemId,r.props):void 0,expiresAt:s+o,createdAt:s,ttl:o},rule:i}}}return null}var Mi=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=jv(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(qe.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(qe.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 Bt(r,e){return{ts:Date.now(),name:r,source:"canvas",props:e,schemaVersion:Pe}}function Qk(r,e){return Bt(qe.CANVAS_OPENED,{surface:r,...e})}function eE(r,e){return Bt(qe.CANVAS_CLOSED,{surface:r,...e})}function tE(r,e){return Bt(qe.TILE_VIEWED,{tileId:r,surface:e})}function rE(r,e){return Bt(qe.TILE_EXPANDED,{tileId:r,surface:e})}function nE(r,e){return Bt(qe.TILE_COLLAPSED,{tileId:r,surface:e})}function iE(r,e,t){return Bt(qe.TILE_ACTION,{tileId:r,actionId:e,surface:t})}function sE(r,e){return Bt(qe.OVERLAY_STARTED,{recipeId:r,recipeName:e})}function oE(r,e){return Bt(qe.OVERLAY_COMPLETED,{recipeId:r,recipeName:e})}function aE(r,e,t){return Bt(qe.OVERLAY_DISMISSED,{recipeId:r,recipeName:e,stepIndex:t})}function lE(r,e,t){return Bt(qe.OVERLAY_STEP_VIEWED,{recipeId:r,stepIndex:e,stepTitle:t})}function cE(r,e){let t=r.startsWith("canvas.")?r:`canvas.${r}`;return Bt(t,e)}var Pi={canvasOpened:Qk,canvasClosed:eE,tileViewed:tE,tileExpanded:rE,tileCollapsed:nE,tileAction:iE,overlayStarted:sE,overlayCompleted:oE,overlayDismissed:aE,overlayStepViewed:lE,custom:cE};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 yl=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 Mi(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=Pi.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?Pi.canvasOpened("overlay",n):Pi.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(qe.NOTIFICATION_CLICKED,{notificationId:n.id,tileId:n.tileId,itemId:n.itemId}),this.isOpen||this._toggle(),this.runtimeRef&&n.tileId&&this.runtimeRef.events.publish(qe.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`
438
+ `}};wl.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",wl);var Pe="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},lo={MouseUp:0,MouseDown:1,Click:2,ContextMenu:3,DblClick:4,Focus:5,Blur:6,TouchStart:7,TouchEnd:9},Pd={hesitationMs:3e3,hesitationRadiusPx:10,rageClickCount:3,rageClickWindowMs:1e3,rageClickRadiusPx:30,scrollThrashReversals:3,scrollThrashWindowMs:2e3,focusBounceMaxInputs:0,idleMs:5e3,hoverSampleMs:100};var Sl=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===lo.Focus)this.focused.set(n,{id:n,focusTs:t,inputCount:0});else if(e.data.type===lo.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:Pe,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 kl=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:Pe,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?by(t):null,i=this.currentElement?by(this.currentElement):null;n!==i&&(this.currentElement&&this.hoverStartTs!==null&&this.emit({ts:e,name:Re.UI_HOVER,source:"rrweb",schemaVersion:Pe,props:{x:this.lastX,y:this.lastY,duration_ms:e-this.hoverStartTs,element:this.currentElement}}),this.currentElement=t,this.hoverStartTs=e)}};function by(r){return`${r.tag_name??""}|${r.attr__id??""}|${(r.classes??[]).join(",")}`}var Cl=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:Pe,props:{idle_ms:e-this.lastActivityTs}}),this.emitted=!0)}};var Al=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!==lo.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:Pe,props:{x:t,y:n,clickCount:o.length,duration_ms:i-o[0].ts}}),this.clicks=[])}};var Tl=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:Pe,props:{reversals:this.reversals.length,duration_ms:n-this.reversals[0]}}),this.reversals=[])}this.lastDirection=i}this.lastY=t}};var _y={$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 jE(r){let e=r.event;if(typeof e!="string")return"posthog.unknown";if(_y[e])return _y[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 xy=new Set(["a","button","input","select","textarea"]);function WE(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 zE(r,e){if(e&&xy.has(e)||!r)return e;for(let t of r){let n=t.tag_name;if(n&&xy.has(n))return n}return e}function qE(r,e){return r.map((t,n)=>{let i=e[n];return!i||t.tag_name!==i.tag_name?t:{...i,...t}})}function ZE(r,e){let t={},n=r.properties||{},i=n.$elements??(typeof n.$elements_chain=="string"?WE(n.$elements_chain):void 0),s=i&&e?qE(i,e):i,o=n.$tag_name??s?.[0]?.tag_name,a=r.event==="$autocapture"||r.event==="$click";return t.tagName=a?zE(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 Li(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:jE(r),source:"posthog",props:ZE(r,e),schemaVersion:Pe}}function Ni(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 Od(r){return(e,t)=>{if(typeof e!="string")return;let n={event:e,properties:t,timestamp:Date.now()};if(Ni(n)){let i=Li(n);r(i)}}}function Ld(r){let e={...Pd,...r?.config},t=[];function n(v){for(let g of t)g(v)}let i=new kl(e,n),s=new Al(e,n),o=new Tl(e,n),a=new Sl(e,n),l=new Cl(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(Ni(m)){let y=h(m)?f(typeof m.timestamp=="number"?m.timestamp:Date.now()):void 0;n(Li(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 Ze={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 co=3;var Rl=3e4;var KE=0;function Nd(r,e){return r.replace(/\{\{props\.(\w+)\}\}/g,(t,n)=>!e||!(n in e)?t:String(e[n]))}function YE(r,e){if(r===e)return!0;try{return new RegExp(e).test(r)}catch{return!1}}function wy(r,e){for(let t of e){let n=t.notifications;if(!(!n||n.length===0))for(let i of n){if(!YE(r.name,i.on))continue;let s=Date.now(),o=i.ttl??8e3;return{notification:{id:`notif-${++KE}-${s}`,title:Nd(i.title,r.props),body:i.body?Nd(i.body,r.props):void 0,icon:i.icon,tileId:t.id,itemId:i.deepLink?.itemId?Nd(i.deepLink.itemId,r.props):void 0,expiresAt:s+o,createdAt:s,ttl:o},rule:i}}}return null}var Fi=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=wy(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(Ze.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(Ze.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:Pe}}function XE(r,e){return Vt(Ze.CANVAS_OPENED,{surface:r,...e})}function JE(r,e){return Vt(Ze.CANVAS_CLOSED,{surface:r,...e})}function QE(r,e){return Vt(Ze.TILE_VIEWED,{tileId:r,surface:e})}function eC(r,e){return Vt(Ze.TILE_EXPANDED,{tileId:r,surface:e})}function tC(r,e){return Vt(Ze.TILE_COLLAPSED,{tileId:r,surface:e})}function rC(r,e,t){return Vt(Ze.TILE_ACTION,{tileId:r,actionId:e,surface:t})}function nC(r,e){return Vt(Ze.OVERLAY_STARTED,{recipeId:r,recipeName:e})}function iC(r,e){return Vt(Ze.OVERLAY_COMPLETED,{recipeId:r,recipeName:e})}function sC(r,e,t){return Vt(Ze.OVERLAY_DISMISSED,{recipeId:r,recipeName:e,stepIndex:t})}function oC(r,e,t){return Vt(Ze.OVERLAY_STEP_VIEWED,{recipeId:r,stepIndex:e,stepTitle:t})}function aC(r,e){let t=r.startsWith("canvas.")?r:`canvas.${r}`;return Vt(t,e)}var Di={canvasOpened:XE,canvasClosed:JE,tileViewed:QE,tileExpanded:eC,tileCollapsed:tC,tileAction:rC,overlayStarted:nC,overlayCompleted:iC,overlayDismissed:sC,overlayStepViewed:oC,custom:aC};function lC(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 Il=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 Fi(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=lC(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=Di.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?Di.canvasOpened("overlay",n):Di.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(Ze.NOTIFICATION_CLICKED,{notificationId:n.id,tileId:n.tileId,itemId:n.itemId}),this.isOpen||this._toggle(),this.runtimeRef&&n.tileId&&this.runtimeRef.events.publish(Ze.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
440
  ${t.length>0?N`<syntro-toast-stack
441
441
  data-testid="notification-toast-stack"
@@ -443,7 +443,7 @@ Please report this to https://github.com/markedjs/marked.`,r){let n="<p>An error
443
443
  .position=${n}
444
444
  @notification-click=${this._handleNotificationClick}
445
445
  @notification-dismiss=${this._handleNotificationDismiss}
446
- ></syntro-toast-stack>`:Q}
446
+ ></syntro-toast-stack>`:ee}
447
447
  <syntro-launcher
448
448
  .isOpen=${this.isOpen}
449
449
  .notifications=${t}
@@ -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
- `}};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},launcherAnimate:{type:Boolean},isMobileMode:{attribute:!1}};customElements.define("syntro-canvas-overlay",yl);var bl=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=${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"})}>
480
+ `}};Il.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",Il);var $l=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
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)"})}
484
+ style=${T({color:"var(--sc-notification-error-color)"})}
485
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>`:Q}
489
+ ></syntro-tile-stack>`:ee}
490
490
  </div>
491
- `}};bl.properties={tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},runtimeRef:{attribute:!1}};customElements.define("syntro-inline-shell",bl);function _l(r,e,t="merge"){return t==="first-match"?dE(r,e):pE(r,e)}function dE(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 Wv([i])}return null}function pE(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:Wv(t)}function Wv(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 Sd=!1;function zv(){if(typeof window>"u")return!1;try{return new URLSearchParams(window.location.search).get("syntro_debug")==="true"}catch{return!1}}function kd(r){if(zv()){Sd=!0;return}Sd=r??!1}function hE(){return zv()?!0:Sd}function Z(r,e,t){hE()&&(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 xl(r,e,t){t!==void 0?console.error(`[${r}]`,e,t):console.error(`[${r}]`,e)}var wl="2.17.0";var _r="2.0";var fE=["api.syntrologie.com","cdn.syntrologie.com","localhost","127.0.0.1"];function gE(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):fE.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 mE(r){if(typeof window>"u")return!1;try{return new URL(r).origin===window.location.origin}catch{return!1}}var qv="syntro_config_cache",vE=1440*60*1e3;function Zv(){try{return typeof localStorage<"u"&&localStorage!==null}catch{return!1}}function yE(r,e){if(Zv())try{let t={config:r,timestamp:Date.now(),sdkVersion:e};localStorage.setItem(qv,JSON.stringify(t))}catch{}}function bE(r){if(!Zv())return null;try{let e=localStorage.getItem(qv);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>vE?null:t.config}catch{return null}}var Sl=({configUri:r,experiments:e,featureKey:t})=>{if(r)return r;if(e&&t){let n=e.getFeatureValue?.(t,null);if(n)return n}};function _E(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 Dn=({configUri:r,experiments:e,featureKey:t,credentials:n,configFeatureKey:i,manifestKey:s,variantFlagPrefix:o,sdkVersion:a})=>async()=>{if(e&&i){let u=e.getFeatureValue?.(i,null);if(u&&typeof u=="object")return Z("SmartCanvas Config","Resolved config directly from feature flag",u),u}if(e&&(s||o||e.getAllFeatures)){let u=_E(e,s,o);if(console.log("[SmartCanvas Config] Variant key discovery:",u.length,"keys found"),u.length>0){let p=_l(e,u);if(console.log("[SmartCanvas Config] resolveVariantConfigs result:",p?`tiles=${p.tiles?.length}`:"null"),p)return Z("SmartCanvas Config","Resolved config from variant flags",p),p}}else console.log("[SmartCanvas Config] Skipping multi-flag mode:",{hasExperiments:!!e,manifestKey:s,variantFlagPrefix:o,hasGetAllFeatures:!!e?.getAllFeatures});let l=Sl({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(!gE(l))throw new Error(`SmartCanvas: config URI not allowed: ${l}`);let c=n??(mE(l)?"include":"omit");try{let u=await fetch(l,{credentials:c,headers:{"X-SDK-Version":wl,"X-SDK-Schema-Version":_r}});if(!u.ok)throw new Error(`SmartCanvas: failed to fetch config (${u.status})`);let p=await u.json();return Z("SmartCanvas Config","Fetched config from URI",p),a&&yE(p,a),p}catch(u){if(a){let p=bE(a);if(p)return Z("SmartCanvas Config","Serving config from offline cache"),p}throw u}};var kl=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)}},Ed=r=>new kl(r);var Vt={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"},Ce={0:"#07230a",1:"#0e4514",2:"#16681e",3:"#1d8a28",4:"#24ad32",5:"#4fbd5a",6:"#7acd82",7:"#a5deab",8:"#d0eed3",9:"#e5f6e7"},Xe={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"},rr={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},eo={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},to={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},ro={0:"#37091f",1:"#69123c",2:"#9b1c58",3:"#cd2575",4:"#ff2e92",5:"#ff58a8",6:"#ff82be",7:"#ffabd3",8:"#ffd5e9",9:"#ffeaf4"};var yt={primary:k[10],secondary:k[9],tertiary:k[8]},PP={primary:k[2],secondary:k[0]},Cd={primary:k[4],secondary:k[3]},El={primary:{text:Vt.white,icon:Vt.white,border:se[3],backgroundDefault:se[3],backgroundHover:se[2]},neutral:{text:k[10],textHover:Vt.white,icon:k[10],iconHover:Vt.white,border:k[4],background:k[2]},link:{text:Vt.white,icon:Vt.white,hover:se[5]},error:{text:Oe[5],hover:Oe[6]},success:{text:Ce[5],hover:Ce[6]}},OP={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:Xe[8],pillOutline:Xe[4],borderPrimary:Xe[2],borderSecondary:Xe[2],background:Xe[0]},green:{content:Ce[8],pillOutline:Ce[4],borderPrimary:Ce[2],borderSecondary:Ce[2],background:Ce[0]},purple:{content:to[8],pillOutline:to[4],borderPrimary:to[2],borderSecondary:to[2],background:to[0]},blue:{content:rr[8],pillOutline:rr[4],borderPrimary:rr[2],borderSecondary:rr[2],background:rr[0]},orange:{content:eo[8],pillOutline:eo[4],borderPrimary:eo[2],borderSecondary:eo[2],background:eo[0]},pink:{content:ro[8],pillOutline:ro[4],borderPrimary:ro[2],borderSecondary:ro[2],background:ro[0]}},LP={green:{content:Ce[8],border:Ce[2],background:Ce[0]},yellow:{content:Xe[8],border:Xe[2],background:Xe[0]},red:{content:Oe[8],border:Oe[2],background:Oe[0]}},NP={green:{content:Ce[1],background:Ce[9]},yellow:{content:Xe[1],background:Xe[9]},red:{content:Oe[1],background:Oe[9]}},FP={content:k[10],border:k[4],background:k[3]},DP={backgroundDefault:k[2],backgroundHover:k[1],selected:k[3]},HP={background:k[2],icon:k[10],borderDefault:k[4],borderSelected:se[3],textLabel:k[9],textPlaceholder:k[8],textHint:k[8]},BP={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]},VP={handleDefault:Vt.white,handleDisabled:k[10],off:{backgroundDefault:k[4],backgroundHover:k[5],backgroundDisabled:k[4]},on:{backgroundDefault:Ce[3],backgroundHover:Ce[2],backgroundDisabled:k[4]}},UP={off:{backgroundDefault:"#00000000",backgroundHover:k[5],backgroundDisabled:k[2],border:k[6]},on:{backgroundDefault:Ce[0],backgroundHover:Ce[1],backgroundDisabled:k[2],border:Ce[3]}},jP={content:k[10],background:k[4]},WP={background:k[4],active:Ce[3]},zP={background:k[1],content:k[9],border:k[4]},qP={backgroundDefault:k[1],backgroundHover:k[3],backgroundActive:k[4],border:k[4],contentPrimary:k[10],contentSecondary:k[9],contentTertiary:k[8]},ZP={background:k[1],content:k[9],border:k[4]},GP={activeBackground:k[3],activeContent:se[5],inactiveContent:k[9],border:k[4]},KP={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]}},YP={textPrimaryDefault:k[10],textPrimaryHover:k[10],textSecondaryDefault:k[8],textSecondaryHover:k[9],iconPrimary:k[10],iconSecondary:k[8]},XP={background:Ce[1],active:Ce[5]},JP={textDefault:k[10],textSelected:Vt.white,textDisabled:k[7],backgroundDefault:k[2],backgroundMiddle:k[3],backgroundSelected:se[3],border:k[4]},QP=k[9];var nO={size:56,inset:12,background:Vt.black,color:Vt.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 mO={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:yt.primary,colorTextSecondary:yt.secondary,colorTextMuted:yt.tertiary,colorTextInverse:k[1],colorBorder:Cd.primary,colorBorderSubtle:Cd.secondary,colorSuccess:Ce[4],colorSuccessMuted:Ce[0],colorWarning:Xe[4],colorWarningMuted:Xe[0],colorError:Oe[4],colorErrorMuted:Oe[0],colorInfo:rr[4],colorInfoMuted:rr[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"},vO={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:Ce[4],colorSuccessMuted:ae(Ce[4],.12),colorWarning:Xe[4],colorWarningMuted:ae(Xe[4],.12),colorError:Oe[4],colorErrorMuted:ae(Oe[4],.12),colorInfo:rr[4],colorInfoMuted:ae(rr[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 xE(r){return r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}var Gv={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:El.primary.backgroundDefault,backgroundHover:El.primary.backgroundHover,color:El.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:yt.primary,textColor:yt.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:yt.primary,titleColor:yt.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:yt.primary,textSecondaryColor:yt.secondary,border:`1px solid ${k[5]}`,borderRadius:"12px",successColor:Ce[4],warningColor:Xe[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:yt.primary,textSecondaryColor:yt.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:yt.primary,chevronColor:"currentColor"},mobile:{canvas:{backdrop:!0}}},Kv={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:Ce[4],warningColor:Xe[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 Yv(r){let e=r.mode==="light"?Kv:Gv;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 Xv(r,e){let t=e.mode??r.mode??"dark",n=t==="light"?Kv:Gv;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 wE=["canvas","launcher","tile","overlay","notification","content"];function Jv(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 wE){let n=r[t];if(n)for(let[i,s]of Object.entries(n))s!==void 0&&typeof s=="string"&&(e[`--sc-${t}-${xE(i)}`]=s)}return e}var Wr,Hn,Bn,xr,wr,Ad,Cl,Oi=class{constructor(e,t,n){ye(this,wr);ye(this,Wr);ye(this,Hn);ye(this,Bn);ye(this,xr);oe(this,Wr,e),oe(this,Hn,t??{}),oe(this,Bn,n),oe(this,xr,we(this,wr,Ad).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(){we(this,wr,Cl).call(this)}hostDisconnected(){}hostUpdated(){we(this,wr,Cl).call(this)}setThemeConfig(e,t){oe(this,Hn,e),oe(this,Bn,t),oe(this,xr,we(this,wr,Ad).call(this)),we(this,wr,Cl).call(this),q(this,Wr).requestUpdate()}};Wr=new WeakMap,Hn=new WeakMap,Bn=new WeakMap,xr=new WeakMap,wr=new WeakSet,Ad=function(){let e=q(this,Bn)?Xv(q(this,Bn),q(this,Hn)):Yv(q(this,Hn)),t=Jv(e);return{config:e,mode:e.mode,cssVariables:t}},Cl=function(){let e=q(this,Wr).shadowRoot??("renderRoot"in q(this,Wr)?q(this,Wr).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
+ `}};$l.properties={tiles:{attribute:!1},isLoading:{type:Boolean},error:{type:String},runtimeRef:{attribute:!1}};customElements.define("syntro-inline-shell",$l);function Ml(r,e,t="merge"){return t==="first-match"?cC(r,e):uC(r,e)}function cC(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 Sy([i])}return null}function uC(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:Sy(t)}function Sy(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 Fd=!1;function ky(){if(typeof window>"u")return!1;try{return new URLSearchParams(window.location.search).get("syntro_debug")==="true"}catch{return!1}}function Dd(r){if(ky()){Fd=!0;return}Fd=r??!1}function dC(){return ky()?!0:Fd}function Z(r,e,t){dC()&&(t!==void 0?console.log(`[${r}]`,e,t):console.log(`[${r}]`,e))}function Ge(r,e,t){t!==void 0?console.warn(`[${r}]`,e,t):console.warn(`[${r}]`,e)}function Pl(r,e,t){t!==void 0?console.error(`[${r}]`,e,t):console.error(`[${r}]`,e)}var Ol=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:Ey(i,.5),p95:Ey(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 Ey(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 uo=null;function Hd(r){return uo?.stop(),uo=new Ol(r),uo.start(),uo}function nr(){return uo}var kr=(r,e)=>({key:r,value:{stringValue:e}}),Bd=(r,e)=>({key:r,value:{intValue:Math.round(e)}}),Cy=(r,e)=>({key:r,value:{doubleValue:e}});function pC(r){let{resource:e,counters:t,histograms:n,windowSeconds:i,windowStartUnixMs:s}=r,o=[kr("service.name",e.serviceName),kr("service.version",e.serviceVersion),kr("syntro.posthog_key",e.posthogKey),kr("syntro.session_id",e.sessionId),kr("syntro.surface_type",e.surfaceType),kr("syntro.surface_host",e.surfaceHost),kr("syntro.surface_device",e.surfaceDevice),kr("syntro.surface_mode",e.surfaceMode),kr("syntro.host_origin",e.hostOrigin)],a=[Bd("window_seconds",i)];for(let[u,p]of Object.entries(t))p!==void 0&&a.push(Bd(u,p));for(let[u,p]of Object.entries(n))p!==void 0&&(a.push(Bd(`${u}_count`,p.count)),a.push(Cy(`${u}_p50`,p.p50)),a.push(Cy(`${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 Vd(r){let e=r.fetchImpl??fetch;return async t=>{let n=JSON.stringify(pC(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 hC(){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 Ud=hC();function jd(){if(!Ud)return;let r=Ud.lastIndexOf("/");if(r!==-1)return Ud.substring(0,r+1)}var Ly=-1,Bi=r=>{addEventListener("pageshow",(e=>{e.persisted&&(Ly=e.timeStamp,r(e))}),!0)},ir=(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)))}},Jd=r=>{requestAnimationFrame((()=>requestAnimationFrame((()=>r()))))},Qd=()=>{let r=performance.getEntriesByType("navigation")[0];if(r&&r.responseStart>0&&r.responseStart<performance.now())return r},po=()=>Qd()?.activationStart??0,sr=(r,e=-1)=>{let t=Qd(),n="navigate";return Ly>=0?n="back-forward-cache":t&&(document.prerendering||po()>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}},Wd=new WeakMap;function ep(r,e){return Wd.get(r)||Wd.set(r,new e),Wd.get(r)}var qd=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)}},ho=(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{}},tp=r=>{let e=!1;return()=>{e||(r(),e=!0)}},Hi=-1,Ny=new Set,Ay=()=>document.visibilityState!=="hidden"||document.prerendering?1/0:0,Zd=r=>{if(document.visibilityState==="hidden"){if(r.type==="visibilitychange")for(let e of Ny)e();isFinite(Hi)||(Hi=r.type==="visibilitychange"?r.timeStamp:0,removeEventListener("prerenderingchange",Zd,!0))}},Nl=()=>{if(Hi<0){let r=po();Hi=(document.prerendering?void 0:globalThis.performance.getEntriesByType("visibility-state").filter((t=>t.name==="hidden"&&t.startTime>r))[0]?.startTime)??Ay(),addEventListener("visibilitychange",Zd,!0),addEventListener("prerenderingchange",Zd,!0),Bi((()=>{setTimeout((()=>{Hi=Ay()}))}))}return{get firstHiddenTime(){return Hi},onHidden(r){Ny.add(r)}}},Fl=r=>{document.prerendering?addEventListener("prerenderingchange",(()=>r()),!0):r()},Ty=[1800,3e3],rp=(r,e={})=>{Fl((()=>{let t=Nl(),n,i=sr("FCP"),s=ho("paint",(o=>{for(let a of o)a.name==="first-contentful-paint"&&(s.disconnect(),a.startTime<t.firstHiddenTime&&(i.value=Math.max(a.startTime-po(),0),i.entries.push(a),n(!0)))}));s&&(n=ir(r,i,Ty,e.reportAllChanges),Bi((o=>{i=sr("FCP"),n=ir(r,i,Ty,e.reportAllChanges),Jd((()=>{i.value=performance.now()-o.timeStamp,n(!0)}))})))}))},Ry=[.1,.25],Fy=(r,e={})=>{let t=Nl();rp(tp((()=>{let n,i=sr("CLS",0),s=ep(e,qd),o=l=>{for(let c of l)s.h(c);s.i>i.value&&(i.value=s.i,i.entries=s.o,n())},a=ho("layout-shift",o);a&&(n=ir(r,i,Ry,e.reportAllChanges),t.onHidden((()=>{o(a.takeRecords()),n(!0)})),Bi((()=>{s.i=0,i=sr("CLS",0),n=ir(r,i,Ry,e.reportAllChanges),Jd((()=>n()))})),setTimeout(n))})))},Dy=0,zd=1/0,Ll=0,fC=r=>{for(let e of r)e.interactionId&&(zd=Math.min(zd,e.interactionId),Ll=Math.max(Ll,e.interactionId),Dy=Ll?(Ll-zd)/7+1:0)},Gd,Iy=()=>Gd?Dy:performance.interactionCount??0,gC=()=>{"interactionCount"in performance||Gd||(Gd=ho("event",fC,{type:"event",buffered:!0,durationThreshold:0}))},$y=0,Kd=class{constructor(){pe(this,"u",[]);pe(this,"l",new Map);pe(this,"m");pe(this,"p")}v(){$y=Iy(),this.u.length=0,this.l.clear()}L(){let e=Math.min(this.u.length-1,Math.floor((Iy()-$y)/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)}}},Hy=r=>{let e=globalThis.requestIdleCallback||setTimeout;document.visibilityState==="hidden"?r():(r=tp(r),addEventListener("visibilitychange",r,{once:!0,capture:!0}),e((()=>{r(),removeEventListener("visibilitychange",r,{capture:!0})})))},My=[200,500],By=(r,e={})=>{if(!globalThis.PerformanceEventTiming||!("interactionId"in PerformanceEventTiming.prototype))return;let t=Nl();Fl((()=>{gC();let n,i=sr("INP"),s=ep(e,Kd),o=l=>{Hy((()=>{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=ho("event",o,{durationThreshold:e.durationThreshold??40});n=ir(r,i,My,e.reportAllChanges),a&&(a.observe({type:"first-input",buffered:!0}),t.onHidden((()=>{o(a.takeRecords()),n(!0)})),Bi((()=>{s.v(),i=sr("INP"),n=ir(r,i,My,e.reportAllChanges)})))}))},Yd=class{constructor(){pe(this,"m")}h(e){this.m?.(e)}},Py=[2500,4e3],Vy=(r,e={})=>{Fl((()=>{let t=Nl(),n,i=sr("LCP"),s=ep(e,Yd),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-po(),0),i.entries=[c],n())},a=ho("largest-contentful-paint",o);if(a){n=ir(r,i,Py,e.reportAllChanges);let l=tp((()=>{o(a.takeRecords()),a.disconnect(),n(!0)})),c=u=>{u.isTrusted&&(Hy(l),removeEventListener(u.type,c,{capture:!0}))};for(let u of["keydown","click","visibilitychange"])addEventListener(u,c,{capture:!0});Bi((u=>{i=sr("LCP"),n=ir(r,i,Py,e.reportAllChanges),Jd((()=>{i.value=performance.now()-u.timeStamp,n(!0)}))}))}}))},Oy=[800,1800],Xd=r=>{document.prerendering?Fl((()=>Xd(r))):document.readyState!=="complete"?addEventListener("load",(()=>Xd(r)),!0):setTimeout(r)},Uy=(r,e={})=>{let t=sr("TTFB"),n=ir(r,t,Oy,e.reportAllChanges);Xd((()=>{let i=Qd();i&&(t.value=Math.max(i.responseStart-po(),0),t.entries=[i],n(!0),Bi((()=>{t=sr("TTFB",0),n=ir(r,t,Oy,e.reportAllChanges),n(!0)})))}))};var jy="__syntro_vitals_bound",Dl="__syntro_vitals_current_reporter";function np(r,e){if(typeof window>"u")return()=>{};let t=window;t[Dl]=r;let n=null,i=e?.attributedScriptUrlPrefix;if(i&&"PerformanceObserver"in window)try{n=new PerformanceObserver(s=>{let o=t[Dl];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[jy]){t[jy]=!0;let s=o=>a=>{t[Dl]?.recordHistogram(o,a.value)};Vy(s("lcp_ms")),By(s("inp_ms")),rp(s("fcp_ms")),Uy(s("ttfb_ms")),Fy(o=>{t[Dl]?.recordHistogram("cls_score",o.value)})}return()=>{n?.disconnect()}}var Vi="2.19.0";var Er="2.0";var mC=["api.syntrologie.com","cdn.syntrologie.com","localhost","127.0.0.1"];function vC(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):mC.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 yC(r){if(typeof window>"u")return!1;try{return new URL(r).origin===window.location.origin}catch{return!1}}var Wy="syntro_config_cache",bC=1440*60*1e3;function zy(){try{return typeof localStorage<"u"&&localStorage!==null}catch{return!1}}function _C(r,e){if(zy())try{let t={config:r,timestamp:Date.now(),sdkVersion:e};localStorage.setItem(Wy,JSON.stringify(t))}catch{}}function xC(r){if(!zy())return null;try{let e=localStorage.getItem(Wy);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>bC?null:t.config}catch{return null}}var Hl=({configUri:r,experiments:e,featureKey:t})=>{if(r)return r;if(e&&t){let n=e.getFeatureValue?.(t,null);if(n)return n}};function wC(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 jn=({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=wC(e,s,o);if(console.log("[SmartCanvas Config] Variant key discovery:",h.length,"keys found"),h.length>0){let f=Ml(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=Hl({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(!vC(l))throw new Error(`SmartCanvas: config URI not allowed: ${l}`);let c=n??(yC(l)?"include":"omit"),u=performance.now(),p=!1;try{let h=await fetch(l,{credentials:c,headers:{"X-SDK-Version":Vi,"X-SDK-Schema-Version":Er}});if(!h.ok)throw nr()?.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 nr()?.increment("flag_fetch_count"),nr()?.recordHistogram("flag_fetch_latency_ms",v),Z("SmartCanvas Config","Fetched config from URI",f),a&&_C(f,a),f}catch(h){if(p||nr()?.increment("flag_fetch_errors"),a){let f=xC(a);if(f)return Z("SmartCanvas Config","Serving config from offline cache"),f}throw h}};var Bl=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)}},ip=r=>new Bl(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"},Oe={0:"#330707",1:"#660f0e",2:"#991616",3:"#cc1e1d",4:"#ff2524",5:"#ff5150",6:"#ff7c7c",7:"#ffa8a7",8:"#ffd3d3",9:"#ffe9e9"},or={0:"#051533",1:"#0a2a66",2:"#0f3f98",3:"#1454cb",4:"#1969fe",5:"#4787fe",6:"#75a5fe",7:"#a3c3ff",8:"#d1e1ff",9:"#e8f0ff"},fo={0:"#662500",1:"#993d00",2:"#cc5800",3:"#ff7700",4:"#fea85d",5:"#fec58f",6:"#ffd6ae",7:"#fee6cd",8:"#fff1e1",9:"#fff8f0"},go={0:"#151229",1:"#2a2452",2:"#40357c",3:"#5547a5",4:"#6a59ce",5:"#887ad8",6:"#a69be2",7:"#c3bdeb",8:"#e1def5",9:"#f0eefa"},mo={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]},QO={primary:k[2],secondary:k[0]},sp={primary:k[4],secondary:k[3]},Vl={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:Oe[5],hover:Oe[6]},success:{text:Ee[5],hover:Ee[6]}},e4={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:go[8],pillOutline:go[4],borderPrimary:go[2],borderSecondary:go[2],background:go[0]},blue:{content:or[8],pillOutline:or[4],borderPrimary:or[2],borderSecondary:or[2],background:or[0]},orange:{content:fo[8],pillOutline:fo[4],borderPrimary:fo[2],borderSecondary:fo[2],background:fo[0]},pink:{content:mo[8],pillOutline:mo[4],borderPrimary:mo[2],borderSecondary:mo[2],background:mo[0]}},t4={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]}},r4={green:{content:Ee[1],background:Ee[9]},yellow:{content:Je[1],background:Je[9]},red:{content:Oe[1],background:Oe[9]}},n4={content:k[10],border:k[4],background:k[3]},i4={backgroundDefault:k[2],backgroundHover:k[1],selected:k[3]},s4={background:k[2],icon:k[10],borderDefault:k[4],borderSelected:se[3],textLabel:k[9],textPlaceholder:k[8],textHint:k[8]},o4={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]},a4={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]}},l4={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]}},c4={content:k[10],background:k[4]},u4={background:k[4],active:Ee[3]},d4={background:k[1],content:k[9],border:k[4]},p4={backgroundDefault:k[1],backgroundHover:k[3],backgroundActive:k[4],border:k[4],contentPrimary:k[10],contentSecondary:k[9],contentTertiary:k[8]},h4={background:k[1],content:k[9],border:k[4]},f4={activeBackground:k[3],activeContent:se[5],inactiveContent:k[9],border:k[4]},g4={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]}},m4={textPrimaryDefault:k[10],textPrimaryHover:k[10],textSecondaryDefault:k[8],textSecondaryHover:k[9],iconPrimary:k[10],iconSecondary:k[8]},v4={background:Ee[1],active:Ee[5]},y4={textDefault:k[10],textSelected:Ut.white,textDisabled:k[7],backgroundDefault:k[2],backgroundMiddle:k[3],backgroundSelected:se[3],border:k[4]},b4=k[9];var S4={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 N4={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:sp.primary,colorBorderSubtle:sp.secondary,colorSuccess:Ee[4],colorSuccessMuted:Ee[0],colorWarning:Je[4],colorWarningMuted:Je[0],colorError:Oe[4],colorErrorMuted:Oe[0],colorInfo:or[4],colorInfoMuted:or[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"},F4={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:or[4],colorInfoMuted:ae(or[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 SC(r){return r.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase()}var qy={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:Vl.primary.backgroundDefault,backgroundHover:Vl.primary.backgroundHover,color:Vl.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}}},Zy={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 Gy(r){let e=r.mode==="light"?Zy:qy;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 Ky(r,e){let t=e.mode??r.mode??"dark",n=t==="light"?Zy:qy;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 kC=["canvas","launcher","tile","overlay","notification","content"];function Yy(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 kC){let n=r[t];if(n)for(let[i,s]of Object.entries(n))s!==void 0&&typeof s=="string"&&(e[`--sc-${t}-${SC(i)}`]=s)}return e}var Kr,Wn,zn,Cr,Ar,op,Ul,Ui=class{constructor(e,t,n){ye(this,Ar);ye(this,Kr);ye(this,Wn);ye(this,zn);ye(this,Cr);oe(this,Kr,e),oe(this,Wn,t??{}),oe(this,zn,n),oe(this,Cr,we(this,Ar,op).call(this)),e.addController(this)}get config(){return q(this,Cr).config}get mode(){return q(this,Cr).mode}get cssVariables(){return q(this,Cr).cssVariables}hostConnected(){we(this,Ar,Ul).call(this)}hostDisconnected(){}hostUpdated(){we(this,Ar,Ul).call(this)}setThemeConfig(e,t){oe(this,Wn,e),oe(this,zn,t),oe(this,Cr,we(this,Ar,op).call(this)),we(this,Ar,Ul).call(this),q(this,Kr).requestUpdate()}};Kr=new WeakMap,Wn=new WeakMap,zn=new WeakMap,Cr=new WeakMap,Ar=new WeakSet,op=function(){let e=q(this,zn)?Ky(q(this,zn),q(this,Wn)):Gy(q(this,Wn)),t=Yy(e);return{config:e,mode:e.mode,cssVariables:t}},Ul=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,Cr).cssVariables).map(([i,s])=>` ${i}: ${s};`).join(`
492
492
  `);t.textContent=`:host {
493
493
  ${n}
494
- }`};var SE=new Set(["tag_name","$el_text"]);function kE(r){return SE.has(r)||r.startsWith("attr__")}function Qv(r,e){return r.equals!==void 0?e===r.equals:r.contains!==void 0?typeof e=="string"&&e.includes(r.contains):!1}function EE(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(kE(i)){let o=n.props?.elements;if(!o||!o.some(l=>Qv(s,l[i])))return!1}else if(!Qv(s,n.props?.[i]))return!1}return!0}}function ey(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?EE(i):()=>!0,o=typeof n.withinMs=="number";e.register(n.key,s,o)}}function Vn(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"&&ey(o.triggerWhen,e)}if(t)for(let n of t){let i=n;i.triggerWhen?.type==="rules"&&ey(i.triggerWhen,e)}}var iy="syntro-runtime",ty="smart-canvas",ry=r=>[...r].sort((e,t)=>(t.priority??0)-(e.priority??0));function ny(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 mt,Li,nr,Sr,Ut,jn,no,Wn,zn,io,so,oo,qn,Zn,zr,qr,Zr,Gn,Ni,ao,Ee,sy,oy,Fi,Rd,ay,Td,Id,$d,Md,ly,Pd,Al,Un=class extends be{constructor(){super();ye(this,Ee);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,mt);ye(this,Li,null);ye(this,nr,null);ye(this,Sr,null);ye(this,Ut,null);ye(this,jn);ye(this,no,0);ye(this,Wn,null);ye(this,zn,"[]");ye(this,io,"[]");ye(this,so,"null");ye(this,oo,"null");ye(this,qn,null);ye(this,Zn,null);ye(this,zr,null);ye(this,qr,null);ye(this,Zr,null);ye(this,Gn,()=>{this._pageUrl=window.location.href});ye(this,Ni);ye(this,ao);ye(this,Fi,0);ye(this,Al,t=>{q(this,mt).toggle()});oe(this,mt,Ed()),oe(this,jn,!1),oe(this,Ni,new Oi(this)),oe(this,ao,new xi(this,{context:iy,initialValue:null}))}connectedCallback(){super.connectedCallback(),this.style.setProperty("font-family","inherit"),oe(this,Li,q(this,mt).subscribe(t=>{this._isOpen=t.open})),this._isOpen=q(this,mt).getState().open,oe(this,nr,document.createElement("div")),q(this,nr).id="overlayContainer",Object.assign(q(this,nr).style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),this.shadowRoot.appendChild(q(this,nr)),oe(this,Sr,document.createElement("div")),q(this,Sr).id="portalRoot",this.shadowRoot.appendChild(q(this,Sr)),we(this,Ee,Td).call(this),we(this,Ee,Pd).call(this),we(this,Ee,$d).call(this)}disconnectedCallback(){var t,n,i,s,o;super.disconnectedCallback(),(t=q(this,Li))==null||t.call(this),oe(this,Li,null),(n=q(this,Zn))==null||n.call(this),oe(this,Zn,null),(i=q(this,zr))==null||i.call(this),oe(this,zr,null),(s=q(this,qr))==null||s.call(this),oe(this,qr,null),(o=q(this,Zr))==null||o.call(this),oe(this,Zr,null),we(this,Ee,Id).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,nr)?.remove(),oe(this,nr,null),q(this,Sr)?.remove(),oe(this,Sr,null)}updated(t){var i;t.has("runtime")&&(q(this,ao).setValue(this.runtime??null),we(this,Ee,ly).call(this),we(this,Ee,$d).call(this),we(this,Ee,Pd).call(this),we(this,Ee,Id).call(this),we(this,Ee,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,Ee,sy).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,Ni).setThemeConfig(this._theme??{},this.workspaceTheme),(t.has("_configActions")||t.has("_pageUrl"))&&we(this,Ee,ay).call(this),t.has("_tiles")||t.has("_isLoading")||t.has("_error")){let s=this._tiles.length>0&&!this._error;!this._isLoading&&!s&&q(this,mt).getState().open&&q(this,mt).setOpen(!1)}t.has("initialBatchHandle")&&this.initialBatchHandle&&(oe(this,Ut,this.initialBatchHandle),oe(this,jn,!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`
494
+ }`};var EC=new Set(["tag_name","$el_text"]);function CC(r){return EC.has(r)||r.startsWith("attr__")}function Xy(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(CC(i)){let o=n.props?.elements;if(!o||!o.some(l=>Xy(s,l[i])))return!1}else if(!Xy(s,n.props?.[i]))return!1}return!0}}function Jy(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 qn(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"&&Jy(o.triggerWhen,e)}if(t)for(let n of t){let i=n;i.triggerWhen?.type==="rules"&&Jy(i.triggerWhen,e)}}var rb="syntro-runtime",Qy="smart-canvas",eb=r=>[...r].sort((e,t)=>(t.priority??0)-(e.priority??0));function tb(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,ji,ar,Tr,jt,Gn,vo,Kn,Yn,yo,bo,_o,Xn,Jn,Yr,Xr,Jr,Qn,Wi,xo,ke,nb,ib,zi,ap,sb,lp,cp,up,dp,ob,pp,jl,Zn=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,ji,null);ye(this,ar,null);ye(this,Tr,null);ye(this,jt,null);ye(this,Gn);ye(this,vo,0);ye(this,Kn,null);ye(this,Yn,"[]");ye(this,yo,"[]");ye(this,bo,"null");ye(this,_o,"null");ye(this,Xn,null);ye(this,Jn,null);ye(this,Yr,null);ye(this,Xr,null);ye(this,Jr,null);ye(this,Qn,()=>{this._pageUrl=window.location.href});ye(this,Wi);ye(this,xo);ye(this,zi,0);ye(this,jl,t=>{q(this,vt).toggle()});oe(this,vt,ip()),oe(this,Gn,!1),oe(this,Wi,new Ui(this)),oe(this,xo,new Ci(this,{context:rb,initialValue:null}))}connectedCallback(){super.connectedCallback(),this.style.setProperty("font-family","inherit"),oe(this,ji,q(this,vt).subscribe(t=>{this._isOpen=t.open})),this._isOpen=q(this,vt).getState().open,oe(this,ar,document.createElement("div")),q(this,ar).id="overlayContainer",Object.assign(q(this,ar).style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),this.shadowRoot.appendChild(q(this,ar)),oe(this,Tr,document.createElement("div")),q(this,Tr).id="portalRoot",this.shadowRoot.appendChild(q(this,Tr)),we(this,ke,lp).call(this),we(this,ke,pp).call(this),we(this,ke,up).call(this)}disconnectedCallback(){var t,n,i,s,o;super.disconnectedCallback(),(t=q(this,ji))==null||t.call(this),oe(this,ji,null),(n=q(this,Jn))==null||n.call(this),oe(this,Jn,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,cp).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,ar)?.remove(),oe(this,ar,null),q(this,Tr)?.remove(),oe(this,Tr,null)}updated(t){var i;t.has("runtime")&&(q(this,xo).setValue(this.runtime??null),we(this,ke,ob).call(this),we(this,ke,up).call(this),we(this,ke,pp).call(this),we(this,ke,cp).call(this),we(this,ke,lp).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,nb).call(this),(i=q(this,Jn))==null||i.call(this),this.experiments?.onFeaturesChanged&&oe(this,Jn,this.experiments.onFeaturesChanged(()=>this._loadConfig({silent:!0})))),(n||t.has("_pageUrl"))&&this._loadConfig(),(t.has("_theme")||t.has("workspaceTheme"))&&q(this,Wi).setThemeConfig(this._theme??{},this.workspaceTheme),(t.has("_configActions")||t.has("_pageUrl"))&&we(this,ke,sb).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,Gn,!0),this.initialBatchActions&&(this._configActions=this.initialBatchActions,oe(this,Yn,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
- `:Q;let i=(q(this,Wn)?.tiles?.length??0)>0;return!n&&!i?Q:N`
501
+ `:ee;let i=(q(this,Kn)?.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,Ni).config}
511
+ .themeConfig=${q(this,Wi).config}
512
512
  ?launcherAnimate=${!!this._launcher?.animate}
513
- @canvas-toggle=${q(this,Al)}
513
+ @canvas-toggle=${q(this,jl)}
514
514
  ></syntro-canvas-overlay>
515
- `}open(){this._displayMode!=="inline"&&q(this,mt).setOpen(!0)}close(){this._displayMode!=="inline"&&q(this,mt).setOpen(!1)}toggle(){this._displayMode!=="inline"&&q(this,mt).toggle()}setOverrideFetcher(t){this.fetcher=t}getMountNode(){return this.renderRoot}getController(){return q(this,mt)}getPortalRoot(){return q(this,Sr)}getOverlayContainer(){return q(this,nr)}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=++bu(this,Fi)._;try{t||(this._isLoading=!0),this._error=void 0;let i=await q(this,qn).call(this);if(n!==q(this,Fi))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&&Vn(o,this.runtime.accumulator,i.actions),this.runtime){if(o=await this.runtime.filterTiles(o),n!==q(this,Fi))return;this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)))}else this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)));ny(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=ry(o),p=JSON.stringify(u);p!==q(this,io)&&(oe(this,io,p),this._tiles=u),c&&(this._configActions=a),t||(this._isLoading=!1);let h=JSON.stringify(i.theme??null);h!==q(this,so)&&(oe(this,so,h),this._theme=i.theme);let f=JSON.stringify(i.launcher??null);f!==q(this,oo)&&(oe(this,oo,f),this._launcher=i.launcher),i.canvasTitle!==this._canvasTitle&&(this._canvasTitle=i.canvasTitle),we(this,Ee,Md).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}}};mt=new WeakMap,Li=new WeakMap,nr=new WeakMap,Sr=new WeakMap,Ut=new WeakMap,jn=new WeakMap,no=new WeakMap,Wn=new WeakMap,zn=new WeakMap,io=new WeakMap,so=new WeakMap,oo=new WeakMap,qn=new WeakMap,Zn=new WeakMap,zr=new WeakMap,qr=new WeakMap,Zr=new WeakMap,Gn=new WeakMap,Ni=new WeakMap,ao=new WeakMap,Ee=new WeakSet,sy=function(){if(this.fetcher)oe(this,qn,this.fetcher);else{let t=we(this,Ee,oy).call(this);oe(this,qn,Dn(t))}},oy=function(){return{configUri:this.configUri,experiments:this.experiments,featureKey:this.configUriFeatureKey,configFeatureKey:this.configFeatureKey,credentials:this.fetchCredentials}},Fi=new WeakMap,Rd=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))),ny(n),this._tiles=ry(n)},ay=async function(){if(!this.runtime?.actions||q(this,jn)&&(oe(this,jn,!1),JSON.stringify(this._configActions)===q(this,zn)))return;let t=++bu(this,no)._,n=()=>t!==q(this,no);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)}},Td=function(){this.runtime||typeof window>"u"||(window.addEventListener("popstate",q(this,Gn)),window.addEventListener("hashchange",q(this,Gn)))},Id=function(){typeof window>"u"||(window.removeEventListener("popstate",q(this,Gn)),window.removeEventListener("hashchange",q(this,Gn)))},$d=function(){this.runtime&&(this.runtime.accumulator&&oe(this,zr,this.runtime.accumulator.subscribe(()=>{we(this,Ee,Rd).call(this)})),this.runtime.context&&oe(this,qr,this.runtime.context.subscribe(t=>{let n=t.page?.url;n&&n!==this._pageUrl&&(this._pageUrl=n),we(this,Ee,Md).call(this),we(this,Ee,Rd).call(this)})))},Md=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)},ly=function(){var t,n;(t=q(this,zr))==null||t.call(this),oe(this,zr,null),(n=q(this,qr))==null||n.call(this),oe(this,qr,null)},Pd=function(){var t;(t=q(this,Zr))==null||t.call(this),oe(this,Zr,null),this.runtime&&oe(this,Zr,this.runtime.events.subscribe({names:["canvas.requestOpen"]},()=>{this._displayMode!=="inline"&&q(this,mt).setOpen(!0)}))},Al=new WeakMap,Un.shadowRootOptions={mode:"open",delegatesFocus:!0},Un.styles=pn`
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,Tr)}getOverlayContainer(){return q(this,ar)}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,Xn))return;let n=++Pu(this,zi)._;try{t||(this._isLoading=!0),this._error=void 0;let i=await q(this,Xn).call(this);if(n!==q(this,zi))return;Z("SmartCanvas Config","Raw config response",i);let s=Object.keys(i).length===0;oe(this,Kn,s?null:i);let o=i.tiles||[];if(o.length>0&&this.runtime?.accumulator&&qn(o,this.runtime.accumulator,i.actions),this.runtime){if(o=await this.runtime.filterTiles(o),n!==q(this,zi))return;this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)))}else this.experiments&&(o=o.filter(v=>this.experiments.shouldRenderRectangle(v)));tb(o),Z("SmartCanvas Config",`Tile count after filtering: ${o.length}`);let a=i.actions||[],l=JSON.stringify(a),c=l!==q(this,Yn);c&&oe(this,Yn,l);let u=eb(o),p=JSON.stringify(u);p!==q(this,yo)&&(oe(this,yo,p),this._tiles=u),c&&(this._configActions=a),t||(this._isLoading=!1);let h=JSON.stringify(i.theme??null);h!==q(this,bo)&&(oe(this,bo,h),this._theme=i.theme);let f=JSON.stringify(i.launcher??null);f!==q(this,_o)&&(oe(this,_o,f),this._launcher=i.launcher),i.canvasTitle!==this._canvasTitle&&(this._canvasTitle=i.canvasTitle),we(this,ke,dp).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,ji=new WeakMap,ar=new WeakMap,Tr=new WeakMap,jt=new WeakMap,Gn=new WeakMap,vo=new WeakMap,Kn=new WeakMap,Yn=new WeakMap,yo=new WeakMap,bo=new WeakMap,_o=new WeakMap,Xn=new WeakMap,Jn=new WeakMap,Yr=new WeakMap,Xr=new WeakMap,Jr=new WeakMap,Qn=new WeakMap,Wi=new WeakMap,xo=new WeakMap,ke=new WeakSet,nb=function(){if(this.fetcher)oe(this,Xn,this.fetcher);else{let t=we(this,ke,ib).call(this);oe(this,Xn,jn(t))}},ib=function(){return{configUri:this.configUri,experiments:this.experiments,featureKey:this.configUriFeatureKey,configFeatureKey:this.configFeatureKey,credentials:this.fetchCredentials}},zi=new WeakMap,ap=async function(){let t=q(this,Kn);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))),tb(n),this._tiles=eb(n)},sb=async function(){if(!this.runtime?.actions||q(this,Gn)&&(oe(this,Gn,!1),JSON.stringify(this._configActions)===q(this,Yn)))return;let t=++Pu(this,vo)._,n=()=>t!==q(this,vo);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)}},lp=function(){this.runtime||typeof window>"u"||(window.addEventListener("popstate",q(this,Qn)),window.addEventListener("hashchange",q(this,Qn)))},cp=function(){typeof window>"u"||(window.removeEventListener("popstate",q(this,Qn)),window.removeEventListener("hashchange",q(this,Qn)))},up=function(){this.runtime&&(this.runtime.accumulator&&oe(this,Yr,this.runtime.accumulator.subscribe(()=>{we(this,ke,ap).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,dp).call(this),we(this,ke,ap).call(this)})))},dp=function(){let t=this.runtime?.context.get()?.surface?.mode,n=q(this,Kn)?.displayMode??"standard",i=t==="agent"?"inline":n;i!==this._displayMode&&(this._displayMode=i)},ob=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)},pp=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)}))},jl=new WeakMap,Zn.shadowRootOptions={mode:"open",delegatesFocus:!0},Zn.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
- `,Un.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 lo=()=>{typeof window>"u"||customElements.get(ty)||customElements.define(ty,Un)};var Rl=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=${R(f)}>
536
- <div style=${R(h)}>
537
- <div data-shadow-canvas-id="overlay-container" style=${R(p)}>
534
+ `,Zn.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 wo=()=>{typeof window>"u"||customElements.get(Qy)||customElements.define(Qy,Zn)};var Wl=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
539
  ${t&&this.canvasTitle?N`
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)"})}>
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>`:Q}
544
+ </header>`:ee}
545
545
 
546
- <div style=${R(v)}>
547
- ${this.isLoading?N`<div style=${R({color:"var(--sc-overlay-text-color)",padding:t?"1rem":"0"})}>Loading...</div>`:this.error?N`<div style=${R({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
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>`:Q:N`<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
- `}};Rl.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",Rl);var CE="#6a59ce",AE="#887ad8",RE="#ffffff",Tl=class extends be{constructor(){super(...arguments);this.isOpen=!1;this.launcherAnimate=!1;this.notificationCount=0;this.position="right";this.launcherIcon=null;this.colorPrimary=CE;this.colorPrimaryHover=AE;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
+ `}};Wl.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",Wl);var TC="#6a59ce",RC="#887ad8",IC="#ffffff",zl=class extends be{constructor(){super(...arguments);this.isOpen=!1;this.launcherAnimate=!1;this.notificationCount=0;this.position="right";this.launcherIcon=null;this.colorPrimary=TC;this.colorPrimaryHover=RC;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;
@@ -600,7 +600,7 @@ ${n}
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,7 +608,7 @@ ${n}
608
608
  @mouseleave=${this._onMouseLeave}
609
609
  >
610
610
  ${this._renderIcon()}
611
- ${o?this._renderBadge():Q}
611
+ ${o?this._renderBadge():ee}
612
612
  </button>
613
613
  `}_renderIcon(){let t="transition: transform 200ms ease;";return this.isOpen?N`
614
614
  <svg
@@ -626,7 +626,7 @@ ${n}
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
631
  `:N`
632
632
  <svg
@@ -643,24 +643,24 @@ ${n}
643
643
  <path d="M17 19h4" />
644
644
  </svg>
645
645
  `}_renderBadge(){let t=this.notificationCount,n=t>99?"99+":String(t);return N`
646
- <div style=${R({position:"absolute",top:"-2px",right:"-2px",pointerEvents:"none"})}>
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:RE,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:IC,fontSize:"11px",fontWeight:"700"})}
661
661
  >${n}</span>
662
662
  </div>
663
- `}};Tl.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",Tl);var co=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 Q;let t=R({transform:`translateX(-${this._index*100}%)`,width:`${this._ordered.length*100}%`}),n=R({width:`${100/this._ordered.length}%`});return N`
663
+ `}};zl.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",zl);var So=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
666
  ${this._ordered.map(i=>N`
@@ -680,7 +680,7 @@ ${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
- `}};co.styles=pn`
691
+ `}};So.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
- `,co.properties={tiles:{type:Array},intervalMs:{type:Number},telemetry:{type:Object},runtimeRef:{type:Object},_index:{type:Number,state:!0}};customElements.define("syntro-tile-wheel",co);function TE(r,e){let t=Ys(r,{size:e});return t||`<span style="line-height:1;">${r}</span>`}var Tt,cy,uy,dy,py,hy,uo=class extends be{constructor(){super(...arguments);ye(this,Tt);this.notifications=[];this.position="right"}render(){if(this.notifications.length===0)return N``;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 N`
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 $C(r,e){let t=oo(r,{size:e});return t||`<span style="line-height:1;">${r}</span>`}var Rt,ab,lb,cb,ub,db,ko=class extends be{constructor(){super(...arguments);ye(this,Rt);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=>we(this,Tt,hy).call(this,n))}
736
+ ${this.notifications.map(n=>we(this,Rt,db).call(this,n))}
737
737
  </div>
738
- `}};Tt=new WeakSet,cy=function(t,n){n.stopPropagation(),this.dispatchEvent(new CustomEvent("notification-dismiss",{detail:{id:t},bubbles:!0,composed:!0}))},uy=function(t){this.dispatchEvent(new CustomEvent("notification-click",{detail:{notification:t},bubbles:!0,composed:!0}))},dy=function(t){let n=t.currentTarget;n.style.transform="translateY(-1px)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.add("paused")},py=function(t){let n=t.currentTarget;n.style.transform="translateY(0)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.remove("paused")},hy=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=TE(t.icon??"\u{1F514}",14);return N`
738
+ `}};Rt=new WeakSet,ab=function(t,n){n.stopPropagation(),this.dispatchEvent(new CustomEvent("notification-dismiss",{detail:{id:t},bubbles:!0,composed:!0}))},lb=function(t){this.dispatchEvent(new CustomEvent("notification-click",{detail:{notification:t},bubbles:!0,composed:!0}))},cb=function(t){let n=t.currentTarget;n.style.transform="translateY(-1px)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.add("paused")},ub=function(t){let n=t.currentTarget;n.style.transform="translateY(0)";let i=n.querySelector(".syntro-toast-progress");i&&i.classList.remove("paused")},db=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=$C(t.icon??"\u{1F514}",14);return N`
739
739
  <div
740
740
  class="syntro-toast-enter"
741
741
  style=${n}
742
- @mouseenter=${we(this,Tt,dy)}
743
- @mouseleave=${we(this,Tt,py)}
742
+ @mouseenter=${we(this,Rt,cb)}
743
+ @mouseleave=${we(this,Rt,ub)}
744
744
  >
745
745
  <div
746
746
  style=${i}
747
- @click=${()=>we(this,Tt,uy).call(this,t)}
747
+ @click=${()=>we(this,Rt,lb).call(this,t)}
748
748
  >
749
749
  <div
750
750
  style=${s}
@@ -760,7 +760,7 @@ ${n}
760
760
  type="button"
761
761
  aria-label="Dismiss notification"
762
762
  style=${c}
763
- @click=${f=>we(this,Tt,cy).call(this,t.id,f)}
763
+ @click=${f=>we(this,Rt,ab).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
- `},uo.properties={notifications:{attribute:!1},position:{type:String}},uo.styles=pn`
774
+ `},ko.properties={notifications:{attribute:!1},position:{type:String}},ko.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",uo);var Od=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{}}}},Nd=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 po=class{constructor(){this.executors=new Map;for(let{kind:e,executor:t}of _u)this.registerCore(e,t);for(let{kind:e,executor:t}of Vu)this.registerCore(e,t);this.registerCore("core:mountWidget",async()=>{throw new Error("core:mountWidget must be handled by ActionEngine")}),this.registerCore("core:sequence",Od),this.registerCore("core:parallel",Ld),this.registerCore("core:wait",Nd)}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)}},ir=new po;function fy(r){return ir.get(r)}function Il(r){return ir.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>$l&&e.push({code:"HTML_TOO_LONG",message:`HTML content exceeds maximum length of ${$l}`,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>Ml&&e.push({code:"TOO_MANY_STYLES",message:`Too many styles (${n}). Maximum is ${Ml}`,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=jt(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=jt(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=jt(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"]),$l=5e4,Ml=50;function jt(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(!Il(n)&&n!=="core:mountWidget"){let i=ir.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":kr(r,e,t);break;case"overlays:badge":kr(r,e,t),Fd(r,e,t);break;case"overlays:tooltip":kr(r,e,t),Dd(r,e,t);break;case"overlays:modal":Kd(r,e,t);break;case"content:insertHtml":kr(r,e,t),Hd(r,e,t);break;case"content:setText":kr(r,e,t),Bd(r,e,t);break;case"content:setAttr":kr(r,e,t),Vd(r,e,t);break;case"content:addClass":case"content:removeClass":kr(r,e,t),Ud(r,e,t);break;case"content:setStyle":kr(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 kr(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 ho(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=jt(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 IE=0;function Pl(r){let{overlayRoot:e,eventBus:t,surfaces:n,anchorResolver:i,waitForAnchor:s,adaptiveId:o,executorRegistry:a=ir,subscribeNavigation:l,runtime:c}=r,u=new Map,p=new Map;function h(){return`action-${++IE}`}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 P=T.widget;P.props&&$.update({type:"widget",widgetId:_.widget.widgetId,config:P.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 P=[],Y=!1,F=async()=>{if(Y)return;let L=u.get(_);if(L){Y=!0;try{let K=c.evaluateSync($).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:A.kind})}else if(L.state==="deferred"&&K)try{let le=v(),j=await m(A,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 A=jt(_);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 j=u.get($);if(!j)return;let ee=p.get($);if(ee){for(let D of ee)D();p.delete($)}j.state="reverted",u.delete($)},isApplied(){return u.get($)?.state==="applied"},async update(j){let ee=u.get($);if(!ee||ee.state!=="applied")throw new Error("Cannot update action that is not applied");if(ee.updateFn)await ee.updateFn(j);else throw new Error(`Action kind ${_.kind} does not support updates`)},getState(){return u.get($)?.state??"reverted"}};return y($,_,T,le),le}let P=v(),Y=await m(_,P),F={id:$,action:_,adaptiveId:o,appliedTs:Date.now(),state:"applied",cleanup:Y.cleanup,updateFn:Y.updateFn};u.set($,F);let L={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,L),L}async function S(_){console.log(`[ActionEngine] applyBatch: ${_.length} action(s)`,_.map(F=>F.kind).join(", "));let A=ho(_);if(!A.valid){let F=A.errors.map(L=>L.message).join("; ");throw console.error(`[ActionEngine] Batch validation FAILED for ${_.length} action(s):`,F,`
792
+ `;customElements.define("syntro-toast-stack",ko);var hp=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{}}}},fp=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{}}}},gp=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 Eo=class{constructor(){this.executors=new Map;for(let{kind:e,executor:t}of Ou)this.registerCore(e,t);for(let{kind:e,executor:t}of td)this.registerCore(e,t);this.registerCore("core:mountWidget",async()=>{throw new Error("core:mountWidget must be handled by ActionEngine")}),this.registerCore("core:sequence",hp),this.registerCore("core:parallel",fp),this.registerCore("core:wait",gp)}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)}},lr=new Eo;function pb(r){return lr.get(r)}function ql(r){return lr.has(r)}function mp(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 vp(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 yp(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>Zl&&e.push({code:"HTML_TOO_LONG",message:`HTML content exceeds maximum length of ${Zl}`,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 bp(r,e,t){(r.text===void 0||r.text===null)&&e.push({code:"MISSING_TEXT",message:"setText action requires 'text' property",field:"text"})}function _p(r,e,t){!r.attr||typeof r.attr!="string"?e.push({code:"MISSING_ATTR",message:"setAttr action requires 'attr' property",field:"attr"}):(Ip.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 xp(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 wp(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>Gl&&e.push({code:"TOO_MANY_STYLES",message:`Too many styles (${n}). Maximum is ${Gl}`,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 Sp(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 kp(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 Ep(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=Wt(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 Cp(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=Wt(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 Ap(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 Tp(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 Rp(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=Wt(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 Ip=new Set(["onclick","onerror","onload","onmouseover","onfocus","onblur","onchange","onsubmit","onkeydown","onkeyup","onkeypress"]),Zl=5e4,Gl=50;function Wt(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(!ql(n)&&n!=="core:mountWidget"){let i=lr.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":Rr(r,e,t);break;case"overlays:badge":Rr(r,e,t),mp(r,e,t);break;case"overlays:tooltip":Rr(r,e,t),vp(r,e,t);break;case"overlays:modal":Tp(r,e,t);break;case"content:insertHtml":Rr(r,e,t),yp(r,e,t);break;case"content:setText":Rr(r,e,t),bp(r,e,t);break;case"content:setAttr":Rr(r,e,t),_p(r,e,t);break;case"content:addClass":case"content:removeClass":Rr(r,e,t),xp(r,e,t);break;case"content:setStyle":Rr(r,e,t),wp(r,e,t);break;case"core:mountWidget":Sp(r,e,t);break;case"core:wait":kp(r,e,t);break;case"core:sequence":Ep(r,e,t);break;case"core:parallel":Cp(r,e,t);break;case"overlays:tour":Rp(r,e,t);break;case"navigation:navigate":Ap(r,e,t);break}return{valid:e.length===0,errors:e,warnings:t}}function Rr(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 Co(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=Wt(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 MC=0;function Kl(r){let{overlayRoot:e,eventBus:t,surfaces:n,anchorResolver:i,waitForAnchor:s,adaptiveId:o,executorRegistry:a=lr,subscribeNavigation:l,runtime:c}=r,u=new Map,p=new Map;function h(){return`action-${++MC}`}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:R=>{if("widget"in R&&R.widget){let P=R.widget;P.props&&$.update({type:"widget",widgetId:_.widget.widgetId,config:P.props})}}}}async function m(_,A){if(_.kind==="core:mountWidget")return g(_,A);let $=a.get(_.kind);if(!$){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 $(_,A)}function y(_,A,$,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($).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:A.kind})}else if(L.state==="deferred"&&K)try{let le=v(),j=await m(A,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 A=Wt(_);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(),R=_.triggerWhen;if(R&&c&&!c.evaluateSync(R).value){let K={id:$,action:_,adaptiveId:o,appliedTs:Date.now(),state:"deferred",cleanup:()=>{}};u.set($,K);let le={id:$,action:_,async revert(){let j=u.get($);if(!j)return;let te=p.get($);if(te){for(let De of te)De();p.delete($)}j.state="reverted",u.delete($)},isApplied(){return u.get($)?.state==="applied"},async update(j){let te=u.get($);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($)?.state??"reverted"}};return y($,_,R,le),le}let P=v(),Y=await m(_,P),F={id:$,action:_,adaptiveId:o,appliedTs:Date.now(),state:"applied",cleanup:Y.cleanup,updateFn:Y.updateFn};u.set($,F);let L={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 R&&c&&y($,_,R,L),L}async function S(_){console.log(`[ActionEngine] applyBatch: ${_.length} action(s)`,_.map(F=>F.kind).join(", "));let A=Co(_);if(!A.valid){let F=A.errors.map(L=>L.message).join("; ");throw console.error(`[ActionEngine] Batch validation FAILED for ${_.length} action(s):`,F,`
793
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 $=h(),T=[],P=[];try{let F=await Promise.allSettled(_.map(G=>x(G))),L=[];for(let G of F)G.status==="fulfilled"?(T.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:$,handles:T,async revertAll(){for(let F=T.length-1;F>=0;F--)try{await T[F].revert()}catch(L){console.error(`[ActionEngine] Error reverting action ${T[F].id}:`,L)}},isApplied(){return T.every(F=>F.isApplied())}}}function b(_){return jt(_)}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 Jd=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.")}),fo=d.object({routes:Jd,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 $E(r){return br.safeParse(r)}function ME(r){return Ti.safeParse(r)}function PE(r){return fo.safeParse(r)}var OE=[{defName:"matchOp",schema:wi},{defName:"counterDef",schema:Si},{defName:"activationConfig",schema:fo},{defName:"routeFilter",schema:Jd},{defName:"ruleStrategy",schema:Ei},{defName:"scoreStrategy",schema:Ci},{defName:"modelStrategy",schema:Ai},{defName:"externalStrategy",schema:Ri},{defName:"rule",schema:ki},{defName:"condition",schema:br}];var Qd=d.object({tileId:d.string(),itemId:d.string().optional()}).strict(),LE=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(),NE=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:fo.optional(),notifications:d.array(LE).optional()}).strict(),gy=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()}),FE=d.object({canvas:gy.optional()}),DE=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()}),HE=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()}),BE=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()}),VE=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()}),UE=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()}),jE=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:gy.optional(),launcher:DE.optional(),tile:HE.optional(),overlay:BE.optional(),notification:VE.optional(),content:UE.optional(),mobile:FE.optional()}).strict(),WE=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(),_4=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(NE),actions:d.array(d.any()),theme:jE.optional(),launcher:WE.optional(),meta:d.object({verificationSteps:d.array(d.union([d.string(),d.object({text:d.string(),check:br.optional()})])).optional()}).passthrough().optional()}).strict();var Ge={triggerWhen:Xs},bt=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),ep=d.object({color:d.string().optional(),scrimOpacity:d.number().min(0).max(1).optional(),paddingPx:d.number().optional(),radiusPx:d.number().optional()}).strict(),tp=d.enum(["top-left","top-right","bottom-left","bottom-right"]),rp=d.enum(["top","top-start","top-end","bottom","bottom-start","bottom-end","left","left-start","left-end","right","right-start","right-end"]),Ll=d.object({label:d.string(),actionId:d.string(),primary:d.boolean().optional()}).strict(),np=d.object({title:d.string().optional(),body:d.string(),ctaButtons:d.array(Ll).optional()}).strict(),ip=d.object({title:d.string().optional(),body:d.string()}).strict(),sp=d.enum(["before","after","prepend","append","replace"]),op=d.enum(["immediate","hover","click"]),ap=d.object({widgetId:d.string(),props:d.record(d.unknown()).optional(),priority:d.number().optional()}).strict(),lp=d.object({id:d.string(),action:d.any(),route:d.string().optional(),onAction:d.record(d.string()).optional()}).passthrough(),cp=d.enum(["auto","smooth","instant"]),Ol=d.enum(["start","center","end","nearest"]),up=d.object({kind:d.literal("content:setText"),anchorId:bt,text:d.string(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),dp=d.object({kind:d.literal("content:setAttr"),anchorId:bt,attr:d.string(),value:d.string(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),pp=d.object({kind:d.literal("content:addClass"),anchorId:bt,className:d.string(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),hp=d.object({kind:d.literal("content:removeClass"),anchorId:bt,className:d.string(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),fp=d.object({kind:d.literal("content:setStyle"),anchorId:bt,styles:d.record(d.string()),label:d.string().optional()}).extend(Ge).extend(Be).strict(),gp=d.object({kind:d.literal("content:insertHtml"),anchorId:bt,html:d.string(),position:sp,deepLink:Qd.optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),mp=d.object({kind:d.literal("overlays:highlight"),anchorId:bt,style:ep.optional(),duration:d.number().optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),vp=d.object({kind:d.literal("overlays:pulse"),anchorId:bt,duration:d.number().optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),yp=d.object({kind:d.literal("overlays:badge"),anchorId:bt,content:d.string(),position:tp.optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),bp=d.object({kind:d.literal("overlays:tooltip"),anchorId:bt,content:np,trigger:op.optional(),placement:rp.optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),_p=d.object({kind:d.literal("overlays:modal"),content:ip,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(Ll).optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),xp=d.object({kind:d.literal("navigation:scrollTo"),anchorId:bt,behavior:cp.optional(),block:Ol.optional(),inline:Ol.optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),wp=d.object({kind:d.literal("navigation:navigate"),url:d.string(),target:d.enum(["_self","_blank"]).optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),Sp=d.object({kind:d.literal("core:mountWidget"),slot:d.string(),widget:ap,label:d.string().optional()}).extend(Ge).extend(Be).strict(),kp=d.object({kind:d.literal("core:wait"),durationMs:d.number().min(0).optional(),event:d.string().optional(),label:d.string().optional()}).extend(Ge).extend(Be).strict(),Ep=d.object({kind:d.literal("core:sequence"),actions:d.array(d.any()),label:d.string().optional()}).extend(Ge).extend(Be).strict(),Cp=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(Be).strict(),Ap=d.object({kind:d.literal("overlays:tour"),tourId:d.string(),steps:d.array(lp).min(1),startStep:d.string().optional(),autoStart:d.boolean().optional(),label:d.string().optional()}).extend(Ge).extend(Be).passthrough(),my=[{defName:"setText",schema:up},{defName:"setAttr",schema:dp},{defName:"addClass",schema:pp},{defName:"removeClass",schema:hp},{defName:"setStyle",schema:fp},{defName:"insertHtml",schema:gp},{defName:"highlight",schema:mp},{defName:"pulse",schema:vp},{defName:"badge",schema:yp},{defName:"tooltip",schema:bp},{defName:"modal",schema:_p},{defName:"scrollTo",schema:xp},{defName:"navigate",schema:wp},{defName:"mountWidget",schema:Sp},{defName:"wait",schema:kp},{defName:"sequence",schema:Ep},{defName:"parallel",schema:Cp},{defName:"tour",schema:Ap}];function Nl(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 vy={timeout:300,className:"sc-anti-flicker",style:"opacity: 0 !important",hostLoadingSelector:"",waitForHostReady:""};function yy(r={}){let{timeout:e,className:t,style:n,hostLoadingSelector:i,waitForHostReady:s}={...vy,...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 by(r={}){let{className:e,style:t}={...vy,...r};return`
794
+ `)),new Error(`Batch validation failed: ${F}`)}let $=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:$,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 Wt(_)}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(R=>{console.error("[ActionEngine] Error during async cleanup:",R)}))}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 $p=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.")}),Ao=d.object({routes:$p,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 PC(r){return Sr.safeParse(r)}function OC(r){return Oi.safeParse(r)}function LC(r){return Ao.safeParse(r)}var NC=[{defName:"matchOp",schema:Ai},{defName:"counterDef",schema:Ti},{defName:"activationConfig",schema:Ao},{defName:"routeFilter",schema:$p},{defName:"ruleStrategy",schema:Ii},{defName:"scoreStrategy",schema:$i},{defName:"modelStrategy",schema:Mi},{defName:"externalStrategy",schema:Pi},{defName:"rule",schema:Ri},{defName:"condition",schema:Sr}];var Mp=d.object({tileId:d.string(),itemId:d.string().optional()}).strict(),FC=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:Mp.optional()}).strict(),DC=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:Ao.optional(),notifications:d.array(FC).optional()}).strict(),hb=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()}),HC=d.object({canvas:hb.optional()}),BC=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()}),VC=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()}),UC=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()}),jC=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()}),zC=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:hb.optional(),launcher:BC.optional(),tile:VC.optional(),overlay:UC.optional(),notification:jC.optional(),content:WC.optional(),mobile:HC.optional()}).strict(),qC=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(),B5=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(DC),actions:d.array(d.any()),theme:zC.optional(),launcher:qC.optional(),meta:d.object({verificationSteps:d.array(d.union([d.string(),d.object({text:d.string(),check:Sr.optional()})])).optional()}).passthrough().optional()}).strict();var Ke={triggerWhen:ao},_t=d.object({selector:d.string(),route:d.union([d.string(),d.array(d.string())])}).strict(),Pp=d.object({color:d.string().optional(),scrimOpacity:d.number().min(0).max(1).optional(),paddingPx:d.number().optional(),radiusPx:d.number().optional()}).strict(),Op=d.enum(["top-left","top-right","bottom-left","bottom-right"]),Lp=d.enum(["top","top-start","top-end","bottom","bottom-start","bottom-end","left","left-start","left-end","right","right-start","right-end"]),Xl=d.object({label:d.string(),actionId:d.string(),primary:d.boolean().optional()}).strict(),Np=d.object({title:d.string().optional(),body:d.string(),ctaButtons:d.array(Xl).optional()}).strict(),Fp=d.object({title:d.string().optional(),body:d.string()}).strict(),Dp=d.enum(["before","after","prepend","append","replace"]),Hp=d.enum(["immediate","hover","click"]),Bp=d.object({widgetId:d.string(),props:d.record(d.unknown()).optional(),priority:d.number().optional()}).strict(),Vp=d.object({id:d.string(),action:d.any(),route:d.string().optional(),onAction:d.record(d.string()).optional()}).passthrough(),Up=d.enum(["auto","smooth","instant"]),Yl=d.enum(["start","center","end","nearest"]),jp=d.object({kind:d.literal("content:setText"),anchorId:_t,text:d.string(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Wp=d.object({kind:d.literal("content:setAttr"),anchorId:_t,attr:d.string(),value:d.string(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),zp=d.object({kind:d.literal("content:addClass"),anchorId:_t,className:d.string(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),qp=d.object({kind:d.literal("content:removeClass"),anchorId:_t,className:d.string(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Zp=d.object({kind:d.literal("content:setStyle"),anchorId:_t,styles:d.record(d.string()),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Gp=d.object({kind:d.literal("content:insertHtml"),anchorId:_t,html:d.string(),position:Dp,deepLink:Mp.optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Kp=d.object({kind:d.literal("overlays:highlight"),anchorId:_t,style:Pp.optional(),duration:d.number().optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Yp=d.object({kind:d.literal("overlays:pulse"),anchorId:_t,duration:d.number().optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Xp=d.object({kind:d.literal("overlays:badge"),anchorId:_t,content:d.string(),position:Op.optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Jp=d.object({kind:d.literal("overlays:tooltip"),anchorId:_t,content:Np,trigger:Hp.optional(),placement:Lp.optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),Qp=d.object({kind:d.literal("overlays:modal"),content:Fp,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(Xl).optional(),waitFor:d.string().optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),eh=d.object({kind:d.literal("navigation:scrollTo"),anchorId:_t,behavior:Up.optional(),block:Yl.optional(),inline:Yl.optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),th=d.object({kind:d.literal("navigation:navigate"),url:d.string(),target:d.enum(["_self","_blank"]).optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),rh=d.object({kind:d.literal("core:mountWidget"),slot:d.string(),widget:Bp,label:d.string().optional()}).extend(Ke).extend(Ve).strict(),nh=d.object({kind:d.literal("core:wait"),durationMs:d.number().min(0).optional(),event:d.string().optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),ih=d.object({kind:d.literal("core:sequence"),actions:d.array(d.any()),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),sh=d.object({kind:d.literal("core:parallel"),actions:d.array(d.any()),waitFor:d.enum(["all","any"]).optional(),label:d.string().optional()}).extend(Ke).extend(Ve).strict(),oh=d.object({kind:d.literal("overlays:tour"),tourId:d.string(),steps:d.array(Vp).min(1),startStep:d.string().optional(),autoStart:d.boolean().optional(),label:d.string().optional()}).extend(Ke).extend(Ve).passthrough(),fb=[{defName:"setText",schema:jp},{defName:"setAttr",schema:Wp},{defName:"addClass",schema:zp},{defName:"removeClass",schema:qp},{defName:"setStyle",schema:Zp},{defName:"insertHtml",schema:Gp},{defName:"highlight",schema:Kp},{defName:"pulse",schema:Yp},{defName:"badge",schema:Xp},{defName:"tooltip",schema:Jp},{defName:"modal",schema:Qp},{defName:"scrollTo",schema:eh},{defName:"navigate",schema:th},{defName:"mountWidget",schema:rh},{defName:"wait",schema:nh},{defName:"sequence",schema:ih},{defName:"parallel",schema:sh},{defName:"tour",schema:oh}];function Jl(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 gb={timeout:300,className:"sc-anti-flicker",style:"opacity: 0 !important",hostLoadingSelector:"",waitForHostReady:""};function mb(r={}){let{timeout:e,className:t,style:n,hostLoadingSelector:i,waitForHostReady:s}={...gb,...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 vb(r={}){let{className:e,style:t}={...gb,...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 zE=["cdn.syntrologie.com","api.syntrologie.com","dev-api.syntrologie.com","localhost","127.0.0.1",".syntrologie.com"];function _y(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 Rp="__syntro_rt_editor_source",Tp="__syntro_rt_editor_conf";function Fl(r,e){try{sessionStorage.setItem(r,JSON.stringify(e))}catch{}}function xy(r){try{let e=sessionStorage.getItem(r);return e?JSON.parse(e):null}catch{return null}}var Gr,Kr;function mo(){if(Gr==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.token)Gr={token:r.token,api_base:r.apiBase||""},Fl(Rp,Gr),console.log(`[DIAG] getEditorSource: from __SYNTRO_EDITOR_PARAMS__ (token=${Gr.token.slice(0,15)}...)`);else{let e=_y("editor_source");if(e)Gr=e,Fl(Rp,e);else{let t=xy(Rp);t?.token&&(Gr=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 Gr??null}function Dl(){if(Kr==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.mode)Kr={mode:r.mode,audit_session_id:r.auditSessionId,syntro_token:r.syntroToken,workspace_id:r.workspaceId},Fl(Tp,Kr),console.log(`[DIAG] getEditorConf: from __SYNTRO_EDITOR_PARAMS__ (mode=${Kr.mode})`);else{let e=_y("editor_conf");if(e)Kr=e,Fl(Tp,e);else{let t=xy(Tp);t?.mode&&(Kr=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 Kr??null}function qE(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):zE.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 Hl=()=>{let r=Dl();return!mo()?.token||!r?.mode?null:r.mode};function ZE(){return mo()?.token??null}function GE(){return mo()?.api_base??null}var go=null,wy=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(go)return Z("Syntro Runtime","Editor SDK load already in progress, waiting..."),go;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=GE(),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=ZE(),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"}),!qE(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..."),go=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","================================"),go=null,l(u)},document.head.appendChild(c),Z("Syntro Runtime","Script tag appended to <head>")}),go};var sr=null;function ky(r){sr&&sr!==r?r.appendChild(sr):sr=r;let e=r.getRootNode();e instanceof ShadowRoot&&KE(e)}function Ey(){return sr||(sr=document.createElement("div"),sr.id="syntro-overlays",Object.assign(sr.style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),document.body.appendChild(sr)),sr}var Sy=!1;function KE(r){if(Sy)return;let e=`
800
+ })();`}var ZC=["cdn.syntrologie.com","api.syntrologie.com","dev-api.syntrologie.com","localhost","127.0.0.1",".syntrologie.com"];function yb(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 Ge("Syntro Runtime",`Failed to decode ${r}:`,n),null}}var ah="__syntro_rt_editor_source",lh="__syntro_rt_editor_conf";function Ql(r,e){try{sessionStorage.setItem(r,JSON.stringify(e))}catch{}}function bb(r){try{let e=sessionStorage.getItem(r);return e?JSON.parse(e):null}catch{return null}}var Qr,en;function Ro(){if(Qr==null){let r=typeof window<"u"?window.__SYNTRO_EDITOR_PARAMS__:null;if(r?.token)Qr={token:r.token,api_base:r.apiBase||""},Ql(ah,Qr),console.log(`[DIAG] getEditorSource: from __SYNTRO_EDITOR_PARAMS__ (token=${Qr.token.slice(0,15)}...)`);else{let e=yb("editor_source");if(e)Qr=e,Ql(ah,e);else{let t=bb(ah);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 ec(){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},Ql(lh,en),console.log(`[DIAG] getEditorConf: from __SYNTRO_EDITOR_PARAMS__ (mode=${en.mode})`);else{let e=yb("editor_conf");if(e)en=e,Ql(lh,e);else{let t=bb(lh);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 GC(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?(Ge("Syntro Runtime","\u274C Editor URL must use HTTPS:",r),!1):ZC.some(i=>i.startsWith(".")?e.hostname.endsWith(i)||e.hostname===i.slice(1):e.hostname===i)?(Z("Syntro Runtime","\u2713 Editor URL validated"),!0):(Ge("Syntro Runtime","\u274C Editor URL host not in allowlist:",e.hostname),!1)}catch(e){return Ge("Syntro Runtime",`\u274C Invalid editor URL: ${r}`,e),!1}}var tc=()=>{let r=ec();return!Ro()?.token||!r?.mode?null:r.mode};function KC(){return Ro()?.token??null}function YC(){return Ro()?.api_base??null}var To=null,_b=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(To)return Z("Syntro Runtime","Editor SDK load already in progress, waiting..."),To;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=YC(),i=(t?`${t}/api/editor/sdk/editor-sdk.js`:null)||e.editorUrl;if(!i){Ge("Syntro Runtime","\u274C No editor SDK URL available (no api_base, no editorUrl option)"),Z("Syntro Runtime","================================");return}let s=KC(),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"}),!GC(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..."),To=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","================================"),To=null,l(u)},document.head.appendChild(c),Z("Syntro Runtime","Script tag appended to <head>")}),To};var cr=null;function wb(r){cr&&cr!==r?r.appendChild(cr):cr=r;let e=r.getRootNode();e instanceof ShadowRoot&&XC(e)}function Sb(){return cr||(cr=document.createElement("div"),cr.id="syntro-overlays",Object.assign(cr.style,{position:"fixed",inset:"0",zIndex:"2147483645",pointerEvents:"none"}),document.body.appendChild(cr)),cr}var xb=!1;function XC(r){if(xb)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((L,G)=>` [${G}] ${L.kind} ${L.anchorId?`anchor="${L.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),Sy=!0}var Bl=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=yy(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&&Vn(m.tiles,s.accumulator,m.actions)}catch(m){console.error("[SmartCanvas] Error fetching/applying initial config:",m)}e&&e();let l=Hl();lo();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??Dn({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&&ky(y)}};document.body?v():document.addEventListener("DOMContentLoaded",v,{once:!0}),(l||r.editorUrl)&&(console.log(`[SmartCanvas] Loading editor SDK for ${l??"config"} mode`),wy(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&&Vn(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 Bl(r)}});var Ip="syn_";function Di(r){if(!r.startsWith(Ip))throw new Error("Invalid Syntro token: must start with 'syn_'");let t=r.slice(Ip.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 Vl(r){let e=JSON.stringify(r),t=btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"");return Ip+t}function It(r){if(typeof process<"u"&&process.env)return process.env[r]}var Ay="syntro_segment_attributes";function Ry(){if(typeof window>"u")return{};try{let r=localStorage.getItem(Ay);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 Ty(r){if(!(typeof window>"u"))try{localStorage.setItem(Ay,JSON.stringify(r)),Z("Syntro Bootstrap","Cached segment attributes:",r)}catch(e){Ze("Syntro Bootstrap","Failed to cache segment attributes:",e)}}function Iy(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 $p(){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 Cy="syntro_geo",$y="https://geo.syntrologie.com";async function Mp(r){if(typeof window>"u")return{};try{let e=localStorage.getItem(Cy);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(Cy,JSON.stringify(n))}catch{}return Z("Syntro Bootstrap","Geo: fetched from worker:",n),n}}catch{}return{}}var Pp=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(/\/[^/]*$/,"");Pp=`${e.origin}${t}`}}catch{Pp=null}function My(){return Pp}var Py=["fbclid","ttclid","gclid","gbraid","wbraid","msclkid","twclid","li_fat_id","epik","ScCid","yclid","_kx","mc_eid","mc_cid"];function Op(r){if(typeof window>"u"||!r.setPersonPropertiesOnce)return;let e=new URLSearchParams(window.location.search),t={};for(let n of Py){let i=e.get(n);i&&(t[`$initial_${n}`]=i)}Object.keys(t).length>0&&r.setPersonPropertiesOnce(t)}var YE=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,XE=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,JE=[/@yopmail\.com$/i,/@mailinator\.com$/i,/@guerrillamail\.(com|info|net|org|biz)$/i,/@10minutemail\.com$/i,/^test@/i,/^noreply@/i,/^no-reply@/i];function Ul(r){return r?XE.test(r):!1}function Oy(r){return JE.some(e=>e.test(r))}function QE(r){if(r.type==="email")return!0;let e=(r.name||"").toLowerCase(),t=(r.id||"").toLowerCase();return!!(/email/.test(e)||/email/.test(t))}function eC(r){return r.closest("[data-syntro-no-identify]")!==null}function tC(r){return r?YE.test(r):!0}function Lp(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}tC(o)?r.identify?.(s,{email:s}):r.alias?.(s),t.add(s)},i=s=>{let o=s.target;if(!(o instanceof HTMLInputElement)||eC(o)||!QE(o))return;let a=(o.value??"").trim().toLowerCase();if(!Ul(a)||Oy(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 Ly="_syu",rC=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function nC(r){return r?rC.test(r):!0}function Np(r,e){if(typeof window>"u"||!r.identify&&!r.alias)return;let t=new URLSearchParams(window.location.search).get(Ly);if(!t)return;let n=t.trim();if(!n)return;let i=()=>{let a=r.getDistinctId?.();if(a===n)return;let l=Ul(n)?{email:n}:void 0;nC(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 iC=["utm_source","utm_medium","utm_campaign","utm_content","utm_term"];function sC(r){return r.is_eu==="true"||r.country_code==="GB"||r.country_code==="CH"||!r.is_eu&&!r.country_code}function oC(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 Dp(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:oC(t)};for(let s of iC){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=sC(s)?Fp():window.location.href;r.setPersonPropertiesOnce?.({$initial_url:o})}).catch(()=>{r.setPersonPropertiesOnce?.({$initial_url:Fp()})})}var Ny=new Set(["email","telephone","streetAddress","addressLocality","addressRegion","postalCode","givenName","familyName"]),Fy=500,Hp=3;function jl(r){if(Array.isArray(r))return r.map(jl);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))Ny.has(t)||(e[t]=jl(n));return e}return r}function Wl(r){if(Array.isArray(r))return r.map(Wl);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))if(!(t==="description"&&typeof n=="string"&&n.length>Fy)){if(t==="image"&&Array.isArray(n)&&n.length>Hp){e[t]=n.slice(0,Hp);continue}e[t]=Wl(n)}return e}return r}function aC(){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 Bp(r){if(!r.register)return;let e=aC().map(Wl).map(jl);e.length!==0&&r.register({json_ld:e})}function Dy(r,e,t={}){Dp(r,t.geoPromise),Op(r),Bp(r),Np(r,e);let n=Lp(r,e);return()=>{n()}}var Hy="app:",lC="syntro:",cC=/^[a-z][a-z0-9_]*$/;function zl(r){if(!r)return{valid:!1,reason:"Event name cannot be empty"};if(r.startsWith(lC))return{valid:!1,reason:'"syntro:" prefix is reserved for internal SDK events'};if(!r.startsWith(Hy))return{valid:!1,reason:`Custom events must start with "app:" prefix. Got: "${r}"`};let e=r.slice(Hy.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(!cC.test(t))return{valid:!1,reason:`Segment "${t}" must be lowercase alphanumeric + underscores. Got: "${r}"`};return{valid:!0}}function uC(r){return typeof r=="string"||typeof r=="number"||typeof r=="boolean"||r===null}function By(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)&&!By(n,e,t+1))return!1;return!0}function ql(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(!By(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"||uC(n)||e.push(t);return e.length>0?{valid:!0,stripped:e}:{valid:!0}}function Zl(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 vo=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:Pe};this.publishEvent(i)}publishEvent(e){this.history.push(e),this.history.length>this.maxHistorySize&&this.history.shift();for(let t of this.subscriptions)if(Zl(e,t.filter))try{t.callback(e)}catch(n){console.error("[EventBus] Subscriber error:",n)}}emit(e,t){let n=zl(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=ql(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:Pe};this.history.push(s),this.history.length>this.maxHistorySize&&this.history.shift();let o=0;for(let l of this.subscriptions)if(Zl(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=>Zl(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=>Zl(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 Hi(r={}){return new vo(r)}var Bi=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 Uy={fetch:globalThis.fetch?globalThis.fetch.bind(globalThis):void 0,SubtleCrypto:globalThis.crypto?globalThis.crypto.subtle:void 0,EventSource:globalThis.EventSource};function jy(){return Uy}function Vp(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 yo(r,e,t){return t===2?Vp(Vp(r+e)+"")%1e4/1e4:t===1?Vp(e+r)%1e3/1e3:null}function dC(r){return r<=0?[]:new Array(r).fill(1/r)}function Gl(r,e){return r>=e[0]&&r<e[1]}function Wy(r,e){let t=yo("__"+e[0],r,1);return t===null?!1:t>=e[1]&&t<e[2]}function zy(r,e){for(let t=0;t<e.length;t++)if(Gl(r,e[t]))return t;return-1}function jp(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=fC(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 pC(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 hC(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=>!pC(i[0],i[1],i[2]))}catch{return!1}}function fC(r,e,t){try{let n=new URL(r,"https://_");if(e==="regex"){let i=jp(t);return i?i.test(n.href)||i.test(n.href.substring(n.origin.length)):!1}else if(e==="simple")return hC(n,t);return!1}catch{return!1}}function qy(r,e,t){e=e===void 0?1:e,e<0?e=0:e>1&&(e=1);let n=dC(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 Zy(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 Gy(r){try{return r()}catch(e){return console.error(e),!1}}var Up=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||Uy.SubtleCrypto,!t)throw new Error("No SubtleCrypto implementation found");try{let n=await t.importKey("raw",Up(e),{name:"AES-CBC",length:128},!0,["encrypt","decrypt"]),[i,s]=r.split("."),o=await t.decrypt({name:"AES-CBC",iv:Up(i)},n,Up(s));return new TextDecoder().decode(o)}catch{throw new Error("Failed to decrypt")}}function bo(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 Ky(){let r;try{r="1.6.4"}catch{r=""}return r}function Yy(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 Vy(r){return typeof r=="object"&&r!==null}function Yl(r){return r.urlPatterns&&r.variations.some(e=>Vy(e)&&"urlRedirect"in e)?"redirect":r.variations.some(e=>Vy(e)&&(e.domMutations||"js"in e||"css"in e))?"visual":"unknown"}async function Xl(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 nt={staleTTL:1e3*60,maxAge:1e3*60*60*4,cacheKey:"gbFeaturesCache",backgroundSync:!0,maxEntries:10,disableIdleStreams:!1,idleStreamInterval:2e4,disableCache:!1},or=jy(),Vi={fetchFeaturesCall:({host:r,clientKey:e,headers:t})=>or.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 or.fetch(`${r}/api/eval/${e}`,i)},eventSourceCall:({host:r,clientKey:e,headers:t})=>t?new or.EventSource(`${r}/sub/${e}`,{headers:t}):new or.EventSource(`${r}/sub/${e}`),startIdleListener:()=>{let r;if(!(typeof window<"u"&&typeof document<"u"))return;let t=()=>{document.visibilityState==="visible"?(window.clearTimeout(r),vC()):document.visibilityState==="hidden"&&(r=window.setTimeout(mC,nt.idleStreamInterval))};return document.addEventListener("visibilitychange",t),()=>document.removeEventListener("visibilitychange",t)},stopIdleListener:()=>{}};try{globalThis.localStorage&&(or.localStorage=globalThis.localStorage)}catch{}var Ui=new Map,Xy=!1,Er=new Map,Jl=new Map,ji=new Map,Wi=new Set;function Qy(r){Object.assign(nt,r),nt.backgroundSync||Kp()}async function eb({instance:r,timeout:e,skipCache:t,allowStale:n,backgroundSync:i}){return i||(nt.backgroundSync=!1),yC({instance:r,allowStale:n,timeout:e,skipCache:t})}function gC(r){let e=_o(r),t=Ui.get(e)||new Set;t.add(r),Ui.set(e,t)}function tb(r){Ui.forEach(e=>e.delete(r))}function mC(){ji.forEach(r=>{r&&(r.state="idle",Zp(r))})}function vC(){ji.forEach(r=>{r&&r.state==="idle"&&Gp(r)})}async function Jy(){try{if(!or.localStorage)return;await or.localStorage.setItem(nt.cacheKey,JSON.stringify(Array.from(Er.entries())))}catch{}}async function yC({instance:r,allowStale:e,timeout:t,skipCache:n}){let i=_o(r),s=zp(r),o=new Date,a=new Date(o.getTime()-nt.maxAge+nt.staleTTL);await bC();let l=!nt.disableCache&&!n?Er.get(s):void 0;return l&&(e||l.staleAt>o)&&l.staleAt>a?(l.sse&&Wi.add(i),l.staleAt<o?Wp(r):qp(r),{data:l.data,success:!0,source:"cache"}):await Xl(Wp(r),t)||{data:null,success:!1,source:"timeout",error:new Error("Timeout")}}function _o(r){let[e,t]=r.getApiInfo();return`${e}||${t}`}function zp(r){let e=_o(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 bC(){if(!Xy){Xy=!0;try{if(or.localStorage){let r=await or.localStorage.getItem(nt.cacheKey);if(!nt.disableCache&&r){let e=JSON.parse(r);e&&Array.isArray(e)&&e.forEach(([t,n])=>{Er.set(t,{...n,staleAt:new Date(n.staleAt)})}),rb()}}}catch{}if(!nt.disableIdleStreams){let r=Vi.startIdleListener();r&&(Vi.stopIdleListener=r)}}}function rb(){let r=Array.from(Er.entries()).map(([t,n])=>({key:t,staleAt:n.staleAt.getTime()})).sort((t,n)=>t.staleAt-n.staleAt),e=Math.min(Math.max(0,Er.size-nt.maxEntries),Er.size);for(let t=0;t<e;t++)Er.delete(r[t].key)}function nb(r,e,t){let n=t.dateUpdated||"",i=new Date(Date.now()+nt.staleTTL),s=nt.disableCache?void 0:Er.get(e);if(s&&n&&s.version===n){s.staleAt=i,Jy();return}nt.disableCache||(Er.set(e,{data:t,version:n,staleAt:i,sse:Wi.has(r)}),rb()),Jy();let o=Ui.get(r);o&&o.forEach(a=>_C(a,t))}async function _C(r,e){await r.setPayload(e||r.getPayload())}async function Wp(r){let{apiHost:e,apiRequestHeaders:t}=r.getApiHosts(),n=r.getClientKey(),i="isRemoteEval"in r&&r.isRemoteEval(),s=_o(r),o=zp(r),a=Jl.get(o);return a||(a=(i?Vi.fetchRemoteEvalCall({host:e,clientKey:n,payload:{attributes:r.getAttributes(),forcedVariations:r.getForcedVariations(),forcedFeatures:Array.from(r.getForcedFeatures().entries()),url:r.getUrl()},headers:t}):Vi.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"&&Wi.add(s),c.json()}).then(c=>(nb(s,o,c),qp(r),Jl.delete(o),{data:c,success:!0,source:"network"})).catch(c=>(Jl.delete(o),{data:null,source:"error",success:!1,error:c})),Jl.set(o,a)),a}function qp(r,e=!1){let t=_o(r),n=zp(r),{streamingHost:i,streamingHostRequestHeaders:s}=r.getApiHosts(),o=r.getClientKey();if(e&&Wi.add(t),nt.backgroundSync&&Wi.has(t)&&or.EventSource){if(ji.has(t))return;let a={src:null,host:i,clientKey:o,headers:s,cb:l=>{try{if(l.type==="features-updated"){let c=Ui.get(t);c&&c.forEach(u=>{Wp(u)})}else if(l.type==="features"){let c=JSON.parse(l.data);nb(t,n,c)}a.errors=0}catch{ib(a)}},errors:0,state:"active"};ji.set(t,a),Gp(a)}}function ib(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);Zp(r),setTimeout(()=>{["idle","active"].includes(r.state)||Gp(r)},Math.min(e,3e5))}}function Zp(r){r.src&&(r.src.onopen=null,r.src.onerror=null,r.src.close(),r.src=null,r.state==="active"&&(r.state="disabled"))}function Gp(r){r.src=Vi.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=()=>ib(r),r.src.onopen=()=>{r.errors=0}}function xC(r,e){Zp(r),ji.delete(e)}function Kp(){Wi.clear(),ji.forEach(xC),Ui.clear(),Vi.stopIdleListener()}function Ql(r,e){if(e.streaming){if(!r.getClientKey())throw new Error("Must specify clientKey to enable streaming");e.payload&&qp(r,!0),gC(r)}}var wC=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,Jp={revert:function(){}},nc=new Map,Qp=new Set;function SC(r){return r==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[r]}}function ic(r){var e=nc.get(r);return e||(e={element:r,attributes:{}},nc.set(r,e)),e}function sc(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,SC(e)),o}function oc(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,sb()):r!==t&&(e.isDirty=!0,sb())}function kC(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),oc(DC(e),r)}function EC(r){var e=new Set(r.originalValue.split(/\s+/).filter(Boolean));r.mutations.forEach(function(t){return t.mutate(e)}),oc(Array.from(e).filter(Boolean).join(" "),r)}function CC(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),oc(e,r)}function AC(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 RC(r){var e=r.originalValue;r.mutations.forEach(function(t){var n=t.mutate(),i=AC(n);e=i||e}),oc(e,r)}var TC=function(e){return e.innerHTML},IC=function(e,t){return e.innerHTML=t};function ab(r){var e=ic(r);return e.html||(e.html=sc(r,"html",TC,IC,kC)),e.html}var $C=function(e){return{parentNode:e.parentElement,insertBeforeNode:e.nextElementSibling}},MC=function(e,t){t.insertBeforeNode&&!t.parentNode.contains(t.insertBeforeNode)||t.parentNode.insertBefore(e,t.insertBeforeNode)};function lb(r){var e=ic(r);return e.position||(e.position=sc(r,"position",$C,MC,RC)),e.position}var PC=function(e,t){return t?e.className=t:e.removeAttribute("class")},OC=function(e){return e.className};function cb(r){var e=ic(r);return e.classes||(e.classes=sc(r,"class",OC,PC,EC)),e.classes}var LC=function(e){return function(t){var n;return(n=t.getAttribute(e))!=null?n:null}},NC=function(e){return function(t,n){return n!==null?t.setAttribute(e,n):t.removeAttribute(e)}};function ub(r,e){var t=ic(r);return t.attributes[e]||(t.attributes[e]=sc(r,e,LC(e),NC(e),CC)),t.attributes[e]}function FC(r,e){var t=nc.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 ec;function DC(r){return ec||(ec=document.createElement("div")),ec.innerHTML=r,ec.innerHTML}function tc(r,e,t){if(t.isDirty){t.isDirty=!1;var n=t.virtualValue;t.mutations.length||FC(r,e),t.setValue(r,n)}}function HC(r,e){r.html&&tc(e,"html",r.html),r.classes&&tc(e,"class",r.classes),r.position&&tc(e,"position",r.position),Object.keys(r.attributes).forEach(function(t){tc(e,t,r.attributes[t])})}function sb(){nc.forEach(HC)}function BC(r,e){var t=null;r.kind==="html"?t=ab(e):r.kind==="class"?t=cb(e):r.kind==="attribute"?t=ub(e,r.attribute):r.kind==="position"&&(t=lb(e)),t&&(t.mutations.push(r),t.mutationRunner(t))}function VC(r,e){var t=null;if(r.kind==="html"?t=ab(e):r.kind==="class"?t=cb(e):r.kind==="attribute"?t=ub(e,r.attribute):r.kind==="position"&&(t=lb(e)),!!t){var n=t.mutations.indexOf(r);n!==-1&&t.mutations.splice(n,1),t.mutationRunner(t)}}function db(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),BC(r,n))})}}function UC(r){r.elements.forEach(function(e){return VC(r,e)}),r.elements.clear(),Qp.delete(r)}function ob(){Qp.forEach(db)}var Yp;function jC(){typeof document>"u"||(Yp||(Yp=new MutationObserver(function(){ob()})),ob(),Yp.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}jC();function ac(r){return typeof document>"u"?Jp:(Qp.add(r),db(r),{revert:function(){UC(r)}})}function Xp(r,e){return ac({kind:"html",elements:new Set,mutate:e,selector:r})}function pb(r,e){return ac({kind:"position",elements:new Set,mutate:e,selector:r})}function xo(r,e){return ac({kind:"class",elements:new Set,mutate:e,selector:r})}function rc(r,e,t){return wC.test(e)?e==="class"||e==="className"?xo(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)})}):ac({kind:"attribute",attribute:e,elements:new Set,mutate:t,selector:r}):Jp}function WC(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 Xp(e,function(a){return a+(n??"")});if(t==="set")return Xp(e,function(){return n??""})}else if(i==="class"){if(t==="append")return xo(e,function(a){n&&a.add(n)});if(t==="remove")return xo(e,function(a){n&&a.delete(n)});if(t==="set")return xo(e,function(a){a.clear(),n&&a.add(n)})}else if(i==="position"){if(t==="set"&&s)return pb(e,function(){return{insertBeforeSelector:o,parentSelector:s}})}else{if(t==="append")return rc(e,i,function(a){return a!==null?a+(n??""):n??""});if(t==="set")return rc(e,i,function(){return n??""});if(t==="remove")return rc(e,i,function(){return null})}return Jp}var zC={html:Xp,classes:xo,attribute:rc,position:pb,declarative:WC},hb=zC;var eh={};function Yr(r,e,t){t=t||{};for(let[n,i]of Object.entries(e))switch(n){case"$or":if(!mb(r,i,t))return!1;break;case"$nor":if(mb(r,i,t))return!1;break;case"$and":if(!YC(r,i,t))return!1;break;case"$not":if(Yr(r,i,t))return!1;break;default:if(!wo(i,qC(r,n),t))return!1}return!0}function qC(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 fb(r,e=!1){let t=`${r}${e?"/i":""}`;return eh[t]||(eh[t]=new RegExp(r.replace(/([^\\])\//g,"$1\\/"),e?"i":void 0)),eh[t]}function wo(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)||!vb(r))return JSON.stringify(e)===JSON.stringify(r);for(let i in r)if(!KC(i,e,r[i],t))return!1;return!0}function vb(r){let e=Object.keys(r);return e.length>0&&e.filter(t=>t[0]==="$").length===e.length}function ZC(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 GC(r,e,t){if(!Array.isArray(r))return!1;let n=vb(e)?i=>wo(e,i,t):i=>Yr(i,e,t);for(let i=0;i<r.length;i++)if(r[i]&&n(r[i]))return!0;return!1}function zi(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 gb(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(wo(e[i],r[o],t,n)){s=!0;break}if(!s)return!1}return!0}function KC(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)?zi(e,t):!1;case"$ini":return Array.isArray(t)?zi(e,t,!0):!1;case"$inGroup":return zi(e,n[t]||[]);case"$notInGroup":return!zi(e,n[t]||[]);case"$nin":return Array.isArray(t)?!zi(e,t):!1;case"$nini":return Array.isArray(t)?!zi(e,t,!0):!1;case"$not":return!wo(t,e,n);case"$size":return Array.isArray(e)?wo(t,e.length,n):!1;case"$elemMatch":return GC(e,t,n);case"$all":return Array.isArray(t)?gb(e,t,n):!1;case"$alli":return Array.isArray(t)?gb(e,t,n,!0):!1;case"$regex":try{return fb(t).test(e)}catch{return!1}case"$regexi":try{return fb(t,!0).test(e)}catch{return!1}case"$type":return ZC(e)===t;default:return console.error("Unknown operator: "+r),!1}}function mb(r,e,t){if(!e.length)return!0;for(let n=0;n<e.length;n++)if(Yr(r,e[n],t))return!0;return!1}function YC(r,e,t){for(let n=0;n<e.length;n++)if(!Yr(r,e[n],t))return!1;return!0}var XC="Feature Evaluated",JC="Experiment Viewed";function QC(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 eA(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 qi(r){try{await r()}catch{}}function yb(r,e,t){if(r.user.trackedExperiments){let i=uc(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(qi(()=>i(e,t,r.user)))}if(r.user.trackingCallback){let i=r.user.trackingCallback;n.push(qi(()=>i(e,t)))}if(r.global.eventLogger){let i=r.global.eventLogger;n.push(qi(()=>i(JC,{experimentId:e.key,variationId:t.key,hashAttribute:t.hashAttribute,hashValue:t.hashValue},r.user)))}return n}function tA(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;qi(()=>n(e,t,r.user))}if(r.user.onFeatureUsage){let n=r.user.onFeatureUsage;qi(()=>n(e,t))}if(r.global.eventLogger){let n=r.global.eventLogger;qi(()=>n(XC,{feature:e,source:t.source,value:t.value,ruleId:t.source==="defaultValue"?"$default":t.ruleId||"",variationId:t.experimentResult?t.experimentResult.key:""},r.user))}}function lc(r,e){if(e.stack.evaluatedFeatures.has(r))return Xr(e,r,null,"cyclicPrerequisite");e.stack.evaluatedFeatures.add(r),e.stack.id=r;let t=QC(e);if(t.has(r))return Xr(e,r,t.get(r),"override");if(!e.global.features||!e.global.features[r])return Xr(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=lc(l.id,e);if(c.source==="cyclicPrerequisite")return Xr(e,r,null,"cyclicPrerequisite");let u={value:c.value};if(!Yr(u,l.condition||{})){if(l.gate)return Xr(e,r,null,"prerequisite");continue e}}if(s.filters&&xb(s.filters,e))continue;if("force"in s){if(s.condition&&!_b(s.condition,e)||!rA(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=>{!yb(e,l.experiment,l.result).length&&e.global.saveDeferredTrack&&e.global.saveDeferredTrack({experiment:l.experiment,result:l.result})}),Xr(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}=cc(o,r,e);if(e.global.onExperimentEval&&e.global.onExperimentEval(o,a),a.inExperiment&&!a.passthrough)return Xr(e,r,a.value,"experiment",s.id,o,a)}}return Xr(e,r,n.defaultValue===void 0?null:n.defaultValue,"defaultValue")}function cc(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=nA(r,t),r.urlPatterns&&!Kl(t.user.url||"",r.urlPatterns))return{result:$e(t,r,-1,!1,e)};let s=Zy(n,t.user.url||"",i);if(s!==null)return{result:$e(t,r,s,!1,e)};let o=eA(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}=oA({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(xb(r.filters,t))return{result:$e(t,r,-1,!1,e)}}else if(r.namespace&&!Wy(l,r.namespace))return{result:$e(t,r,-1,!1,e)};if(r.include&&!Gy(r.include))return{result:$e(t,r,-1,!1,e)};if(r.condition&&!_b(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=lc(y.id,t);if(x.source==="cyclicPrerequisite")return{result:$e(t,r,-1,!1,e)};let S={value:x.value};if(!Yr(S,y.condition||{}))return{result:$e(t,r,-1,!1,e)}}}if(r.groups&&!sA(r.groups,t))return{result:$e(t,r,-1,!1,e)}}if(r.url&&!iA(r.url,t))return{result:$e(t,r,-1,!1,e)};let h=yo(r.seed||n,l,r.hashVersion||1);if(h===null)return{result:$e(t,r,-1,!1,e)};if(!u){let m=r.ranges||qy(i,r.coverage===void 0?1:r.coverage,r.weights);c=zy(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}=lA(t,a,bo(l),{[th(r.key,r.bucketVersion)]:f.key});m&&(t.user.stickyBucketAssignmentDocs=t.user.stickyBucketAssignmentDocs||{},t.user.stickyBucketAssignmentDocs[y]=x,t.user.saveStickyBucketAssignmentDoc(x))}let v=yb(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 Xr(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"&&tA(r,e,a),a}function bb(r){return{...r.user.attributes,...r.user.attributeOverrides}}function _b(r,e){return Yr(bb(e),r,e.global.savedGroups||{})}function xb(r,e){return r.some(t=>{let{hashValue:n}=Yn(e,t.attribute);if(!n)return!0;let i=yo(t.seed,n,t.hashVersion||2);return i===null?!0:!t.ranges.some(s=>Gl(i,s))})}function rA(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=yo(e,a,o||1);return l===null?!1:i?Gl(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 nA(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=jp(r.url))),r}function Yn(r,e,t){let n=e||"id",i="",s=bb(r);return s[n]&&(i=s[n]),!i&&t&&(s[t]&&(i=s[t]),i&&(n=t)),{hashAttribute:n,hashValue:i}}function iA(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 sA(r,e){let t=e.global.groups||{};for(let n=0;n<r.length;n++)if(t[r[n]])return!0;return!1}function oA({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=th(e,t),l=aA(r,n,i);if(s>0)for(let p=0;p<s;p++){let h=th(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 th(r,e){return e=e||0,`${r}__${e}`}function rh(r,e){return`${r}||${e}`}function aA(r,e,t){if(!r.user.stickyBucketAssignmentDocs)return{};let{hashAttribute:n,hashValue:i}=Yn(r,e),s=rh(n,bo(i)),{hashAttribute:o,hashValue:a}=Yn(r,t),l=a?rh(o,bo(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 lA(r,e,t,n){let i=rh(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 cA(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 wb(r,e,t){let n=nh(r,t);return e.getAllAssignments(n)}function nh(r,e){let t={};return cA(r,e).forEach(i=>{let{hashValue:s}=Yn(r,i);t[i]=bo(s)}),t}async function Sb(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 kb(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 uc(r,e){return e.hashAttribute+e.hashValue+r.key+e.variationId}var Zi=typeof window<"u"&&typeof document<"u",uA=Ky(),So=class{constructor(e){if(e=e||{},this.version=uA,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),Zi&&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 Sb(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,Ql(this,e),this}async init(e){if(this._initialized=!0,e=e||{},e.cacheSettings&&Qy(e.cacheSettings),e.payload)return await this.setPayload(e.payload),Ql(this,e),{success:!0,source:"init"};{let{data:t,...n}=await this._refresh({...e,allowStale:!0});return Ql(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 kb(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 eb({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,tb(this),e.destroyAllStreams&&Kp(),this.logs=[],Zi&&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}=cc(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}=cc(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=Yl(e);if(l==="redirect"&&s.value.urlRedirect&&e.urlPatterns){let c=e.persistQueryString?Yy(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(Zi)Promise.all([...o?[Xl(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&&Yl(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 lc(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=>[uc(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(uc(e.experiment,e.result),e)}_getContextUrl(){return this._options.url||(Zi?window.location.href:"")}_isAutoExperimentBlockedByContext(e){let t=Yl(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}:Zi?{navigate:e=>{window.location.replace(e)},delay:100}:{navigate:null,delay:0}}_applyDOMChanges(e){if(!Zi)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(hb.declarative(n).revert)}),()=>{t.forEach(n=>n())}}async refreshStickyBuckets(e){if(this._options.stickyBucketService){let t=this._getEvalContext(),n=await wb(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=nh(n,t);return e.getAllAssignmentsSync(i)}inDevMode(){return!!this._options.enableDevMode}};var dA="https://experiment.syntrologie.com",ih=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 So({...e,apiHost:e.apiHost??dA,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 dc(r={}){return new ih(r)}var Eb={growthbook:r=>dc({...r,autoInit:!0})};function Cb(r,e){let t=Eb[r];if(!t)throw new Error(`Unknown experiment provider: ${r}. Supported: ${Object.keys(Eb).join(", ")}`);return t(e)}var pA=["cdn.syntrologie.com","localhost","127.0.0.1"];function hA(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):pA.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 sh=class{constructor(e){this.name="cdn";if(this.url=`${e.baseUrl}/${e.configId}.json`,this.integrity=e.integrity,!hA(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 fA(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 fA(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 Ab(r){return new sh(r)}var gA="syntro_exp",mA="syntro_var",oh=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(gA),o=i.get(mA);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:_l(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 Rb(r){return new oh(r)}var vA="https://cdn.syntrologie.com/configs",Tb={cdn:r=>{if(!r.configId)throw new Error("CDN fetcher requires 'configId' option");return Ab({baseUrl:r.baseUrl??vA,configId:r.configId,integrity:r.integrity})},experiments:r=>{if(!r.featureKey)throw new Error("Experiments fetcher requires 'featureKey' option");return Rb({featureKey:r.featureKey})}};function Ib(r,e={}){let t=Tb[r];if(!t)throw new Error(`Unknown config fetcher type: ${r}. Supported: ${Object.keys(Tb).join(", ")}`);return t(e)}var $b="syntro_session_metrics",ko=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($b);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($b,JSON.stringify(e))}catch(e){console.warn("[SessionMetricTracker] Failed to save to sessionStorage:",e)}}};function pc(r={}){return new ko(r)}var hc=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 fc=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 hc(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 yA=[()=>new fc];function Mb(){for(let r of yA){let e=r();if(e.detect())return e}return null}var ah="syntro_experiments";var gc={distinctId:"_syntro_distinct_id",telemetryHost:"_syntro_telemetry_host",telemetryKey:"_syntro_telemetry_key"};var _A=720*60*60,mc=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=`${ah}=; 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=`${ah}=${t}; max-age=${_A}; path=/; SameSite=Lax`;document.cookie=n}writeCartAttributes(){let{distinctId:e,telemetryHost:t,telemetryKey:n}=this.context;if(!e)return;let i={};i[gc.distinctId]=e,i[gc.telemetryHost]=t,i[gc.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 Ob(r){return r<768?"mobile":r<1024?"tablet":"desktop"}function ch(r,e){return r==="telegram"||r==="mcp-app"?"agent":e==="mobile"?"mobile":"desktop"}function xA(r="web",e="web"){let t=Date.now(),n=typeof window<"u"?window.innerWidth:0,i=typeof window<"u"?window.innerHeight:0,s=Ob(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:ch(r,s)}}}function lh(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(Pb(t,n))return}if(e.include){for(let n of e.include)if(Pb(t,n))return n;return}return t}function Pb(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 Eo=class{constructor(e){this.listeners=new Set;this.cleanupFns=[];if(this.telemetry=e.telemetry,this.routes=e.routes,this.navigation=e.navigation,this.context=xA(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=lh(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=lh(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=ch(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=Ob(e.width);if(s!==this.context.surface.device){let o=ch(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=lh(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 vc(r){return new Eo(r)}function uh(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 dh(r,e){let t=[];for(let n of r.conditions){let i=uh(n,e);if(t.push({condition:n,result:i}),!i)return{matched:!1,conditionResults:t}}return{matched:!0,conditionResults:t}}function Co(r,e){for(let t=0;t<r.rules.length;t++){let n=r.rules[t],{matched:i,conditionResults:s}=dh(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 Ao(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 Lb(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 ph(r,e,t={}){let n=Lb(e,t);switch(r.type){case"rules":return Co(r,n);case"score":return Ao(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 hh(r,e,t={}){let n=Lb(e,t);switch(r.type){case"rules":return Co(r,n);case"score":return Ao(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 yc(r){return{evaluate:(e,t)=>ph(e,t,r),evaluateSync:(e,t)=>hh(e,t,r)}}function bc(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 Gi=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 fh="cooldown:";function Nb(r){return{set(e,t){let n=fh+e,i=Date.now()+t;r.set(n,i)},isActive(e){return this.remaining(e)>0},remaining(e){let t=fh+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=fh+e;r.remove(t)}}}var Ro="dismissed:";function Fb(r,e){return{mark(t,n=!1){let i=Ro+t;(n?e:r).set(i,!0)},isDismissed(t){let n=Ro+t;return r.has(n)||e.has(n)},clear(t){let n=Ro+t;r.remove(n),e.remove(n)},clearAll(){for(let t of r.keys())t.startsWith(Ro)&&r.remove(t);for(let t of e.keys())t.startsWith(Ro)&&e.remove(t)}}}var gh="freq:";function Db(r){function e(t){let n=gh+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=gh+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=gh+t;r.remove(n)},hasReachedLimit(t,n){return this.count(t)>=n}}}var wA="syntro";function mh(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 To(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 Io=class{constructor(e={}){this.namespacedStorages=new Map;this.namespace=e.namespace??wA;let t=n=>typeof n=="object"&&n!==null&&typeof n.setItem=="function";typeof window<"u"?(this.session=t(window.sessionStorage)?mh(window.sessionStorage,this.namespace):To(this.namespace),this.user=t(window.localStorage)?mh(window.localStorage,this.namespace):To(this.namespace)):(this.session=To(this.namespace),this.user=To(this.namespace)),this.dismissals=Fb(this.session,this.user),this.cooldowns=Nb(this.user),this.frequency=Db(this.session)}ns(e){let t=`${this.namespace}:${e}`;if(!this.namespacedStorages.has(t)){let n=typeof window<"u"&&typeof sessionStorage<"u"?mh(sessionStorage,t):To(t);this.namespacedStorages.set(t,n)}return this.namespacedStorages.get(t)}};function _c(r={}){return new Io(r)}function Ki(r){return r.startsWith("inline:")?"inline":r.startsWith("adjacent:")?"adjacent":"static"}function $o(r){return r.startsWith("inline:")?r.slice(7):r.startsWith("adjacent:")?r.slice(9):null}var vh={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"}},Yi={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:[]},Hb={duration:200,easing:"cubic-bezier(0.16, 1, 0.3, 1)",fill:"forwards"};function xc(r,e,t){let n=vh[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 wc(r,e,t){let n=t.placement==="auto"?"bottom":t.placement,i=[Ea(t.offset?{mainAxis:t.offset.y,crossAxis:t.offset.x}:8)];return t.flip!==!1&&i.push(Aa()),t.shift!==!1&&i.push(Ca({padding:8})),r.style.position="absolute",r.style.zIndex="2147483646",ka(e,r,async()=>{let{x:o,y:a,strategy:l}=await Ra(e,r,{placement:n,middleware:i});Object.assign(r.style,{position:l,left:`${o}px`,top:`${a}px`})})}function Sc(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 kc(r,e){return e==="none"||Yi[e].length===0?null:r.animate(Yi[e],Hb)}function Ec(r,e){if(e==="none"||Yi[e].length===0)return Promise.resolve();let t=[...Yi[e]].reverse(),n=r.animate(t,Hb);return new Promise(i=>{n.onfinish=()=>i(),n.oncancel=()=>i()})}function Cc(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 Ac(r){switch(Ki(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 Bb(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 SA=0;function Rc(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-${++SA}`}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=Bb(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=Ki(b),$=C?.priority??0,T=C?.animation??i,P=C?.exclusive??!0,Y=o.get(b);if(Y&&P){if(Y.options.priority>$)throw new Error(`Slot ${b} is occupied by higher priority content (${Y.options.priority} > ${$})`);g(Y)}let F=Cc(b,_);F.style.zIndex=String(Ac(b));let L;if(A==="static")xc(F,b,C?.constraints),e.appendChild(F);else if(A==="inline"){let j=$o(b);if(!j)throw new Error(`Invalid inline slot: ${b}`);if(!n)throw new Error("Anchor resolver required for inline slots");let ee=n({selector:j,route:"**"});if(!ee)throw new Error(`Anchor not found for inline slot: ${j}`);L=Sc(F,ee)}else if(A==="adjacent"){let j=$o(b);if(!j)throw new Error(`Invalid adjacent slot: ${b}`);if(!n)throw new Error("Anchor resolver required for adjacent slots");let ee=n({selector:j,route:"**"});if(!ee)throw new Error(`Anchor not found for adjacent slot: ${j}`);e.appendChild(F),L=wc(F,ee,C?.position??{placement:"bottom"})}let G=f(F,w,_);kc(F,T);let K={id:_,slot:b,content:w,options:{priority:$,exclusive:P,animation:T,position:C?.position??{placement:"auto"},constraints:C?.constraints??{},adaptiveId:C?.adaptiveId,autoUnmountOnRouteChange:C?.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:C?.adaptiveId}),p(b),{id:_,update(j){let ee=o.get(b);if(!ee||ee.id!==_)throw new Error("Mount no longer active");let D=h.get(_);if(D){if(j.type==="widget"){D.update(j.config),ee.content=j;return}D.unmount(),h.delete(_)}ee.container.innerHTML="";let ie=f(ee.container,j,_);if(ee.content=j,ie){let J=ee.cleanup;ee.cleanup=()=>{J?.(),ie()}}},setOptions(j){let ee=o.get(b);if(!ee||ee.id!==_)throw new Error("Mount no longer active");j.priority!==void 0&&(ee.options.priority=j.priority),j.animation!==void 0&&(ee.options.animation=j.animation),j.constraints&&A==="static"&&(j.constraints.maxWidth&&(ee.container.style.maxWidth=j.constraints.maxWidth),j.constraints.maxHeight&&(ee.container.style.maxHeight=j.constraints.maxHeight),j.constraints.minWidth&&(ee.container.style.minWidth=j.constraints.minWidth),j.constraints.minHeight&&(ee.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 Ec(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 Mo=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()}},Tc=new Mo;var bh="2.0.0";function kA(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(yh(n,i))return!1}if(e.include&&e.include.length>0){for(let i of e.include)if(yh(n,i))return!0;return!1}return!0}function yh(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 Vb(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 yh(t,s)})}function Ic(r={}){let{telemetry:e,sessionMetrics:t,routes:n,mode:i="production",namespace:s}=r,o=r.widgets??Tc,a=r.executors??ir,l=r.apps??Os,c=new Gi,u=vc({telemetry:e,routes:n,navigation:c,initialSurfaceType:r.initialSurfaceType,initialSurfaceHost:r.initialSurfaceHost}),p=r.events??Hi(),h=_c({namespace:s}),f=bc({eventBus:p,stateStore:h}),v=yc({state:h,events:p,sessionMetrics:t,accumulator:f}),g=Ey(),m=Nl(),y=P=>Vb(P)?m.resolve(P.selector):null,x=async(P,Y)=>{if(!Vb(P))return null;try{return await m.waitFor(P.selector,Y)}catch{return null}},S=Rc({overlayRoot:g,eventBus:p,anchorResolver:y,widgetRegistry:o}),b=Pl({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"),C=0,P.set("time_on_page",0),P.set("scroll_depth",0))}catch{}})}let C=0,_,A;if(t){let P=t;_=setInterval(()=>{C++},1e3),A=setInterval(()=>{P.set("time_on_page",C)},5e3)}let $;if(t&&p){let P=t;$=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 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:bh,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(kA(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?.(),$?.(),_&&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 Ub(r){return r==="granted"?"granted":r==="denied"?"denied":"pending"}function _h(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 Po=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(_h(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=_h(a);l!==null&&e(Ub(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=_h(e[t]);if(n!==null)return Ub(n)}return"pending"}};var Oo=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 jb="visitorConsentCollected",Lo=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(jb,n)}),()=>{n&&document.removeEventListener(jb,n)}}};var No=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 Fo=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 Xi=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 EA(){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e="";for(let t=0;t<16;t++)e+=r[Math.floor(Math.random()*r.length)];return e}var xh=class{constructor(){this.sessionId=EA(),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 $c(){return new xh}var E=typeof window<"u"?window:void 0,et=typeof globalThis<"u"?globalThis:E;typeof self>"u"&&(et.self=et),typeof File>"u"&&(et.File=function(){});var H_=Array.prototype,Wb=H_.forEach,zb=H_.indexOf,wt=et?.navigator,B=et?.document,Qe=et?.location,Hh=et?.fetch,Bh=et!=null&&et.XMLHttpRequest&&"withCredentials"in new et.XMLHttpRequest?et.XMLHttpRequest:void 0,qb=et?.AbortController,vt=wt?.userAgent,te=E??{},Rr={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 rs(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 CA=["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 CA.concat(e).some((n=>{var i=n.toLowerCase();return t.indexOf(i)!==-1}))},AA=["$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 au=function(r){return r.trim()},Vh=function(r){return r.replace(/^\$/,"")},RA=Array.isArray,V_=Object.prototype,U_=V_.hasOwnProperty,lu=V_.toString,xe=RA||function(r){return lu.call(r)==="[object Array]"},nn=r=>typeof r=="function",je=r=>r===Object(r)&&!xe(r),ns=r=>{if(je(r)){for(var e in r)if(U_.call(r,e))return!1;return!0}return!1},V=r=>r===void 0,We=r=>lu.call(r)=="[object String]",Uh=r=>We(r)&&r.trim().length===0,Wt=r=>r===null,ge=r=>V(r)||Wt(r),Or=r=>lu.call(r)=="[object Number]"&&r==r,es=r=>Or(r)&&r>0,Pr=r=>lu.call(r)==="[object Boolean]",TA=r=>r instanceof FormData,IA=r=>fe(AA,r);function jh(r){return r===null||typeof r!="object"}function Hc(r,e){return Object.prototype.toString.call(r)==="[object "+e+"]"}function j_(r){return!V(Event)&&(function(e,t){try{return e instanceof t}catch{return!1}})(r,Event)}var $A=[!0,"true",1,"1","yes"],wh=r=>fe($A,r),MA=[!1,"false",0,"0","no"];function lr(r,e,t,n,i){return e>t&&(n.warn("min cannot be greater than max."),e=t),Or(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),lr(i||t,e,t,n))}var Wh=class{constructor(e){this.t={},this.i=e.i,this.o=lr(e.bucketSize,0,100,e.h),this.m=lr(e.refillRate,0,this.o,e.h),this.$=lr(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",Bc="iOS",Mr="Android",ia="Tablet",W_=Mr+" "+ia,z_="iPad",q_="Apple",Z_=q_+" Watch",sa="Safari",as="BlackBerry",G_="Samsung",K_=G_+"Browser",Y_=G_+" Internet",ei="Chrome",PA=ei+" OS",X_=ei+" "+Bc,Qf="Internet Explorer",J_=Qf+" "+$t,eg="Opera",OA=eg+" Mini",tg="Edge",Q_="Microsoft "+tg,ss="Firefox",e0=ss+" "+Bc,oa="Nintendo",aa="PlayStation",os="Xbox",t0=Mr+" "+$t,r0=$t+" "+sa,Zo="Windows",zh=Zo+" Phone",Kb="Nokia",qh="Ouya",n0="Generic",LA=n0+" "+$t.toLowerCase(),i0=n0+" "+ia.toLowerCase(),Zh="Konqueror",lt="(\\d+(\\.\\d+)?)",Sh=new RegExp("Version/"+lt),NA=new RegExp(os,"i"),FA=new RegExp(aa+" \\w+","i"),DA=new RegExp(oa+" \\w+","i"),rg=new RegExp(as+"|PlayBook|BB10","i"),HA={"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"},Mc,Yb,kh,BA=(r,e)=>e&&fe(e,q_)||(function(t){return fe(t,sa)&&!fe(t,ei)&&!fe(t,Mr)})(r),s0=function(r,e){return e=e||"",fe(r," OPR/")&&fe(r,"Mini")?OA:fe(r," OPR/")?eg:rg.test(r)?as:fe(r,"IE"+$t)||fe(r,"WPDesktop")?J_:fe(r,K_)?Y_:fe(r,tg)||fe(r,"Edg/")?Q_:fe(r,"FBIOS")?"Facebook "+$t:fe(r,"UCWEB")||fe(r,"UCBrowser")?"UC Browser":fe(r,"CriOS")?X_:fe(r,"CrMo")||fe(r,ei)?ei:fe(r,Mr)&&fe(r,sa)?t0:fe(r,"FxiOS")?e0:fe(r.toLowerCase(),Zh.toLowerCase())?Zh:BA(r,e)?fe(r,$t)?r0:sa:fe(r,ss)?ss:fe(r,"MSIE")||fe(r,"Trident/")?Qf:fe(r,"Gecko")?ss:""},VA={[J_]:[new RegExp("rv:"+lt)],[Q_]:[new RegExp(tg+"?\\/"+lt)],[ei]:[new RegExp("("+ei+"|CrMo)\\/"+lt)],[X_]:[new RegExp("CriOS\\/"+lt)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+lt)],[sa]:[Sh],[r0]:[Sh],[eg]:[new RegExp("(Opera|OPR)\\/"+lt)],[ss]:[new RegExp(ss+"\\/"+lt)],[e0]:[new RegExp("FxiOS\\/"+lt)],[Zh]:[new RegExp("Konqueror[:/]?"+lt,"i")],[as]:[new RegExp(as+" "+lt),Sh],[t0]:[new RegExp("android\\s"+lt,"i")],[Y_]:[new RegExp(K_+"\\/"+lt)],[Qf]:[new RegExp("(rv:|MSIE )"+lt)],Mozilla:[new RegExp("rv:"+lt)]},UA=function(r,e){var t=s0(r,e),n=VA[t];if(V(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(os+"; "+os+" (.*?)[);]","i"),r=>[os,r&&r[1]||""]],[new RegExp(oa,"i"),[oa,""]],[new RegExp(aa,"i"),[aa,""]],[rg,[as,""]],[new RegExp(Zo,"i"),(r,e)=>{if(/Phone/.test(e)||/WPDesktop/.test(e))return[zh,""];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=HA[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[Bc,e.join(".")]}return[Bc,""]}],[/(watch.*\/(\d+\.\d+\.\d+)|watch os,(\d+\.\d+),)/i,r=>{var e="";return r&&r.length>=3&&(e=V(r[2])?r[3]:r[2]),["watchOS",e]}],[new RegExp("("+Mr+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Mr+")","i"),r=>{if(r&&r[2]){var e=[r[2],r[3],r[4]||"0"];return[Mr,e.join(".")]}return[Mr,""]}],[/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/,[PA,""]],[/Linux|debian/i,["Linux",""]]],Jb=function(r){return DA.test(r)?oa:FA.test(r)?aa:NA.test(r)?os:new RegExp(qh,"i").test(r)?qh:new RegExp("("+zh+"|WPDesktop)","i").test(r)?zh:/iPad/.test(r)?z_:/iPod/.test(r)?"iPod Touch":/iPhone/.test(r)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(r)?Z_:rg.test(r)?as:/(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)?Mr:W_:new RegExp("(pda|"+$t+")","i").test(r)?LA:new RegExp(ia,"i").test(r)&&!new RegExp(ia+" pc","i").test(r)?i0:""},jA=r=>r instanceof Error;function WA(r){var e=globalThis._posthogChunkIds;if(e){var t=Object.keys(e);return kh&&t.length===Yb||(Yb=t.length,kh=t.reduce(((n,i)=>{Mc||(Mc={});var s=Mc[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,Mc[i]=[c,u];break}}return n}),{})),kh}}var Gh=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 rs((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 rs((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:WA(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)})}},ls="?";function Kh(r,e,t,n,i){var s={platform:r,filename:e,function:t==="<anonymous>"?ls:t,in_app:!0};return V(n)||(s.lineno=n),V(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]:ls,t?"safari-extension:"+e:"safari-web-extension:"+e]:[r,e]},zA=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,qA=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,ZA=/\((\S*)(?::(\d+))(?::(\d+))\)/,GA=(r,e)=>{var t=zA.exec(r);if(t){var[,n,i,s]=t;return Kh(e,n,ls,+i,+s)}var o=qA.exec(r);if(o){if(o[2]&&o[2].indexOf("eval")===0){var a=ZA.exec(o[2]);a&&(o[2]=a[1],o[3]=a[2],o[4]=a[3])}var[l,c]=o0(o[1]||ls,o[2]);return Kh(e,c,l,o[3]?+o[3]:void 0,o[4]?+o[4]:void 0)}},KA=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,YA=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,XA=(r,e)=>{var t=KA.exec(r);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){var n=YA.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]||ls;return[s,i]=o0(s,i),Kh(e,i,s,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},Qb=/\(error: (.*)\)/,e_=50;function JA(){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||ls});var m}))})(o)}})("web:javascript",GA,XA)}var Yh=class{match(e){return this.isDOMException(e)||this.isDOMError(e)}coerce(e,t){var n=We(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 Hc(e,"DOMException")}isDOMError(e){return Hc(e,"DOMError")}},Xh=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}},Jh=class{constructor(){}match(e){return Hc(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}}},QA=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,Qh=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(QA);return i&&(t=i[1],n=i[2]),[t,n]}},e2=["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 ef=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 j_(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 We(e)&&!Uh(e)&&e2.indexOf(e)>=0}getErrorPropertyFromObject(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=e[t];if(jA(n))return n}}getObjectClassName(e){try{var t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{return}}},tf=class{match(e){return j_(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}}},rf=class{match(e){return jh(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}}},nf=class{match(e){return Hc(e,"PromiseRejectionEvent")}coerce(e,t){var n,i=this.getUnhandledRejectionReason(e);return jh(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(jh(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&&(Rr.DEBUG||te.POSTHOG_DEBUG||t)&&!V(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},U=l0("[PostHog.js]"),Le=U.createLogger,t2=Le("[ExternalScriptsLoader]"),t_=(r,e,t)=>{if(r.config.disable_external_dependency_loading)return t2.warn(e+" was requested but loading of external scripts is disabled."),t("Loading of external scripts is disabled");var n=B?.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(!B)return t("document not found");var l=B.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")B.head.appendChild(l);else{var c,u=B.querySelectorAll("body > script");u.length>0?(c=u[0].parentNode)==null||c.insertBefore(l,u[0]):B.body.appendChild(l)}};B!=null&&B.body?a():B?.addEventListener("DOMContentLoaded",a)};te.__PosthogExtensions__=te.__PosthogExtensions__||{},te.__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)},te.__PosthogExtensions__.loadSiteApp=(r,e,t)=>{var n=r.requestRouter.endpointFor("api",e);t_(r,n,t)};var Vc={};function sn(r,e,t){if(xe(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)===Vc)return}}}function Re(r,e,t){if(!ge(r)){if(xe(r))return sn(r,e,t);if(TA(r)){for(var n of r.entries())if(e.call(t,n[1],n[0])===Vc)return}else for(var i in r)if(U_.call(r,i)&&e.call(t,r[i],i)===Vc)return}}var Ne=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 sn(t,(function(i){for(var s in i)i[s]!==void 0&&(r[s]=i[s])})),r},us=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 sn(t,(function(i){sn(i,(function(s){r.push(s)}))})),r};function Fc(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}},r2=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)}}},ng=function(r){var e={};return Re(r,(function(t,n){(We(t)&&t.length>0||Or(t))&&(e[n]=t)})),e};function n2(r,e){return t=r,n=s=>We(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=[],sn(o,(c=>{l.push(s(c))}))):(l={},Re(o,((c,u)=>{i.has(c)||(l[u]=s(c,u))}))),l);var l})(t);var t,n,i}var i2=["herokuapp.com","vercel.app","netlify.app"];function s2(r){var e=r?.hostname;if(!We(e))return!1;var t=e.split(".").slice(-2).join(".");for(var n of i2)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 Ve(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",Go="__alias",Ko="__timers",n_="$autocapture_disabled_server_side",sf="$heatmaps_enabled_server_side",i_="$exception_capture_enabled_server_side",of="$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",Eh="$session_recording_remote_config",Uc="$sesid",p0="$session_is_sampled",is="$enabled_feature_flags",Yo="$early_access_features",af="$feature_flag_details",Xo="$stored_person_properties",Qn="$stored_group_properties",lf="$surveys",jc="$flag_call_reported",Tr="$user_state",cf="$client_session_props",uf="$capture_rate_limit",df="$initial_campaign_params",pf="$initial_referrer_info",Wc="$initial_person_info",zc="$epp",h0="__POSTHOG_TOOLBAR__",Do="$posthog_cookieless",o2=[u0,Go,"__cmpns",Ko,"$session_recording_enabled_server_side",sf,Uc,is,of,Tr,Yo,af,Qn,Xo,lf,jc,cf,uf,df,pf,zc,Wc,"$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 cu(r){return!!r&&r.nodeType===1}function on(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 ig(r){return r?au(r).split(/\s+/):[]}function u_(r){var e=E?.location.href;return!!(e&&r&&r.some((t=>e.match(t))))}function qc(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 ig(e)}function m0(r){return ge(r)?null:au(r).split(/(\s+)/).filter((e=>la(e))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function ua(r){var e="";return hf(r)&&!x0(r)&&r.childNodes&&r.childNodes.length&&Re(r.childNodes,(function(t){var n;f0(t)&&t.textContent&&(e+=(n=m0(t.textContent))!==null&&n!==void 0?n:"")})),au(e)}function v0(r){return V(r.target)?r.srcElement||null:(e=r.target)!=null&&e.shadowRoot?r.composedPath()[0]||null:r.target||null;var e}var sg=["a","button","form","input","select","textarea","label"];function y0(r,e){if(V(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||!cu(e))&&e}var a2=["next","previous","prev",">","<"],d_=10,p_=[".ph-no-rageclick",".ph-no-capture"];function l2(r,e){if(!E||og(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||V(o))return!1;var l;if(o===!0)l=a2;else{if(!xe(o))return!1;if(o.length>d_)return U.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:ua(o).toLowerCase(),ariaLabel:((a=o.getAttribute("aria-label"))==null?void 0:a.toLowerCase().trim())||""}})))&&!y0(s,t)}var og=r=>!r||on(r,"html")||!cu(r),_0=(r,e)=>{if(!E||og(r))return{parentIsUsefulElement:!1,targetElementList:[]};for(var t=!1,n=[r],i=r;i.parentNode&&!on(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||sg.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 c2(r,e,t,n,i){var s,o,a,l;if(t===void 0&&(t=void 0),!E||og(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(V(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&&(sg.indexOf(f)>-1||r.getAttribute("contenteditable")==="true")}}function hf(r){for(var e=r;e.parentNode&&!on(e,"body");e=e.parentNode){var t=qc(e);if(fe(t,"ph-sensitive")||fe(t,"ph-no-capture"))return!1}if(fe(qc(r),"ph-include"))return!0;var n=r.type||"";if(We(n))switch(n.toLowerCase()){case"hidden":case"password":return!1}var i=r.name||r.id||"";return!(We(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!!(on(r,"input")&&!["button","checkbox","submit","reset"].includes(r.type)||on(r,"select")||on(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})",u2=new RegExp("^(?:"+w0+")$"),d2=new RegExp(w0),S0="\\d{3}-?\\d{2}-?\\d{4}",p2=new RegExp("^("+S0+")$"),h2=new RegExp("("+S0+")");function la(r,e){return e===void 0&&(e=!0),!(ge(r)||We(r)&&(r=au(r),(e?u2:d2).test((r||"").replace(/[- ]/g,""))||(e?p2:h2).test(r)))}function k0(r){var e=ua(r);return la(e=(e+" "+E0(r)).trim())?e:""}function E0(r){var e="";return r&&r.childNodes&&r.childNodes.length&&Re(r.childNodes,(function(t){var n;if(t&&((n=t.tagName)==null?void 0:n.toLowerCase())==="span")try{var i=ua(t);e=(e+" "+i).trim(),t.childNodes&&t.childNodes.length&&(e=(e+" "+E0(t)).trim())}catch(s){U.error("[AutoCapture]",s)}})),e}function f2(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 Fc(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+=Fc(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:g2(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return Fc(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 g2(r){var e=r.attr__class;return e?xe(e)?e:ig(e):void 0}var Zc=class{constructor(e){this.disabled=e===!1;var t=je(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}},Gc=r=>{var e=B?.createElement("a");return V(e)?null:(e.href=r,e)},m2=function(r,e){var t,n;e===void 0&&(e="&");var i=[];return Re(r,(function(s,o){V(s)||V(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," ")},da=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},Yc=function(r,e){var t=r.match(new RegExp(e+"=([^&]*)"));return t?t[1]:null},Ch="$copy_autocapture",f_=Le("[AutoCapture]");function Ah(r,e){return e.length>r?e.slice(0,r)+"...":e}function v2(r){if(r.previousElementSibling)return r.previousElementSibling;var e=r;do e=e.previousSibling;while(e&&!cu(e));return e}function y2(r,e,t,n){var i=r.tagName.toLowerCase(),s={tag_name:i};sg.indexOf(i)>-1&&!t&&(i.toLowerCase()==="a"||i.toLowerCase()==="button"?s.$el_text=Ah(1024,k0(r)):s.$el_text=Ah(1024,ua(r)));var o=qc(r);o.length>0&&(s.classes=o.filter((function(u){return u!==""}))),Re(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&&la(u.value)&&(p=u.name,!We(p)||p.substring(0,10)!=="_ngcontent"&&p.substring(0,7)!=="_nghost")){var h=u.value;u.name==="class"&&(h=ig(h).join(" ")),s["attr__"+u.name]=Ah(1024,h)}}));for(var a=1,l=1,c=r;c=v2(c);)a++,c.tagName===r.tagName&&l++;return s.nth_child=a,s.nth_of_type=l,s}function b2(r,e){for(var t,n,{e:i,maskAllElementAttributes:s,maskAllText:o,elementAttributeIgnoreList:a,elementsChainAsString:l}=e,c=[r],u=r;u.parentNode&&!on(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(Re(c,(b=>{var w=hf(b);b.tagName.toLowerCase()==="a"&&(v=b.getAttribute("href"),v=w&&v&&la(v)&&v),fe(qc(b),"ph-no-capture")&&(g=!0),h.push(y2(b,s,o,a));var C=(function(_){if(!hf(_))return{};var A={};return Re(_.attributes,(function($){if($.name&&$.name.indexOf("data-ph-capture-attribute")===0){var T=$.name.replace("data-ph-capture-attribute-",""),P=$.value;T&&P&&la(P)&&(A[T]=P)}})),A})(b);Ne(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=ua(r)),v){var m,y;h[0].attr__href=v;var x=(m=Gc(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:Ne({$event_type:i.type,$ce_version:1},l?{}:{$elements:h},{$elements_chain:f2(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 ff=class{constructor(e){this.P=!1,this.T=null,this.I=!1,this.instance=e,this.rageclicks=new Zc(e.config.rageclick),this.C=null}get R(){var e,t,n=je(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&&B){var e=n=>{n=n||E?.event;try{this.O(n)}catch(i){f_.error("Failed to capture event",i)}};if(Ve(B,"submit",e,{capture:!0}),Ve(B,"change",e,{capture:!0}),Ve(B,"click",e,{capture:!0}),this.R.capture_copied_text){var t=n=>{n=n||E?.event,this.O(n,Ch)};Ve(B,"copy",t,{capture:!0}),Ve(B,"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=B?.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())&&l2(i,this.instance.config.rageclick)&&this.O(e,"$rageclick");var s=t===Ch;if(i&&c2(i,e,this.R,s,s?["copy","cut"]:void 0)){var{props:o,explicitNoCapture:a}=b2(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===Ch){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 nn(B?.querySelectorAll)}};Math.trunc||(Math.trunc=function(r){return r<0?Math.ceil(r):Math.floor(r)}),Number.isInteger||(Number.isInteger=function(r){return Or(r)&&isFinite(r)&&Math.floor(r)===r});var g_="0123456789abcdef",gf=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}},mf=class{constructor(){this.A=0,this.j=0,this.D=new vf}generate(){var e=this.generateOrAbort();if(V(e)){this.A=0;var t=this.generateOrAbort();if(V(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 gf.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&&!V(E.crypto)&&crypto.getRandomValues&&(C0=r=>crypto.getRandomValues(r));var vf=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++]}},rn=()=>_2().toString(),_2=()=>(m_||(m_=new mf)).generate(),Ho="",x2=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;function w2(r,e){if(e){var t=(function(i,s){if(s===void 0&&(s=B),Ho)return Ho;if(!s||["localhost","127.0.0.1"].includes(i))return"";for(var o=i.split("."),a=Math.min(o.length,8),l="dmn_chk_"+rn();!Ho&&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",Ho=c)}return Ho})(r);if(!t){var n=(i=>{var s=i.match(x2);return s?s[0]:""})(r);n!==t&&U.info("Warning: cookie subdomain discovery mismatch",n,t),t=n}return t?"; domain=."+t:""}return""}var ar={H:()=>!!B,B:function(r){U.error("cookieStore error: "+r)},q:function(r){if(B){try{for(var e=r+"=",t=B.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(ar.q(r))||{}}catch{}return e},G:function(r,e,t,n,i){if(B)try{var s="",o="",a=w2(B.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),B.cookie=c,c}catch{return}},V:function(r,e){if(B!=null&&B.cookie)try{ar.G(r,"",-1,e)}catch{return}}},Rh=null,Me={H:function(){if(!Wt(Rh))return Rh;var r=!0;if(V(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"),Rh=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)}}},S2=["$device_id","distinct_id",Uc,p0,zc,Wc],Pc={},k2={H:function(){return!0},B:function(r){U.error("memoryStorage error: "+r)},q:function(r){return Pc[r]||null},W:function(r){return Pc[r]||null},G:function(r,e){Pc[r]=e},V:function(r){delete Pc[r]}},Xn=null,Je={H:function(){if(!Wt(Xn))return Xn;if(Xn=!0,V(E))Xn=!1;else try{var r="__support__";Je.G(r,"xyz"),Je.q(r)!=='"xyz"'&&(Xn=!1),Je.V(r)}catch{Xn=!1}return Xn},B:function(r){U.error("sessionStorage error: ",r)},q:function(r){try{return E?.sessionStorage.getItem(r)}catch(e){Je.B(e)}return null},W:function(r){try{return JSON.parse(Je.q(r))||null}catch{}return null},G:function(r,e){try{E?.sessionStorage.setItem(r,JSON.stringify(e))}catch(t){Je.B(t)}},V:function(r){try{E?.sessionStorage.removeItem(r)}catch(e){Je.B(e)}}},Ir=(function(r){return r[r.PENDING=-1]="PENDING",r[r.DENIED=0]="DENIED",r[r.GRANTED=1]="GRANTED",r})({}),yf=class{constructor(e){this._instance=e}get R(){return this._instance.config}get consent(){return this.J()?Ir.DENIED:this.K}isOptedOut(){return this.R.cookieless_mode==="always"||this.consent===Ir.DENIED||this.consent===Ir.PENDING&&(this.R.opt_out_capturing_by_default||this.R.cookieless_mode==="on_reject")}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===Ir.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 wh(e)?Ir.GRANTED:fe(MA,e)?Ir.DENIED:Ir.PENDING}get Y(){if(!this.Z){var e=this.R.opt_out_capturing_persistence_type;this.Z=e==="localStorage"?Me:ar;var t=e==="localStorage"?ar:Me;t.q(this.X)&&(this.Z.q(this.X)||this.optInOut(wh(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,te.doNotTrack],(e=>wh(e)))}},Oc=Le("[Dead Clicks]"),E2=()=>!0,C2=r=>{var e,t=!((e=r.instance.persistence)==null||!e.get_property(d0)),n=r.instance.config.capture_dead_clicks;return Pr(n)?n:!!je(n)||t},Xc=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=te.__PosthogExtensions__)!=null&&t.initDeadClicksAutocapture&&e(),(n=te.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this.instance,"dead-clicks-autocapture",(i=>{i?Oc.error("failed to load script",i):e()}))}et(){var e;if(B){if(!this.tt&&(e=te.__PosthogExtensions__)!=null&&e.initDeadClicksAutocapture){var t=je(this.instance.config.capture_dead_clicks)?this.instance.config.capture_dead_clicks:{};t.__onCapture=this.onCapture,this.tt=te.__PosthogExtensions__.initDeadClicksAutocapture(this.instance,t),this.tt.start(B),Oc.info("starting...")}}else Oc.error("`document` not found. Cannot start.")}stop(){this.tt&&(this.tt.stop(),this.tt=void 0,Oc.info("stopping..."))}},Bo=Le("[ExceptionAutocapture]"),bf=class{constructor(e){var t,n,i;this.rt=()=>{var s;if(E&&this.isEnabled&&(s=te.__PosthogExtensions__)!=null&&s.errorWrappingFunctions){var o=te.__PosthogExtensions__.errorWrappingFunctions.wrapOnError,a=te.__PosthogExtensions__.errorWrappingFunctions.wrapUnhandledRejection,l=te.__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){Bo.error("failed to start",c),this.ut()}}},this._instance=e,this.ht=!((t=this._instance.persistence)==null||!t.props[i_]),this.dt=new Wh({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:Bo}),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 je(e)?t=W({},t,e):(V(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?(Bo.info("enabled"),this.ut(),this.it(this.rt)):this.ut()}it(e){var t,n;(t=te.__PosthogExtensions__)!=null&&t.errorWrappingFunctions&&e(),(n=te.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"exception-autocapture",(i=>{if(i)return Bo.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)?Bo.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 nn(i)&&(i.prototype=i.prototype||{},Object.defineProperties(i,{__posthog_wrapped__:{enumerable:!1,value:!0}})),r[e]=i,()=>{r[e]=n}}catch{return()=>{}}}var _f=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__||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){U.error("Error capturing "+e+" pageview",i)}}bt(){if(!this.ft){var e=()=>{this._t("popstate")};Ve(E,"popstate",e),this.ft=()=>{E&&E.removeEventListener("popstate",e)}}}},Th=Le("[SegmentIntegration]");function A2(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()||rn();n.config.get_device_id=c,l.id()&&(n.register({distinct_id:l.id(),$device_id:c()}),n.persistence.set_property(Tr,"identified")),i()},a=s.user();"then"in a&&nn(a.then)?a.then(o):o(a)})(r,(()=>{t.register((n=>{Promise&&Promise.resolve||Th.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()||(Th.info("No userId set, resetting PostHog"),n.reset()),s.event.userId&&s.event.userId!==n.get_distinct_id()&&(Th.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 xf=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}))}}},R2=E!=null&&E.location?Yc(E.location.hash,"__posthog")||Yc(location.hash,"state"):null,y_="_postHogToolbarParams",b_=Le("[Toolbar]"),tn=(function(r){return r[r.UNINITIALIZED=0]="UNINITIALIZED",r[r.LOADING=1]="LOADING",r[r.LOADED=2]="LOADED",r})(tn||{}),wf=class{constructor(e){this.instance=e}yt(e){te.ph_toolbar_state=e}wt(){var e;return(e=te.ph_toolbar_state)!==null&&e!==void 0?e:tn.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||!B)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=R2||Yc(e.hash,"__posthog")||Yc(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=te.ph_load_toolbar||te.ph_load_editor;!ge(t)&&nn(t)?t(e,this.instance):b_.warn("No toolbar load function found")}loadToolbar(e){var t=!(B==null||!B.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()===tn.LOADED)this.xt(i);else if(this.wt()===tn.UNINITIALIZED){var s;this.yt(tn.LOADING),(s=te.__PosthogExtensions__)==null||s.loadExternalDependency==null||s.loadExternalDependency(this.instance,"toolbar",(o=>{if(o)return b_.error("[Toolbar] Failed to load",o),void this.yt(tn.UNINITIALIZED);this.yt(tn.LOADED),this.xt(i)})),Ve(E,"turbolinks:load",(()=>{this.yt(tn.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)}},T2=Le("[TracingHeaders]"),Sf=class{constructor(e){this.$t=void 0,this.St=void 0,this.rt=()=>{var t,n;V(this.$t)&&((t=te.__PosthogExtensions__)==null||(t=t.tracingHeadersPatchFns)==null||t._patchXHR(this._instance.config.__add_tracing_headers||[],this._instance.get_distinct_id(),this._instance.sessionManager)),V(this.St)&&((n=te.__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=te.__PosthogExtensions__)!=null&&t.tracingHeadersPatchFns&&e(),(n=te.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,"tracing-headers",(i=>{if(i)return T2.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)}},Lc="https?://(.*)",ds=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],I2=us(["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid"],ds),pa="<masked>",$2=["li_fat_id"];function T0(r,e,t){if(!B)return{};var n,i=e?us([],ds,t||[]):[],s=I0(da(B.URL,i,pa),r),o=(n={},Re($2,(function(a){var l=ar.q(a);n[a]=l||null})),n);return Ne(o,s)}function I0(r,e){var t=I2.concat(e||[]),n={};return Re(t,(function(i){var s=Kc(r,i);n[i]=s||null})),n}function $0(r){var e=(function(s){return s?s.search(Lc+"google.([^/?]*)")===0?"google":s.search(Lc+"bing.com")===0?"bing":s.search(Lc+"yahoo.com")===0?"yahoo":s.search(Lc+"duckduckgo.com")===0?"duckduckgo":null:null})(r),t=e!="yahoo"?"q":"p",n={};if(!Wt(e)){n.$search_engine=e;var i=B?Kc(B.referrer,t):"";i.length&&(n.ph_keyword=i)}return n}function __(){return navigator.language||navigator.userLanguage}function M0(){return B?.referrer||"$direct"}function P0(r,e){var t=r?us([],ds,e||[]):[],n=Qe?.href.substring(0,1e3);return{r:M0().substring(0,1e3),u:n?da(n,t,pa):void 0}}function O0(r){var e,{r:t,u:n}=r,i={$referrer:t,$referring_domain:t==null?void 0:t=="$direct"?"$direct":(e=Gc(t))==null?void 0:e.host};if(n){i.$current_url=n;var s=Gc(n);i.$host=s?.host,i.$pathname=s?.pathname;var o=I0(n);Ne(i,o)}if(t){var a=$0(t);Ne(i,a)}return i}function L0(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}function M2(){try{return new Date().getTimezoneOffset()}catch{return}}function P2(r,e){if(!vt)return{};var t,n,i,s=r?us([],ds,e||[]):[],[o,a]=(function(l){for(var c=0;c<Xb.length;c++){var[u,p]=Xb[c],h=u.exec(l),f=h&&(nn(p)?p(h,l):p);if(f)return f}return["",""]})(vt);return Ne(ng({$os:o,$os_version:a,$browser:s0(vt,navigator.vendor),$device:Jb(vt),$device_type:(n=vt,i=Jb(n),i===z_||i===W_||i==="Kobo"||i==="Kindle Fire"||i===i0?ia:i===oa||i===os||i===aa||i===qh?"Console":i===Z_?"Wearable":i?$t:"Desktop"),$timezone:L0(),$timezone_offset:M2()}),{$current_url:da(Qe?.href,s,pa),$host:Qe?.host,$pathname:Qe?.pathname,$raw_user_agent:vt.length>1e3?vt.substring(0,997)+"...":vt,$browser_version:UA(vt,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:Rr.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3})}var Jr=Le("[Web Vitals]"),x_=9e5,kf=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(V(s))Jr.error("Could not read session ID. Dropping metrics!");else{this.N=this.N||{url:void 0,metrics:[],firstMetricTimestamp:void 0};var o=this.Ct();V(o)||(ge(n?.name)||ge(n?.value)?Jr.error("Invalid metric received",n):this.Rt&&n.value>=this.Rt?Jr.error("Ignoring metric with value >= "+this.Rt,n):(this.N.url!==o&&(this.Pt(),this.Tt=setTimeout(this.Pt,this.flushToCaptureTimeoutMs)),V(this.N.url)&&(this.N.url=o),this.N.firstMetricTimestamp=V(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=te.__PosthogExtensions__;V(a)||V(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):Jr.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=je(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[l_])||["CLS","FCP","INP","LCP"]:n}get flushToCaptureTimeoutMs(){return(je(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals_delayed_flush_ms:void 0)||5e3}get useAttribution(){var e=je(this._instance.config.capture_performance)?this._instance.config.capture_performance.web_vitals_attribution:void 0;return e!=null&&e}get Rt(){var e=je(this._instance.config.capture_performance)&&Or(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=Qe?.protocol;if(e!=="http:"&&e!=="https:")return Jr.info("Web Vitals are disabled on non-http/https protocols"),!1;var t=je(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&&(Jr.info("enabled, starting..."),this.it(this.rt))}onRemoteConfig(e){var t=je(e.capturePerformance)&&!!e.capturePerformance.web_vitals,n=je(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=te.__PosthogExtensions__)!=null&&t.postHogWebVitalsCallbacks)e();else{var i=this.useAttribution?"web-vitals-with-attribution":"web-vitals";(n=te.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,i,(s=>{s?Jr.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?us([],ds,n||[]):[];return da(e,i,pa)}Jr.error("Could not determine current URL")}},O2=Le("[Heatmaps]");function w_(r){return je(r)&&"clientX"in r&&"clientY"in r&&Or(r.clientX)&&Or(r.clientY)}var Ef=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[sf]),this.rageclicks=new Zc(e.config.rageclick)}get flushIntervalMilliseconds(){var e=5e3;return je(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;O2.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({[sf]: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"})(B)?setInterval(this.Lt.bind(this),this.flushIntervalMilliseconds):null}Ot(){E&&B&&(this.Nt=this.Lt.bind(this),Ve(E,"beforeunload",this.Nt),this.Ut=e=>this.Dt(e||E?.event),Ve(B,"click",this.Ut,{capture:!0}),this.zt=e=>this.Ht(e||E?.event),Ve(B,"mousemove",this.zt,{capture:!0}),this.Bt=new Xc(this.instance,E2,this.jt.bind(this)),this.Bt.startIfEnabled(),this.qt=this.Mt.bind(this),Ve(B,"visibilitychange",this.qt),this.P=!0)}At(){var e;E&&B&&(this.Nt&&E.removeEventListener("beforeunload",this.Nt),this.Ut&&B.removeEventListener("click",this.Ut,{capture:!0}),this.zt&&B.removeEventListener("mousemove",this.zt,{capture:!0}),this.qt&&B.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&&cu(u)&&!on(u,"body");){if(u===c)return!1;if(fe(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?us([],ds,i||[]):[],o=da(t,s,pa);this.N=this.N||{},this.N[o]||(this.N[o]=[]),this.N[o].push(e)}}Lt(){this.N&&!ns(this.N)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},Jc=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(!(V(o)||V(a)||V(l)||V(c)||V(u)||V(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:lr(a/o,0,1,U),f=o<=1?1:lr(l/o,0,1,U),v=c<=1?1:lr(u/c,0,1,U),g=c<=1?1:lr(p/c,0,1,U);i=Ne(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 $r=(function(r){return r.GZipJS="gzip-js",r.Base64="base64",r})({}),Mt=Uint8Array,ct=Uint16Array,cs=Uint32Array,ag=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]),lg=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]),N0=function(r,e){for(var t=new ct(31),n=0;n<31;++n)t[n]=e+=1<<r[n-1];var i=new cs(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=N0(ag,2),L2=F0[0],Cf=F0[1];L2[28]=258,Cf[258]=28;for(Af=N0(lg,0)[1],Qc=new ct(32768),Te=0;Te<32768;++Te)Qr=(43690&Te)>>>1|(21845&Te)<<1,Qr=(61680&(Qr=(52428&Qr)>>>2|(13107&Qr)<<2))>>>4|(3855&Qr)<<4,Qc[Te]=((65280&Qr)>>>8|(255&Qr)<<8)>>>1;var Qr,Af,Qc,Te,ta=function(r,e,t){for(var n=r.length,i=0,s=new ct(e);i<n;++i)++s[r[i]-1];var o,a=new ct(e);for(i=0;i<e;++i)a[i]=a[i-1]+s[i-1]<<1;if(t){o=new ct(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[Qc[p]>>>l]=c}else for(o=new ct(n),i=0;i<n;++i)o[i]=Qc[a[r[i]-1]++]>>>15-r[i];return o},ti=new Mt(288);for(Te=0;Te<144;++Te)ti[Te]=8;for(Te=144;Te<256;++Te)ti[Te]=9;for(Te=256;Te<280;++Te)ti[Te]=7;for(Te=280;Te<288;++Te)ti[Te]=8;var eu=new Mt(32);for(Te=0;Te<32;++Te)eu[Te]=5;var N2=ta(ti,9,0),F2=ta(eu,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 ct?ct:r instanceof cs?cs:Mt)(t-e);return n.set(r.subarray(e,t)),n},Cr=function(r,e,t){t<<=7&e;var n=e/8>>0;r[n]|=t,r[n+1]|=t>>>8},Vo=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},Ih=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 ct(h+1),v=Rf(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]},Rf=function(r,e,t){return r.s==-1?Math.max(Rf(r.l,e,t+1),Rf(r.r,e,t+1)):e[r.s]=t},k_=function(r){for(var e=r.length;e&&!r[--e];);for(var t=new ct(++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]},Uo=function(r,e){for(var t=0,n=0;n<e.length;++n)t+=r[n]*e[n];return t},Tf=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){Cr(e,u++,t),++i[256];for(var p=Ih(i,15),h=p[0],f=p[1],v=Ih(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 ct(19),A=0;A<x.length;++A)_[31&x[A]]++;for(A=0;A<w.length;++A)_[31&w[A]]++;for(var $=Ih(_,7),T=$[0],P=$[1],Y=19;Y>4&&!T[S_[Y-1]];--Y);var F,L,G,K,le=c+5<<3,j=Uo(i,ti)+Uo(s,eu)+o,ee=Uo(i,h)+Uo(s,g)+o+14+3*Y+Uo(_,T)+(2*_[16]+3*_[17]+7*_[18]);if(le<=j&&le<=ee)return Tf(e,u,r.subarray(l,l+c));if(Cr(e,u,1+(ee<j)),u+=2,ee<j){F=ta(h,f,0),L=h,G=ta(g,m,0),K=g;var D=ta(T,P,0);for(Cr(e,u,S-257),Cr(e,u+5,C-1),Cr(e,u+10,Y-4),u+=14,A=0;A<Y;++A)Cr(e,u+3*A,T[S_[A]]);u+=3*Y;for(var ie=[x,w],J=0;J<2;++J){var de=ie[J];for(A=0;A<de.length;++A){var pe=31&de[A];Cr(e,u,D[pe]),u+=T[pe],pe>15&&(Cr(e,u,de[A]>>>5&127),u+=de[A]>>>12)}}}else F=N2,L=ti,G=F2,K=eu;for(A=0;A<a;++A)if(n[A]>255){pe=n[A]>>>18&31,Vo(e,u,F[pe+257]),u+=L[pe+257],pe>7&&(Cr(e,u,n[A]>>>23&31),u+=ag[pe]);var ve=31&n[A];Vo(e,u,G[ve]),u+=K[ve],ve>3&&(Vo(e,u,n[A]>>>5&8191),u+=lg[ve])}else Vo(e,u,F[n[A]]),u+=L[n[A]];return Vo(e,u,F[256]),u+L[256]},D2=new cs([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),H2=(function(){for(var r=new cs(256),e=0;e<256;++e){for(var t=e,n=9;--n;)t=(1&t&&3988292384)^t>>>1;r[e]=t}return r})(),B2=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=Tf(f,v,s.subarray(g,m)):(f[g]=u,v=Tf(f,v,s.subarray(g,p)))}else{for(var y=D2[o-1],x=y>>>13,S=8191&y,b=(1<<a)-1,w=new ct(32768),C=new ct(b+1),_=Math.ceil(a/3),A=2*_,$=function(vu){return(s[vu]^s[vu+1]<<_^s[vu+2]<<A)&b},T=new cs(25e3),P=new ct(288),Y=new ct(32),F=0,L=0,G=(g=0,0),K=0,le=0;g<p;++g){var j=$(g),ee=32767&g,D=C[j];if(w[ee]=D,C[j]=ee,K<=g){var ie=p-g;if((F>7e3||G>24576)&&ie>423){v=E_(s,f,0,T,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 de=2,pe=0,ve=S,_e=ee-D&32767;if(ie>2&&j==$(g-_e))for(var ut=Math.min(x,ie)-1,zt=Math.min(32767,g),gu=Math.min(258,ie);_e<=zt&&--ve&&ee!=D;){if(s[g+de]==s[g+de-_e]){for(var St=0;St<gu&&s[g+St]==s[g+St-_e];++St);if(St>de){if(de=St,pe=_e,St>ut)break;var Fe=Math.min(_e,St-2),ha=0;for(J=0;J<Fe;++J){var mu=g-_e+J+32768&32767,fg=mu-w[mu]+32768&32767;fg>ha&&(ha=fg,D=mu)}}}_e+=(ee=D)-(D=w[ee])+32768&32767}if(pe){T[G++]=268435456|Cf[de]<<18|Af[pe];var gg=31&Cf[de],mg=31&Af[pe];L+=ag[gg]+lg[mg],++P[257+gg],++Y[mg],K=g+de,++F}else T[G++]=s[g],++P[s[g]]}}v=E_(s,f,u,T,P,Y,L,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)},$h=function(r,e,t){for(;t;++e)r[e]=t,t>>>=8};function V2(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=H2[255&c^l[u]]^c>>>8;a=c},d:function(){return 4294967295^a}}})(),n=r.length;t.p(r);var i,s=B2(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&&$h(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),$h(s,o-8,t.d()),$h(s,o-4,n),s}var U2=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),xb=!0}var rc=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=mb(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&&qn(m.tiles,s.accumulator,m.actions)}catch(m){console.error("[SmartCanvas] Error fetching/applying initial config:",m)}e&&e();let l=tc();wo();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??jn({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&&wb(y)}};document.body?v():document.addEventListener("DOMContentLoaded",v,{once:!0}),(l||r.editorUrl)&&(console.log(`[SmartCanvas] Loading editor SDK for ${l??"config"} mode`),_b(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&&qn(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 rc(r)}});var ch="syn_";function qi(r){if(!r.startsWith(ch))throw new Error("Invalid Syntro token: must start with 'syn_'");let t=r.slice(ch.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 nc(r){let e=JSON.stringify(r),t=btoa(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=+$/,"");return ch+t}function It(r){if(typeof process<"u"&&process.env)return process.env[r]}var Eb="syntro_segment_attributes";function Cb(){if(typeof window>"u")return{};try{let r=localStorage.getItem(Eb);if(r){let e=JSON.parse(r);return Z("Syntro Bootstrap","Loaded cached segment attributes:",e),e}}catch(r){Ge("Syntro Bootstrap","Failed to load cached segment attributes:",r)}return{}}function Ab(r){if(!(typeof window>"u"))try{localStorage.setItem(Eb,JSON.stringify(r)),Z("Syntro Bootstrap","Cached segment attributes:",r)}catch(e){Ge("Syntro Bootstrap","Failed to cache segment attributes:",e)}}function Tb(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 uh(){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 kb="syntro_geo",Rb="https://geo.syntrologie.com";async function dh(r){if(typeof window>"u")return{};try{let e=localStorage.getItem(kb);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(kb,JSON.stringify(n))}catch{}return Z("Syntro Bootstrap","Geo: fetched from worker:",n),n}}catch{}return{}}var ph=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(/\/[^/]*$/,"");ph=`${e.origin}${t}`}}catch{ph=null}function Ib(){return ph}var $b=["fbclid","ttclid","gclid","gbraid","wbraid","msclkid","twclid","li_fat_id","epik","ScCid","yclid","_kx","mc_eid","mc_cid"];function hh(r){if(typeof window>"u"||!r.setPersonPropertiesOnce)return;let e=new URLSearchParams(window.location.search),t={};for(let n of $b){let i=e.get(n);i&&(t[`$initial_${n}`]=i)}Object.keys(t).length>0&&r.setPersonPropertiesOnce(t)}var JC=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i,QC=/^[^\s@]+@[^\s@]+\.[^\s@]+$/,eA=[/@yopmail\.com$/i,/@mailinator\.com$/i,/@guerrillamail\.(com|info|net|org|biz)$/i,/@10minutemail\.com$/i,/^test@/i,/^noreply@/i,/^no-reply@/i];function ic(r){return r?QC.test(r):!1}function Mb(r){return eA.some(e=>e.test(r))}function tA(r){if(r.type==="email")return!0;let e=(r.name||"").toLowerCase(),t=(r.id||"").toLowerCase();return!!(/email/.test(e)||/email/.test(t))}function rA(r){return r.closest("[data-syntro-no-identify]")!==null}function nA(r){return r?JC.test(r):!0}function fh(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}nA(o)?r.identify?.(s,{email:s}):r.alias?.(s),t.add(s)},i=s=>{let o=s.target;if(!(o instanceof HTMLInputElement)||rA(o)||!tA(o))return;let a=(o.value??"").trim().toLowerCase();if(!ic(a)||Mb(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 Pb="_syu",iA=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;function sA(r){return r?iA.test(r):!0}function gh(r,e){if(typeof window>"u"||!r.identify&&!r.alias)return;let t=new URLSearchParams(window.location.search).get(Pb);if(!t)return;let n=t.trim();if(!n)return;let i=()=>{let a=r.getDistinctId?.();if(a===n)return;let l=ic(n)?{email:n}:void 0;sA(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 oA=["utm_source","utm_medium","utm_campaign","utm_content","utm_term"];function aA(r){return r.is_eu==="true"||r.country_code==="GB"||r.country_code==="CH"||!r.is_eu&&!r.country_code}function lA(r){if(!r)return"";try{return new URL(r).hostname}catch{return""}}function mh(){return typeof window>"u"?"":`${window.location.origin}${window.location.pathname}`}function vh(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:lA(t)};for(let s of oA){let o=n.get(s);o&&(i[`$initial_${s}`]=o)}if(r.setPersonPropertiesOnce(i),!e){r.setPersonPropertiesOnce({$initial_url:mh()});return}e.then(s=>{let o=aA(s)?mh():window.location.href;r.setPersonPropertiesOnce?.({$initial_url:o})}).catch(()=>{r.setPersonPropertiesOnce?.({$initial_url:mh()})})}var Ob=new Set(["email","telephone","streetAddress","addressLocality","addressRegion","postalCode","givenName","familyName"]),Lb=500,yh=3;function sc(r){if(Array.isArray(r))return r.map(sc);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))Ob.has(t)||(e[t]=sc(n));return e}return r}function oc(r){if(Array.isArray(r))return r.map(oc);if(r&&typeof r=="object"){let e={};for(let[t,n]of Object.entries(r))if(!(t==="description"&&typeof n=="string"&&n.length>Lb)){if(t==="image"&&Array.isArray(n)&&n.length>yh){e[t]=n.slice(0,yh);continue}e[t]=oc(n)}return e}return r}function cA(){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 bh(r){if(!r.register)return;let e=cA().map(oc).map(sc);e.length!==0&&r.register({json_ld:e})}function Nb(r,e,t={}){vh(r,t.geoPromise),hh(r),bh(r),gh(r,e);let n=fh(r,e);return()=>{n()}}var Fb="app:",uA="syntro:",dA=/^[a-z][a-z0-9_]*$/;function ac(r){if(!r)return{valid:!1,reason:"Event name cannot be empty"};if(r.startsWith(uA))return{valid:!1,reason:'"syntro:" prefix is reserved for internal SDK events'};if(!r.startsWith(Fb))return{valid:!1,reason:`Custom events must start with "app:" prefix. Got: "${r}"`};let e=r.slice(Fb.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(!dA.test(t))return{valid:!1,reason:`Segment "${t}" must be lowercase alphanumeric + underscores. Got: "${r}"`};return{valid:!0}}function pA(r){return typeof r=="string"||typeof r=="number"||typeof r=="boolean"||r===null}function Db(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)&&!Db(n,e,t+1))return!1;return!0}function lc(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(!Db(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"||pA(n)||e.push(t);return e.length>0?{valid:!0,stripped:e}:{valid:!0}}function cc(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 Io=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:Pe};this.publishEvent(i)}publishEvent(e){this.history.push(e),this.history.length>this.maxHistorySize&&this.history.shift();for(let t of this.subscriptions)if(cc(e,t.filter))try{t.callback(e)}catch(n){console.error("[EventBus] Subscriber error:",n)}}emit(e,t){let n=ac(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=lc(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:Pe};this.history.push(s),this.history.length>this.maxHistorySize&&this.history.shift();let o=0;for(let l of this.subscriptions)if(cc(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=>cc(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=>cc(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 Zi(r={}){return new Io(r)}var Gi=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 Bb={fetch:globalThis.fetch?globalThis.fetch.bind(globalThis):void 0,SubtleCrypto:globalThis.crypto?globalThis.crypto.subtle:void 0,EventSource:globalThis.EventSource};function Vb(){return Bb}function _h(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 $o(r,e,t){return t===2?_h(_h(r+e)+"")%1e4/1e4:t===1?_h(e+r)%1e3/1e3:null}function hA(r){return r<=0?[]:new Array(r).fill(1/r)}function uc(r,e){return r>=e[0]&&r<e[1]}function Ub(r,e){let t=$o("__"+e[0],r,1);return t===null?!1:t>=e[1]&&t<e[2]}function jb(r,e){for(let t=0;t<e.length;t++)if(uc(r,e[t]))return t;return-1}function wh(r){try{let e=r.replace(/([^\\])\//g,"$1\\/");return new RegExp(e)}catch(e){console.error(e);return}}function dc(r,e){if(!e.length)return!1;let t=!1,n=!1;for(let i=0;i<e.length;i++){let s=mA(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 fA(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 gA(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=>!fA(i[0],i[1],i[2]))}catch{return!1}}function mA(r,e,t){try{let n=new URL(r,"https://_");if(e==="regex"){let i=wh(t);return i?i.test(n.href)||i.test(n.href.substring(n.origin.length)):!1}else if(e==="simple")return gA(n,t);return!1}catch{return!1}}function Wb(r,e,t){e=e===void 0?1:e,e<0?e=0:e>1&&(e=1);let n=hA(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 zb(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 qb(r){try{return r()}catch(e){return console.error(e),!1}}var xh=r=>Uint8Array.from(atob(r),e=>e.charCodeAt(0));async function ei(r,e,t){if(e=e||"",t=t||globalThis.crypto&&globalThis.crypto.subtle||Bb.SubtleCrypto,!t)throw new Error("No SubtleCrypto implementation found");try{let n=await t.importKey("raw",xh(e),{name:"AES-CBC",length:128},!0,["encrypt","decrypt"]),[i,s]=r.split("."),o=await t.decrypt({name:"AES-CBC",iv:xh(i)},n,xh(s));return new TextDecoder().decode(o)}catch{throw new Error("Failed to decrypt")}}function Mo(r){return typeof r=="string"?r:JSON.stringify(r)}function xt(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 Zb(){let r;try{r="1.6.4"}catch{r=""}return r}function Gb(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 Hb(r){return typeof r=="object"&&r!==null}function pc(r){return r.urlPatterns&&r.variations.some(e=>Hb(e)&&"urlRedirect"in e)?"redirect":r.variations.some(e=>Hb(e)&&(e.domMutations||"js"in e||"css"in e))?"visual":"unknown"}async function hc(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},ur=Vb(),Ki={fetchFeaturesCall:({host:r,clientKey:e,headers:t})=>ur.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 ur.fetch(`${r}/api/eval/${e}`,i)},eventSourceCall:({host:r,clientKey:e,headers:t})=>t?new ur.EventSource(`${r}/sub/${e}`,{headers:t}):new ur.EventSource(`${r}/sub/${e}`),startIdleListener:()=>{let r;if(!(typeof window<"u"&&typeof document<"u"))return;let t=()=>{document.visibilityState==="visible"?(window.clearTimeout(r),bA()):document.visibilityState==="hidden"&&(r=window.setTimeout(yA,it.idleStreamInterval))};return document.addEventListener("visibilitychange",t),()=>document.removeEventListener("visibilitychange",t)},stopIdleListener:()=>{}};try{globalThis.localStorage&&(ur.localStorage=globalThis.localStorage)}catch{}var Yi=new Map,Kb=!1,Ir=new Map,fc=new Map,Xi=new Map,Ji=new Set;function Xb(r){Object.assign(it,r),it.backgroundSync||Th()}async function Jb({instance:r,timeout:e,skipCache:t,allowStale:n,backgroundSync:i}){return i||(it.backgroundSync=!1),_A({instance:r,allowStale:n,timeout:e,skipCache:t})}function vA(r){let e=Po(r),t=Yi.get(e)||new Set;t.add(r),Yi.set(e,t)}function Qb(r){Yi.forEach(e=>e.delete(r))}function yA(){Xi.forEach(r=>{r&&(r.state="idle",Ch(r))})}function bA(){Xi.forEach(r=>{r&&r.state==="idle"&&Ah(r)})}async function Yb(){try{if(!ur.localStorage)return;await ur.localStorage.setItem(it.cacheKey,JSON.stringify(Array.from(Ir.entries())))}catch{}}async function _A({instance:r,allowStale:e,timeout:t,skipCache:n}){let i=Po(r),s=kh(r),o=new Date,a=new Date(o.getTime()-it.maxAge+it.staleTTL);await xA();let l=!it.disableCache&&!n?Ir.get(s):void 0;return l&&(e||l.staleAt>o)&&l.staleAt>a?(l.sse&&Ji.add(i),l.staleAt<o?Sh(r):Eh(r),{data:l.data,success:!0,source:"cache"}):await hc(Sh(r),t)||{data:null,success:!1,source:"timeout",error:new Error("Timeout")}}function Po(r){let[e,t]=r.getApiInfo();return`${e}||${t}`}function kh(r){let e=Po(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 xA(){if(!Kb){Kb=!0;try{if(ur.localStorage){let r=await ur.localStorage.getItem(it.cacheKey);if(!it.disableCache&&r){let e=JSON.parse(r);e&&Array.isArray(e)&&e.forEach(([t,n])=>{Ir.set(t,{...n,staleAt:new Date(n.staleAt)})}),e_()}}}catch{}if(!it.disableIdleStreams){let r=Ki.startIdleListener();r&&(Ki.stopIdleListener=r)}}}function e_(){let r=Array.from(Ir.entries()).map(([t,n])=>({key:t,staleAt:n.staleAt.getTime()})).sort((t,n)=>t.staleAt-n.staleAt),e=Math.min(Math.max(0,Ir.size-it.maxEntries),Ir.size);for(let t=0;t<e;t++)Ir.delete(r[t].key)}function t_(r,e,t){let n=t.dateUpdated||"",i=new Date(Date.now()+it.staleTTL),s=it.disableCache?void 0:Ir.get(e);if(s&&n&&s.version===n){s.staleAt=i,Yb();return}it.disableCache||(Ir.set(e,{data:t,version:n,staleAt:i,sse:Ji.has(r)}),e_()),Yb();let o=Yi.get(r);o&&o.forEach(a=>wA(a,t))}async function wA(r,e){await r.setPayload(e||r.getPayload())}async function Sh(r){let{apiHost:e,apiRequestHeaders:t}=r.getApiHosts(),n=r.getClientKey(),i="isRemoteEval"in r&&r.isRemoteEval(),s=Po(r),o=kh(r),a=fc.get(o);return a||(a=(i?Ki.fetchRemoteEvalCall({host:e,clientKey:n,payload:{attributes:r.getAttributes(),forcedVariations:r.getForcedVariations(),forcedFeatures:Array.from(r.getForcedFeatures().entries()),url:r.getUrl()},headers:t}):Ki.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"&&Ji.add(s),c.json()}).then(c=>(t_(s,o,c),Eh(r),fc.delete(o),{data:c,success:!0,source:"network"})).catch(c=>(fc.delete(o),{data:null,source:"error",success:!1,error:c})),fc.set(o,a)),a}function Eh(r,e=!1){let t=Po(r),n=kh(r),{streamingHost:i,streamingHostRequestHeaders:s}=r.getApiHosts(),o=r.getClientKey();if(e&&Ji.add(t),it.backgroundSync&&Ji.has(t)&&ur.EventSource){if(Xi.has(t))return;let a={src:null,host:i,clientKey:o,headers:s,cb:l=>{try{if(l.type==="features-updated"){let c=Yi.get(t);c&&c.forEach(u=>{Sh(u)})}else if(l.type==="features"){let c=JSON.parse(l.data);t_(t,n,c)}a.errors=0}catch{r_(a)}},errors:0,state:"active"};Xi.set(t,a),Ah(a)}}function r_(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);Ch(r),setTimeout(()=>{["idle","active"].includes(r.state)||Ah(r)},Math.min(e,3e5))}}function Ch(r){r.src&&(r.src.onopen=null,r.src.onerror=null,r.src.close(),r.src=null,r.state==="active"&&(r.state="disabled"))}function Ah(r){r.src=Ki.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=()=>r_(r),r.src.onopen=()=>{r.errors=0}}function SA(r,e){Ch(r),Xi.delete(e)}function Th(){Ji.clear(),Xi.forEach(SA),Yi.clear(),Ki.stopIdleListener()}function gc(r,e){if(e.streaming){if(!r.getClientKey())throw new Error("Must specify clientKey to enable streaming");e.payload&&Eh(r,!0),vA(r)}}var kA=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,$h={revert:function(){}},bc=new Map,Mh=new Set;function EA(r){return r==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[r]}}function _c(r){var e=bc.get(r);return e||(e={element:r,attributes:{}},bc.set(r,e)),e}function xc(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,EA(e)),o}function wc(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,n_()):r!==t&&(e.isDirty=!0,n_())}function CA(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),wc(BA(e),r)}function AA(r){var e=new Set(r.originalValue.split(/\s+/).filter(Boolean));r.mutations.forEach(function(t){return t.mutate(e)}),wc(Array.from(e).filter(Boolean).join(" "),r)}function TA(r){var e=r.originalValue;r.mutations.forEach(function(t){return e=t.mutate(e)}),wc(e,r)}function RA(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 IA(r){var e=r.originalValue;r.mutations.forEach(function(t){var n=t.mutate(),i=RA(n);e=i||e}),wc(e,r)}var $A=function(e){return e.innerHTML},MA=function(e,t){return e.innerHTML=t};function s_(r){var e=_c(r);return e.html||(e.html=xc(r,"html",$A,MA,CA)),e.html}var PA=function(e){return{parentNode:e.parentElement,insertBeforeNode:e.nextElementSibling}},OA=function(e,t){t.insertBeforeNode&&!t.parentNode.contains(t.insertBeforeNode)||t.parentNode.insertBefore(e,t.insertBeforeNode)};function o_(r){var e=_c(r);return e.position||(e.position=xc(r,"position",PA,OA,IA)),e.position}var LA=function(e,t){return t?e.className=t:e.removeAttribute("class")},NA=function(e){return e.className};function a_(r){var e=_c(r);return e.classes||(e.classes=xc(r,"class",NA,LA,AA)),e.classes}var FA=function(e){return function(t){var n;return(n=t.getAttribute(e))!=null?n:null}},DA=function(e){return function(t,n){return n!==null?t.setAttribute(e,n):t.removeAttribute(e)}};function l_(r,e){var t=_c(r);return t.attributes[e]||(t.attributes[e]=xc(r,e,FA(e),DA(e),TA)),t.attributes[e]}function HA(r,e){var t=bc.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 mc;function BA(r){return mc||(mc=document.createElement("div")),mc.innerHTML=r,mc.innerHTML}function vc(r,e,t){if(t.isDirty){t.isDirty=!1;var n=t.virtualValue;t.mutations.length||HA(r,e),t.setValue(r,n)}}function VA(r,e){r.html&&vc(e,"html",r.html),r.classes&&vc(e,"class",r.classes),r.position&&vc(e,"position",r.position),Object.keys(r.attributes).forEach(function(t){vc(e,t,r.attributes[t])})}function n_(){bc.forEach(VA)}function UA(r,e){var t=null;r.kind==="html"?t=s_(e):r.kind==="class"?t=a_(e):r.kind==="attribute"?t=l_(e,r.attribute):r.kind==="position"&&(t=o_(e)),t&&(t.mutations.push(r),t.mutationRunner(t))}function jA(r,e){var t=null;if(r.kind==="html"?t=s_(e):r.kind==="class"?t=a_(e):r.kind==="attribute"?t=l_(e,r.attribute):r.kind==="position"&&(t=o_(e)),!!t){var n=t.mutations.indexOf(r);n!==-1&&t.mutations.splice(n,1),t.mutationRunner(t)}}function c_(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),UA(r,n))})}}function WA(r){r.elements.forEach(function(e){return jA(r,e)}),r.elements.clear(),Mh.delete(r)}function i_(){Mh.forEach(c_)}var Rh;function zA(){typeof document>"u"||(Rh||(Rh=new MutationObserver(function(){i_()})),i_(),Rh.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}zA();function Sc(r){return typeof document>"u"?$h:(Mh.add(r),c_(r),{revert:function(){WA(r)}})}function Ih(r,e){return Sc({kind:"html",elements:new Set,mutate:e,selector:r})}function u_(r,e){return Sc({kind:"position",elements:new Set,mutate:e,selector:r})}function Oo(r,e){return Sc({kind:"class",elements:new Set,mutate:e,selector:r})}function yc(r,e,t){return kA.test(e)?e==="class"||e==="className"?Oo(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)})}):Sc({kind:"attribute",attribute:e,elements:new Set,mutate:t,selector:r}):$h}function qA(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 Ih(e,function(a){return a+(n??"")});if(t==="set")return Ih(e,function(){return n??""})}else if(i==="class"){if(t==="append")return Oo(e,function(a){n&&a.add(n)});if(t==="remove")return Oo(e,function(a){n&&a.delete(n)});if(t==="set")return Oo(e,function(a){a.clear(),n&&a.add(n)})}else if(i==="position"){if(t==="set"&&s)return u_(e,function(){return{insertBeforeSelector:o,parentSelector:s}})}else{if(t==="append")return yc(e,i,function(a){return a!==null?a+(n??""):n??""});if(t==="set")return yc(e,i,function(){return n??""});if(t==="remove")return yc(e,i,function(){return null})}return $h}var ZA={html:Ih,classes:Oo,attribute:yc,position:u_,declarative:qA},d_=ZA;var Ph={};function tn(r,e,t){t=t||{};for(let[n,i]of Object.entries(e))switch(n){case"$or":if(!f_(r,i,t))return!1;break;case"$nor":if(f_(r,i,t))return!1;break;case"$and":if(!JA(r,i,t))return!1;break;case"$not":if(tn(r,i,t))return!1;break;default:if(!Lo(i,GA(r,n),t))return!1}return!0}function GA(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 p_(r,e=!1){let t=`${r}${e?"/i":""}`;return Ph[t]||(Ph[t]=new RegExp(r.replace(/([^\\])\//g,"$1\\/"),e?"i":void 0)),Ph[t]}function Lo(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)||!g_(r))return JSON.stringify(e)===JSON.stringify(r);for(let i in r)if(!XA(i,e,r[i],t))return!1;return!0}function g_(r){let e=Object.keys(r);return e.length>0&&e.filter(t=>t[0]==="$").length===e.length}function KA(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 YA(r,e,t){if(!Array.isArray(r))return!1;let n=g_(e)?i=>Lo(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 Qi(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 h_(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(Lo(e[i],r[o],t,n)){s=!0;break}if(!s)return!1}return!0}function XA(r,e,t,n){switch(r){case"$veq":return xt(e)===xt(t);case"$vne":return xt(e)!==xt(t);case"$vgt":return xt(e)>xt(t);case"$vgte":return xt(e)>=xt(t);case"$vlt":return xt(e)<xt(t);case"$vlte":return xt(e)<=xt(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)?Qi(e,t):!1;case"$ini":return Array.isArray(t)?Qi(e,t,!0):!1;case"$inGroup":return Qi(e,n[t]||[]);case"$notInGroup":return!Qi(e,n[t]||[]);case"$nin":return Array.isArray(t)?!Qi(e,t):!1;case"$nini":return Array.isArray(t)?!Qi(e,t,!0):!1;case"$not":return!Lo(t,e,n);case"$size":return Array.isArray(e)?Lo(t,e.length,n):!1;case"$elemMatch":return YA(e,t,n);case"$all":return Array.isArray(t)?h_(e,t,n):!1;case"$alli":return Array.isArray(t)?h_(e,t,n,!0):!1;case"$regex":try{return p_(t).test(e)}catch{return!1}case"$regexi":try{return p_(t,!0).test(e)}catch{return!1}case"$type":return KA(e)===t;default:return console.error("Unknown operator: "+r),!1}}function f_(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 JA(r,e,t){for(let n=0;n<e.length;n++)if(!tn(r,e[n],t))return!1;return!0}var QA="Feature Evaluated",e2="Experiment Viewed";function t2(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 r2(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 es(r){try{await r()}catch{}}function m_(r,e,t){if(r.user.trackedExperiments){let i=Cc(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(es(()=>i(e,t,r.user)))}if(r.user.trackingCallback){let i=r.user.trackingCallback;n.push(es(()=>i(e,t)))}if(r.global.eventLogger){let i=r.global.eventLogger;n.push(es(()=>i(e2,{experimentId:e.key,variationId:t.key,hashAttribute:t.hashAttribute,hashValue:t.hashValue},r.user)))}return n}function n2(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;es(()=>n(e,t,r.user))}if(r.user.onFeatureUsage){let n=r.user.onFeatureUsage;es(()=>n(e,t))}if(r.global.eventLogger){let n=r.global.eventLogger;es(()=>n(QA,{feature:e,source:t.source,value:t.value,ruleId:t.source==="defaultValue"?"$default":t.ruleId||"",variationId:t.experimentResult?t.experimentResult.key:""},r.user))}}function kc(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=t2(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=kc(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&&b_(s.filters,e))continue;if("force"in s){if(s.condition&&!y_(s.condition,e)||!i2(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=>{!m_(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}=Ec(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 Ec(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=s2(r,t),r.urlPatterns&&!dc(t.user.url||"",r.urlPatterns))return{result:$e(t,r,-1,!1,e)};let s=zb(n,t.user.url||"",i);if(s!==null)return{result:$e(t,r,s,!1,e)};let o=r2(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}=ti(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}=l2({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(b_(r.filters,t))return{result:$e(t,r,-1,!1,e)}}else if(r.namespace&&!Ub(l,r.namespace))return{result:$e(t,r,-1,!1,e)};if(r.include&&!qb(r.include))return{result:$e(t,r,-1,!1,e)};if(r.condition&&!y_(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=kc(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&&!a2(r.groups,t))return{result:$e(t,r,-1,!1,e)}}if(r.url&&!o2(r.url,t))return{result:$e(t,r,-1,!1,e)};let h=$o(r.seed||n,l,r.hashVersion||1);if(h===null)return{result:$e(t,r,-1,!1,e)};if(!u){let m=r.ranges||Wb(i,r.coverage===void 0?1:r.coverage,r.weights);c=jb(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}=u2(t,a,Mo(l),{[Oh(r.key,r.bucketVersion)]:f.key});m&&(t.user.stickyBucketAssignmentDocs=t.user.stickyBucketAssignmentDocs||{},t.user.stickyBucketAssignmentDocs[y]=x,t.user.saveStickyBucketAssignmentDoc(x))}let v=m_(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"&&n2(r,e,a),a}function v_(r){return{...r.user.attributes,...r.user.attributeOverrides}}function y_(r,e){return tn(v_(e),r,e.global.savedGroups||{})}function b_(r,e){return r.some(t=>{let{hashValue:n}=ti(e,t.attribute);if(!n)return!0;let i=$o(t.seed,n,t.hashVersion||2);return i===null?!0:!t.ranges.some(s=>uc(i,s))})}function i2(r,e,t,n,i,s,o){if(!i&&s===void 0)return!0;if(!i&&s===0)return!1;let{hashValue:a}=ti(r,t,n);if(!a)return!1;let l=$o(e,a,o||1);return l===null?!1:i?uc(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}=ti(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 s2(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=wh(r.url))),r}function ti(r,e,t){let n=e||"id",i="",s=v_(r);return s[n]&&(i=s[n]),!i&&t&&(s[t]&&(i=s[t]),i&&(n=t)),{hashAttribute:n,hashValue:i}}function o2(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 a2(r,e){let t=e.global.groups||{};for(let n=0;n<r.length;n++)if(t[r[n]])return!0;return!1}function l2({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=Oh(e,t),l=c2(r,n,i);if(s>0)for(let p=0;p<s;p++){let h=Oh(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 Oh(r,e){return e=e||0,`${r}__${e}`}function Lh(r,e){return`${r}||${e}`}function c2(r,e,t){if(!r.user.stickyBucketAssignmentDocs)return{};let{hashAttribute:n,hashValue:i}=ti(r,e),s=Lh(n,Mo(i)),{hashAttribute:o,hashValue:a}=ti(r,t),l=a?Lh(o,Mo(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 u2(r,e,t,n){let i=Lh(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 d2(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 __(r,e,t){let n=Nh(r,t);return e.getAllAssignments(n)}function Nh(r,e){let t={};return d2(r,e).forEach(i=>{let{hashValue:s}=ti(r,i);t[i]=Mo(s)}),t}async function x_(r,e,t){if(r={...r},r.encryptedFeatures){try{r.features=JSON.parse(await ei(r.encryptedFeatures,e,t))}catch(n){console.error(n)}delete r.encryptedFeatures}if(r.encryptedExperiments){try{r.experiments=JSON.parse(await ei(r.encryptedExperiments,e,t))}catch(n){console.error(n)}delete r.encryptedExperiments}if(r.encryptedSavedGroups){try{r.savedGroups=JSON.parse(await ei(r.encryptedSavedGroups,e,t))}catch(n){console.error(n)}delete r.encryptedSavedGroups}return r}function w_(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 Cc(r,e){return e.hashAttribute+e.hashValue+r.key+e.variationId}var ts=typeof window<"u"&&typeof document<"u",p2=Zb(),No=class{constructor(e){if(e=e||{},this.version=p2,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),ts&&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 x_(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,gc(this,e),this}async init(e){if(this._initialized=!0,e=e||{},e.cacheSettings&&Xb(e.cacheSettings),e.payload)return await this.setPayload(e.payload),gc(this,e),{success:!0,source:"init"};{let{data:t,...n}=await this._refresh({...e,allowStale:!0});return gc(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 w_(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 Jb({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 ei(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 ei(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,Qb(this),e.destroyAllStreams&&Th(),this.logs=[],ts&&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}=Ec(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}=Ec(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=pc(e);if(l==="redirect"&&s.value.urlRedirect&&e.urlPatterns){let c=e.persistQueryString?Gb(this._getContextUrl(),s.value.urlRedirect):s.value.urlRedirect;if(dc(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(ts)Promise.all([...o?[hc(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&&pc(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 kc(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=>[Cc(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(Cc(e.experiment,e.result),e)}_getContextUrl(){return this._options.url||(ts?window.location.href:"")}_isAutoExperimentBlockedByContext(e){let t=pc(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}:ts?{navigate:e=>{window.location.replace(e)},delay:100}:{navigate:null,delay:0}}_applyDOMChanges(e){if(!ts)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(d_.declarative(n).revert)}),()=>{t.forEach(n=>n())}}async refreshStickyBuckets(e){if(this._options.stickyBucketService){let t=this._getEvalContext(),n=await __(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=Nh(n,t);return e.getAllAssignmentsSync(i)}inDevMode(){return!!this._options.enableDevMode}};var h2="https://experiment.syntrologie.com",Fh=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 No({...e,apiHost:e.apiHost??h2,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 Ac(r={}){return new Fh(r)}var S_={growthbook:r=>Ac({...r,autoInit:!0})};function k_(r,e){let t=S_[r];if(!t)throw new Error(`Unknown experiment provider: ${r}. Supported: ${Object.keys(S_).join(", ")}`);return t(e)}var f2=["cdn.syntrologie.com","localhost","127.0.0.1"];function g2(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):f2.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 Dh=class{constructor(e){this.name="cdn";if(this.url=`${e.baseUrl}/${e.configId}.json`,this.integrity=e.integrity,!g2(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 m2(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 m2(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 E_(r){return new Dh(r)}var v2="syntro_exp",y2="syntro_var",Hh=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(v2),o=i.get(y2);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:Ml(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 C_(r){return new Hh(r)}var b2="https://cdn.syntrologie.com/configs",A_={cdn:r=>{if(!r.configId)throw new Error("CDN fetcher requires 'configId' option");return E_({baseUrl:r.baseUrl??b2,configId:r.configId,integrity:r.integrity})},experiments:r=>{if(!r.featureKey)throw new Error("Experiments fetcher requires 'featureKey' option");return C_({featureKey:r.featureKey})}};function T_(r,e={}){let t=A_[r];if(!t)throw new Error(`Unknown config fetcher type: ${r}. Supported: ${Object.keys(A_).join(", ")}`);return t(e)}var R_="syntro_session_metrics",Fo=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(R_);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(R_,JSON.stringify(e))}catch(e){console.warn("[SessionMetricTracker] Failed to save to sessionStorage:",e)}}};function Tc(r={}){return new Fo(r)}var Rc=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 Ic=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 Rc(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 _2=[()=>new Ic];function I_(){for(let r of _2){let e=r();if(e.detect())return e}return null}var Bh="syntro_experiments";var $c={distinctId:"_syntro_distinct_id",telemetryHost:"_syntro_telemetry_host",telemetryKey:"_syntro_telemetry_key"};var w2=720*60*60,Mc=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=`${Bh}=; 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=`${Bh}=${t}; max-age=${w2}; path=/; SameSite=Lax`;document.cookie=n}writeCartAttributes(){let{distinctId:e,telemetryHost:t,telemetryKey:n}=this.context;if(!e)return;let i={};i[$c.distinctId]=e,i[$c.telemetryHost]=t,i[$c.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 M_(r){return r<768?"mobile":r<1024?"tablet":"desktop"}function Uh(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=M_(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:Uh(r,s)}}}function Vh(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($_(t,n))return}if(e.include){for(let n of e.include)if($_(t,n))return n;return}return t}function $_(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 Do=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=Vh(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=Vh(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=Uh(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=M_(e.width);if(s!==this.context.surface.device){let o=Uh(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=Vh(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 Pc(r){return new Do(r)}function jh(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 Wh(r,e){let t=[];for(let n of r.conditions){let i=jh(n,e);if(t.push({condition:n,result:i}),!i)return{matched:!1,conditionResults:t}}return{matched:!0,conditionResults:t}}function Ho(r,e){for(let t=0;t<r.rules.length;t++){let n=r.rules[t],{matched:i,conditionResults:s}=Wh(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 Bo(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 P_(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 zh(r,e,t={}){let n=P_(e,t);switch(r.type){case"rules":return Ho(r,n);case"score":return Bo(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 qh(r,e,t={}){let n=P_(e,t);switch(r.type){case"rules":return Ho(r,n);case"score":return Bo(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 Oc(r){return{evaluate:(e,t)=>zh(e,t,r),evaluateSync:(e,t)=>qh(e,t,r)}}function Lc(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 rs=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 Zh="cooldown:";function O_(r){return{set(e,t){let n=Zh+e,i=Date.now()+t;r.set(n,i)},isActive(e){return this.remaining(e)>0},remaining(e){let t=Zh+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=Zh+e;r.remove(t)}}}var Vo="dismissed:";function L_(r,e){return{mark(t,n=!1){let i=Vo+t;(n?e:r).set(i,!0)},isDismissed(t){let n=Vo+t;return r.has(n)||e.has(n)},clear(t){let n=Vo+t;r.remove(n),e.remove(n)},clearAll(){for(let t of r.keys())t.startsWith(Vo)&&r.remove(t);for(let t of e.keys())t.startsWith(Vo)&&e.remove(t)}}}var Gh="freq:";function N_(r){function e(t){let n=Gh+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=Gh+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=Gh+t;r.remove(n)},hasReachedLimit(t,n){return this.count(t)>=n}}}var k2="syntro";function Kh(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 Uo(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 jo=class{constructor(e={}){this.namespacedStorages=new Map;this.namespace=e.namespace??k2;let t=n=>typeof n=="object"&&n!==null&&typeof n.setItem=="function";typeof window<"u"?(this.session=t(window.sessionStorage)?Kh(window.sessionStorage,this.namespace):Uo(this.namespace),this.user=t(window.localStorage)?Kh(window.localStorage,this.namespace):Uo(this.namespace)):(this.session=Uo(this.namespace),this.user=Uo(this.namespace)),this.dismissals=L_(this.session,this.user),this.cooldowns=O_(this.user),this.frequency=N_(this.session)}ns(e){let t=`${this.namespace}:${e}`;if(!this.namespacedStorages.has(t)){let n=typeof window<"u"&&typeof sessionStorage<"u"?Kh(sessionStorage,t):Uo(t);this.namespacedStorages.set(t,n)}return this.namespacedStorages.get(t)}};function Nc(r={}){return new jo(r)}function ns(r){return r.startsWith("inline:")?"inline":r.startsWith("adjacent:")?"adjacent":"static"}function Wo(r){return r.startsWith("inline:")?r.slice(7):r.startsWith("adjacent:")?r.slice(9):null}var Yh={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"}},is={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:[]},F_={duration:200,easing:"cubic-bezier(0.16, 1, 0.3, 1)",fill:"forwards"};function Fc(r,e,t){let n=Yh[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 Dc(r,e,t){let n=t.placement==="auto"?"bottom":t.placement,i=[Fa(t.offset?{mainAxis:t.offset.y,crossAxis:t.offset.x}:8)];return t.flip!==!1&&i.push(Ha()),t.shift!==!1&&i.push(Da({padding:8})),r.style.position="absolute",r.style.zIndex="2147483646",Na(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 Hc(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 Bc(r,e){return e==="none"||is[e].length===0?null:r.animate(is[e],F_)}function Vc(r,e){if(e==="none"||is[e].length===0)return Promise.resolve();let t=[...is[e]].reverse(),n=r.animate(t,F_);return new Promise(i=>{n.onfinish=()=>i(),n.oncancel=()=>i()})}function Uc(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 jc(r){switch(ns(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 D_(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 E2=0;function Wc(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-${++E2}`}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=D_(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=ns(b),$=C?.priority??0,R=C?.animation??i,P=C?.exclusive??!0,Y=o.get(b);if(Y&&P){if(Y.options.priority>$)throw new Error(`Slot ${b} is occupied by higher priority content (${Y.options.priority} > ${$})`);g(Y)}let F=Uc(b,_);F.style.zIndex=String(jc(b));let L;if(A==="static")Fc(F,b,C?.constraints),e.appendChild(F);else if(A==="inline"){let j=Wo(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=Hc(F,te)}else if(A==="adjacent"){let j=Wo(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=Dc(F,te,C?.position??{placement:"bottom"})}let G=f(F,w,_);Bc(F,R);let K={id:_,slot:b,content:w,options:{priority:$,exclusive:P,animation:R,position:C?.position??{placement:"auto"},constraints:C?.constraints??{},adaptiveId:C?.adaptiveId,autoUnmountOnRouteChange:C?.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:C?.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&&A==="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 Vc(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 zo=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()}},zc=new zo;var Jh="2.0.0";function C2(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(Xh(n,i))return!1}if(e.include&&e.include.length>0){for(let i of e.include)if(Xh(n,i))return!0;return!1}return!0}function Xh(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 H_(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 Xh(t,s)})}function qc(r={}){let{telemetry:e,sessionMetrics:t,routes:n,mode:i="production",namespace:s}=r,o=r.widgets??zc,a=r.executors??lr,l=r.apps??Ws,c=new rs,u=Pc({telemetry:e,routes:n,navigation:c,initialSurfaceType:r.initialSurfaceType,initialSurfaceHost:r.initialSurfaceHost}),p=r.events??Zi(),h=Nc({namespace:s}),f=Lc({eventBus:p,stateStore:h}),v=Oc({state:h,events:p,sessionMetrics:t,accumulator:f}),g=Sb(),m=Jl(),y=P=>H_(P)?m.resolve(P.selector):null,x=async(P,Y)=>{if(!H_(P))return null;try{return await m.waitFor(P.selector,Y)}catch{return null}},S=Wc({overlayRoot:g,eventBus:p,anchorResolver:y,widgetRegistry:o}),b=Kl({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"),C=0,P.set("time_on_page",0),P.set("scroll_depth",0))}catch{}})}let C=0,_,A;if(t){let P=t;_=setInterval(()=>{C++},1e3),A=setInterval(()=>{P.set("time_on_page",C)},5e3)}let $;if(t&&p){let P=t;$=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:Jh,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(C2(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?.(),$?.(),_&&clearInterval(_),A&&clearInterval(A),m.destroy(),f.destroy(),c.destroy(),u.destroy(),b.destroy(),S.destroy()}};return l.bind(R),o.bindRuntime(R),R}function B_(r){return r==="granted"?"granted":r==="denied"?"denied":"pending"}function Qh(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 qo=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(Qh(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=Qh(a);l!==null&&e(B_(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=Qh(e[t]);if(n!==null)return B_(n)}return"pending"}};var Zo=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 V_="visitorConsentCollected",Go=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(V_,n)}),()=>{n&&document.removeEventListener(V_,n)}}};var Ko=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 Yo=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 ss=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 A2(){let r="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",e="";for(let t=0;t<16;t++)e+=r[Math.floor(Math.random()*r.length)];return e}var ef=class{constructor(){this.sessionId=A2(),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 Zc(){return new ef}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 F0=Array.prototype,U_=F0.forEach,j_=F0.indexOf,St=tt?.navigator,H=tt?.document,et=tt?.location,bf=tt?.fetch,_f=tt!=null&&tt.XMLHttpRequest&&"withCredentials"in new tt.XMLHttpRequest?tt.XMLHttpRequest:void 0,W_=tt?.AbortController,yt=St?.userAgent,re=E??{},Pr={DEBUG:!1,LIB_VERSION:"1.341.0"};function z_(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 us(r){return function(){var e=this,t=arguments;return new Promise((function(n,i){var s=r.apply(e,t);function o(l){z_(s,n,i,o,a,"next",l)}function a(l){z_(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 D0(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 T2=["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"],q_=function(r,e){if(e===void 0&&(e=[]),!r)return!1;var t=r.toLowerCase();return T2.concat(e).some((n=>{var i=n.toLowerCase();return t.indexOf(i)!==-1}))},R2=["$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 Su=function(r){return r.trim()},xf=function(r){return r.replace(/^\$/,"")},I2=Array.isArray,H0=Object.prototype,B0=H0.hasOwnProperty,ku=H0.toString,xe=I2||function(r){return ku.call(r)==="[object Array]"},cn=r=>typeof r=="function",We=r=>r===Object(r)&&!xe(r),ds=r=>{if(We(r)){for(var e in r)if(B0.call(r,e))return!1;return!0}return!1},B=r=>r===void 0,ze=r=>ku.call(r)=="[object String]",wf=r=>ze(r)&&r.trim().length===0,zt=r=>r===null,ge=r=>B(r)||zt(r),Hr=r=>ku.call(r)=="[object Number]"&&r==r,ls=r=>Hr(r)&&r>0,Dr=r=>ku.call(r)==="[object Boolean]",$2=r=>r instanceof FormData,M2=r=>fe(R2,r);function Sf(r){return r===null||typeof r!="object"}function tu(r,e){return Object.prototype.toString.call(r)==="[object "+e+"]"}function V0(r){return!B(Event)&&(function(e,t){try{return e instanceof t}catch{return!1}})(r,Event)}var P2=[!0,"true",1,"1","yes"],tf=r=>fe(P2,r),O2=[!1,"false",0,"0","no"];function pr(r,e,t,n,i){return e>t&&(n.warn("min cannot be greater than max."),e=t),Hr(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),pr(i||t,e,t,n))}var kf=class{constructor(e){this.t={},this.i=e.i,this.o=pr(e.bucketSize,0,100,e.h),this.m=pr(e.refillRate,0,this.o,e.h),this.$=pr(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",ru="iOS",Fr="Android",va="Tablet",U0=Fr+" "+va,j0="iPad",W0="Apple",z0=W0+" Watch",ya="Safari",gs="BlackBerry",q0="Samsung",Z0=q0+"Browser",G0=q0+" Internet",si="Chrome",L2=si+" OS",K0=si+" "+ru,Mg="Internet Explorer",Y0=Mg+" "+$t,Pg="Opera",N2=Pg+" Mini",Og="Edge",X0="Microsoft "+Og,hs="Firefox",J0=hs+" "+ru,ba="Nintendo",_a="PlayStation",fs="Xbox",Q0=Fr+" "+$t,ex=$t+" "+ya,oa="Windows",Ef=oa+" Phone",Z_="Nokia",Cf="Ouya",tx="Generic",F2=tx+" "+$t.toLowerCase(),rx=tx+" "+va.toLowerCase(),Af="Konqueror",ct="(\\d+(\\.\\d+)?)",rf=new RegExp("Version/"+ct),D2=new RegExp(fs,"i"),H2=new RegExp(_a+" \\w+","i"),B2=new RegExp(ba+" \\w+","i"),Lg=new RegExp(gs+"|PlayBook|BB10","i"),V2={"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"},Gc,G_,nf,U2=(r,e)=>e&&fe(e,W0)||(function(t){return fe(t,ya)&&!fe(t,si)&&!fe(t,Fr)})(r),nx=function(r,e){return e=e||"",fe(r," OPR/")&&fe(r,"Mini")?N2:fe(r," OPR/")?Pg:Lg.test(r)?gs:fe(r,"IE"+$t)||fe(r,"WPDesktop")?Y0:fe(r,Z0)?G0:fe(r,Og)||fe(r,"Edg/")?X0:fe(r,"FBIOS")?"Facebook "+$t:fe(r,"UCWEB")||fe(r,"UCBrowser")?"UC Browser":fe(r,"CriOS")?K0:fe(r,"CrMo")||fe(r,si)?si:fe(r,Fr)&&fe(r,ya)?Q0:fe(r,"FxiOS")?J0:fe(r.toLowerCase(),Af.toLowerCase())?Af:U2(r,e)?fe(r,$t)?ex:ya:fe(r,hs)?hs:fe(r,"MSIE")||fe(r,"Trident/")?Mg:fe(r,"Gecko")?hs:""},j2={[Y0]:[new RegExp("rv:"+ct)],[X0]:[new RegExp(Og+"?\\/"+ct)],[si]:[new RegExp("("+si+"|CrMo)\\/"+ct)],[K0]:[new RegExp("CriOS\\/"+ct)],"UC Browser":[new RegExp("(UCBrowser|UCWEB)\\/"+ct)],[ya]:[rf],[ex]:[rf],[Pg]:[new RegExp("(Opera|OPR)\\/"+ct)],[hs]:[new RegExp(hs+"\\/"+ct)],[J0]:[new RegExp("FxiOS\\/"+ct)],[Af]:[new RegExp("Konqueror[:/]?"+ct,"i")],[gs]:[new RegExp(gs+" "+ct),rf],[Q0]:[new RegExp("android\\s"+ct,"i")],[G0]:[new RegExp(Z0+"\\/"+ct)],[Mg]:[new RegExp("(rv:|MSIE )"+ct)],Mozilla:[new RegExp("rv:"+ct)]},W2=function(r,e){var t=nx(r,e),n=j2[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},K_=[[new RegExp(fs+"; "+fs+" (.*?)[);]","i"),r=>[fs,r&&r[1]||""]],[new RegExp(ba,"i"),[ba,""]],[new RegExp(_a,"i"),[_a,""]],[Lg,[gs,""]],[new RegExp(oa,"i"),(r,e)=>{if(/Phone/.test(e)||/WPDesktop/.test(e))return[Ef,""];if(new RegExp($t).test(e)&&!/IEMobile\b/.test(e))return[oa+" "+$t,""];var t=/Windows NT ([0-9.]+)/i.exec(e);if(t&&t[1]){var n=t[1],i=V2[n]||"";return/arm/i.test(e)&&(i="RT"),[oa,i]}return[oa,""]}],[/((iPhone|iPad|iPod).*?OS (\d+)_(\d+)_?(\d+)?|iPhone)/,r=>{if(r&&r[3]){var e=[r[3],r[4],r[5]||"0"];return[ru,e.join(".")]}return[ru,""]}],[/(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("("+Fr+" (\\d+)\\.(\\d+)\\.?(\\d+)?|"+Fr+")","i"),r=>{if(r&&r[2]){var e=[r[2],r[3],r[4]||"0"];return[Fr,e.join(".")]}return[Fr,""]}],[/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/,[L2,""]],[/Linux|debian/i,["Linux",""]]],Y_=function(r){return B2.test(r)?ba:H2.test(r)?_a:D2.test(r)?fs:new RegExp(Cf,"i").test(r)?Cf:new RegExp("("+Ef+"|WPDesktop)","i").test(r)?Ef:/iPad/.test(r)?j0:/iPod/.test(r)?"iPod Touch":/iPhone/.test(r)?"iPhone":/(watch)(?: ?os[,/]|\d,\d\/)[\d.]+/i.test(r)?z0:Lg.test(r)?gs:/(kobo)\s(ereader|touch)/i.test(r)?"Kobo":new RegExp(Z_,"i").test(r)?Z_:/(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)?Fr:U0:new RegExp("(pda|"+$t+")","i").test(r)?F2:new RegExp(va,"i").test(r)&&!new RegExp(va+" pc","i").test(r)?rx:""},z2=r=>r instanceof Error;function q2(r){var e=globalThis._posthogChunkIds;if(e){var t=Object.keys(e);return nf&&t.length===G_||(G_=t.length,nf=t.reduce(((n,i)=>{Gc||(Gc={});var s=Gc[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,Gc[i]=[c,u];break}}return n}),{})),nf}}var Tf=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 us((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 us((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:q2(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)})}},ms="?";function Rf(r,e,t,n,i){var s={platform:r,filename:e,function:t==="<anonymous>"?ms:t,in_app:!0};return B(n)||(s.lineno=n),B(i)||(s.colno=i),s}var ix=(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]:ms,t?"safari-extension:"+e:"safari-web-extension:"+e]:[r,e]},Z2=/^\s*at (\S+?)(?::(\d+))(?::(\d+))\s*$/i,G2=/^\s*at (?:(.+?\)(?: \[.+\])?|.*?) ?\((?:address at )?)?(?:async )?((?:<anonymous>|[-a-z]+:|.*bundle|\/)?.*?)(?::(\d+))?(?::(\d+))?\)?\s*$/i,K2=/\((\S*)(?::(\d+))(?::(\d+))\)/,Y2=(r,e)=>{var t=Z2.exec(r);if(t){var[,n,i,s]=t;return Rf(e,n,ms,+i,+s)}var o=G2.exec(r);if(o){if(o[2]&&o[2].indexOf("eval")===0){var a=K2.exec(o[2]);a&&(o[2]=a[1],o[3]=a[2],o[4]=a[3])}var[l,c]=ix(o[1]||ms,o[2]);return Rf(e,c,l,o[3]?+o[3]:void 0,o[4]?+o[4]:void 0)}},X2=/^\s*(.*?)(?:\((.*?)\))?(?:^|@)?((?:[-a-z]+)?:\/.*?|\[native code\]|[^@]*(?:bundle|\d+\.js)|\/[\w\-. /=]+)(?::(\d+))?(?::(\d+))?\s*$/i,J2=/(\S+) line (\d+)(?: > eval line \d+)* > eval/i,Q2=(r,e)=>{var t=X2.exec(r);if(t){if(t[3]&&t[3].indexOf(" > eval")>-1){var n=J2.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]||ms;return[s,i]=ix(s,i),Rf(e,i,s,t[4]?+t[4]:void 0,t[5]?+t[5]:void 0)}},X_=/\(error: (.*)\)/,J_=50;function eT(){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=X_.test(c)?c.replace(X_,"$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>=J_)break}}}return(function(f){if(!f.length)return[];var v=Array.from(f);return v.reverse(),v.slice(0,J_).map((g=>{return W({},g,{filename:g.filename||(m=v,m[m.length-1]||{}).filename,function:g.function||ms});var m}))})(o)}})("web:javascript",Y2,Q2)}var If=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 tu(e,"DOMException")}isDOMError(e){return tu(e,"DOMError")}},$f=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}},Mf=class{constructor(){}match(e){return tu(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}}},tT=/^(?:[Uu]ncaught (?:exception: )?)?(?:((?:Eval|Internal|Range|Reference|Syntax|Type|URI|)Error): )?(.*)$/i,Pf=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(tT);return i&&(t=i[1],n=i[2]),[t,n]}},rT=["fatal","error","warning","log","info","debug"];function sx(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 Of=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 V0(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: "+sx(e)}isSeverityLevel(e){return ze(e)&&!wf(e)&&rT.indexOf(e)>=0}getErrorPropertyFromObject(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t)){var n=e[t];if(z2(n))return n}}getObjectClassName(e){try{var t=Object.getPrototypeOf(e);return t?t.constructor.name:void 0}catch{return}}},Lf=class{match(e){return V0(e)}coerce(e,t){var n,i=e.constructor.name;return{type:i,value:i+" captured as exception with keys: "+sx(e),stack:(n=t.syntheticException)==null?void 0:n.stack,synthetic:!0}}},Nf=class{match(e){return Sf(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}}},Ff=class{match(e){return tu(e,"PromiseRejectionEvent")}coerce(e,t){var n,i=this.getUnhandledRejectionReason(e);return Sf(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(Sf(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}},ox=function(r,e){var{debugEnabled:t}=e===void 0?{}:e,n={k:function(i){if(E&&(Pr.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)=>ox(r+" "+i,s)};return n},U=ox("[PostHog.js]"),Le=U.createLogger,nT=Le("[ExternalScriptsLoader]"),Q_=(r,e,t)=>{if(r.config.disable_external_dependency_loading)return nT.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);Q_(r,s,t)},re.__PosthogExtensions__.loadSiteApp=(r,e,t)=>{var n=r.requestRouter.endpointFor("api",e);Q_(r,n,t)};var nu={};function un(r,e,t){if(xe(r)){if(U_&&r.forEach===U_)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)===nu)return}}}function Ae(r,e,t){if(!ge(r)){if(xe(r))return un(r,e,t);if($2(r)){for(var n of r.entries())if(e.call(t,n[1],n[0])===nu)return}else for(var i in r)if(B0.call(r,i)&&e.call(t,r[i],i)===nu)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},ys=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 Qc(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 e0=function(r){try{return r()}catch{return}},iT=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)}}},Ng=function(r){var e={};return Ae(r,(function(t,n){(ze(t)&&t.length>0||Hr(t))&&(e[n]=t)})),e};function sT(r,e){return t=r,n=s=>ze(s)&&!zt(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 oT=["herokuapp.com","vercel.app","netlify.app"];function aT(r){var e=r?.hostname;if(!ze(e))return!1;var t=e.split(".").slice(-2).join(".");for(var n of oT)if(t===n)return!1;return!0}function ax(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 lx="$people_distinct_id",aa="__alias",la="__timers",t0="$autocapture_disabled_server_side",Df="$heatmaps_enabled_server_side",r0="$exception_capture_enabled_server_side",Hf="$error_tracking_suppression_rules",n0="$error_tracking_capture_extension_exceptions",i0="$web_vitals_enabled_server_side",cx="$dead_clicks_enabled_server_side",s0="$product_tours_enabled_server_side",o0="$web_vitals_allowed_metrics",sf="$session_recording_remote_config",iu="$sesid",ux="$session_is_sampled",ps="$enabled_feature_flags",ca="$early_access_features",Bf="$feature_flag_details",ua="$stored_person_properties",ii="$stored_group_properties",Vf="$surveys",su="$flag_call_reported",Or="$user_state",Uf="$client_session_props",jf="$capture_rate_limit",Wf="$initial_campaign_params",zf="$initial_referrer_info",ou="$initial_person_info",au="$epp",dx="__POSTHOG_TOOLBAR__",Xo="$posthog_cookieless",lT=[lx,aa,"__cmpns",la,"$session_recording_enabled_server_side",Df,iu,ps,Hf,Or,ca,Bf,ii,ua,Vf,su,Uf,jf,Wf,zf,au,ou,"$conversations_widget_session_id","$conversations_ticket_id","$conversations_widget_state","$conversations_user_traits"];function a0(r){return r instanceof Element&&(r.id===dx||!(r.closest==null||!r.closest(".toolbar-global-fade-container")))}function Eu(r){return!!r&&r.nodeType===1}function dn(r,e){return!!r&&!!r.tagName&&r.tagName.toLowerCase()===e.toLowerCase()}function px(r){return!!r&&r.nodeType===3}function hx(r){return!!r&&r.nodeType===11}function Fg(r){return r?Su(r).split(/\s+/):[]}function l0(r){var e=E?.location.href;return!!(e&&r&&r.some((t=>e.match(t))))}function lu(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 Fg(e)}function fx(r){return ge(r)?null:Su(r).split(/(\s+)/).filter((e=>xa(e))).join("").replace(/[\r\n]/g," ").replace(/[ ]+/g," ").substring(0,255)}function Sa(r){var e="";return qf(r)&&!bx(r)&&r.childNodes&&r.childNodes.length&&Ae(r.childNodes,(function(t){var n;px(t)&&t.textContent&&(e+=(n=fx(t.textContent))!==null&&n!==void 0?n:"")})),Su(e)}function gx(r){return B(r.target)?r.srcElement||null:(e=r.target)!=null&&e.shadowRoot?r.composedPath()[0]||null:r.target||null;var e}var Dg=["a","button","form","input","select","textarea","label"];function mx(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 vx(r){var e=r.parentNode;return!(!e||!Eu(e))&&e}var cT=["next","previous","prev",">","<"],c0=10,u0=[".ph-no-rageclick",".ph-no-capture"];function uT(r,e){if(!E||Hg(r))return!1;var t,n,i;if(Dr(e)?(t=!!e&&u0,n=void 0):(t=(i=e?.css_selector_ignorelist)!==null&&i!==void 0?i:u0,n=e?.content_ignorelist),t===!1)return!1;var{targetElementList:s}=yx(r,!1);return!(function(o,a){if(o===!1||B(o))return!1;var l;if(o===!0)l=cT;else{if(!xe(o))return!1;if(o.length>c0)return U.error("[PostHog] content_ignorelist array cannot exceed "+c0+" 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:Sa(o).toLowerCase(),ariaLabel:((a=o.getAttribute("aria-label"))==null?void 0:a.toLowerCase().trim())||""}})))&&!mx(s,t)}var Hg=r=>!r||dn(r,"html")||!Eu(r),yx=(r,e)=>{if(!E||Hg(r))return{parentIsUsefulElement:!1,targetElementList:[]};for(var t=!1,n=[r],i=r;i.parentNode&&!dn(i,"body");)if(hx(i.parentNode))n.push(i.parentNode.host),i=i.parentNode.host;else{var s=vx(i);if(!s)break;if(e||Dg.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 dT(r,e,t,n,i){var s,o,a,l;if(t===void 0&&(t=void 0),!E||Hg(r)||(s=t)!=null&&s.url_allowlist&&!l0(t.url_allowlist)||(o=t)!=null&&o.url_ignorelist&&l0(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}=yx(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)||!mx(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&&(Dg.indexOf(f)>-1||r.getAttribute("contenteditable")==="true")}}function qf(r){for(var e=r;e.parentNode&&!dn(e,"body");e=e.parentNode){var t=lu(e);if(fe(t,"ph-sensitive")||fe(t,"ph-no-capture"))return!1}if(fe(lu(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 bx(r){return!!(dn(r,"input")&&!["button","checkbox","submit","reset"].includes(r.type)||dn(r,"select")||dn(r,"textarea")||r.getAttribute("contenteditable")==="true")}var _x="(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})",pT=new RegExp("^(?:"+_x+")$"),hT=new RegExp(_x),xx="\\d{3}-?\\d{2}-?\\d{4}",fT=new RegExp("^("+xx+")$"),gT=new RegExp("("+xx+")");function xa(r,e){return e===void 0&&(e=!0),!(ge(r)||ze(r)&&(r=Su(r),(e?pT:hT).test((r||"").replace(/[- ]/g,""))||(e?fT:gT).test(r)))}function wx(r){var e=Sa(r);return xa(e=(e+" "+Sx(r)).trim())?e:""}function Sx(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=Sa(t);e=(e+" "+i).trim(),t.childNodes&&t.childNodes.length&&(e=(e+" "+Sx(t)).trim())}catch(s){U.error("[AutoCapture]",s)}})),e}function mT(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 Qc(l).sort(((u,p)=>{var[h]=u,[f]=p;return h.localeCompare(f)})).forEach((u=>{var[p,h]=u;return c[d0(p.toString())]=d0(h.toString())})),o+=":",o+=Qc(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:vT(t),attr_id:t.attr__id,nth_child:t.nth_child,nth_of_type:t.nth_of_type,attributes:{}};return Qc(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 d0(r){return r.replace(/"|\\"/g,'\\"')}function vT(r){var e=r.attr__class;return e?xe(e)?e:Fg(e):void 0}var cu=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}},uu=r=>{var e=H?.createElement("a");return B(e)?null:(e.href=r,e)},yT=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)},du=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," ")},ka=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},pu=function(r,e){var t=r.match(new RegExp(e+"=([^&]*)"));return t?t[1]:null},of="$copy_autocapture",p0=Le("[AutoCapture]");function af(r,e){return e.length>r?e.slice(0,r)+"...":e}function bT(r){if(r.previousElementSibling)return r.previousElementSibling;var e=r;do e=e.previousSibling;while(e&&!Eu(e));return e}function _T(r,e,t,n){var i=r.tagName.toLowerCase(),s={tag_name:i};Dg.indexOf(i)>-1&&!t&&(i.toLowerCase()==="a"||i.toLowerCase()==="button"?s.$el_text=af(1024,wx(r)):s.$el_text=af(1024,Sa(r)));var o=lu(r);o.length>0&&(s.classes=o.filter((function(u){return u!==""}))),Ae(r.attributes,(function(u){var p;if((!bx(r)||["name","id","class","aria-label"].indexOf(u.name)!==-1)&&(n==null||!n.includes(u.name))&&!e&&xa(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=Fg(h).join(" ")),s["attr__"+u.name]=af(1024,h)}}));for(var a=1,l=1,c=r;c=bT(c);)a++,c.tagName===r.tagName&&l++;return s.nth_child=a,s.nth_of_type=l,s}function xT(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");)hx(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=qf(b);b.tagName.toLowerCase()==="a"&&(v=b.getAttribute("href"),v=w&&v&&xa(v)&&v),fe(lu(b),"ph-no-capture")&&(g=!0),h.push(_T(b,s,o,a));var C=(function(_){if(!qf(_))return{};var A={};return Ae(_.attributes,(function($){if($.name&&$.name.indexOf("data-ph-capture-attribute")===0){var R=$.name.replace("data-ph-capture-attribute-",""),P=$.value;R&&P&&xa(P)&&(A[R]=P)}})),A})(b);Fe(f,C)})),g)return{props:{},explicitNoCapture:g};if(o||(r.tagName.toLowerCase()==="a"||r.tagName.toLowerCase()==="button"?h[0].$el_text=wx(r):h[0].$el_text=Sa(r)),v){var m,y;h[0].attr__href=v;var x=(m=uu(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:mT(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 Zf=class{constructor(e){this.P=!1,this.T=null,this.I=!1,this.instance=e,this.rageclicks=new cu(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){p0.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,of)};Ue(H,"copy",t,{capture:!0}),Ue(H,"cut",t,{capture:!0})}}}else p0.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({[t0]:!!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[t0],i=this.T;if(zt(i)&&!Dr(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=gx(e);px(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())&&uT(i,this.instance.config.rageclick)&&this.O(e,"$rageclick");var s=t===of;if(i&&dT(i,e,this.R,s,s?["copy","cut"]:void 0)){var{props:o,explicitNoCapture:a}=xT(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===of){var c,u=fx(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 Hr(r)&&isFinite(r)&&Math.floor(r)===r});var h0="0123456789abcdef",Gf=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+h0.charAt(this.bytes[t]>>>4)+h0.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}},Kf=class{constructor(){this.A=0,this.j=0,this.D=new Yf}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 Gf.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())}},f0,kx=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&&(kx=r=>crypto.getRandomValues(r));var Yf=class{constructor(){this.N=new Uint32Array(8),this.U=1/0}nextUint32(){return this.U>=this.N.length&&(kx(this.N),this.U=0),this.N[this.U++]}},ln=()=>wT().toString(),wT=()=>(f0||(f0=new Kf)).generate(),Jo="",ST=/[a-z0-9][a-z0-9-]+\.[a-z]{2,}$/i;function kT(r,e){if(e){var t=(function(i,s){if(s===void 0&&(s=H),Jo)return Jo;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();!Jo&&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",Jo=c)}return Jo})(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 dr={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(dr.q(r))||{}}catch{}return e},G:function(r,e,t,n,i){if(H)try{var s="",o="",a=kT(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{dr.G(r,"",-1,e)}catch{return}}},lf=null,Me={H:function(){if(!zt(lf))return lf;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"),lf=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)}}},ET=["$device_id","distinct_id",iu,ux,au,ou],Kc={},CT={H:function(){return!0},B:function(r){U.error("memoryStorage error: "+r)},q:function(r){return Kc[r]||null},W:function(r){return Kc[r]||null},G:function(r,e){Kc[r]=e},V:function(r){delete Kc[r]}},ri=null,Qe={H:function(){if(!zt(ri))return ri;if(ri=!0,B(E))ri=!1;else try{var r="__support__";Qe.G(r,"xyz"),Qe.q(r)!=='"xyz"'&&(ri=!1),Qe.V(r)}catch{ri=!1}return ri},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)}}},Lr=(function(r){return r[r.PENDING=-1]="PENDING",r[r.DENIED=0]="DENIED",r[r.GRANTED=1]="GRANTED",r})({}),Xf=class{constructor(e){this._instance=e}get R(){return this._instance.config}get consent(){return this.J()?Lr.DENIED:this.K}isOptedOut(){return this.R.cookieless_mode==="always"||this.consent===Lr.DENIED||this.consent===Lr.PENDING&&(this.R.opt_out_capturing_by_default||this.R.cookieless_mode==="on_reject")}isOptedIn(){return!this.isOptedOut()}isExplicitlyOptedOut(){return this.consent===Lr.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 tf(e)?Lr.GRANTED:fe(O2,e)?Lr.DENIED:Lr.PENDING}get Y(){if(!this.Z){var e=this.R.opt_out_capturing_persistence_type;this.Z=e==="localStorage"?Me:dr;var t=e==="localStorage"?dr:Me;t.q(this.X)&&(this.Z.q(this.X)||this.optInOut(tf(t.q(this.X))),t.V(this.X,this.R.cross_subdomain_cookie))}return this.Z}J(){return!!this.R.respect_dnt&&!!ax([St?.doNotTrack,St?.msDoNotTrack,re.doNotTrack],(e=>tf(e)))}},Yc=Le("[Dead Clicks]"),AT=()=>!0,TT=r=>{var e,t=!((e=r.instance.persistence)==null||!e.get_property(cx)),n=r.instance.config.capture_dead_clicks;return Dr(n)?n:!!We(n)||t},hu=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({[cx]: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?Yc.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),Yc.info("starting...")}}else Yc.error("`document` not found. Cannot start.")}stop(){this.tt&&(this.tt.stop(),this.tt=void 0,Yc.info("stopping..."))}},Qo=Le("[ExceptionAutocapture]"),Jf=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){Qo.error("failed to start",c),this.ut()}}},this._instance=e,this.ht=!((t=this._instance.persistence)==null||!t.props[r0]),this.dt=new kf({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:Qo}),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?(Qo.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 Qo.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({[r0]: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)?Qo.info("Skipping exception capture because of client rate limiting.",{exception:i}):this._instance.exceptions.sendExceptionEvent(e)}};function g0(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 Qf=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__||g0(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__||g0(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)}}}},cf=Le("[SegmentIntegration]");function RT(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(Or,"identified")),i()},a=s.user();"then"in a&&cn(a.then)?a.then(o):o(a)})(r,(()=>{t.register((n=>{Promise&&Promise.resolve||cf.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()||(cf.info("No userId set, resetting PostHog"),n.reset()),s.event.userId&&s.event.userId!==n.get_distinct_id()&&(cf.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 Ex="posthog-js";function Cx(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 eg=class{constructor(e,t,n,i,s,o){this.name=Ex,this.setupOnce=function(a){a(Cx(e,{organization:t,projectId:n,prefix:i,severityAllowList:s,sendExceptionsToPostHog:o==null||o}))}}},IT=E!=null&&E.location?pu(E.location.hash,"__posthog")||pu(location.hash,"state"):null,m0="_postHogToolbarParams",v0=Le("[Toolbar]"),an=(function(r){return r[r.UNINITIALIZED=0]="UNINITIALIZED",r[r.LOADING=1]="LOADING",r[r.LOADED=2]="LOADED",r})(an||{}),tg=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=IT||pu(e.hash,"__posthog")||pu(e.hash,"state"),o=s?e0((()=>JSON.parse(atob(decodeURIComponent(s)))))||e0((()=>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(m0)||"{}")).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):v0.warn("No toolbar load function found")}loadToolbar(e){var t=!(H==null||!H.getElementById(dx));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(m0,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 v0.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)}},$T=Le("[TracingHeaders]"),rg=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 $T.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)}},Xc="https?://(.*)",bs=["gclid","gclsrc","dclid","gbraid","wbraid","fbclid","msclkid","twclid","li_fat_id","igshid","ttclid","rdt_cid","epik","qclid","sccid","irclid","_kx"],MT=ys(["utm_source","utm_medium","utm_campaign","utm_content","utm_term","gad_source","mc_cid"],bs),Ea="<masked>",PT=["li_fat_id"];function Ax(r,e,t){if(!H)return{};var n,i=e?ys([],bs,t||[]):[],s=Tx(ka(H.URL,i,Ea),r),o=(n={},Ae(PT,(function(a){var l=dr.q(a);n[a]=l||null})),n);return Fe(o,s)}function Tx(r,e){var t=MT.concat(e||[]),n={};return Ae(t,(function(i){var s=du(r,i);n[i]=s||null})),n}function Rx(r){var e=(function(s){return s?s.search(Xc+"google.([^/?]*)")===0?"google":s.search(Xc+"bing.com")===0?"bing":s.search(Xc+"yahoo.com")===0?"yahoo":s.search(Xc+"duckduckgo.com")===0?"duckduckgo":null:null})(r),t=e!="yahoo"?"q":"p",n={};if(!zt(e)){n.$search_engine=e;var i=H?du(H.referrer,t):"";i.length&&(n.ph_keyword=i)}return n}function y0(){return navigator.language||navigator.userLanguage}function Ix(){return H?.referrer||"$direct"}function $x(r,e){var t=r?ys([],bs,e||[]):[],n=et?.href.substring(0,1e3);return{r:Ix().substring(0,1e3),u:n?ka(n,t,Ea):void 0}}function Mx(r){var e,{r:t,u:n}=r,i={$referrer:t,$referring_domain:t==null?void 0:t=="$direct"?"$direct":(e=uu(t))==null?void 0:e.host};if(n){i.$current_url=n;var s=uu(n);i.$host=s?.host,i.$pathname=s?.pathname;var o=Tx(n);Fe(i,o)}if(t){var a=Rx(t);Fe(i,a)}return i}function Px(){try{return Intl.DateTimeFormat().resolvedOptions().timeZone}catch{return}}function OT(){try{return new Date().getTimezoneOffset()}catch{return}}function LT(r,e){if(!yt)return{};var t,n,i,s=r?ys([],bs,e||[]):[],[o,a]=(function(l){for(var c=0;c<K_.length;c++){var[u,p]=K_[c],h=u.exec(l),f=h&&(cn(p)?p(h,l):p);if(f)return f}return["",""]})(yt);return Fe(Ng({$os:o,$os_version:a,$browser:nx(yt,navigator.vendor),$device:Y_(yt),$device_type:(n=yt,i=Y_(n),i===j0||i===U0||i==="Kobo"||i==="Kindle Fire"||i===rx?va:i===ba||i===fs||i===_a||i===Cf?"Console":i===z0?"Wearable":i?$t:"Desktop"),$timezone:Px(),$timezone_offset:OT()}),{$current_url:ka(et?.href,s,Ea),$host:et?.host,$pathname:et?.pathname,$raw_user_agent:yt.length>1e3?yt.substring(0,997)+"...":yt,$browser_version:W2(yt,navigator.vendor),$browser_language:y0(),$browser_language_prefix:(t=y0(),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:Pr.LIB_VERSION,$insert_id:Math.random().toString(36).substring(2,10)+Math.random().toString(36).substring(2,10),$time:Date.now()/1e3})}var nn=Le("[Web Vitals]"),b0=9e5,ng=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[i0]),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[o0])||["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)&&Hr(this._instance.config.capture_performance.__web_vitals_max_value)?this._instance.config.capture_performance.__web_vitals_max_value:b0;return 0<e&&e<=6e4?b0: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:Dr(this._instance.config.capture_performance)?this._instance.config.capture_performance:void 0;return Dr(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({[i0]:t}),this._instance.persistence.register({[o0]: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?ys([],bs,n||[]):[];return ka(e,i,Ea)}nn.error("Could not determine current URL")}},NT=Le("[Heatmaps]");function _0(r){return We(r)&&"clientX"in r&&"clientY"in r&&Hr(r.clientX)&&Hr(r.clientY)}var ig=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[Df]),this.rageclicks=new cu(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;NT.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({[Df]: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 hu(this.instance,AT,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&&Eu(u)&&!dn(u,"body");){if(u===c)return!1;if(fe(l,E?.getComputedStyle(u).position))return!0;u=vx(u)}return!1})(gx(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"),!a0(e.target)&&_0(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){!a0(e.target)&&_0(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?ys([],bs,i||[]):[],o=ka(t,s,Ea);this.N=this.N||{},this.N[o]||(this.N[o]=[]),this.N[o].push(e)}}Lt(){this.N&&!ds(this.N)&&this.instance.capture("$$heatmap",{$heatmap_data:this.getAndClearBuffer()})}},fu=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:pr(a/o,0,1,U),f=o<=1?1:pr(l/o,0,1,U),v=c<=1?1:pr(u/c,0,1,U),g=c<=1?1:pr(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 Nr=(function(r){return r.GZipJS="gzip-js",r.Base64="base64",r})({}),Mt=Uint8Array,ut=Uint16Array,vs=Uint32Array,Bg=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]),Vg=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]),x0=new Mt([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Ox=function(r,e){for(var t=new ut(31),n=0;n<31;++n)t[n]=e+=1<<r[n-1];var i=new vs(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]},Lx=Ox(Bg,2),FT=Lx[0],sg=Lx[1];FT[28]=258,sg[258]=28;for(og=Ox(Vg,0)[1],gu=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,gu[Te]=((65280&sn)>>>8|(255&sn)<<8)>>>1;var sn,og,gu,Te,fa=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[gu[p]>>>l]=c}else for(o=new ut(n),i=0;i<n;++i)o[i]=gu[a[r[i]-1]++]>>>15-r[i];return o},oi=new Mt(288);for(Te=0;Te<144;++Te)oi[Te]=8;for(Te=144;Te<256;++Te)oi[Te]=9;for(Te=256;Te<280;++Te)oi[Te]=7;for(Te=280;Te<288;++Te)oi[Te]=8;var mu=new Mt(32);for(Te=0;Te<32;++Te)mu[Te]=5;var DT=fa(oi,9,0),HT=fa(mu,5,0),Nx=function(r){return(r/8>>0)+(7&r&&1)},Fx=function(r,e,t){(t==null||t>r.length)&&(t=r.length);var n=new(r instanceof ut?ut:r instanceof vs?vs:Mt)(t-e);return n.set(r.subarray(e,t)),n},$r=function(r,e,t){t<<=7&e;var n=e/8>>0;r[n]|=t,r[n+1]|=t>>>8},ea=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},uf=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=ag(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]},ag=function(r,e,t){return r.s==-1?Math.max(ag(r.l,e,t+1),ag(r.r,e,t+1)):e[r.s]=t},w0=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]},ta=function(r,e){for(var t=0,n=0;n<e.length;++n)t+=r[n]*e[n];return t},lg=function(r,e,t){var n=t.length,i=Nx(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)},S0=function(r,e,t,n,i,s,o,a,l,c,u){$r(e,u++,t),++i[256];for(var p=uf(i,15),h=p[0],f=p[1],v=uf(s,15),g=v[0],m=v[1],y=w0(h),x=y[0],S=y[1],b=w0(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 $=uf(_,7),R=$[0],P=$[1],Y=19;Y>4&&!R[x0[Y-1]];--Y);var F,L,G,K,le=c+5<<3,j=ta(i,oi)+ta(s,mu)+o,te=ta(i,h)+ta(s,g)+o+14+3*Y+ta(_,R)+(2*_[16]+3*_[17]+7*_[18]);if(le<=j&&le<=te)return lg(e,u,r.subarray(l,l+c));if($r(e,u,1+(te<j)),u+=2,te<j){F=fa(h,f,0),L=h,G=fa(g,m,0),K=g;var De=fa(R,P,0);for($r(e,u,S-257),$r(e,u+5,C-1),$r(e,u+10,Y-4),u+=14,A=0;A<Y;++A)$r(e,u+3*A,R[x0[A]]);u+=3*Y;for(var V=[x,w],J=0;J<2;++J){var Q=V[J];for(A=0;A<Q.length;++A){var ue=31&Q[A];$r(e,u,De[ue]),u+=R[ue],ue>15&&($r(e,u,Q[A]>>>5&127),u+=Q[A]>>>12)}}}else F=DT,L=oi,G=HT,K=mu;for(A=0;A<a;++A)if(n[A]>255){ue=n[A]>>>18&31,ea(e,u,F[ue+257]),u+=L[ue+257],ue>7&&($r(e,u,n[A]>>>23&31),u+=Bg[ue]);var _e=31&n[A];ea(e,u,G[_e]),u+=K[_e],_e>3&&(ea(e,u,n[A]>>>5&8191),u+=Vg[_e])}else ea(e,u,F[n[A]]),u+=L[n[A]];return ea(e,u,F[256]),u+L[256]},BT=new vs([65540,131080,131088,131104,262176,1048704,1048832,2114560,2117632]),VT=(function(){for(var r=new vs(256),e=0;e<256;++e){for(var t=e,n=9;--n;)t=(1&t&&3988292384)^t>>>1;r[e]=t}return r})(),UT=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=lg(f,v,s.subarray(g,m)):(f[g]=u,v=lg(f,v,s.subarray(g,p)))}else{for(var y=BT[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($u){return(s[$u]^s[$u+1]<<_^s[$u+2]<<A)&b},R=new vs(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=$(g),te=32767&g,De=C[j];if(w[te]=De,C[j]=te,K<=g){var V=p-g;if((F>7e3||G>24576)&&V>423){v=S0(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==$(g-me))for(var Ie=Math.min(x,V)-1,dt=Math.min(32767,g),qt=Math.min(258,V);me<=dt&&--_e&&te!=De;){if(s[g+Q]==s[g+Q-me]){for(var Zt=0;Zt<qt&&s[g+Zt]==s[g+Zt-me];++Zt);if(Zt>Q){if(Q=Zt,ue=me,Zt>Ie)break;var xs=Math.min(me,Zt-2),Ne=0;for(J=0;J<xs;++J){var ws=g-me+J+32768&32767,Zg=ws-w[ws]+32768&32767;Zg>Ne&&(Ne=Zg,De=ws)}}}me+=(te=De)-(De=w[te])+32768&32767}if(ue){R[G++]=268435456|sg[Q]<<18|og[ue];var Gg=31&sg[Q],Kg=31&og[ue];L+=Bg[Gg]+Vg[Kg],++P[257+Gg],++Y[Kg],K=g+Q,++F}else R[G++]=s[g],++P[s[g]]}}v=S0(s,f,u,R,P,Y,L,G,le,g-le,v)}return Fx(h,0,l+Nx(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)},df=function(r,e,t){for(;t;++e)r[e]=t,t>>>=8};function jT(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=VT[255&c^l[u]]^c>>>8;a=c},d:function(){return 4294967295^a}}})(),n=r.length;t.p(r);var i,s=UT(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&&df(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),df(s,o-8,t.d()),df(s,o-4,n),s}var WT=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},j2=!!Bh||!!Hh,C_="text/plain",tu=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=m2(o);return l&&a.push(l),i+"?"+a.join("&")},Jo=(r,e)=>JSON.stringify(r,((t,n)=>typeof n=="bigint"?n.toString():n),e),Mh=r=>{var{data:e,compression:t}=r;if(e){if(t===$r.GZipJS){var n=V2((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)})(Jo(e)),{mtime:0}),i=new Blob([n],{type:C_});return{contentType:C_,body:i,estimatedSize:i.size}}if(t===$r.Base64){var s=(function(l){var c,u,p,h,f,v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",g=0,m=0,y="",x=[];if(!l)return l;l=U2(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})(Jo(e)),o=(l=>"data="+encodeURIComponent(typeof l=="string"?l:Jo(l)))(s);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}var a=Jo(e);return{contentType:"application/json",body:a,estimatedSize:new Blob([a]).size}}},Dc=[];Hh&&Dc.push({transport:"fetch",method:r=>{var e,t,{contentType:n,body:i,estimatedSize:s}=(e=Mh(r))!==null&&e!==void 0?e:{},o=new Headers;Re(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)}}Hh(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))}}),Bh&&Dc.push({transport:"XHR",method:r=>{var e,t=new Bh;t.open(r.method||"GET",r.url,!0);var{contentType:n,body:i}=(e=Mh(r))!==null&&e!==void 0?e:{};Re(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&&Dc.push({transport:"sendBeacon",method:r=>{var e=tu(r.url,{beacon:"1"});try{var t,{contentType:n,body:i}=(t=Mh(r))!==null&&t!==void 0?t:{},s=typeof i=="string"?new Blob([i],{type:n}):i;wt.sendBeacon(e,s)}catch{}}});var ru=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 Jo({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=>ru(t,n))))),not_regex:(r,e)=>e.every((t=>r.every((n=>!ru(t,n))))),icontains:(r,e)=>e.map(Nc).some((t=>r.map(Nc).some((n=>t.includes(n))))),not_icontains:(r,e)=>e.map(Nc).every((t=>r.map(Nc).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)))}))},Nc=r=>r.toLowerCase();function V0(r,e){return!r||Object.entries(r).every((t=>{var[n,i]=t,s=e?.[n];if(V(s)||Wt(s))return!1;var o=[String(s)],a=B0[i.operator];return!!a&&a(i.values,o)}))}var Ph=Le("[Error tracking]"),If=class{constructor(e){var t,n;this.Zt=[],this.ti=new Gh([new Yh,new nf,new Jh,new Xh,new tf,new ef,new Qh,new rf],JA()),this._instance=e,this.Zt=(t=(n=this._instance.persistence)==null?void 0:n.get_property(of))!==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({[of]: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 Ph.info("Skipping exception capture because a suppression rule matched");if(!this.ii&&this.si(t))return void Ph.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ni(t))return void Ph.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 We(s)&&s.length>0&&n.$exception_types.push(s),We(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=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=Le("[FeatureFlags]"),jo=Le("[FeatureFlags]",{debugEnabled:!0}),Oh="$active_feature_flags",Ji="$override_feature_flags",R_="$feature_flag_payloads",Wo="$override_feature_flag_payloads",T_="$feature_flag_request_id",I_="$feature_flag_evaluated_at",$_=r=>{var e={};for(var[t,n]of Fc(r||{}))n&&(e[t]=n);return e},W2=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},z2=(function(r){return r.FeatureFlags="feature_flags",r.Recordings="recordings",r})({}),$f=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(af),t=this._instance.get_property(Ji),n=this._instance.get_property(Wo);if(!n&&!t)return e||{};var i=Ne({},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=V(u)?(a=c?.enabled)!==null&&a!==void 0&&a:!!u,h=V(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(is),t=this._instance.get_property(Ji);if(!t)return e||{};for(var n=Ne({},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(Wo);if(!t)return e||{};for(var n=Ne({},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(Xo)||{}),group_properties:this._instance.get_property(Qn)};Wt(i)||V(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=L0()),this.li=!0,this._instance._send_request({method:"POST",url:c,data:s,compression:this._instance.config.disable_compression?void 0:$r.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(z2.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(jc)||{};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({[jc]: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};V(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),V(b?.original_variant)&&V(b?.original_enabled)||(w.$feature_flag_original_response=V(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(!V(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:$r.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 V(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=W2(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({[Oh]:f,[is]: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({[Oh]:Object.keys($_(S)),[is]:S||{},[R_]:b||{},[af]: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(Ji),this._instance.persistence.unregister(Wo),this.wi(),jo.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(Ji),jo.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({[Ji]:i})}else this._instance.persistence.register({[Ji]:n.flags});jo.info("Flag overrides set",{flags:n.flags})}}return"payloads"in n&&(n.payloads===!1?(this._instance.persistence.unregister(Wo),jo.info("Payload overrides cleared")):n.payloads&&(this._instance.persistence.register({[Wo]:n.payloads}),jo.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(Yo)||[]).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({[Oh]:Object.keys($_(l)),[is]:l}),this.wi()}getEarlyAccessFeatures(e,t,n){t===void 0&&(t=!1);var i=this._instance.get_property(Yo),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(Yo),(l=this._instance.persistence)==null||l.register({[Yo]: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(Xo)||{};this._instance.register({[Xo]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetPersonPropertiesForFlags(){this._instance.unregister(Xo)}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}},q2=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],ra=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){q2.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=[...S2,...i];return W({},Me,{W:function(o){try{var a={};try{a=ar.W(o)||{}}catch{}var l=Ne(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&&ar.G(o,h,l,c,u,p)}catch(f){Me.B(f)}},V:function(o,a){try{E?.localStorage.removeItem(o),ar.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"&&Je.H()?Je:n==="memory"?k2:n==="cookie"?ar:t.H()?t:ar}properties(){var e={};return Re(this.props,(function(t,n){if(n===is&&je(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=o2)?l:zb&&o.indexOf===zb?o.indexOf(a)!=-1:(Re(o,(function(c){if(l||(l=c===a))return Vc})),l))||(e[n]=t);var o,a,l})),e}load(){if(!this.ki){var e=this.Y.W(this.$i);e&&(this.props=Ne({},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(je(e)){V(t)&&(t="None"),this.Pi=V(n)?this.Ci:n;var i=!1;if(Re(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(je(e)){this.Pi=V(t)?this.Ci:t;var n=!1;if(Re(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);ns(ng(e))||this.register(e),this.Ei=!0}}update_search_keyword(){var e;this.register((e=B?.referrer)?$0(e):{})}update_referrer_info(){var e;this.register_once({$referrer:M0(),$referring_domain:B!=null&&B.referrer&&((e=Gc(B.referrer))==null?void 0:e.host)||"$direct"},void 0)}set_initial_person_info(){this.props[df]||this.props[pf]||this.register_once({[Wc]:P0(this.R.mask_personal_data_properties,this.R.custom_personal_data_properties)},void 0)}get_initial_props(){var e={};Re([pf,df],(o=>{var a=this.props[o];a&&Re(a,(function(l,c){e["$initial_"+Vh(c)]=l}))}));var t,n,i=this.props[Wc];if(i){var s=(t=O0(i),n={},Re(t,(function(o,a){n["$initial_"+Vh(a)]=o})),n);Ne(e,s)}return e}safe_merge(e){return Re(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[Ko]||{};n[e]=t,this.props[Ko]=n,this.save()}remove_event_timer(e){var t=(this.props[Ko]||{})[e];return V(t)||(delete this.props[Ko][e],this.save()),t}get_property(e){return this.props[e]}set_property(e,t){this.props[e]=t,this.save()}},M_=Le("[Product Tours]"),Lh="ph_product_tours",Mf=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=te.__PosthogExtensions__)!=null&&t.generateProductTours?e():(n=te.__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=te.__PosthogExtensions__)!=null&&e.generateProductTours&&(this.Ri=te.__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[Lh];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 M_.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({[Lh]: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(Lh)}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)}},zo=(function(r){return r.Activation="events",r.Cancellation="cancelEvents",r})({}),o5=(function(r){return r.Button="button",r.Tab="tab",r.Selector="selector",r})({}),a5=(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})({}),l5=(function(r){return r.Top="top",r.Left="left",r.Right="right",r.Bottom="bottom",r})({}),Nh=(function(r){return r.Popover="popover",r.API="api",r.Widget="widget",r.ExternalSurvey="external_survey",r})({}),c5=(function(r){return r.Open="open",r.MultipleChoice="multiple_choice",r.SingleChoice="single_choice",r.Rating="rating",r.Link="link",r})({}),u5=(function(r){return r.NextQuestion="next_question",r.End="end",r.ResponseBased="response_based",r.SpecificQuestion="specific_question",r})({}),d5=(function(r){return r.Once="once",r.Recurring="recurring",r.Always="always",r})({}),Qo=(function(r){return r.SHOWN="survey shown",r.DISMISSED="survey dismissed",r.SENT="survey sent",r.ABANDONED="survey abandoned",r})({}),Fh=(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})({}),Pf=(function(r){return r.Popover="popover",r.Inline="inline",r})({}),Ae=Le("[Surveys]"),U0="seenSurvey_",Z2=(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},P_=r=>((e,t)=>{var n=""+e+t.id;return t.current_iteration&&t.current_iteration>0&&(n=""+e+t.id+"_"+t.current_iteration),n})(U0,r),G2=[Nh.Popover,Nh.Widget,Nh.API],K2={ignoreConditions:!1,ignoreDelay:!1,displayType:Pf.Popover},ca=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 Qi(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 Of=class{constructor(e){this.Ai=new ca,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(!V((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(!V((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"||!Qi(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=>Qi(a.href,t.href,t.href_matching||"exact")));var s,o=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||"";return!!o&&Qi((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=>Qi(c.text,t.text,t.text_matching||"exact")||Qi(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=>Qi(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=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)}},Lf=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===zo.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;V((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 Of(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,zo.Activation),this.Yi=this.Zi(e,zo.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,zo.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,zo.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}},Nf=class extends Lf{constructor(e){super(e)}oe(){return"$surveys_activated"}ae(){return Qo.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 Ae}he(){return!1}getSurveys(){return this.getActivatedIds()}getEventToSurveys(){return this.getEventToItemsMap()}},Ff=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 Ae.warn("Flags not loaded yet. Not loading surveys.");var n=xe(t);this.ve=n?t.length>0:t,Ae.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(U0)||n!=null&&n.startsWith("inProgressSurvey_"))&&e.push(n)}e.forEach((i=>localStorage.removeItem(i)))}loadIfEnabled(){if(!this._surveyManager)if(this.ce)Ae.info("Already initializing surveys, skipping...");else if(this._instance.config.disable_surveys)Ae.info("Disabled. Not loading surveys.");else if(this._instance.config.cookieless_mode&&this._instance.consent.isOptedOut())Ae.info("Not loading surveys in cookieless mode without consent.");else{var e=te?.__PosthogExtensions__;if(e){if(!V(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 Ae.error("PostHog Extensions not found.")}}ge(e,t){this._surveyManager=e(this._instance,t),this._surveyEventReceiver=new Nf(this._instance),Ae.info("Surveys loaded successfully"),this.me({isLoaded:!0})}_e(e,t){Ae.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 Ae.info("Disabled. Not loading surveys."),e([]);var n,i=this._instance.get_property(lf);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;Ae.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({[lf]: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){Ae.error("Error in survey callback",n)}}getActiveMatchingSurveys(e,t){if(t===void 0&&(t=!1),!ge(this._surveyManager))return this._surveyManager.getActiveMatchingSurveys(e,t);Ae.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 Ae.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)?(Ae.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))Ae.warn("init was not called");else{var s=typeof e=="string"?this.be(e):e;if(s!=null&&s.id)if(G2.includes(s.type)){var o=B?.querySelector(t);if(o)return(i=s.appearance)!=null&&i.surveyPopupDelaySeconds?(Ae.info("Rendering survey "+s.id+" with delay of "+s.appearance.surveyPopupDelaySeconds+" seconds"),void setTimeout((()=>{var a,l;Ae.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),Ae.info("Survey "+s.id+" rendered")}),1e3*s.appearance.surveyPopupDelaySeconds)):void this._surveyManager.renderSurvey(s,o,n);Ae.warn("Survey element not found")}else Ae.warn("Surveys of type "+s.type+" cannot be rendered in the app");else Ae.warn("Survey not found")}}displaySurvey(e,t){var n;if(ge(this._surveyManager))Ae.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!==Pf.Popover&&t.initialResponses&&Ae.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 Ae.warn("Survey is not eligible to be displayed: ",o.disabledReason)}t.displayType!==Pf.Inline?this._surveyManager.handlePopoverSurvey(s,t):this.renderSurvey(s,t.selector,t.properties)}else Ae.warn("Survey not found")}}cancelPendingSurvey(e){ge(this._surveyManager)?Ae.warn("init was not called"):this._surveyManager.cancelSurvey(e)}handlePageUnload(){var e;(e=this._surveyManager)==null||e.handlePageUnload()}},Ar=Le("[Conversations]"),Df=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)||(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=te?.__PosthogExtensions__;if(e&&!V(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 Ar.error("Conversations enabled but missing token in remote config.")}}$e(e){if(this.Ee)try{this._conversationsManager=e(this.Ee,this._instance),Ar.info("Conversations loaded successfully")}catch(t){this.Se("Error completing conversations initialization",t)}else Ar.error("Cannot complete initialization: remote config is null")}Se(e,t){Ar.error(e,t),this._conversationsManager=null,this.xe=!1}show(){this._conversationsManager?this._conversationsManager.show():Ar.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 rs((function*(){return i._conversationsManager?i._conversationsManager.sendMessage(e,t,n):(Ar.warn("Conversations not available yet."),null)}))()}getMessages(e,t){var n=this;return rs((function*(){return n._conversationsManager?n._conversationsManager.getMessages(e,t):(Ar.warn("Conversations not available yet."),null)}))()}markAsRead(e){var t=this;return rs((function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(Ar.warn("Conversations not available yet."),null)}))()}getTickets(e){var t=this;return rs((function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(Ar.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}},Hf=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=Le("[logs]"),t=te?.__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.")}}},O_=Le("[RateLimiter]"),Bf=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=>{O_.info((i||"events")+" is quota limited."),this.serverLimits[i]=new Date().getTime()+6e4}))}catch(i){return void O_.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(uf))!==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(uf,l),{isRateLimited:c,remainingTokens:l.tokens}}isServerRateLimited(e){var t=this.serverLimits[e||"events"]||!1;return t!==!1&&new Date().getTime()<t}},Jn=Le("[RemoteConfig]"),Vf=class{constructor(e){this._instance=e}get remoteConfig(){var e;return(e=te._POSTHOG_REMOTE_CONFIG)==null||(e=e[this._instance.config.token])==null?void 0:e.config}Te(e){var t,n;(t=te.__PosthogExtensions__)!=null&&t.loadExternalDependency?(n=te.__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.")}},Uf=3e3,jf=class{constructor(e,t){this.Ce=!0,this.Re=[],this.Fe=lr(t?.flush_interval_ms||Uf,250,5e3,U.createLogger("flush interval"),Uf),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)&&Re(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 Re(this.Re,(t=>{var n,i=t,s=(i?i.batchKey:null)||i.url;V(e[s])&&(e[s]=W({},i,{data:[]})),(n=e[s].data)==null||n.push(i.data)})),this.Re=[],e}},Y2=["retriesPerformedSoFar"],Wf=class{constructor(e){this.Le=!1,this.Ne=3e3,this.Re=[],this._instance=e,this.Re=[],this.Ue=!0,!V(E)&&"onLine"in E.navigator&&(this.Ue=E.navigator.onLine,this.ze=()=>{this.Ue=!0,this.Lt()},this.He=()=>{this.Ue=!1},Ve(E,"online",this.ze),Ve(E,"offline",this.He))}get length(){return this.Re.length}retriableRequest(e){var{retriesPerformedSoFar:t}=e,n=B_(e,Y2);es(t)&&(n.url=tu(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,V(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=[]}},zf=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(){Ve(E,"scroll",this.Ge,{capture:!0}),Ve(E,"scrollend",this.Ge,{capture:!0}),Ve(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}},X2=r=>P0(r?.config.mask_personal_data_properties,r?.config.custom_personal_data_properties),nu=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({[cf]:a})}},this._instance=e,this.Qe=t,this.Xe=n,this.Ye=i||X2,this.Qe.onSessionId(this.Je)}Ke(){return this.Xe.props[cf]}getSetOnceProps(){var e,t=(e=this.Ke())==null?void 0:e.props;return t?"r"in t?O0(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 Re(ng(this.getSetOnceProps()),((t,n)=>{n==="$current_url"&&(n="url"),e["$session_entry_"+Vh(n)]=t})),e}},Dh=Le("[SessionId]"),iu=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 ca,this.er=(u,p)=>!(!es(u)||!es(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||rn,this.ar=n||rn;var s=this.R.persistence_name||this.R.token,o=this.R.session_idle_timeout_seconds||1800;if(this._sessionTimeoutMs=1e3*lr(o,60,36e3,Dh.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=Je.W(this.ur),l=Je.W(this.hr);a&&!l?this.rr=a:Je.V(this.ur),Je.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){Dh.error("Invalid sessionID in bootstrap",u)}this.cr()}get sessionTimeoutMs(){return this._sessionTimeoutMs}onSessionId(e){return V(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&&Je.H()}pr(e){e!==this.rr&&(this.rr=e,this.dr()&&Je.G(this.ur,e))}gr(){return this.rr?this.rr:this.dr()?Je.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({[Uc]:[t,e,n]}))}_r(){var e=this.Xe.props[Uc];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()&&Je.V(this.hr)},Ve(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=es(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(),Dh.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=es(i)&&e&&!l?i:n,f=es(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)}},J2=["$set_once","$set"],en=Le("[SiteApps]"),qf=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=te._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,J2),{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&&(en.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,en.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){en.error("Error while initializing PostHog app with config id "+e.id,a),s(!1)}if(i&&t.loaded)try{n()}catch(a){en.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){en.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 en.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;te["__$$ph_site_app_"+c]=s._instance,(u=te.__PosthogExtensions__)==null||u.loadSiteApp==null||u.loadSiteApp(s._instance,l,(p=>{if(p)return en.error("Error while initializing PostHog app with config id "+c,p)}))};for(var{id:a,url:l}of e.siteApps)o(a)}else en.error('PostHog site apps are disabled. Enable the "opt_in_site_apps" config to proceed.')}},j0=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},ea=(function(r){return r.US="us",r.EU="eu",r.CUSTOM="custom",r})({}),L_="i.posthog.com",Zf=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("."+L_,".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]=ea.US:/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?this.Sr[this.apiHost]=ea.EU:this.Sr[this.apiHost]=ea.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===ea.CUSTOM)return this.apiHost+t;var n=L_+t;switch(e){case"assets":return"https://"+this.region+"-assets."+n;case"api":return"https://"+this.region+"."+n}}},Q2={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&&ru(e.href,r),not_regex:(r,e)=>!!E&&!ru(e.href,r),exact:(r,e)=>e.href===r,is_not:(r,e)=>e.href!==r},Gf=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);We(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||Q2[(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=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];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?j0(wt,this._instance.config.custom_blocked_useragents):void 0}},eR=Le("[PostHog ExternalIntegrations]"),tR={intercom:"intercom-integration",crispChat:"crisp-chat-integration"},Kf=class{constructor(e){this._instance=e}it(e,t){var n;(n=te.__PosthogExtensions__)==null||n.loadExternalDependency==null||n.loadExternalDependency(this._instance,e,(i=>{if(i)return eR.error("failed to load script",i);t()}))}startIfEnabledOrStop(){var e=this,t=function(o){var a,l,c;!i||(a=te.__PosthogExtensions__)!=null&&(a=a.integrations)!=null&&a[o]||e.it(tR[o],(()=>{var u;(u=te.__PosthogExtensions__)==null||(u=u.integrations)==null||(u=u[o])==null||u.start(e._instance)})),!i&&(l=te.__PosthogExtensions__)!=null&&(l=l.integrations)!=null&&l[o]&&((c=te.__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)}}},Yf="[SessionRecording]",qo=Le(Yf),su=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 qo.error("started without valid sessionManager"),new Error(Yf+" started without valid sessionManager. This is a bug.");if(this._instance.config.cookieless_mode==="always")throw new Error(Yf+' cannot be used with cookieless_mode="always"')}get Ar(){var e,t=!((e=this._instance.get_property(Eh))==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=!V(Object.assign)&&!V(Array.from);this.Ar&&n?(this.Dr(e),qo.info("starting")):this.stopRecording()}}Dr(e){var t,n,i;this.Ar&&(te!=null&&(t=te.__PosthogExtensions__)!=null&&(t=t.rrweb)!=null&&t.record&&(n=te.__PosthogExtensions__)!=null&&n.initSessionRecording?this.Lr(e):(i=te.__PosthogExtensions__)==null||i.loadExternalDependency==null||i.loadExternalDependency(this._instance,this.Nr,(s=>{if(s)return qo.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=ge(a)?null:parseFloat(a);ge(l)&&this.Ur();var c=o?.minimumDurationMilliseconds;i.register({[Eh]:W({enabled:!!o},o,{networkPayloadCapture:W({capturePerformance:e.capturePerformance},o?.networkPayloadCapture),canvasRecording:{enabled:o?.recordCanvas,fps:o?.canvasFps,quality:o?.canvasQuality},sampleRate:l,minimumDurationMilliseconds:V(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:qo.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):qo.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(Eh);return(n==null||(t=n.scriptConfig)==null?void 0:t.script)||"lazy-recorder"}Lr(e){var t,n;if((t=te.__PosthogExtensions__)==null||!t.initSessionRecording)throw Error("Called on script loaded before session recording is available");this.Or||(this.Or=(n=te.__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))}},na={},Xf=()=>{},ts="posthog",W0=!j2&&vt?.indexOf("MSIE")===-1&&vt?.indexOf("Mozilla")===-1,N_=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:s2(B?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:Xf,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:Qe&&We(Qe?.search)&&Qe.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:Uf},error_tracking:{},_onCapture:Xf,__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={};V(r.process_person)||(e.person_profiles=r.process_person),V(r.xhr_headers)||(e.request_headers=r.xhr_headers),V(r.cookie_name)||(e.persistence_name=r.cookie_name),V(r.disable_cookie)||(e.disable_persistence=r.disable_cookie),V(r.store_google)||(e.save_campaign_params=r.store_google),V(r.verbose)||(e.debug=r.verbose);var t=Ne({},e,r);return xe(r.property_blacklist)&&(V(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},Jf=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}},ou=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 Jf,this.Br=!1,this.version=Rr.LIB_VERSION,this.qr=new ca,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=N_(),this.SentryIntegration=xf,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 $f(this),this.toolbar=new wf(this),this.scrollManager=new zf(this),this.pageViewManager=new Jc(this),this.surveys=new Ff(this),this.conversations=new Df(this),this.logs=new Hf(this),this.experiments=new Gf(this),this.exceptions=new If(this),this.rateLimiter=new Bf(this),this.requestRouter=new Zf(this),this.consent=new yf(this),this.externalIntegrations=new Kf(this),this.people={set:(e,t,n)=>{var i=We(e)?{[e]:t}:e;this.setPersonProperties(i),n?.({})},set_once:(e,t,n)=>{var i=We(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!==ts){var i,s=(i=na[n])!==null&&i!==void 0?i:new r;return s._init(e,t,n),na[n]=s,na[ts][n]=s,s}return this._init(e,t,n)}_init(e,t,n){var i;if(t===void 0&&(t={}),V(e)||Uh(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(Ne({},N_(t.defaults),F_(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:$r.GZipJS;var s=this.Qr();this.persistence=new ra(this.config,s),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new ra(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 jf((x=>this.ts(x)),this.config.request_queue_config),this.es=new Wf(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 iu(this),this.sessionPropsManager=new nu(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)),Rr.DEBUG=Rr.DEBUG||this.config.debug,Rr.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(rn()),h=(c=t.bootstrap)!=null&&c.isIdentifiedID?p:t.bootstrap.distinctID;this.persistence.set_property(Tr,(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:Do,$device_id:null},"");else if(!this.get_distinct_id()){var y=this.config.get_device_id(rn());this.register_once({distinct_id:y,$device_id:y},""),this.persistence.set_property(Tr,"anonymous")}return Ve(E,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),this.toolbar.maybeLoadToolbar(),t.segment?A2(this,(()=>this.ns())):this.ns(),nn(this.config._onCapture)&&this.config._onCapture!==Xf&&(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 _f(this),this.historyAutocapture.startIfEnabled();var n=[];n.push((()=>{new Sf(this).startIfEnabledOrStop()})),n.push((()=>{var i;this.siteApps=new qf(this),(i=this.siteApps)==null||i.init()})),e||n.push((()=>{this.sessionRecording=new su(this),this.sessionRecording.startIfEnabledOrStop()})),this.config.disable_scroll_properties||n.push((()=>{this.scrollManager.startMeasuringScrollPosition()})),n.push((()=>{this.autocapture=new ff(this),this.autocapture.startIfEnabled()})),n.push((()=>{this.surveys.loadIfEnabled()})),n.push((()=>{this.logs.loadIfEnabled()})),n.push((()=>{this.conversations.loadIfEnabled()})),n.push((()=>{this.productTours=new Mf(this),this.productTours.loadIfEnabled()})),n.push((()=>{this.heatmaps=new Ef(this),this.heatmaps.startIfEnabled()})),n.push((()=>{this.webVitalsAutocapture=new kf(this)})),n.push((()=>{this.exceptionObserver=new bf(this),this.exceptionObserver.startIfEnabledOrStop()})),n.push((()=>{this.deadClicksAutocapture=new Xc(this,C2),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(!B||!B.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,$r.GZipJS)?$r.GZipJS:fe(e.supportedCompression,$r.Base64)?$r.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&&Qe!=null&&Qe.hostname){var e=Qe.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 Vf(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()&&sn(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=tu(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=tu(o.url,{_:new Date().getTime().toString(),ver:Rr.LIB_VERSION,compression:o.compression});var a=(n=o.transport)!==null&&n!==void 0?n:"fetch",l=Dc.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=[];sn(e,(a=>{a&&(t=a[0],xe(t)?s.push(a):nn(a)?a.call(this):xe(a)&&t==="alias"?n.push(a):xe(a)&&t.indexOf("capture")!==-1&&nn(this[t])?s.push(a):i.push(a))}));var o=function(a,l){sn(a,(function(c){if(xe(c[0])){var u=l;Re(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(!V(e)&&We(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&&!We(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=rn(),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=n2(u,n!=null&&n._noTruncate?null:this.config.properties_string_max_length)).timestamp=l,V(n?.timestamp)||(u.properties.$event_time_override_provided=!0,u.properties.$event_time_override_system_time=a),e===Qo.DISMISSED||e===Qo.SENT){var v=t?.[Fh.SURVEY_ID],g=t?.[Fh.SURVEY_ITERATION];p={id:v,current_iteration:g},localStorage.getItem(P_(p))||localStorage.setItem(P_(p),"true"),u.$set=W({},u.$set,{[Z2({id:v,current_iteration:g},e===Qo.SENT?"responded":"dismissed")]:!0})}else e===Qo.SHOWN&&(u.$set=W({},u.$set,{[Fh.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));var m=W({},u.properties.$set,u.$set);if(ns(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,(!We(a.distinct_id)&&!Or(a.distinct_id)||Uh(a.distinct_id))&&U.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),a}var c,u=P2(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&&Ne(a,this.sessionPropsManager.getSessionProps());try{var f;this.sessionRecording&&Ne(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===ea.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=Ne(a,c),e==="$pageview"&&B&&(a.title=B.title),!V(o)){var v=n.getTime()-o;a.$duration=parseFloat((v/1e3).toFixed(3))}vt&&this.config.opt_out_useragent_filter&&(a.$browser_type=this._is_bot()?"bot":"browser"),(a=Ne({},u,this.persistence.properties(),this.sessionPersistence.properties(),a)).$is_identified=this._isIdentified(),xe(this.config.property_denylist)?Re(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=Ne({},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),ns(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:V(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=K2),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(Or(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!==Do){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(Go)&&(this.unregister(Go),this.register({distinct_id:e}));var o=(this.persistence.get_property(Tr)||"anonymous")==="anonymous";e!==i&&o?(this.persistence.set_property(Tr,"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(jc))}}else U.critical('The string "'+Do+'" 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=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):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(Tr,"anonymous"),(s=this.sessionManager)==null||s.resetSessionId(),this.Jr=null,this.config.cookieless_mode==="always")this.register_once({distinct_id:Do,$device_id:null},"");else{var a=this.config.get_device_id(rn());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)?(U.critical("Attempting to create alias for existing People user - aborting."),-2):this.ps("posthog.alias")?(V(t)&&(t=this.get_distinct_id()),e!==t?(this.gs(Go,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(je(e)){var n,i,s,o,a,l,c;Ne(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 ra(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?(Rr.DEBUG=!0,Me.H()&&Me.G("ph_debug","true"),U.info("set_config",{config:e,oldConfig:t,newConfig:W({},this.config)})):(Rr.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:ts;return t!==ts&&(t=ts+"."+t),t}_isIdentified(){var e,t;return((e=this.persistence)==null?void 0:e.get_property(Tr))==="identified"||((t=this.sessionPersistence)==null?void 0:t.get_property(Tr))==="identified"}fs(){var e,t;return!(this.config.person_profiles==="never"||this.config.person_profiles==="identified_only"&&!this._isIdentified()&&ns(this.getGroups())&&((e=this.persistence)==null||(e=e.props)==null||!e[Go])&&((t=this.persistence)==null||(t=t.props)==null||!t[zc]))}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(zc,!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 iu(this),this.pageViewManager=new Jc(this),this.persistence&&(this.sessionPropsManager=new nu(this,this.sessionManager,this.persistence)),this.sessionRecording=new su(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(),(V(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:Do,$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===Ir.GRANTED?"granted":e===Ir.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?j0(wt,this.config.custom_blocked_useragents):void 0}hs(){B&&(B.visibilityState==="visible"?this.Wr||(this.Wr=!0,this.capture("$pageview",{title:B.title},{send_instantly:!0}),this.Gr&&(B.removeEventListener("visibilitychange",this.Gr),this.Gr=null)):this.Gr||(this.Gr=this.hs.bind(this),Ve(B,"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 IA(e.event)?U.warn(s+". This can cause unexpected behavior."):U.info(s),null}n.properties&&!ns(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=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]]=r2(r.prototype[e[t]])})(ou,["identify"]);var D_;var z0=(D_=na[ts]=new ou,(function(){function r(){r.done||(r.done=!0,W0=!1,Re(na,(function(e){e._dom_loaded()})))}B!=null&&B.addEventListener?B.readyState==="complete"?r():Ve(B,"DOMContentLoaded",r,{capture:!1}):E&&U.error("Browser doesn't support `document.addEventListener` so PostHog couldn't be initialized")})(),D_);var cg=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 uu(r={}){return new cg(r)}var q0={posthog:r=>uu(r),noop:()=>$c()};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){kd(),Z("Syntro Bootstrap","====== INIT ======"),Z("Syntro Bootstrap","Options:",{hasToken:!!r.token,tokenPrefix:`${r.token?.slice(0,15)}...`,hasCanvasOptions:!!r.canvas});let e=Hl();if(console.log(`[DIAG] Mode detection: sdkMode=${e}`),console.log("[DIAG] editorSource:",mo()),console.log("[DIAG] editorConf:",Dl()),Z("Syntro Bootstrap","SDK mode:",e??"normal"),!e&&typeof window<"u"){let D=!!window.__SYNTRO_EDITOR_PARAMS__,ie=!!window.__SYNTRO_AUDIT_LEGEND__,J=!!window.__SYNTRO_REVIEW_DATA__;if(D||ie||J){let de=[D&&"__SYNTRO_EDITOR_PARAMS__",ie&&"__SYNTRO_AUDIT_LEGEND__",J&&"__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 ie=Dl()?.syntro_token;ie?.startsWith("syn_")&&(t=ie,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=Di(t),kd(n.d);else if(e)Z("Syntro Bootstrap",`\u2713 Non-syn_ token allowed (${e} mode)`);else throw xl("Syntro Bootstrap","\u274C Token does not start with syn_ and NOT in editor/audit/review mode!"),xl("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 xl("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,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")||$y,l=Ry(),c=$p(),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=Mp(a),f=(()=>{try{if(typeof window>"u"||window.self===window.top)return Promise.resolve(null)}catch{}return new Promise(D=>{let ie=setTimeout(()=>{window.removeEventListener("message",J),D(null)},500);function J(de){let pe=de.data;pe?.jsonrpc==="2.0"&&pe?.id===1&&pe?.result?.hostInfo&&(clearTimeout(ie),window.removeEventListener("message",J),D(pe.result.hostInfo))}window.addEventListener("message",J);try{window.parent.postMessage({jsonrpc:"2.0",id:1,method:"ui/initialize",params:{capabilities:{}}},"*")}catch{clearTimeout(ie),window.removeEventListener("message",J),D(null)}})})(),v,g=r.debug||r.testMode,m=Hi({debug:r.debug,history:g?new Bi(r.testMode?0:100):void 0,testMode:r.testMode});console.log("[Syntro Bootstrap] EventBus created");let y=xd({elementResolver:typeof window<"u"?(D,ie)=>{let J=document.elementFromPoint(D,ie);if(!J)return null;let de={tag_name:J.tagName.toLowerCase()};J.id&&(de.attr__id=J.id),J.className&&typeof J.className=="string"&&(de.classes=J.className.split(" ").filter(Boolean));for(let pe of J.attributes)pe.name.startsWith("data-")&&(de[`attr__${pe.name}`]=pe.value);return de}:void 0});y.onEvent(D=>m.publishEvent(D)),typeof window<"u"&&(setInterval(()=>y.tick(Date.now()),1e3),document.addEventListener("click",D=>{let ie=[],J=D.target;for(;J&&J!==document.body;){let de={tag_name:J.tagName.toLowerCase()};for(let pe of J.attributes)(pe.name.startsWith("data-")||pe.name==="id"||pe.name==="class"||pe.name==="aria-label")&&(de[`attr__${pe.name}`]=pe.value);ie.push(de),J=J.parentElement}y.enrichClickAttributes(Date.now(),ie)},!0));let x=Mb(),S,b=D=>{Z("Syntro Bootstrap","Phase 2: PostHog feature flags loaded");let ie=Iy(D);if(Z("Syntro Bootstrap","Segment flags from PostHog:",ie),Ty(ie),v){let J=C?.getAll?.()??{},de={...c,...J,...ie,...u};Z("Syntro Bootstrap","Updating GrowthBook with attributes:",de),v.setAttributes?.(de)}if(S&&w?.getDistinctId){let J=w.getDistinctId();J&&s&&n?.t&&S.updateContext({distinctId:J,telemetryHost:s,telemetryKey:n.t})}},w;if(n?.t){let D=n.t==="noop"?"noop":"posthog";w=Z0(D,{apiKey:n.t,apiHost:s,enableFeatureFlags:!0,sessionRecording:!0,cookieless_mode:"on_reject",onFeatureFlagsLoaded:b,onCapture:(ve,_e)=>{y.ingest({kind:"posthog",event:ve,properties:_e,timestamp:Date.now()})},onRRWebEvent:ve=>{y.ingest(ve)}}),console.log(`[Syntro Bootstrap] Telemetry client created (${D}) with EventBus wiring`),Object.keys(u).length>0&&(w.track?.("app_signals_init",u),Z("Syntro Bootstrap","Tracked app signals event:",u));let ie=w;m.setPosthogCapture((ve,_e)=>{ie.track?.(ve,_e)});let J=w,de=async()=>{let ve=await h;return ve.is_eu==="true"||ve.country_code==="GB"||ve.country_code==="CH"?"denied":"granted"},pe=new Fo({initialStatus:"pending",pendingResolver:de,onConsentChange:ve=>{ve==="granted"?J.optInCapturing?.():ve==="denied"&&J.optOutCapturing?.()}});try{Dy(w,pe,{geoPromise:h}),Z("Syntro Bootstrap","SDK defaults installed (D-1..D-5) with consent gate")}catch(ve){Ze("Syntro Bootstrap","installDefaults failed",ve)}try{new No({adapters:[new Lo,new Oo,new Po],fallbackStatus:de,onAdapterSelected:_e=>{J.track?.("syntro_consent_adapter_selected",{adapter:_e??"none"}),Z("Syntro Bootstrap",`Consent adapter selected: ${_e??"none"}`)}}).start(pe).catch(_e=>{Ze("Syntro Bootstrap","Consent detector failed to start",_e)})}catch(ve){Ze("Syntro Bootstrap","Consent detector setup failed",ve)}if(x?.name==="shopify"&&s)try{S=new mc({distinctId:w.getDistinctId?.()??"",telemetryHost:s,telemetryKey:n.t}),Z("Syntro Bootstrap","ShopifyPixelBridge initialized for checkout attribution")}catch(ve){Ze("Syntro Bootstrap","ShopifyPixelBridge init failed",ve)}}let C;n?.e&&(v=Cb("growthbook",{clientKey:n.e,apiHost:i,attributes:p,onExperimentViewed:w?.trackExperiment?(D,ie,J)=>{w.trackExperiment(D,ie,J)}:void 0})),C=pc({experiments:v,onMetricChange:(D,ie)=>{Z("Syntro Bootstrap",`Session metric changed: ${D} = ${ie}`)}}),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=Ic({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 P=r.cdnBase||It("NEXT_PUBLIC_SYNTRO_CDN_BASE")||It("VITE_SYNTRO_CDN_BASE")||My()||"https://cdn.syntrologie.com",Y=qu({cdnBase:P,registry:T.apps,onLoadStart:D=>{Z("Syntro Bootstrap",`Loading app from CDN: ${D}`)},onLoadEnd:(D,ie,J)=>{ie?Z("Syntro Bootstrap",`App loaded successfully: ${D}`):Ze("Syntro Bootstrap",`Failed to load app: ${D}`,J)}});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(D=>{Z("Syntro Bootstrap","auto-load of adaptive-mcp failed (non-fatal):",D)});let F=T.apps.list?.()??[];console.log(`[DIAG] Activation loop: ${F.length} apps in registry:`,F.map(D=>`${D.manifest.id}(${D.state})`).join(", "));for(let D of F)if(D.state==="registered")try{await T.apps.activate(D.manifest.id),console.log(`[DIAG] Activated: ${D.manifest.id} \u2192 widgets: [${T.widgets.list().join(", ")}]`)}catch(ie){console.error(`[DIAG] FAILED to activate: ${D.manifest.id}`,ie),Ze("Syntro Bootstrap",`Failed to auto-activate built-in app: ${D.manifest.id}`,ie)}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(D){Ze("Syntro Bootstrap","Failed to load GrowthBook features:",D)}let L=await h;if(v&&Object.keys(L).length>0){let D={...c,...L,...u};Z("Syntro Bootstrap","Merging geo data into GrowthBook attributes:",L),v.setAttributes?.(D)}let G=await f;G&&v&&(c.surface_type="mcp-app",c.surface_host=G.name,v.setAttributes?.({...c,...L}),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 D=Ib(n.f,n.o??{});K=async()=>{let ie=await D.fetch();return{...ie.config,tiles:ie.config.tiles??[]}}}else v&&(K=Dn({experiments:v}));let le=new Set,j=K?async()=>{let D=await K(),ie=D.tiles?.length??0,J=D.actions?.length??0,de=D.meta?.variant_id;if((ie>0||J>0)&&(de||console.warn("[Syntro] Config has content but no meta.variant_id \u2014 intervention tracking disabled")),w&&de){let _e=typeof window<"u"?window.SynOS??(window.SynOS={}):void 0,ut=_e?.interventionTracker,zt;ut&&ut.variantId===de?zt=ut:(zt=new Xi(w,de),_e&&(_e.interventionTracker=zt),T.navigation.subscribe(()=>{zt.resetPage()})),zt.trackServed(ie,J)}console.log("[Syntro Bootstrap] Config fetched:",`tiles=${D.tiles?.length??0},`,`actions=${D.actions?.length??0},`,`theme=${D.theme?.name??"none"}`),D.actions?.length>0&&console.log("[Syntro Bootstrap] Actions in config:",D.actions.map((_e,ut)=>`[${ut}] ${_e.kind}${_e.anchorId?` anchor="${_e.anchorId.selector}"`:""}${_e.label?` "${_e.label}"`:""}`).join(", "));let pe=D,ve=Y.getRequiredApps(pe);return ve.length>0?console.log("[Syntro Bootstrap] Required external apps:",ve.join(", ")):Z("Syntro Bootstrap","No external apps required (all executors are built-in)"),ve.length>0&&await Y.loadAppsForConfig(pe).then(async ut=>{let zt=ut.filter(Fe=>Fe.success),gu=ut.filter(Fe=>!Fe.success);zt.length>0&&console.log(`[Syntro Bootstrap] Apps loaded from CDN: ${zt.map(Fe=>Fe.appId).join(", ")}`);let St=gu.filter(Fe=>!le.has(Fe.appId));St.length>0&&(console.error("[Syntro Bootstrap] Apps FAILED to load from CDN:",St.map(Fe=>`${Fe.appId} (${Fe.error})`).join(", ")),St.forEach(Fe=>le.add(Fe.appId)));for(let Fe of ve)if(T.apps.has(Fe))try{await T.apps.activate(Fe),console.log(`[Syntro Bootstrap] App activated: ${Fe}`)}catch(ha){console.error(`[Syntro Bootstrap] Failed to activate app: ${Fe}`,ha)}else console.error(`[Syntro Bootstrap] App "${Fe}" required by config but NOT registered.`,`Available apps: [${Array.from(T.apps.list?.()??[]).join(", ")}]`)}),D}:void 0;if(x){Z("Syntro Bootstrap",`Detected platform: ${x.name}`);try{await x.onInit(),Z("Syntro Bootstrap",`Platform adapter initialized: ${x.name}`)}catch(D){Ze("Syntro Bootstrap",`Platform adapter init failed: ${x.name}`,D)}}let ee=await Bl({...r.canvas,fetcher:j,integrations:{experiments:v,telemetry:w},editorUrl:o,runtime:T});if(ee.setOverrideFetcher){let D=ee.setOverrideFetcher.bind(ee);ee.setOverrideFetcher=ie=>{D(async()=>{let de=await ie(),pe=de;if(Y.getRequiredApps(pe).length>0){let _e=await Y.loadAppsForConfig(pe);for(let ut of _e)if(ut.success&&T.apps.has(ut.appId))try{await T.apps.activate(ut.appId)}catch{}}return de})}}return{canvas:ee,runtime:T,experiments:v,telemetry:w,sessionMetrics:C,appLoader:Y}}async function rR(r){try{return await G0(r)}catch(e){let t=e instanceof Error?e.message:String(e);console.warn("[Syntrologie] SDK initialization failed:",t),typeof document<"u"&&document.getElementById("syntrologie-anti-flicker")?.remove();return}}function nR(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 iR(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 ug={init:rR,loadAdaptive:iR,encodeToken:Vl,decodeToken:Di,events:{emit:nR}};typeof window<"u"&&(window.Syntro=ug);function ps(r){let e=r.split(".");return{major:parseInt(e[0]||"0",10),minor:parseInt(e[1]||"0",10)}}function sR(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=ps(i),o=ps(_r);return s.major>o.major&&e.push(`Config schema v${i} is newer than SDK v${_r}. 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${_r}. Migrating config to current version.`),{valid:!0,warnings:e,errors:t,migratedConfig:oR(n,i)}):{valid:!0,warnings:e,errors:t}}function oR(r,e){let t={...r};return ps(e).major===1&&(t=aR(t)),t.schemaVersion=_r,t}function aR(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 lR(r){if(!r||typeof r!="object")return!1;let e=r,t=e.schemaVersion||"1.0",n=ps(t),i=ps(_r);return n.major<i.major||!e.schemaVersion}var K0=d.object({url:d.string(),routeId:d.string().optional(),title:d.string().optional(),locale:d.string().optional()}),Y0=d.object({url:d.string(),ts:d.number()}),X0=d.object({sessionId:d.string(),startTs:d.number(),pageHistory:d.array(Y0).optional()}),J0=d.object({width:d.number(),height:d.number()}),Q0=d.object({x:d.number(),y:d.number(),w:d.number(),h:d.number()}),ex=d.object({anchorId:d.string(),present:d.boolean(),visible:d.boolean().optional(),boundingBox:Q0.optional()}),tx=d.record(d.string(),d.union([d.number(),d.string(),d.boolean(),d.undefined()])),rx=d.object({page:K0,session:X0,viewport:J0,anchors:d.array(ex).optional(),augmented:tx.optional()});function cR(r){return rx.safeParse(r)}var du=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 pu=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 hu=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 dg=d.enum(["posthog","canvas","derived"]),nx=d.object({ts:d.number(),name:d.string(),source:dg,props:d.record(d.string(),d.unknown()).optional(),schemaVersion:d.string()}),ix=d.object({names:d.array(d.string()).optional(),patterns:d.array(d.string()).optional(),sources:d.array(dg).optional()});function uR(r){return nx.safeParse(r)}function dR(r){return ix.safeParse(r)}var pg=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()})]),sx=d.object({kind:d.literal("tooltip"),id:d.string(),anchor:pg,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()}),ox=d.object({kind:d.literal("highlight"),id:d.string(),anchor:pg,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()}),fu=d.object({id:d.string(),version:d.number(),routes:d.array(d.string()).optional(),steps:d.array(d.union([sx,ox]))});function pR(r){return fu.parse(r)}var hR=({configUri:r,experiments:e,featureKey:t="smart-canvas-overlay-uri",credentials:n="include"}={})=>async()=>{let i=Sl({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 fu.parse(o)};var ax=d.object({value:d.unknown(),expiresAt:d.number().optional()}),lx=d.object({count:d.number(),resetAt:d.number().optional()});function fR(r){return ax.safeParse(r)}function gR(r){return lx.safeParse(r)}var hg="2026-05-05T21:51:15.159Z (ce0ae461837)";if(typeof window<"u"){console.log(`[Syntro Runtime] Build: ${hg} (Lit)`);let r=window.SynOS,e=r?.appRegistry||Os;window.SynOS={...r,appRegistry:e,_runtimeBuild:hg,_renderer:"lit"},lo(),Mv(e)}return fx(mR);})();
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),zt(a)||(t>e&&(s+=r.substring(e,t)),s+=a,e=t=i+1)}return t>e&&(s+=r.substring(e,r.length)),s},zT=!!_f||!!bf,k0="text/plain",vu=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=yT(o);return l&&a.push(l),i+"?"+a.join("&")},da=(r,e)=>JSON.stringify(r,((t,n)=>typeof n=="bigint"?n.toString():n),e),pf=r=>{var{data:e,compression:t}=r;if(e){if(t===Nr.GZipJS){var n=jT((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 Fx(p,0,h)})(da(e)),{mtime:0}),i=new Blob([n],{type:k0});return{contentType:k0,body:i,estimatedSize:i.size}}if(t===Nr.Base64){var s=(function(l){var c,u,p,h,f,v="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",g=0,m=0,y="",x=[];if(!l)return l;l=WT(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})(da(e)),o=(l=>"data="+encodeURIComponent(typeof l=="string"?l:da(l)))(s);return{contentType:"application/x-www-form-urlencoded",body:o,estimatedSize:new Blob([o]).size}}var a=da(e);return{contentType:"application/json",body:a,estimatedSize:new Blob([a]).size}}},eu=[];bf&&eu.push({transport:"fetch",method:r=>{var e,t,{contentType:n,body:i,estimatedSize:s}=(e=pf(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(W_){var c=new W_;l={signal:c.signal,timeout:setTimeout((()=>c.abort()),r.timeout)}}bf(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))}}),_f&&eu.push({transport:"XHR",method:r=>{var e,t=new _f;t.open(r.method||"GET",r.url,!0);var{contentType:n,body:i}=(e=pf(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)}}),St!=null&&St.sendBeacon&&eu.push({transport:"sendBeacon",method:r=>{var e=vu(r.url,{beacon:"1"});try{var t,{contentType:n,body:i}=(t=pf(r))!==null&&t!==void 0?t:{},s=typeof i=="string"?new Blob([i],{type:n}):i;St.sendBeacon(e,s)}catch{}}});var yu=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 E0(r,e,t){return da({distinct_id:r,userPropertiesToSet:e,userPropertiesToSetOnce:t})}var Dx={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=>yu(t,n))))),not_regex:(r,e)=>e.every((t=>r.every((n=>!yu(t,n))))),icontains:(r,e)=>e.map(Jc).some((t=>r.map(Jc).some((n=>t.includes(n))))),not_icontains:(r,e)=>e.map(Jc).every((t=>r.map(Jc).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)))}))},Jc=r=>r.toLowerCase();function Hx(r,e){return!r||Object.entries(r).every((t=>{var[n,i]=t,s=e?.[n];if(B(s)||zt(s))return!1;var o=[String(s)],a=Dx[i.operator];return!!a&&a(i.values,o)}))}var hf=Le("[Error tracking]"),cg=class{constructor(e){var t,n;this.Zt=[],this.ti=new Tf([new If,new Ff,new Mf,new $f,new Lf,new Of,new Pf,new Nf],eT()),this._instance=e,this.Zt=(t=(n=this._instance.persistence)==null?void 0:n.get_property(Hf))!==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({[Hf]:this.Zt,[n0]:o})}get ii(){var e,t=!!this._instance.get_property(n0),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 hf.info("Skipping exception capture because a suppression rule matched");if(!this.ii&&this.si(t))return void hf.info("Skipping exception capture because it was thrown by an extension");if(!this._instance.config.error_tracking.__capturePostHogExceptions&&this.ni(t))return void hf.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=Dx[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)}},wt=Le("[FeatureFlags]"),ra=Le("[FeatureFlags]",{debugEnabled:!0}),ff="$active_feature_flags",os="$override_feature_flags",C0="$feature_flag_payloads",na="$override_feature_flag_payloads",A0="$feature_flag_request_id",T0="$feature_flag_evaluated_at",R0=r=>{var e={};for(var[t,n]of Qc(r||{}))n&&(e[t]=n);return e},qT=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]})))):wt.warn("Using an older version of the feature flags endpoint. Please upgrade your PostHog server to the latest version"),r},ZT=(function(r){return r.FeatureFlags="feature_flags",r.Recordings="recordings",r})({}),ug=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||(wt.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||wt.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(Bf),t=this._instance.get_property(os),n=this._instance.get_property(na);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||(wt.warn(" Overriding feature flag details!",{flagDetails:e,overriddenPayloads:n,finalDetails:i}),this.oi=!0),i}getFlagVariants(){var e=this._instance.get_property(ps),t=this._instance.get_property(os);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||(wt.warn(" Overriding feature flags!",{enabledFlags:e,overriddenFlags:t,finalFlags:n}),this.oi=!0),n}getFlagPayloads(){var e=this._instance.get_property(C0),t=this._instance.get_property(na);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||(wt.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(ua)||{}),group_properties:this._instance.get_property(ii)};zt(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=Px()),this.li=!0,this._instance._send_request({method:"POST",url:c,data:s,compression:this._instance.config.disable_compression?void 0:Nr.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(ZT.FeatureFlags))wt.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}wt.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(A0)||void 0,c=this._instance.get_property(T0)||void 0,u=this._instance.get_property(su)||{};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({[su]: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 wt.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:Nr.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}wt.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=qT(o),h=p.flags,f=p.featureFlags,v=p.featureFlagPayloads;if(f){var g=o.requestId,m=o.evaluatedAt;if(xe(f)){wt.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({[ff]:f,[ps]: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({[ff]:Object.keys(R0(S)),[ps]:S||{},[C0]:b||{},[Bf]:w||{}},g?{[A0]:g}:{},m?{[T0]:m}:{}))}}})(e,this._instance.persistence,n,i,s),this.wi(t)}}override(e,t){t===void 0&&(t=!1),wt.warn("override is deprecated. Please use overrideFeatureFlags instead."),this.overrideFeatureFlags({flags:e,suppressWarning:t})}overrideFeatureFlags(e){if(!this._instance.__loaded||!this._instance.persistence)return wt.uninitializedWarning("posthog.featureFlags.overrideFeatureFlags");if(e===!1)return this._instance.persistence.unregister(os),this._instance.persistence.unregister(na),this.wi(),ra.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(os),ra.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({[os]:i})}else this._instance.persistence.register({[os]:n.flags});ra.info("Flag overrides set",{flags:n.flags})}}return"payloads"in n&&(n.payloads===!1?(this._instance.persistence.unregister(na),ra.info("Payload overrides cleared")):n.payloads&&(this._instance.persistence.register({[na]:n.payloads}),ra.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(ca)||[]).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({[ff]:Object.keys(R0(l)),[ps]:l}),this.wi()}getEarlyAccessFeatures(e,t,n){t===void 0&&(t=!1);var i=this._instance.get_property(ca),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(ca),(l=this._instance.persistence)==null||l.register({[ca]: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(ua)||{};this._instance.register({[ua]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetPersonPropertiesForFlags(){this._instance.unregister(ua)}setGroupPropertiesForFlags(e,t){t===void 0&&(t=!0);var n=this._instance.get_property(ii)||{};Object.keys(n).length!==0&&Object.keys(n).forEach((i=>{n[i]=W({},n[i],e[i]),delete e[i]})),this._instance.register({[ii]:W({},n,e)}),t&&this._instance.reloadFeatureFlags()}resetGroupPropertiesForFlags(e){if(e){var t=this._instance.get_property(ii)||{};this._instance.register({[ii]:W({},t,{[e]:{}})})}else this._instance.unregister(ii)}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}},GT=["cookie","localstorage","localstorage+cookie","sessionstorage","memory"],ga=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){GT.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=[...ET,...i];return W({},Me,{W:function(o){try{var a={};try{a=dr.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&&dr.G(o,h,l,c,u,p)}catch(f){Me.B(f)}},V:function(o,a){try{E?.localStorage.removeItem(o),dr.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"?CT:n==="cookie"?dr:t.H()?t:dr}properties(){var e={};return Ae(this.props,(function(t,n){if(n===ps&&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,(zt(o=lT)?l:j_&&o.indexOf===j_?o.indexOf(a)!=-1:(Ae(o,(function(c){if(l||(l=c===a))return nu})),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=Ax(this.R.custom_campaign_params,this.R.mask_personal_data_properties,this.R.custom_personal_data_properties);ds(Ng(e))||this.register(e),this.Ei=!0}}update_search_keyword(){var e;this.register((e=H?.referrer)?Rx(e):{})}update_referrer_info(){var e;this.register_once({$referrer:Ix(),$referring_domain:H!=null&&H.referrer&&((e=uu(H.referrer))==null?void 0:e.host)||"$direct"},void 0)}set_initial_person_info(){this.props[Wf]||this.props[zf]||this.register_once({[ou]:$x(this.R.mask_personal_data_properties,this.R.custom_personal_data_properties)},void 0)}get_initial_props(){var e={};Ae([zf,Wf],(o=>{var a=this.props[o];a&&Ae(a,(function(l,c){e["$initial_"+xf(c)]=l}))}));var t,n,i=this.props[ou];if(i){var s=(t=Mx(i),n={},Ae(t,(function(o,a){n["$initial_"+xf(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[la]||{};n[e]=t,this.props[la]=n,this.save()}remove_event_timer(e){var t=(this.props[la]||{})[e];return B(t)||(delete this.props[la][e],this.save()),t}get_property(e){return this.props[e]}set_property(e,t){this.props[e]=t,this.save()}},I0=Le("[Product Tours]"),gf="ph_product_tours",dg=class{constructor(e){this.Ri=null,this.Fi=null,this._instance=e}onRemoteConfig(e){this._instance.persistence&&this._instance.persistence.register({[s0]:!(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(s0)||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?I0.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[gf];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 I0.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({[gf]: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(gf)}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)}},ia=(function(r){return r.Activation="events",r.Cancellation="cancelEvents",r})({}),CF=(function(r){return r.Button="button",r.Tab="tab",r.Selector="selector",r})({}),AF=(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})({}),TF=(function(r){return r.Top="top",r.Left="left",r.Right="right",r.Bottom="bottom",r})({}),mf=(function(r){return r.Popover="popover",r.API="api",r.Widget="widget",r.ExternalSurvey="external_survey",r})({}),RF=(function(r){return r.Open="open",r.MultipleChoice="multiple_choice",r.SingleChoice="single_choice",r.Rating="rating",r.Link="link",r})({}),IF=(function(r){return r.NextQuestion="next_question",r.End="end",r.ResponseBased="response_based",r.SpecificQuestion="specific_question",r})({}),$F=(function(r){return r.Once="once",r.Recurring="recurring",r.Always="always",r})({}),pa=(function(r){return r.SHOWN="survey shown",r.DISMISSED="survey dismissed",r.SENT="survey sent",r.ABANDONED="survey abandoned",r})({}),vf=(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})({}),pg=(function(r){return r.Popover="popover",r.Inline="inline",r})({}),Ce=Le("[Surveys]"),Bx="seenSurvey_",KT=(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},$0=r=>((e,t)=>{var n=""+e+t.id;return t.current_iteration&&t.current_iteration>0&&(n=""+e+t.id+"_"+t.current_iteration),n})(Bx,r),YT=[mf.Popover,mf.Widget,mf.API],XT={ignoreConditions:!1,ignoreDelay:!1,displayType:pg.Popover},wa=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 as(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 hg=class{constructor(e){this.Ai=new wa,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"||!as(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=>as(a.href,t.href,t.href_matching||"exact")));var s,o=(e==null||(n=e.properties)==null?void 0:n.$elements_chain)||"";return!!o&&as((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=>as(c.text,t.text,t.text_matching||"exact")||as(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=>as(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||Hx(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)}},fg=class{constructor(e){this._instance=e,this.Ki=new Map,this.Yi=new Map,this.Xi=new Map}Qi(e,t){return!!e&&Hx(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===ia.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 hg(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,ia.Activation),this.Yi=this.Zi(e,ia.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,ia.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,ia.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}},gg=class extends fg{constructor(e){super(e)}oe(){return"$surveys_activated"}ae(){return pa.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()}},mg=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(Bx)||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 gg(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(Vf);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({[Vf]: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(YT.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!==pg.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!==pg.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()}},Mr=Le("[Conversations]"),vg=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)||(Dr(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 Mr.error("Conversations enabled but missing token in remote config.")}}$e(e){if(this.Ee)try{this._conversationsManager=e(this.Ee,this._instance),Mr.info("Conversations loaded successfully")}catch(t){this.Se("Error completing conversations initialization",t)}else Mr.error("Cannot complete initialization: remote config is null")}Se(e,t){Mr.error(e,t),this._conversationsManager=null,this.xe=!1}show(){this._conversationsManager?this._conversationsManager.show():Mr.warn("Conversations not loaded yet.")}hide(){this._conversationsManager&&this._conversationsManager.hide()}isAvailable(){return this.we===!0&&!zt(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 us((function*(){return i._conversationsManager?i._conversationsManager.sendMessage(e,t,n):(Mr.warn("Conversations not available yet."),null)}))()}getMessages(e,t){var n=this;return us((function*(){return n._conversationsManager?n._conversationsManager.getMessages(e,t):(Mr.warn("Conversations not available yet."),null)}))()}markAsRead(e){var t=this;return us((function*(){return t._conversationsManager?t._conversationsManager.markAsRead(e):(Mr.warn("Conversations not available yet."),null)}))()}getTickets(e){var t=this;return us((function*(){return t._conversationsManager?t._conversationsManager.getTickets(e):(Mr.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}},yg=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=Le("[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.")}}},M0=Le("[RateLimiter]"),bg=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=>{M0.info((i||"events")+" is quota limited."),this.serverLimits[i]=new Date().getTime()+6e4}))}catch(i){return void M0.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(jf))!==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(jf,l),{isRateLimited:c,remainingTokens:l.tokens}}isServerRateLimited(e){var t=this.serverLimits[e||"events"]||!1;return t!==!1&&new Date().getTime()<t}},ni=Le("[RemoteConfig]"),_g=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))):(ni.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 ni.info("Using preloaded remote config",this.remoteConfig),void this.yi(this.remoteConfig);if(this._instance.M())return void ni.warn("Remote config is disabled. Falling back to local config.");this.Te((e=>{if(!e)return ni.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){ni.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()):ni.info("__preview_remote_config is disabled. Logging config instead",e):ni.error("Failed to fetch remote config from PostHog.")}},xg=3e3,wg=class{constructor(e,t){this.Ce=!0,this.Re=[],this.Fe=pr(t?.flush_interval_ms||xg,250,5e3,U.createLogger("flush interval"),xg),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}},JT=["retriesPerformedSoFar"],Sg=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=D0(e,JT);ls(t)&&(n.url=vu(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=[]}},kg=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}},QT=r=>$x(r?.config.mask_personal_data_properties,r?.config.custom_personal_data_properties),bu=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({[Uf]:a})}},this._instance=e,this.Qe=t,this.Xe=n,this.Ye=i||QT,this.Qe.onSessionId(this.Je)}Ke(){return this.Xe.props[Uf]}getSetOnceProps(){var e,t=(e=this.Ke())==null?void 0:e.props;return t?"r"in t?Mx(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(Ng(this.getSetOnceProps()),((t,n)=>{n==="$current_url"&&(n="url"),e["$session_entry_"+xf(n)]=t})),e}},yf=Le("[SessionId]"),_u=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 wa,this.er=(u,p)=>!(!ls(u)||!ls(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*pr(o,60,36e3,yf.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){yf.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({[iu]:[t,e,n]}))}_r(){var e=this.Xe.props[iu];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=ls(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(),yf.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=ls(i)&&e&&!l?i:n,f=ls(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)}},eR=["$set_once","$set"],on=Le("[SiteApps]"),Eg=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({},D0(e,eR),{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.')}},Vx=function(r,e){if(!r)return!1;var t=r.userAgent;if(t&&q_(t,e))return!0;try{var n=r?.userAgentData;if(n!=null&&n.brands&&n.brands.some((i=>q_(i?.brand,e))))return!0}catch{}return!!r.webdriver},ha=(function(r){return r.US="us",r.EU="eu",r.CUSTOM="custom",r})({}),P0="i.posthog.com",Cg=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("."+P0,".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]=ha.US:/https:\/\/(eu|eu-assets)(\.i)?\.posthog\.com/i.test(this.apiHost)?this.Sr[this.apiHost]=ha.EU:this.Sr[this.apiHost]=ha.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===ha.CUSTOM)return this.apiHost+t;var n=P0+t;switch(e){case"assets":return"https://"+this.region+"-assets."+n;case"api":return"https://"+this.region+"."+n}}},tR={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&&yu(e.href,r),not_regex:(r,e)=>!!E&&!yu(e.href,r),exact:(r,e)=>e.href===r,is_not:(r,e)=>e.href!==r},Ag=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=du(e?.search,"__experiment_id"),n=du(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||tR[(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=Ax();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 St&&this._instance?Vx(St,this._instance.config.custom_blocked_useragents):void 0}},rR=Le("[PostHog ExternalIntegrations]"),nR={intercom:"intercom-integration",crispChat:"crisp-chat-integration"},Tg=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 rR.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(nR[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)}}},Rg="[SessionRecording]",sa=Le(Rg),xu=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 sa.error("started without valid sessionManager"),new Error(Rg+" started without valid sessionManager. This is a bug.");if(this._instance.config.cookieless_mode==="always")throw new Error(Rg+' cannot be used with cookieless_mode="always"')}get Ar(){var e,t=!((e=this._instance.get_property(sf))==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),sa.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 sa.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(ux)}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({[sf]: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:sa.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):sa.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(sf);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))}},ma={},Ig=()=>{},cs="posthog",Ux=!zT&&yt?.indexOf("MSIE")===-1&&yt?.indexOf("Mozilla")===-1,O0=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:aT(H?.location),persistence:"localStorage+cookie",persistence_name:"",cookie_persisted_properties:[],loaded:Ig,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:xg},error_tracking:{},_onCapture:Ig,__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))},L0=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},$g=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}},wu=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 $g,this.Br=!1,this.version=Pr.LIB_VERSION,this.qr=new wa,this._calculate_event_properties=this.calculateEventProperties.bind(this),this.config=O0(),this.SentryIntegration=eg,this.sentryIntegration=e=>(function(t,n){var i=Cx(t,n);return{name:Ex,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 ug(this),this.toolbar=new tg(this),this.scrollManager=new kg(this),this.pageViewManager=new fu(this),this.surveys=new mg(this),this.conversations=new vg(this),this.logs=new yg(this),this.experiments=new Ag(this),this.exceptions=new cg(this),this.rateLimiter=new bg(this),this.requestRouter=new Cg(this),this.consent=new Xf(this),this.externalIntegrations=new Tg(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!==cs){var i,s=(i=ma[n])!==null&&i!==void 0?i:new r;return s._init(e,t,n),ma[n]=s,ma[cs][n]=s,s}return this._init(e,t,n)}_init(e,t,n){var i;if(t===void 0&&(t={}),B(e)||wf(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({},O0(t.defaults),L0(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:Nr.GZipJS;var s=this.Qr();this.persistence=new ga(this.config,s),this.sessionPersistence=this.config.persistence==="sessionStorage"||this.config.persistence==="memory"?this.persistence:new ga(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 wg((x=>this.ts(x)),this.config.request_queue_config),this.es=new Sg(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 _u(this),this.sessionPropsManager=new bu(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)),Pr.DEBUG=Pr.DEBUG||this.config.debug,Pr.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(Or,(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:Xo,$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(Or,"anonymous")}return Ue(E,"onpagehide"in self?"pagehide":"unload",this._handle_unload.bind(this),{passive:!1}),this.toolbar.maybeLoadToolbar(),t.segment?RT(this,(()=>this.ns())):this.ns(),cn(this.config._onCapture)&&this.config._onCapture!==Ig&&(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 Qf(this),this.historyAutocapture.startIfEnabled();var n=[];n.push((()=>{new rg(this).startIfEnabledOrStop()})),n.push((()=>{var i;this.siteApps=new Eg(this),(i=this.siteApps)==null||i.init()})),e||n.push((()=>{this.sessionRecording=new xu(this),this.sessionRecording.startIfEnabledOrStop()})),this.config.disable_scroll_properties||n.push((()=>{this.scrollManager.startMeasuringScrollPosition()})),n.push((()=>{this.autocapture=new Zf(this),this.autocapture.startIfEnabled()})),n.push((()=>{this.surveys.loadIfEnabled()})),n.push((()=>{this.logs.loadIfEnabled()})),n.push((()=>{this.conversations.loadIfEnabled()})),n.push((()=>{this.productTours=new dg(this),this.productTours.loadIfEnabled()})),n.push((()=>{this.heatmaps=new ig(this),this.heatmaps.startIfEnabled()})),n.push((()=>{this.webVitalsAutocapture=new ng(this)})),n.push((()=>{this.exceptionObserver=new Jf(this),this.exceptionObserver.startIfEnabledOrStop()})),n.push((()=>{this.deadClicksAutocapture=new hu(this,TT),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,Nr.GZipJS)?Nr.GZipJS:fe(e.supportedCompression,Nr.Base64)?Nr.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 _g(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&&(Ux?this.__request_queue.push(e):this.rateLimiter.isServerRateLimited(e.batchKey)||(e.transport=e.transport||this.config.api_transport,e.url=vu(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=vu(o.url,{_:new Date().getTime().toString(),ver:Pr.LIB_VERSION,compression:o.compression});var a=(n=o.transport)!==null&&n!==void 0?n:"fetch",l=eu.filter((u=>!o.disableTransport||!u.transport||!o.disableTransport.includes(u.transport))),c=(i=(s=ax(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=sT(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===pa.DISMISSED||e===pa.SENT){var v=t?.[vf.SURVEY_ID],g=t?.[vf.SURVEY_ITERATION];p={id:v,current_iteration:g},localStorage.getItem($0(p))||localStorage.setItem($0(p),"true"),u.$set=W({},u.$set,{[KT({id:v,current_iteration:g},e===pa.SENT?"responded":"dismissed")]:!0})}else e===pa.SHOWN&&(u.$set=W({},u.$set,{[vf.SURVEY_LAST_SEEN_DATE]:new Date().toISOString()}));var m=W({},u.properties.$set,u.$set);if(ds(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)&&!Hr(a.distinct_id)||wf(a.distinct_id))&&U.error("Invalid distinct_id for replay event. This indicates a bug in your implementation"),a}var c,u=LT(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===ha.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),ds(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=XT),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(Hr(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!==Xo){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(aa)&&(this.unregister(aa),this.register({distinct_id:e}));var o=(this.persistence.get_property(Or)||"anonymous")==="anonymous";e!==i&&o?(this.persistence.set_property(Or,"identified"),this.setPersonPropertiesForFlags(W({},n||{},t||{}),!1),this.capture("$identify",{distinct_id:e,$anon_distinct_id:i},{$set:t||{},$set_once:n||{}}),this.Jr=E0(e,t,n),this.featureFlags.setAnonymousDistinctId(i)):(t||n)&&this.setPersonProperties(t,n),e!==i&&(this.reloadFeatureFlags(),this.unregister(su))}}else U.critical('The string "'+Xo+'" 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=E0(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(Or,"anonymous"),(s=this.sessionManager)==null||s.resetSessionId(),this.Jr=null,this.config.cookieless_mode==="always")this.register_once({distinct_id:Xo,$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(lx)?(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(aa,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,L0(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 ga(W({},this.config,{persistence:"sessionStorage"}),u);var p=this.Kr(this.config.debug);Dr(p)&&(this.config.debug=p),Dr(this.config.debug)&&(this.config.debug?(Pr.DEBUG=!0,Me.H()&&Me.G("ph_debug","true"),U.info("set_config",{config:e,oldConfig:t,newConfig:W({},this.config)})):(Pr.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:cs;return t!==cs&&(t=cs+"."+t),t}_isIdentified(){var e,t;return((e=this.persistence)==null?void 0:e.get_property(Or))==="identified"||((t=this.sessionPersistence)==null?void 0:t.get_property(Or))==="identified"}fs(){var e,t;return!(this.config.person_profiles==="never"||this.config.person_profiles==="identified_only"&&!this._isIdentified()&&ds(this.getGroups())&&((e=this.persistence)==null||(e=e.props)==null||!e[aa])&&((t=this.persistence)==null||(t=t.props)==null||!t[au]))}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(au,!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 _u(this),this.pageViewManager=new fu(this),this.persistence&&(this.sessionPropsManager=new bu(this,this.sessionManager,this.persistence)),this.sessionRecording=new xu(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:Xo,$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===Lr.GRANTED?"granted":e===Lr.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 St?Vx(St,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 M2(e.event)?U.warn(s+". This can cause unexpected behavior."):U.info(s),null}n.properties&&!ds(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=Dr(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]]=iT(r.prototype[e[t]])})(wu,["identify"]);var N0;var jx=(N0=ma[cs]=new wu,(function(){function r(){r.done||(r.done=!0,Ux=!1,Ae(ma,(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")})(),N0);var Ug=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=jx.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 Cu(r={}){return new Ug(r)}var Wx={posthog:r=>Cu(r),noop:()=>Zc()};function zx(r,e){let t=Wx[r];if(!t)throw new Error(`Unknown telemetry provider: ${r}. Supported: ${Object.keys(Wx).join(", ")}`);return t(e)}async function qx(r){Dd(),Z("Syntro Bootstrap","====== INIT ======"),Z("Syntro Bootstrap","Options:",{hasToken:!!r.token,tokenPrefix:`${r.token?.slice(0,15)}...`,hasCanvasOptions:!!r.canvas});let e=tc();if(console.log(`[DIAG] Mode detection: sdkMode=${e}`),console.log("[DIAG] editorSource:",Ro()),console.log("[DIAG] editorConf:",ec()),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=ec()?.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=qi(t),Dd(n.d);else if(e)Z("Syntro Bootstrap",`\u2713 Non-syn_ token allowed (${e} mode)`);else throw Pl("Syntro Bootstrap","\u274C Token does not start with syn_ and NOT in editor/audit/review mode!"),Pl("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 Pl("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=Hd({resource:{serviceName:"syntro-runtime-sdk",serviceVersion:Vi,posthogKey:n.t??"",hostOrigin:typeof window<"u"?window.location.origin:""},emit:Vd({endpoint:V})}),Q=jd()??"https://cdn.syntrologie.com/runtime-sdk/",ue=np(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")||Rb,l=Cb(),c=uh(),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=dh(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=Zi({debug:r.debug,history:g?new Gi(r.testMode?0:100):void 0,testMode:r.testMode});console.log("[Syntro Bootstrap] EventBus created");let y=Ld({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=I_(),S,b=V=>{Z("Syntro Bootstrap","Phase 2: PostHog feature flags loaded");let J=Tb(V);if(Z("Syntro Bootstrap","Segment flags from PostHog:",J),Ab(J),v){let Q=C?.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=zx(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 Yo({initialStatus:"pending",pendingResolver:ue,onConsentChange:me=>{me==="granted"?Q.optInCapturing?.():me==="denied"&&Q.optOutCapturing?.()}});try{Nb(w,_e,{geoPromise:h}),Z("Syntro Bootstrap","SDK defaults installed (D-1..D-5) with consent gate")}catch(me){Ge("Syntro Bootstrap","installDefaults failed",me)}try{new Ko({adapters:[new Go,new Zo,new qo],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=>{Ge("Syntro Bootstrap","Consent detector failed to start",Ie)})}catch(me){Ge("Syntro Bootstrap","Consent detector setup failed",me)}if(x?.name==="shopify"&&s)try{S=new Mc({distinctId:w.getDistinctId?.()??"",telemetryHost:s,telemetryKey:n.t}),Z("Syntro Bootstrap","ShopifyPixelBridge initialized for checkout attribution")}catch(me){Ge("Syntro Bootstrap","ShopifyPixelBridge init failed",me)}}let C;n?.e&&(v=k_("growthbook",{clientKey:n.e,apiHost:i,attributes:p,onExperimentViewed:w?.trackExperiment?(V,J,Q)=>{w.trackExperiment(V,J,Q)}:void 0})),C=Tc({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 A=typeof c.surface_type=="string"?c.surface_type:"web",$=typeof c.surface_host=="string"?c.surface_host:"web",R=qc({telemetry:w,sessionMetrics:C,mode:_,events:m,initialSurfaceType:A,initialSurfaceHost:$});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")||Ib()||"https://cdn.syntrologie.com",Y=od({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}`):Ge("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),Ge("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){Ge("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=T_(n.f,n.o??{});K=async()=>{let J=await V.fetch();return{...J.config,tiles:J.config.tiles??[]}}}else v&&(K=jn({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,qt;dt&&dt.variantId===ue?qt=dt:(qt=new ss(w,ue),Ie&&(Ie.interventionTracker=qt),R.navigation.subscribe(()=>{qt.resetPage()})),qt.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 qt=dt.filter(Ne=>Ne.success),Zt=dt.filter(Ne=>!Ne.success);qt.length>0&&console.log(`[Syntro Bootstrap] Apps loaded from CDN: ${qt.map(Ne=>Ne.appId).join(", ")}`);let xs=Zt.filter(Ne=>!le.has(Ne.appId));xs.length>0&&(console.error("[Syntro Bootstrap] Apps FAILED to load from CDN:",xs.map(Ne=>`${Ne.appId} (${Ne.error})`).join(", ")),xs.forEach(Ne=>le.add(Ne.appId)));for(let Ne of me)if(R.apps.has(Ne))try{await R.apps.activate(Ne),console.log(`[Syntro Bootstrap] App activated: ${Ne}`)}catch(ws){console.error(`[Syntro Bootstrap] Failed to activate app: ${Ne}`,ws)}else console.error(`[Syntro Bootstrap] App "${Ne}" 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){Ge("Syntro Bootstrap",`Platform adapter init failed: ${x.name}`,V)}}let te=await rc({...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=nr();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:C,appLoader:Y}}async function iR(r){try{return await qx(r)}catch(e){let t=e instanceof Error?e.message:String(e);console.warn("[Syntrologie] SDK initialization failed:",t),nr()?.increment("bootstrap_errors"),typeof document<"u"&&document.getElementById("syntrologie-anti-flicker")?.remove();return}}function sR(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 oR(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 jg={init:iR,loadAdaptive:oR,encodeToken:nc,decodeToken:qi,events:{emit:sR}};typeof window<"u"&&(window.Syntro=jg);function _s(r){let e=r.split(".");return{major:parseInt(e[0]||"0",10),minor:parseInt(e[1]||"0",10)}}function aR(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=_s(i),o=_s(Er);return s.major>o.major&&e.push(`Config schema v${i} is newer than SDK v${Er}. 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${Er}. Migrating config to current version.`),{valid:!0,warnings:e,errors:t,migratedConfig:lR(n,i)}):{valid:!0,warnings:e,errors:t}}function lR(r,e){let t={...r};return _s(e).major===1&&(t=cR(t)),t.schemaVersion=Er,t}function cR(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 uR(r){if(!r||typeof r!="object")return!1;let e=r,t=e.schemaVersion||"1.0",n=_s(t),i=_s(Er);return n.major<i.major||!e.schemaVersion}var Zx=d.object({url:d.string(),routeId:d.string().optional(),title:d.string().optional(),locale:d.string().optional()}),Gx=d.object({url:d.string(),ts:d.number()}),Kx=d.object({sessionId:d.string(),startTs:d.number(),pageHistory:d.array(Gx).optional()}),Yx=d.object({width:d.number(),height:d.number()}),Xx=d.object({x:d.number(),y:d.number(),w:d.number(),h:d.number()}),Jx=d.object({anchorId:d.string(),present:d.boolean(),visible:d.boolean().optional(),boundingBox:Xx.optional()}),Qx=d.record(d.string(),d.union([d.number(),d.string(),d.boolean(),d.undefined()])),ew=d.object({page:Zx,session:Kx,viewport:Yx,anchors:d.array(Jx).optional(),augmented:Qx.optional()});function dR(r){return ew.safeParse(r)}var Au=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 Tu=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 Ru=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 Wg=d.enum(["posthog","canvas","derived"]),tw=d.object({ts:d.number(),name:d.string(),source:Wg,props:d.record(d.string(),d.unknown()).optional(),schemaVersion:d.string()}),rw=d.object({names:d.array(d.string()).optional(),patterns:d.array(d.string()).optional(),sources:d.array(Wg).optional()});function pR(r){return tw.safeParse(r)}function hR(r){return rw.safeParse(r)}var zg=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()})]),nw=d.object({kind:d.literal("tooltip"),id:d.string(),anchor:zg,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()}),iw=d.object({kind:d.literal("highlight"),id:d.string(),anchor:zg,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()}),Iu=d.object({id:d.string(),version:d.number(),routes:d.array(d.string()).optional(),steps:d.array(d.union([nw,iw]))});function fR(r){return Iu.parse(r)}var gR=({configUri:r,experiments:e,featureKey:t="smart-canvas-overlay-uri",credentials:n="include"}={})=>async()=>{let i=Hl({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 Iu.parse(o)};var sw=d.object({value:d.unknown(),expiresAt:d.number().optional()}),ow=d.object({count:d.number(),resetAt:d.number().optional()});function mR(r){return sw.safeParse(r)}function vR(r){return ow.safeParse(r)}var qg="2026-05-06T04:46:30.034Z (542c106817c)";if(typeof window<"u"){console.log(`[Syntro Runtime] Build: ${qg} (Lit)`);let r=window.SynOS,e=r?.appRegistry||Ws;window.SynOS={...r,appRegistry:e,_runtimeBuild:qg,_renderer:"lit"},wo(),dy(e)}return pw(yR);})();
1066
1066
  /*! Bundled license information:
1067
1067
 
1068
1068
  @lit/reactive-element/css-tag.js: