@voxket-ai/voxket-live 1.1.38 → 1.1.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -6,7 +6,7 @@
6
6
  ${p}px !important;
7
7
  top: ${u}px !important;
8
8
  }
9
- `),()=>{g.contains(m)&&g.removeChild(m)}},[t]),h.jsx(Y0,{isPresent:t,childRef:o,sizeRef:s,children:D.cloneElement(e,{ref:o})})}const X0=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:o,mode:s,anchorX:a,root:l})=>{const c=Ga(Q0),u=N.useId();let d=!0,f=N.useMemo(()=>(d=!1,{id:u,initial:t,isPresent:n,custom:i,onExitComplete:p=>{c.set(p,!0);for(const m of c.values())if(!m)return;r&&r()},register:p=>(c.set(p,!1),()=>c.delete(p))}),[n,c,r]);return o&&d&&(f={...f}),N.useMemo(()=>{c.forEach((p,m)=>c.set(m,!1))},[n]),D.useEffect(()=>{!n&&!c.size&&r&&r()},[n]),s==="popLayout"&&(e=h.jsx(Z0,{isPresent:n,anchorX:a,root:l,children:e})),h.jsx(Ao.Provider,{value:f,children:e})};function Q0(){return new Map}function dh(e=!0){const t=N.useContext(Ao);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:i}=t,o=N.useId();N.useEffect(()=>{if(e)return i(o)},[e]);const s=N.useCallback(()=>e&&r&&r(o),[o,r,e]);return!n&&r?[!1,s]:[!0]}const Li=e=>e.key||"";function jc(e){const t=[];return N.Children.forEach(e,n=>{N.isValidElement(n)&&t.push(n)}),t}const Tr=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:i=!0,mode:o="sync",propagate:s=!1,anchorX:a="left",root:l})=>{const[c,u]=dh(s),d=N.useMemo(()=>jc(e),[e]),f=s&&!c?[]:d.map(Li),p=N.useRef(!0),m=N.useRef(d),g=Ga(()=>new Map),[v,y]=N.useState(d),[E,w]=N.useState(d);vf(()=>{p.current=!1,m.current=d;for(let T=0;T<E.length;T++){const R=Li(E[T]);f.includes(R)?g.delete(R):g.get(R)!==!0&&g.set(R,!1)}},[E,f.length,f.join("-")]);const _=[];if(d!==v){let T=[...d];for(let R=0;R<E.length;R++){const A=E[R],I=Li(A);f.includes(I)||(T.splice(R,0,A),_.push(A))}return o==="wait"&&_.length&&(T=_),w(jc(T)),y(d),null}process.env.NODE_ENV!=="production"&&o==="wait"&&E.length>1&&console.warn(`You're attempting to animate multiple children within AnimatePresence, but its mode is set to "wait". This will lead to odd visual behaviour.`);const{forceRender:C}=N.useContext(Wa);return h.jsx(h.Fragment,{children:E.map(T=>{const R=Li(T),A=s&&!c?!1:d===E||f.includes(R),I=()=>{if(g.has(R))g.set(R,!0);else return;let b=!0;g.forEach(M=>{M||(b=!1)}),b&&(C==null||C(),w(m.current),s&&(u==null||u()),r&&r())};return h.jsx(X0,{isPresent:A,initial:!p.current||n?void 0:!1,custom:t,presenceAffectsLayout:i,mode:o,root:l,onExitComplete:A?void 0:I,anchorX:a,children:T},R)})})},fh=N.createContext({strict:!1}),Bc={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Nr={};for(const e in Bc)Nr[e]={isEnabled:t=>Bc[e].some(n=>!!t[n])};function J0(e){for(const t in e)Nr[t]={...Nr[t],...e[t]}}const ey=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function mo(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||ey.has(e)}let hh=e=>!mo(e);function ty(e){typeof e=="function"&&(hh=t=>t.startsWith("on")?!mo(t):e(t))}try{ty(require("@emotion/is-prop-valid").default)}catch{}function ny(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||(hh(i)||n===!0&&mo(i)||!t&&!mo(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}const Mo=N.createContext({});function Ro(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function ci(e){return typeof e=="string"||Array.isArray(e)}const ml=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],bl=["initial",...ml];function Io(e){return Ro(e.animate)||bl.some(t=>ci(e[t]))}function ph(e){return!!(Io(e)||e.variants)}function ry(e,t){if(Io(e)){const{initial:n,animate:r}=e;return{initial:n===!1||ci(n)?n:void 0,animate:ci(r)?r:void 0}}return e.inherit!==!1?t:{}}function iy(e){const{initial:t,animate:n}=ry(e,N.useContext(Mo));return N.useMemo(()=>({initial:t,animate:n}),[$c(t),$c(n)])}function $c(e){return Array.isArray(e)?e.join(" "):e}const ui={};function oy(e){for(const t in e)ui[t]=e[t],tl(t)&&(ui[t].isCSSVariable=!0)}function gh(e,{layout:t,layoutId:n}){return Pr.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!ui[e]||e==="opacity")}const sy={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},ay=Or.length;function ly(e,t,n){let r="",i=!0;for(let o=0;o<ay;o++){const s=Or[o],a=e[s];if(a===void 0)continue;let l=!0;if(typeof a=="number"?l=a===(s.startsWith("scale")?1:0):l=parseFloat(a)===0,!l||n){const c=oh(a,fl[s]);if(!l){i=!1;const u=sy[s]||s;r+=`${u}(${c}) `}n&&(t[s]=c)}}return r=r.trim(),n?r=n(t,i?"":r):i&&(r="none"),r}function yl(e,t,n){const{style:r,vars:i,transformOrigin:o}=e;let s=!1,a=!1;for(const l in t){const c=t[l];if(Pr.has(l)){s=!0;continue}else if(tl(l)){i[l]=c;continue}else{const u=oh(c,fl[l]);l.startsWith("origin")?(a=!0,o[l]=u):r[l]=u}}if(t.transform||(s||n?r.transform=ly(t,e.transform,n):r.transform&&(r.transform="none")),a){const{originX:l="50%",originY:c="50%",originZ:u=0}=o;r.transformOrigin=`${l} ${c} ${u}`}}const xl=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function mh(e,t,n){for(const r in t)!_t(t[r])&&!gh(r,n)&&(e[r]=t[r])}function cy({transformTemplate:e},t){return N.useMemo(()=>{const n=xl();return yl(n,t,e),Object.assign({},n.vars,n.style)},[t])}function uy(e,t){const n=e.style||{},r={};return mh(r,n,e),Object.assign(r,cy(e,t)),r}function dy(e,t){const n={},r=uy(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const fy={offset:"stroke-dashoffset",array:"stroke-dasharray"},hy={offset:"strokeDashoffset",array:"strokeDasharray"};function py(e,t,n=1,r=0,i=!0){e.pathLength=1;const o=i?fy:hy;e[o.offset]=_e.transform(-r);const s=_e.transform(t),a=_e.transform(n);e[o.array]=`${s} ${a}`}function bh(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:o=1,pathOffset:s=0,...a},l,c,u){if(yl(e,a,c),l){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:d,style:f}=e;d.transform&&(f.transform=d.transform,delete d.transform),(f.transform||d.transformOrigin)&&(f.transformOrigin=d.transformOrigin??"50% 50%",delete d.transformOrigin),f.transform&&(f.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete d.transformBox),t!==void 0&&(d.x=t),n!==void 0&&(d.y=n),r!==void 0&&(d.scale=r),i!==void 0&&py(d,i,o,s,!1)}const yh=()=>({...xl(),attrs:{}}),xh=e=>typeof e=="string"&&e.toLowerCase()==="svg";function gy(e,t,n,r){const i=N.useMemo(()=>{const o=yh();return bh(o,t,xh(r),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};mh(o,e.style,e),i.style={...o,...i.style}}return i}const my=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function vl(e){return typeof e!="string"||e.includes("-")?!1:!!(my.indexOf(e)>-1||/[A-Z]/u.test(e))}function by(e,t,n,{latestValues:r},i,o=!1){const a=(vl(e)?gy:dy)(t,r,i,e),l=ny(t,typeof e=="string",o),c=e!==N.Fragment?{...l,...a,ref:n}:{},{children:u}=t,d=N.useMemo(()=>_t(u)?u.get():u,[u]);return N.createElement(e,{...c,children:d})}function Vc(e){const t=[{},{}];return e==null||e.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function wl(e,t,n,r){if(typeof t=="function"){const[i,o]=Vc(r);t=t(n!==void 0?n:e.custom,i,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[i,o]=Vc(r);t=t(n!==void 0?n:e.custom,i,o)}return t}function ro(e){return _t(e)?e.get():e}function yy({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:xy(n,r,i,e),renderState:t()}}function xy(e,t,n,r){const i={},o=r(e,{});for(const f in o)i[f]=ro(o[f]);let{initial:s,animate:a}=e;const l=Io(e),c=ph(e);t&&c&&!l&&e.inherit!==!1&&(s===void 0&&(s=t.initial),a===void 0&&(a=t.animate));let u=n?n.initial===!1:!1;u=u||s===!1;const d=u?a:s;if(d&&typeof d!="boolean"&&!Ro(d)){const f=Array.isArray(d)?d:[d];for(let p=0;p<f.length;p++){const m=wl(e,f[p]);if(m){const{transitionEnd:g,transition:v,...y}=m;for(const E in y){let w=y[E];if(Array.isArray(w)){const _=u?w.length-1:0;w=w[_]}w!==null&&(i[E]=w)}for(const E in g)i[E]=g[E]}}}return i}const vh=e=>(t,n)=>{const r=N.useContext(Mo),i=N.useContext(Ao),o=()=>yy(e,t,r,i);return n?o():Ga(o)};function El(e,t,n){var o;const{style:r}=e,i={};for(const s in r)(_t(r[s])||t.style&&_t(t.style[s])||gh(s,e)||((o=n==null?void 0:n.getValue(s))==null?void 0:o.liveStyle)!==void 0)&&(i[s]=r[s]);return i}const vy=vh({scrapeMotionValuesFromProps:El,createRenderState:xl});function wh(e,t,n){const r=El(e,t,n);for(const i in e)if(_t(e[i])||_t(t[i])){const o=Or.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;r[o]=e[i]}return r}const wy=vh({scrapeMotionValuesFromProps:wh,createRenderState:yh}),Ey=Symbol.for("motionComponentSymbol");function xr(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function Sy(e,t,n){return N.useCallback(r=>{r&&e.onMount&&e.onMount(r),t&&(r?t.mount(r):t.unmount()),n&&(typeof n=="function"?n(r):xr(n)&&(n.current=r))},[t])}const Sl=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),ky="framerAppearId",Eh="data-"+Sl(ky),Sh=N.createContext({});function Cy(e,t,n,r,i){var g,v;const{visualElement:o}=N.useContext(Mo),s=N.useContext(fh),a=N.useContext(Ao),l=N.useContext(gl).reducedMotion,c=N.useRef(null);r=r||s.renderer,!c.current&&r&&(c.current=r(e,{visualState:t,parent:o,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:l}));const u=c.current,d=N.useContext(Sh);u&&!u.projection&&i&&(u.type==="html"||u.type==="svg")&&_y(c.current,n,i,d);const f=N.useRef(!1);N.useInsertionEffect(()=>{u&&f.current&&u.update(n,a)});const p=n[Eh],m=N.useRef(!!p&&!((g=window.MotionHandoffIsComplete)!=null&&g.call(window,p))&&((v=window.MotionHasOptimisedAnimation)==null?void 0:v.call(window,p)));return vf(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),m.current&&u.animationState&&u.animationState.animateChanges())}),N.useEffect(()=>{u&&(!m.current&&u.animationState&&u.animationState.animateChanges(),m.current&&(queueMicrotask(()=>{var y;(y=window.MotionHandoffMarkAsComplete)==null||y.call(window,p)}),m.current=!1),u.enteringChildren=void 0)}),u}function _y(e,t,n,r){const{layoutId:i,layout:o,drag:s,dragConstraints:a,layoutScroll:l,layoutRoot:c,layoutCrossfade:u}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:kh(e.parent)),e.projection.setOptions({layoutId:i,layout:o,alwaysMeasureLayout:!!s||a&&xr(a),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:r,crossfade:u,layoutScroll:l,layoutRoot:c})}function kh(e){if(e)return e.options.allowProjection!==!1?e.projection:kh(e.parent)}function fs(e,{forwardMotionProps:t=!1}={},n,r){n&&J0(n);const i=vl(e)?wy:vy;function o(a,l){let c;const u={...N.useContext(gl),...a,layoutId:Ty(a)},{isStatic:d}=u,f=iy(a),p=i(a,d);if(!d&&Ka){Ny(u,n);const m=Ay(u);c=m.MeasureLayout,f.visualElement=Cy(e,p,u,r,m.ProjectionNode)}return h.jsxs(Mo.Provider,{value:f,children:[c&&f.visualElement?h.jsx(c,{visualElement:f.visualElement,...u}):null,by(e,a,Sy(p,f.visualElement,l),p,d,t)]})}o.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const s=N.forwardRef(o);return s[Ey]=e,s}function Ty({layoutId:e}){const t=N.useContext(Wa).id;return t&&e!==void 0?t+"-"+e:e}function Ny(e,t){const n=N.useContext(fh).strict;if(process.env.NODE_ENV!=="production"&&t&&n){const r="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";e.ignoreStrict?Rr(!1,r,"lazy-strict-mode"):wn(!1,r,"lazy-strict-mode")}}function Ay(e){const{drag:t,layout:n}=Nr;if(!t&&!n)return{};const r={...t,...n};return{MeasureLayout:t!=null&&t.isEnabled(e)||n!=null&&n.isEnabled(e)?r.MeasureLayout:void 0,ProjectionNode:r.ProjectionNode}}function My(e,t){if(typeof Proxy>"u")return fs;const n=new Map,r=(o,s)=>fs(o,s,e,t),i=(o,s)=>(process.env.NODE_ENV!=="production"&&Qa(!1,"motion() is deprecated. Use motion.create() instead."),r(o,s));return new Proxy(i,{get:(o,s)=>s==="create"?r:(n.has(s)||n.set(s,fs(s,void 0,e,t)),n.get(s))})}function Ch({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function Ry({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Iy(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function hs(e){return e===void 0||e===1}function ma({scale:e,scaleX:t,scaleY:n}){return!hs(e)||!hs(t)||!hs(n)}function Hn(e){return ma(e)||_h(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function _h(e){return zc(e.x)||zc(e.y)}function zc(e){return e&&e!=="0%"}function bo(e,t,n){const r=e-n,i=t*r;return n+i}function Uc(e,t,n,r,i){return i!==void 0&&(e=bo(e,i,r)),bo(e,n,r)+t}function ba(e,t=0,n=1,r,i){e.min=Uc(e.min,t,n,r,i),e.max=Uc(e.max,t,n,r,i)}function Th(e,{x:t,y:n}){ba(e.x,t.translate,t.scale,t.originPoint),ba(e.y,n.translate,n.scale,n.originPoint)}const Hc=.999999999999,Wc=1.0000000000001;function Oy(e,t,n,r=!1){const i=n.length;if(!i)return;t.x=t.y=1;let o,s;for(let a=0;a<i;a++){o=n[a],s=o.projectionDelta;const{visualElement:l}=o.options;l&&l.props.style&&l.props.style.display==="contents"||(r&&o.options.layoutScroll&&o.scroll&&o!==o.root&&wr(e,{x:-o.scroll.offset.x,y:-o.scroll.offset.y}),s&&(t.x*=s.x.scale,t.y*=s.y.scale,Th(e,s)),r&&Hn(o.latestValues)&&wr(e,o.latestValues))}t.x<Wc&&t.x>Hc&&(t.x=1),t.y<Wc&&t.y>Hc&&(t.y=1)}function vr(e,t){e.min=e.min+t,e.max=e.max+t}function Gc(e,t,n,r,i=.5){const o=st(e.min,e.max,i);ba(e,t,n,o,r)}function wr(e,t){Gc(e.x,t.x,t.scaleX,t.scale,t.originX),Gc(e.y,t.y,t.scaleY,t.scale,t.originY)}function Nh(e,t){return Ch(Iy(e.getBoundingClientRect(),t))}function Py(e,t,n){const r=Nh(e,n),{scroll:i}=t;return i&&(vr(r.x,i.offset.x),vr(r.y,i.offset.y)),r}const Kc=()=>({translate:0,scale:1,origin:0,originPoint:0}),Er=()=>({x:Kc(),y:Kc()}),qc=()=>({min:0,max:0}),dt=()=>({x:qc(),y:qc()}),ya={current:null},Ah={current:!1};function Dy(){if(Ah.current=!0,!!Ka)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>ya.current=e.matches;e.addEventListener("change",t),t()}else ya.current=!1}const Ly=new WeakMap;function Fy(e,t,n){for(const r in t){const i=t[r],o=n[r];if(_t(i))e.addValue(r,i);else if(_t(o))e.addValue(r,_r(i,{owner:e}));else if(o!==i)if(e.hasValue(r)){const s=e.getValue(r);s.liveStyle===!0?s.jump(i):s.hasAnimated||s.set(i)}else{const s=e.getStaticValue(r);e.addValue(r,_r(s!==void 0?s:i,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const Yc=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class jy{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,blockInitialAnimation:o,visualState:s},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=ul,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=Ft.now();this.renderScheduledAt<f&&(this.renderScheduledAt=f,rt.render(this.render,!1,!0))};const{latestValues:l,renderState:c}=s;this.latestValues=l,this.baseTarget={...l},this.initialValues=n.initial?{...l}:{},this.renderState=c,this.parent=t,this.props=n,this.presenceContext=r,this.depth=t?t.depth+1:0,this.reducedMotionConfig=i,this.options=a,this.blockInitialAnimation=!!o,this.isControllingVariants=Io(n),this.isVariantNode=ph(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:u,...d}=this.scrapeMotionValuesFromProps(n,{},this);for(const f in d){const p=d[f];l[f]!==void 0&&_t(p)&&p.set(l[f])}}mount(t){var n;this.current=t,Ly.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((r,i)=>this.bindToMotionValue(i,r)),Ah.current||Dy(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:ya.current,process.env.NODE_ENV!=="production"&&Qa(this.shouldReduceMotion!==!0,"You have Reduced Motion enabled on your device. Animations may not appear as expected.","reduced-motion-disabled"),(n=this.parent)==null||n.addChild(this),this.update(this.props,this.presenceContext)}unmount(){var t;this.projection&&this.projection.unmount(),In(this.notifyUpdate),In(this.render),this.valueSubscriptions.forEach(n=>n()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(t=this.parent)==null||t.removeChild(this);for(const n in this.events)this.events[n].clear();for(const n in this.features){const r=this.features[n];r&&(r.unmount(),r.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)();const r=Pr.has(t);r&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",s=>{this.latestValues[t]=s,this.props.onUpdate&&rt.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{i(),o&&o(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Nr){const n=Nr[t];if(!n)continue;const{isEnabled:r,Feature:i}=n;if(!this.features[t]&&i&&r(this.props)&&(this.features[t]=new i(this)),this.features[t]){const o=this.features[t];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):dt()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;r<Yc.length;r++){const i=Yc[r];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const o="on"+i,s=t[o];s&&(this.propEventSubscriptions[i]=this.on(i,s))}this.prevMotionValues=Fy(this,this.scrapeMotionValuesFromProps(t,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(t){return this.props.variants?this.props.variants[t]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(t){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(t),()=>n.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=_r(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(wf(r)||Sf(r))?r=parseFloat(r):!q0(r)&&On.test(n)&&(r=ih(t,n)),this.setBaseTarget(t,_t(r)?r.get():r)),_t(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var o;const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const s=wl(this.props,n,(o=this.presenceContext)==null?void 0:o.custom);s&&(r=s[t])}if(n&&r!==void 0)return r;const i=this.getBaseTargetFromProps(this.props,t);return i!==void 0&&!_t(i)?i:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new Xa),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){hl.render(this.render)}}class Mh extends jy{constructor(){super(...arguments),this.KeyframeResolver=L0}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){return t.style?t.style[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;_t(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function Rh(e,{style:t,vars:n},r,i){const o=e.style;let s;for(s in t)o[s]=t[s];i==null||i.applyProjectionStyles(o,r);for(s in n)o.setProperty(s,n[s])}function By(e){return window.getComputedStyle(e)}class $y extends Mh{constructor(){super(...arguments),this.type="html",this.renderInstance=Rh}readValueFromInstance(t,n){var r;if(Pr.has(n))return(r=this.projection)!=null&&r.isProjecting?ca(n):e0(t,n);{const i=By(t),o=(tl(n)?i.getPropertyValue(n):i[n])||0;return typeof o=="string"?o.trim():o}}measureInstanceViewportBox(t,{transformPagePoint:n}){return Nh(t,n)}build(t,n,r){yl(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return El(t,n,r)}}const Ih=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function Vy(e,t,n,r){Rh(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(Ih.has(i)?i:Sl(i),t.attrs[i])}class zy extends Mh{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=dt}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(Pr.has(n)){const r=rh(n);return r&&r.default||0}return n=Ih.has(n)?n:Sl(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return wh(t,n,r)}build(t,n,r){bh(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,i){Vy(t,n,r,i)}mount(t){this.isSVGTag=xh(t.tagName),super.mount(t)}}const Uy=(e,t)=>vl(e)?new zy(t):new $y(t,{allowProjection:e!==N.Fragment});function Sr(e,t,n){const r=e.getProps();return wl(r,t,n!==void 0?n:r.custom,e)}const xa=e=>Array.isArray(e);function Hy(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,_r(n))}function Wy(e){return xa(e)?e[e.length-1]||0:e}function Gy(e,t){const n=Sr(e,t);let{transitionEnd:r={},transition:i={},...o}=n||{};o={...o,...r};for(const s in o){const a=Wy(o[s]);Hy(e,s,a)}}function Ky(e){return!!(_t(e)&&e.add)}function va(e,t){const n=e.getValue("willChange");if(Ky(n))return n.add(t);if(!n&&En.WillChange){const r=new En.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function Oh(e){return e.props[Eh]}const qy=e=>e!==null;function Yy(e,{repeat:t,repeatType:n="loop"},r){const i=e.filter(qy),o=t&&n!=="loop"&&t%2===1?0:i.length-1;return i[o]}const Zy={type:"spring",stiffness:500,damping:25,restSpeed:10},Xy=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),Qy={type:"keyframes",duration:.8},Jy={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},ex=(e,{keyframes:t})=>t.length>2?Qy:Pr.has(e)?e.startsWith("scale")?Xy(t[1]):Zy:Jy;function tx({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:i,repeat:o,repeatType:s,repeatDelay:a,from:l,elapsed:c,...u}){return!!Object.keys(u).length}const kl=(e,t,n,r={},i,o)=>s=>{const a=dl(r,e)||{},l=a.delay||r.delay||0;let{elapsed:c=0}=r;c=c-tn(l);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...a,delay:-c,onUpdate:f=>{t.set(f),a.onUpdate&&a.onUpdate(f)},onComplete:()=>{s(),a.onComplete&&a.onComplete()},name:e,motionValue:t,element:o?void 0:i};tx(a)||Object.assign(u,ex(e,u)),u.duration&&(u.duration=tn(u.duration)),u.repeatDelay&&(u.repeatDelay=tn(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let d=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(pa(u),u.delay===0&&(d=!0)),(En.instantAnimations||En.skipAnimations)&&(d=!0,pa(u),u.delay=0),u.allowFlatten=!a.type&&!a.ease,d&&!o&&t.get()!==void 0){const f=Yy(u.keyframes,a);if(f!==void 0){rt.update(()=>{u.onUpdate(f),u.onComplete()});return}}return a.isSync?new cl(u):new S0(u)};function nx({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function Ph(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:o=e.getDefaultTransition(),transitionEnd:s,...a}=t;r&&(o=r);const l=[],c=i&&e.animationState&&e.animationState.getState()[i];for(const u in a){const d=e.getValue(u,e.latestValues[u]??null),f=a[u];if(f===void 0||c&&nx(c,u))continue;const p={delay:n,...dl(o||{},u)},m=d.get();if(m!==void 0&&!d.isAnimating&&!Array.isArray(f)&&f===m&&!p.velocity)continue;let g=!1;if(window.MotionHandoffAnimation){const y=Oh(e);if(y){const E=window.MotionHandoffAnimation(y,u,rt);E!==null&&(p.startTime=E,g=!0)}}va(e,u),d.start(kl(u,d,f,e.shouldReduceMotion&&eh.has(u)?{type:!1}:p,e,g));const v=d.animation;v&&l.push(v)}return s&&Promise.all(l).then(()=>{rt.update(()=>{s&&Gy(e,s)})}),l}function Dh(e,t,n,r=0,i=1){const o=Array.from(e).sort((c,u)=>c.sortNodePosition(u)).indexOf(t),s=e.size,a=(s-1)*r;return typeof n=="function"?n(o,s):i===1?o*r:a-o*r}function wa(e,t,n={}){var l;const r=Sr(e,t,n.type==="exit"?(l=e.presenceContext)==null?void 0:l.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const o=r?()=>Promise.all(Ph(e,r,n)):()=>Promise.resolve(),s=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:u=0,staggerChildren:d,staggerDirection:f}=i;return rx(e,t,c,u,d,f,n)}:()=>Promise.resolve(),{when:a}=i;if(a){const[c,u]=a==="beforeChildren"?[o,s]:[s,o];return c().then(()=>u())}else return Promise.all([o(),s(n.delay)])}function rx(e,t,n=0,r=0,i=0,o=1,s){const a=[];for(const l of e.variantChildren)l.notify("AnimationStart",t),a.push(wa(l,t,{...s,delay:n+(typeof r=="function"?0:r)+Dh(e.variantChildren,l,r,i,o)}).then(()=>l.notify("AnimationComplete",t)));return Promise.all(a)}function ix(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(o=>wa(e,o,n));r=Promise.all(i)}else if(typeof t=="string")r=wa(e,t,n);else{const i=typeof t=="function"?Sr(e,t,n.custom):t;r=Promise.all(Ph(e,i,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}function Lh(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0}const ox=bl.length;function Fh(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?Fh(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;n<ox;n++){const r=bl[n],i=e.props[r];(ci(i)||i===!1)&&(t[r]=i)}return t}const sx=[...ml].reverse(),ax=ml.length;function lx(e){return t=>Promise.all(t.map(({animation:n,options:r})=>ix(e,n,r)))}function cx(e){let t=lx(e),n=Zc(),r=!0;const i=l=>(c,u)=>{var f;const d=Sr(e,u,l==="exit"?(f=e.presenceContext)==null?void 0:f.custom:void 0);if(d){const{transition:p,transitionEnd:m,...g}=d;c={...c,...g,...m}}return c};function o(l){t=l(e)}function s(l){const{props:c}=e,u=Fh(e.parent)||{},d=[],f=new Set;let p={},m=1/0;for(let v=0;v<ax;v++){const y=sx[v],E=n[y],w=c[y]!==void 0?c[y]:u[y],_=ci(w),C=y===l?E.isActive:null;C===!1&&(m=v);let T=w===u[y]&&w!==c[y]&&_;if(T&&r&&e.manuallyAnimateOnMount&&(T=!1),E.protectedKeys={...p},!E.isActive&&C===null||!w&&!E.prevProp||Ro(w)||typeof w=="boolean")continue;const R=ux(E.prevProp,w);let A=R||y===l&&E.isActive&&!T&&_||v>m&&_,I=!1;const b=Array.isArray(w)?w:[w];let M=b.reduce(i(y),{});C===!1&&(M={});const{prevResolvedValues:O={}}=E,L={...O,...M},j=te=>{A=!0,f.has(te)&&(I=!0,f.delete(te)),E.needsAnimating[te]=!0;const B=e.getValue(te);B&&(B.liveStyle=!1)};for(const te in L){const B=M[te],V=O[te];if(p.hasOwnProperty(te))continue;let x=!1;xa(B)&&xa(V)?x=!Lh(B,V):x=B!==V,x?B!=null?j(te):f.add(te):B!==void 0&&f.has(te)?j(te):E.protectedKeys[te]=!0}E.prevProp=w,E.prevResolvedValues=M,E.isActive&&(p={...p,...M}),r&&e.blockInitialAnimation&&(A=!1);const W=T&&R;A&&(!W||I)&&d.push(...b.map(te=>{const B={type:y};if(typeof te=="string"&&r&&!W&&e.manuallyAnimateOnMount&&e.parent){const{parent:V}=e,x=Sr(V,te);if(V.enteringChildren&&x){const{delayChildren:z}=x.transition||{};B.delay=Dh(V.enteringChildren,e,z)}}return{animation:te,options:B}}))}if(f.size){const v={};if(typeof c.initial!="boolean"){const y=Sr(e,Array.isArray(c.initial)?c.initial[0]:c.initial);y&&y.transition&&(v.transition=y.transition)}f.forEach(y=>{const E=e.getBaseTarget(y),w=e.getValue(y);w&&(w.liveStyle=!0),v[y]=E??null}),d.push({animation:v})}let g=!!d.length;return r&&(c.initial===!1||c.initial===c.animate)&&!e.manuallyAnimateOnMount&&(g=!1),r=!1,g?t(d):Promise.resolve()}function a(l,c){var d;if(n[l].isActive===c)return Promise.resolve();(d=e.variantChildren)==null||d.forEach(f=>{var p;return(p=f.animationState)==null?void 0:p.setActive(l,c)}),n[l].isActive=c;const u=s(l);for(const f in n)n[f].protectedKeys={};return u}return{animateChanges:s,setActive:a,setAnimateFunction:o,getState:()=>n,reset:()=>{n=Zc(),r=!0}}}function ux(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!Lh(t,e):!1}function Vn(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Zc(){return{animate:Vn(!0),whileInView:Vn(),whileHover:Vn(),whileTap:Vn(),whileDrag:Vn(),whileFocus:Vn(),exit:Vn()}}class Ln{constructor(t){this.isMounted=!1,this.node=t}update(){}}class dx extends Ln{constructor(t){super(t),t.animationState||(t.animationState=cx(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Ro(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){var t;this.node.animationState.reset(),(t=this.unmountControls)==null||t.call(this)}}let fx=0;class hx extends Ln{constructor(){super(...arguments),this.id=fx++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const i=this.node.animationState.setActive("exit",!t);n&&!t&&i.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const px={animation:{Feature:dx},exit:{Feature:hx}};function di(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}function vi(e){return{point:{x:e.pageX,y:e.pageY}}}const gx=e=>t=>pl(t)&&e(t,vi(t));function Jr(e,t,n,r){return di(e,t,gx(n),r)}const jh=1e-4,mx=1-jh,bx=1+jh,Bh=.01,yx=0-Bh,xx=0+Bh;function Ot(e){return e.max-e.min}function vx(e,t,n){return Math.abs(e-t)<=n}function Xc(e,t,n,r=.5){e.origin=r,e.originPoint=st(t.min,t.max,e.origin),e.scale=Ot(n)/Ot(t),e.translate=st(n.min,n.max,e.origin)-e.originPoint,(e.scale>=mx&&e.scale<=bx||isNaN(e.scale))&&(e.scale=1),(e.translate>=yx&&e.translate<=xx||isNaN(e.translate))&&(e.translate=0)}function ei(e,t,n,r){Xc(e.x,t.x,n.x,r?r.originX:void 0),Xc(e.y,t.y,n.y,r?r.originY:void 0)}function Qc(e,t,n){e.min=n.min+t.min,e.max=e.min+Ot(t)}function wx(e,t,n){Qc(e.x,t.x,n.x),Qc(e.y,t.y,n.y)}function Jc(e,t,n){e.min=t.min-n.min,e.max=e.min+Ot(t)}function ti(e,t,n){Jc(e.x,t.x,n.x),Jc(e.y,t.y,n.y)}function Kt(e){return[e("x"),e("y")]}const $h=({current:e})=>e?e.ownerDocument.defaultView:null,eu=(e,t)=>Math.abs(e-t);function Ex(e,t){const n=eu(e.x,t.x),r=eu(e.y,t.y);return Math.sqrt(n**2+r**2)}class Vh{constructor(t,n,{transformPagePoint:r,contextWindow:i=window,dragSnapToOrigin:o=!1,distanceThreshold:s=3}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const f=gs(this.lastMoveEventInfo,this.history),p=this.startEvent!==null,m=Ex(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!p&&!m)return;const{point:g}=f,{timestamp:v}=kt;this.history.push({...g,timestamp:v});const{onStart:y,onMove:E}=this.handlers;p||(y&&y(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),E&&E(this.lastMoveEvent,f)},this.handlePointerMove=(f,p)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=ps(p,this.transformPagePoint),rt.update(this.updatePoint,!0)},this.handlePointerUp=(f,p)=>{this.end();const{onEnd:m,onSessionEnd:g,resumeAnimation:v}=this.handlers;if(this.dragSnapToOrigin&&v&&v(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const y=gs(f.type==="pointercancel"?this.lastMoveEventInfo:ps(p,this.transformPagePoint),this.history);this.startEvent&&m&&m(f,y),g&&g(f,y)},!pl(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=s,this.contextWindow=i||window;const a=vi(t),l=ps(a,this.transformPagePoint),{point:c}=l,{timestamp:u}=kt;this.history=[{...c,timestamp:u}];const{onSessionStart:d}=n;d&&d(t,gs(l,this.history)),this.removeListeners=bi(Jr(this.contextWindow,"pointermove",this.handlePointerMove),Jr(this.contextWindow,"pointerup",this.handlePointerUp),Jr(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),In(this.updatePoint)}}function ps(e,t){return t?{point:t(e.point)}:e}function tu(e,t){return{x:e.x-t.x,y:e.y-t.y}}function gs({point:e},t){return{point:e,delta:tu(e,zh(t)),offset:tu(e,Sx(t)),velocity:kx(t,.1)}}function Sx(e){return e[0]}function zh(e){return e[e.length-1]}function kx(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=zh(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>tn(t)));)n--;if(!r)return{x:0,y:0};const o=un(i.timestamp-r.timestamp);if(o===0)return{x:0,y:0};const s={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return s.x===1/0&&(s.x=0),s.y===1/0&&(s.y=0),s}function Cx(e,{min:t,max:n},r){return t!==void 0&&e<t?e=r?st(t,e,r.min):Math.max(e,t):n!==void 0&&e>n&&(e=r?st(n,e,r.max):Math.min(e,n)),e}function nu(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function _x(e,{top:t,left:n,bottom:r,right:i}){return{x:nu(e.x,n,i),y:nu(e.y,t,r)}}function ru(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,r]=[r,n]),{min:n,max:r}}function Tx(e,t){return{x:ru(e.x,t.x),y:ru(e.y,t.y)}}function Nx(e,t){let n=.5;const r=Ot(e),i=Ot(t);return i>r?n=si(t.min,t.max-r,e.min):r>i&&(n=si(e.min,e.max-i,t.min)),vn(0,1,n)}function Ax(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const Ea=.35;function Mx(e=Ea){return e===!1?e=0:e===!0&&(e=Ea),{x:iu(e,"left","right"),y:iu(e,"top","bottom")}}function iu(e,t,n){return{min:ou(e,t),max:ou(e,n)}}function ou(e,t){return typeof e=="number"?e:e[t]||0}const Rx=new WeakMap;class Ix{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=dt(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const o=d=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(vi(d).point)},s=(d,f)=>{const{drag:p,dragPropagation:m,onDragStart:g}=this.getProps();if(p&&!m&&(this.openDragLock&&this.openDragLock(),this.openDragLock=$0(p),!this.openDragLock))return;this.latestPointerEvent=d,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Kt(y=>{let E=this.getAxisMotionValue(y).get()||0;if(dn.test(E)){const{projection:w}=this.visualElement;if(w&&w.layout){const _=w.layout.layoutBox[y];_&&(E=Ot(_)*(parseFloat(E)/100))}}this.originPoint[y]=E}),g&&rt.postRender(()=>g(d,f)),va(this.visualElement,"transform");const{animationState:v}=this.visualElement;v&&v.setActive("whileDrag",!0)},a=(d,f)=>{this.latestPointerEvent=d,this.latestPanInfo=f;const{dragPropagation:p,dragDirectionLock:m,onDirectionLock:g,onDrag:v}=this.getProps();if(!p&&!this.openDragLock)return;const{offset:y}=f;if(m&&this.currentDirection===null){this.currentDirection=Ox(y),this.currentDirection!==null&&g&&g(this.currentDirection);return}this.updateAxis("x",f.point,y),this.updateAxis("y",f.point,y),this.visualElement.render(),v&&v(d,f)},l=(d,f)=>{this.latestPointerEvent=d,this.latestPanInfo=f,this.stop(d,f),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>Kt(d=>{var f;return this.getAnimationState(d)==="paused"&&((f=this.getAxisMotionValue(d).animation)==null?void 0:f.play())}),{dragSnapToOrigin:u}=this.getProps();this.panSession=new Vh(t,{onSessionStart:o,onStart:s,onMove:a,onSessionEnd:l,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:r,contextWindow:$h(this.visualElement)})}stop(t,n){const r=t||this.latestPointerEvent,i=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!i||!r)return;const{velocity:s}=i;this.startAnimation(s);const{onDragEnd:a}=this.getProps();a&&rt.postRender(()=>a(r,i))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!Fi(t,i,this.currentDirection))return;const o=this.getAxisMotionValue(t);let s=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(s=Cx(s,this.constraints[t],this.elastic[t])),o.set(s)}resolveConstraints(){var o;const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(o=this.visualElement.projection)==null?void 0:o.layout,i=this.constraints;t&&xr(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=_x(r.layoutBox,t):this.constraints=!1,this.elastic=Mx(n),i!==this.constraints&&r&&this.constraints&&!this.hasMutatedConstraints&&Kt(s=>{this.constraints!==!1&&this.getAxisMotionValue(s)&&(this.constraints[s]=Ax(r.layoutBox[s],this.constraints[s]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!xr(t))return!1;const r=t.current;wn(r!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.","drag-constraints-ref");const{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const o=Py(r,i.root,this.visualElement.getTransformPagePoint());let s=Tx(i.layout.layoutBox,o);if(n){const a=n(Ry(s));this.hasMutatedConstraints=!!a,a&&(s=Ch(a))}return s}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:o,dragSnapToOrigin:s,onDragTransitionEnd:a}=this.getProps(),l=this.constraints||{},c=Kt(u=>{if(!Fi(u,n,this.currentDirection))return;let d=l&&l[u]||{};s&&(d={min:0,max:0});const f=i?200:1e6,p=i?40:1e7,m={type:"inertia",velocity:r?t[u]:0,bounceStiffness:f,bounceDamping:p,timeConstant:750,restDelta:1,restSpeed:10,...o,...d};return this.startAxisValueAnimation(u,m)});return Promise.all(c).then(a)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return va(this.visualElement,t),r.start(kl(t,r,0,n,this.visualElement,!1))}stopAnimation(){Kt(t=>this.getAxisMotionValue(t).stop())}pauseAnimation(){Kt(t=>{var n;return(n=this.getAxisMotionValue(t).animation)==null?void 0:n.pause()})}getAnimationState(t){var n;return(n=this.getAxisMotionValue(t).animation)==null?void 0:n.state}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Kt(n=>{const{drag:r}=this.getProps();if(!Fi(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,o=this.getAxisMotionValue(n);if(i&&i.layout){const{min:s,max:a}=i.layout.layoutBox[n];o.set(t[n]-st(s,a,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!xr(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};Kt(s=>{const a=this.getAxisMotionValue(s);if(a&&this.constraints!==!1){const l=a.get();i[s]=Nx({min:l,max:l},this.constraints[s])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Kt(s=>{if(!Fi(s,t,null))return;const a=this.getAxisMotionValue(s),{min:l,max:c}=this.constraints[s];a.set(st(l,c,i[s]))})}addListeners(){if(!this.visualElement.current)return;Rx.set(this.visualElement,this);const t=this.visualElement.current,n=Jr(t,"pointerdown",l=>{const{drag:c,dragListener:u=!0}=this.getProps();c&&u&&this.start(l)}),r=()=>{const{dragConstraints:l}=this.getProps();xr(l)&&l.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,o=i.addEventListener("measure",r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),rt.read(r);const s=di(window,"resize",()=>this.scalePositionWithinConstraints()),a=i.addEventListener("didUpdate",({delta:l,hasLayoutChanged:c})=>{this.isDragging&&c&&(Kt(u=>{const d=this.getAxisMotionValue(u);d&&(this.originPoint[u]+=l[u].translate,d.set(d.get()+l[u].translate))}),this.visualElement.render())});return()=>{s(),n(),o(),a&&a()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:o=!1,dragElastic:s=Ea,dragMomentum:a=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:o,dragElastic:s,dragMomentum:a}}}function Fi(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function Ox(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class Px extends Ln{constructor(t){super(t),this.removeGroupControls=Zt,this.removeListeners=Zt,this.controls=new Ix(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Zt}unmount(){this.removeGroupControls(),this.removeListeners()}}const su=e=>(t,n)=>{e&&rt.postRender(()=>e(t,n))};class Dx extends Ln{constructor(){super(...arguments),this.removePointerDownListener=Zt}onPointerDown(t){this.session=new Vh(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:$h(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:su(t),onStart:su(n),onMove:r,onEnd:(o,s)=>{delete this.session,i&&rt.postRender(()=>i(o,s))}}}mount(){this.removePointerDownListener=Jr(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const io={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function au(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const Vr={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(_e.test(e))e=parseFloat(e);else return e;const n=au(e,t.target.x),r=au(e,t.target.y);return`${n}% ${r}%`}},Lx={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=On.parse(e);if(i.length>5)return r;const o=On.createTransformer(e),s=typeof i[0]!="number"?1:0,a=n.x.scale*t.x,l=n.y.scale*t.y;i[0+s]/=a,i[1+s]/=l;const c=st(a,l,.5);return typeof i[2+s]=="number"&&(i[2+s]/=c),typeof i[3+s]=="number"&&(i[3+s]/=c),o(i)}};let ms=!1;class Fx extends N.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:o}=t;oy(jx),o&&(n.group&&n.group.add(o),r&&r.register&&i&&r.register(o),ms&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),io.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:o}=this.props,{projection:s}=r;return s&&(s.isPresent=o,ms=!0,i||t.layoutDependency!==n||n===void 0||t.isPresent!==o?s.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?s.promote():s.relegate()||rt.postRender(()=>{const a=s.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),hl.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;ms=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function Uh(e){const[t,n]=dh(),r=N.useContext(Wa);return h.jsx(Fx,{...e,layoutGroup:r,switchLayoutGroup:N.useContext(Sh),isPresent:t,safeToRemove:n})}const jx={borderRadius:{...Vr,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Vr,borderTopRightRadius:Vr,borderBottomLeftRadius:Vr,borderBottomRightRadius:Vr,boxShadow:Lx};function Bx(e,t,n){const r=_t(e)?e:_r(e);return r.start(kl("",r,t,n)),r.animation}const $x=(e,t)=>e.depth-t.depth;class Vx{constructor(){this.children=[],this.isDirty=!1}add(t){qa(this.children,t),this.isDirty=!0}remove(t){Ya(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort($x),this.isDirty=!1,this.children.forEach(t)}}function zx(e,t){const n=Ft.now(),r=({timestamp:i})=>{const o=i-n;o>=t&&(In(r),e(o-t))};return rt.setup(r,!0),()=>In(r)}const Hh=["TopLeft","TopRight","BottomLeft","BottomRight"],Ux=Hh.length,lu=e=>typeof e=="string"?parseFloat(e):e,cu=e=>typeof e=="number"||_e.test(e);function Hx(e,t,n,r,i,o){i?(e.opacity=st(0,n.opacity??1,Wx(r)),e.opacityExit=st(t.opacity??1,0,Gx(r))):o&&(e.opacity=st(t.opacity??1,n.opacity??1,r));for(let s=0;s<Ux;s++){const a=`border${Hh[s]}Radius`;let l=uu(t,a),c=uu(n,a);if(l===void 0&&c===void 0)continue;l||(l=0),c||(c=0),l===0||c===0||cu(l)===cu(c)?(e[a]=Math.max(st(lu(l),lu(c),r),0),(dn.test(c)||dn.test(l))&&(e[a]+="%")):e[a]=c}(t.rotate||n.rotate)&&(e.rotate=st(t.rotate||0,n.rotate||0,r))}function uu(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const Wx=Wh(0,.5,Rf),Gx=Wh(.5,.95,Zt);function Wh(e,t,n){return r=>r<e?0:r>t?1:n(si(e,t,r))}function du(e,t){e.min=t.min,e.max=t.max}function Gt(e,t){du(e.x,t.x),du(e.y,t.y)}function fu(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function hu(e,t,n,r,i){return e-=t,e=bo(e,1/n,r),i!==void 0&&(e=bo(e,1/i,r)),e}function Kx(e,t=0,n=1,r=.5,i,o=e,s=e){if(dn.test(t)&&(t=parseFloat(t),t=st(s.min,s.max,t/100)-s.min),typeof t!="number")return;let a=st(o.min,o.max,r);e===o&&(a-=t),e.min=hu(e.min,t,n,a,i),e.max=hu(e.max,t,n,a,i)}function pu(e,t,[n,r,i],o,s){Kx(e,t[n],t[r],t[i],t.scale,o,s)}const qx=["x","scaleX","originX"],Yx=["y","scaleY","originY"];function gu(e,t,n,r){pu(e.x,t,qx,n?n.x:void 0,r?r.x:void 0),pu(e.y,t,Yx,n?n.y:void 0,r?r.y:void 0)}function mu(e){return e.translate===0&&e.scale===1}function Gh(e){return mu(e.x)&&mu(e.y)}function bu(e,t){return e.min===t.min&&e.max===t.max}function Zx(e,t){return bu(e.x,t.x)&&bu(e.y,t.y)}function yu(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function Kh(e,t){return yu(e.x,t.x)&&yu(e.y,t.y)}function xu(e){return Ot(e.x)/Ot(e.y)}function vu(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class Xx{constructor(){this.members=[]}add(t){qa(this.members,t),t.scheduleRender()}remove(t){if(Ya(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){const n=this.members.findIndex(i=>t===i);if(n===0)return!1;let r;for(let i=n;i>=0;i--){const o=this.members[i];if(o.isPresent!==!1){r=o;break}}return r?(this.promote(r),!0):!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.instance&&r.scheduleRender(),t.scheduleRender(),t.resumeFrom=r,n&&(t.resumeFrom.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:i}=t.options;i===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:r}=t;n.onExitComplete&&n.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function Qx(e,t,n){let r="";const i=e.x.translate/t.x,o=e.y.translate/t.y,s=(n==null?void 0:n.z)||0;if((i||o||s)&&(r=`translate3d(${i}px, ${o}px, ${s}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:c,rotate:u,rotateX:d,rotateY:f,skewX:p,skewY:m}=n;c&&(r=`perspective(${c}px) ${r}`),u&&(r+=`rotate(${u}deg) `),d&&(r+=`rotateX(${d}deg) `),f&&(r+=`rotateY(${f}deg) `),p&&(r+=`skewX(${p}deg) `),m&&(r+=`skewY(${m}deg) `)}const a=e.x.scale*t.x,l=e.y.scale*t.y;return(a!==1||l!==1)&&(r+=`scale(${a}, ${l})`),r||"none"}const bs=["","X","Y","Z"],Jx=1e3;let ev=0;function ys(e,t,n,r){const{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function qh(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=Oh(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",rt,!(i||o))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&qh(r)}function Yh({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(s={},a=t==null?void 0:t()){this.id=ev++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(rv),this.nodes.forEach(av),this.nodes.forEach(lv),this.nodes.forEach(iv)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=s,this.root=a?a.root||a:this,this.path=a?[...a.path,a]:[],this.parent=a,this.depth=a?a.depth+1:0;for(let l=0;l<this.path.length;l++)this.path[l].shouldResetTransform=!0;this.root===this&&(this.nodes=new Vx)}addEventListener(s,a){return this.eventHandlers.has(s)||this.eventHandlers.set(s,new Xa),this.eventHandlers.get(s).add(a)}notifyListeners(s,...a){const l=this.eventHandlers.get(s);l&&l.notify(...a)}hasListeners(s){return this.eventHandlers.has(s)}mount(s){if(this.instance)return;this.isSVG=uh(s)&&!G0(s),this.instance=s;const{layoutId:a,layout:l,visualElement:c}=this.options;if(c&&!c.current&&c.mount(s),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(l||a)&&(this.isLayoutDirty=!0),e){let u,d=0;const f=()=>this.root.updateBlockedByResize=!1;rt.read(()=>{d=window.innerWidth}),e(s,()=>{const p=window.innerWidth;p!==d&&(d=p,this.root.updateBlockedByResize=!0,u&&u(),u=zx(f,250),io.hasAnimatedSinceResize&&(io.hasAnimatedSinceResize=!1,this.nodes.forEach(Su)))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&c&&(a||l)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:f,layout:p})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const m=this.options.transition||c.getDefaultTransition()||hv,{onLayoutAnimationStart:g,onLayoutAnimationComplete:v}=c.getProps(),y=!this.targetLayout||!Kh(this.targetLayout,p),E=!d&&f;if(this.options.layoutRoot||this.resumeFrom||E||d&&(y||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const w={...dl(m,"layout"),onPlay:g,onComplete:v};(c.shouldReduceMotion||this.options.layoutRoot)&&(w.delay=0,w.type=!1),this.startAnimation(w),this.setAnimationOrigin(u,E)}else d||Su(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=p})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const s=this.getStack();s&&s.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),In(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(cv),this.animationId++)}getTransformTemplate(){const{visualElement:s}=this.options;return s&&s.getProps().transformTemplate}willUpdate(s=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&qh(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const d=this.path[u];d.shouldResetTransform=!0,d.updateScroll("snapshot"),d.options.layoutRoot&&d.willUpdate(!1)}const{layoutId:a,layout:l}=this.options;if(a===void 0&&!l)return;const c=this.getTransformTemplate();this.prevTransformTemplateValue=c?c(this.latestValues,""):void 0,this.updateSnapshot(),s&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(wu);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(Eu);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(sv),this.nodes.forEach(tv),this.nodes.forEach(nv)):this.nodes.forEach(Eu),this.clearAllSnapshots();const a=Ft.now();kt.delta=vn(0,1e3/60,a-kt.timestamp),kt.timestamp=a,kt.isProcessing=!0,ss.update.process(kt),ss.preRender.process(kt),ss.render.process(kt),kt.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,hl.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(ov),this.sharedNodes.forEach(uv)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,rt.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){rt.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Ot(this.snapshot.measuredBox.x)&&!Ot(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l<this.path.length;l++)this.path[l].updateScroll();const s=this.layout;this.layout=this.measure(!1),this.layoutCorrected=dt(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:a}=this.options;a&&a.notify("LayoutMeasure",this.layout.layoutBox,s?s.layoutBox:void 0)}updateScroll(s="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===s&&(a=!1),a&&this.instance){const l=r(this.instance);this.scroll={animationId:this.root.animationId,phase:s,isRoot:l,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:l}}}resetTransform(){if(!i)return;const s=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!Gh(this.projectionDelta),l=this.getTransformTemplate(),c=l?l(this.latestValues,""):void 0,u=c!==this.prevTransformTemplateValue;s&&this.instance&&(a||Hn(this.latestValues)||u)&&(i(this.instance,c),this.shouldResetTransform=!1,this.scheduleRender())}measure(s=!0){const a=this.measurePageBox();let l=this.removeElementScroll(a);return s&&(l=this.removeTransform(l)),pv(l),{animationId:this.root.animationId,measuredBox:a,layoutBox:l,latestValues:{},source:this.id}}measurePageBox(){var c;const{visualElement:s}=this.options;if(!s)return dt();const a=s.measureViewportBox();if(!(((c=this.scroll)==null?void 0:c.wasRoot)||this.path.some(gv))){const{scroll:u}=this.root;u&&(vr(a.x,u.offset.x),vr(a.y,u.offset.y))}return a}removeElementScroll(s){var l;const a=dt();if(Gt(a,s),(l=this.scroll)!=null&&l.wasRoot)return a;for(let c=0;c<this.path.length;c++){const u=this.path[c],{scroll:d,options:f}=u;u!==this.root&&d&&f.layoutScroll&&(d.wasRoot&&Gt(a,s),vr(a.x,d.offset.x),vr(a.y,d.offset.y))}return a}applyTransform(s,a=!1){const l=dt();Gt(l,s);for(let c=0;c<this.path.length;c++){const u=this.path[c];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&wr(l,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),Hn(u.latestValues)&&wr(l,u.latestValues)}return Hn(this.latestValues)&&wr(l,this.latestValues),l}removeTransform(s){const a=dt();Gt(a,s);for(let l=0;l<this.path.length;l++){const c=this.path[l];if(!c.instance||!Hn(c.latestValues))continue;ma(c.latestValues)&&c.updateSnapshot();const u=dt(),d=c.measurePageBox();Gt(u,d),gu(a,c.latestValues,c.snapshot?c.snapshot.layoutBox:void 0,u)}return Hn(this.latestValues)&&gu(a,this.latestValues),a}setTargetDelta(s){this.targetDelta=s,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(s){this.options={...this.options,...s,crossfade:s.crossfade!==void 0?s.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==kt.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(s=!1){var f;const a=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=a.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=a.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=a.isSharedProjectionDirty);const l=!!this.resumingFrom||this!==a;if(!(s||l&&this.isSharedProjectionDirty||this.isProjectionDirty||(f=this.parent)!=null&&f.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:d}=this.options;if(!(!this.layout||!(u||d))){if(this.resolvedRelativeTargetAt=kt.timestamp,!this.targetDelta&&!this.relativeTarget){const p=this.getClosestProjectingParent();p&&p.layout&&this.animationProgress!==1?(this.relativeParent=p,this.forceRelativeParentToResolveTarget(),this.relativeTarget=dt(),this.relativeTargetOrigin=dt(),ti(this.relativeTargetOrigin,this.layout.layoutBox,p.layout.layoutBox),Gt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=dt(),this.targetWithTransforms=dt()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),wx(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):Gt(this.target,this.layout.layoutBox),Th(this.target,this.targetDelta)):Gt(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget)){this.attemptToResolveRelativeTarget=!1;const p=this.getClosestProjectingParent();p&&!!p.resumingFrom==!!this.resumingFrom&&!p.options.layoutScroll&&p.target&&this.animationProgress!==1?(this.relativeParent=p,this.forceRelativeParentToResolveTarget(),this.relativeTarget=dt(),this.relativeTargetOrigin=dt(),ti(this.relativeTargetOrigin,this.target,p.target),Gt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||ma(this.parent.latestValues)||_h(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var m;const s=this.getLead(),a=!!this.resumingFrom||this!==s;let l=!0;if((this.isProjectionDirty||(m=this.parent)!=null&&m.isProjectionDirty)&&(l=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(l=!1),this.resolvedRelativeTargetAt===kt.timestamp&&(l=!1),l)return;const{layout:c,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(c||u))return;Gt(this.layoutCorrected,this.layout.layoutBox);const d=this.treeScale.x,f=this.treeScale.y;Oy(this.layoutCorrected,this.treeScale,this.path,a),s.layout&&!s.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(s.target=s.layout.layoutBox,s.targetWithTransforms=dt());const{target:p}=s;if(!p){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(fu(this.prevProjectionDelta.x,this.projectionDelta.x),fu(this.prevProjectionDelta.y,this.projectionDelta.y)),ei(this.projectionDelta,this.layoutCorrected,p,this.latestValues),(this.treeScale.x!==d||this.treeScale.y!==f||!vu(this.projectionDelta.x,this.prevProjectionDelta.x)||!vu(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",p))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(s=!0){var a;if((a=this.options.visualElement)==null||a.scheduleRender(),s){const l=this.getStack();l&&l.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Er(),this.projectionDelta=Er(),this.projectionDeltaWithTransform=Er()}setAnimationOrigin(s,a=!1){const l=this.snapshot,c=l?l.latestValues:{},u={...this.latestValues},d=Er();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const f=dt(),p=l?l.source:void 0,m=this.layout?this.layout.source:void 0,g=p!==m,v=this.getStack(),y=!v||v.members.length<=1,E=!!(g&&!y&&this.options.crossfade===!0&&!this.path.some(fv));this.animationProgress=0;let w;this.mixTargetDelta=_=>{const C=_/1e3;ku(d.x,s.x,C),ku(d.y,s.y,C),this.setTargetDelta(d),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(ti(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox),dv(this.relativeTarget,this.relativeTargetOrigin,f,C),w&&Zx(this.relativeTarget,w)&&(this.isProjectionDirty=!1),w||(w=dt()),Gt(w,this.relativeTarget)),g&&(this.animationValues=u,Hx(u,c,this.latestValues,C,E,y)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=C},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(s){var a,l,c;this.notifyListeners("animationStart"),(a=this.currentAnimation)==null||a.stop(),(c=(l=this.resumingFrom)==null?void 0:l.currentAnimation)==null||c.stop(),this.pendingAnimation&&(In(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=rt.update(()=>{io.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_r(0)),this.currentAnimation=Bx(this.motionValue,[0,1e3],{...s,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),s.onUpdate&&s.onUpdate(u)},onStop:()=>{},onComplete:()=>{s.onComplete&&s.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const s=this.getStack();s&&s.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Jx),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const s=this.getLead();let{targetWithTransforms:a,target:l,layout:c,latestValues:u}=s;if(!(!a||!l||!c)){if(this!==s&&this.layout&&c&&Zh(this.options.animationType,this.layout.layoutBox,c.layoutBox)){l=this.target||dt();const d=Ot(this.layout.layoutBox.x);l.x.min=s.target.x.min,l.x.max=l.x.min+d;const f=Ot(this.layout.layoutBox.y);l.y.min=s.target.y.min,l.y.max=l.y.min+f}Gt(a,l),wr(a,u),ei(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(s,a){this.sharedNodes.has(s)||this.sharedNodes.set(s,new Xx),this.sharedNodes.get(s).add(a);const c=a.options.initialPromotionConfig;a.promote({transition:c?c.transition:void 0,preserveFollowOpacity:c&&c.shouldPreserveFollowOpacity?c.shouldPreserveFollowOpacity(a):void 0})}isLead(){const s=this.getStack();return s?s.lead===this:!0}getLead(){var a;const{layoutId:s}=this.options;return s?((a=this.getStack())==null?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:s}=this.options;return s?(a=this.getStack())==null?void 0:a.prevLead:void 0}getStack(){const{layoutId:s}=this.options;if(s)return this.root.sharedNodes.get(s)}promote({needsReset:s,transition:a,preserveFollowOpacity:l}={}){const c=this.getStack();c&&c.promote(this,l),s&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const s=this.getStack();return s?s.relegate(this):!1}resetSkewAndRotation(){const{visualElement:s}=this.options;if(!s)return;let a=!1;const{latestValues:l}=s;if((l.z||l.rotate||l.rotateX||l.rotateY||l.rotateZ||l.skewX||l.skewY)&&(a=!0),!a)return;const c={};l.z&&ys("z",s,c,this.animationValues);for(let u=0;u<bs.length;u++)ys(`rotate${bs[u]}`,s,c,this.animationValues),ys(`skew${bs[u]}`,s,c,this.animationValues);s.render();for(const u in c)s.setStaticValue(u,c[u]),this.animationValues&&(this.animationValues[u]=c[u]);s.scheduleRender()}applyProjectionStyles(s,a){if(!this.instance||this.isSVG)return;if(!this.isVisible){s.visibility="hidden";return}const l=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,s.visibility="",s.opacity="",s.pointerEvents=ro(a==null?void 0:a.pointerEvents)||"",s.transform=l?l(this.latestValues,""):"none";return}const c=this.getLead();if(!this.projectionDelta||!this.layout||!c.target){this.options.layoutId&&(s.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,s.pointerEvents=ro(a==null?void 0:a.pointerEvents)||""),this.hasProjected&&!Hn(this.latestValues)&&(s.transform=l?l({},""):"none",this.hasProjected=!1);return}s.visibility="";const u=c.animationValues||c.latestValues;this.applyTransformsToTarget();let d=Qx(this.projectionDeltaWithTransform,this.treeScale,u);l&&(d=l(u,d)),s.transform=d;const{x:f,y:p}=this.projectionDelta;s.transformOrigin=`${f.origin*100}% ${p.origin*100}% 0`,c.animationValues?s.opacity=c===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:s.opacity=c===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const m in ui){if(u[m]===void 0)continue;const{correct:g,applyTo:v,isCSSVariable:y}=ui[m],E=d==="none"?u[m]:g(u[m],c);if(v){const w=v.length;for(let _=0;_<w;_++)s[v[_]]=E}else y?this.options.visualElement.renderState.vars[m]=E:s[m]=E}this.options.layoutId&&(s.pointerEvents=c===this?ro(a==null?void 0:a.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(s=>{var a;return(a=s.currentAnimation)==null?void 0:a.stop()}),this.root.nodes.forEach(wu),this.root.sharedNodes.clear()}}}function tv(e){e.updateLayout()}function nv(e){var n;const t=((n=e.resumeFrom)==null?void 0:n.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:o}=e.options,s=t.source!==e.layout.source;o==="size"?Kt(d=>{const f=s?t.measuredBox[d]:t.layoutBox[d],p=Ot(f);f.min=r[d].min,f.max=f.min+p}):Zh(o,t.layoutBox,r)&&Kt(d=>{const f=s?t.measuredBox[d]:t.layoutBox[d],p=Ot(r[d]);f.max=f.min+p,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[d].max=e.relativeTarget[d].min+p)});const a=Er();ei(a,r,t.layoutBox);const l=Er();s?ei(l,e.applyTransform(i,!0),t.measuredBox):ei(l,r,t.layoutBox);const c=!Gh(a);let u=!1;if(!e.resumeFrom){const d=e.getClosestProjectingParent();if(d&&!d.resumeFrom){const{snapshot:f,layout:p}=d;if(f&&p){const m=dt();ti(m,t.layoutBox,f.layoutBox);const g=dt();ti(g,r,p.layoutBox),Kh(m,g)||(u=!0),d.options.layoutRoot&&(e.relativeTarget=g,e.relativeTargetOrigin=m,e.relativeParent=d)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:t,delta:l,layoutDelta:a,hasLayoutChanged:c,hasRelativeLayoutChanged:u})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function rv(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function iv(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function ov(e){e.clearSnapshot()}function wu(e){e.clearMeasurements()}function Eu(e){e.isLayoutDirty=!1}function sv(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function Su(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function av(e){e.resolveTargetDelta()}function lv(e){e.calcProjection()}function cv(e){e.resetSkewAndRotation()}function uv(e){e.removeLeadSnapshot()}function ku(e,t,n){e.translate=st(t.translate,0,n),e.scale=st(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Cu(e,t,n,r){e.min=st(t.min,n.min,r),e.max=st(t.max,n.max,r)}function dv(e,t,n,r){Cu(e.x,t.x,n.x,r),Cu(e.y,t.y,n.y,r)}function fv(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const hv={duration:.45,ease:[.4,0,.1,1]},_u=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Tu=_u("applewebkit/")&&!_u("chrome/")?Math.round:Zt;function Nu(e){e.min=Tu(e.min),e.max=Tu(e.max)}function pv(e){Nu(e.x),Nu(e.y)}function Zh(e,t,n){return e==="position"||e==="preserve-aspect"&&!vx(xu(t),xu(n),.2)}function gv(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const mv=Yh({attachResizeListener:(e,t)=>di(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),xs={current:void 0},Xh=Yh({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!xs.current){const e=new mv({});e.mount(window),e.setOptions({layoutScroll:!0}),xs.current=e}return xs.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),bv={pan:{Feature:Dx},drag:{Feature:Px,ProjectionNode:Xh,MeasureLayout:Uh}};function Au(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,o=r[i];o&&rt.postRender(()=>o(t,vi(t)))}class yv extends Ln{mount(){const{current:t}=this.node;t&&(this.unmount=V0(t,(n,r)=>(Au(this.node,r,"Start"),i=>Au(this.node,i,"End"))))}unmount(){}}class xv extends Ln{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=bi(di(this.node.current,"focus",()=>this.onFocus()),di(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Mu(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),o=r[i];o&&rt.postRender(()=>o(t,vi(t)))}class vv extends Ln{mount(){const{current:t}=this.node;t&&(this.unmount=W0(t,(n,r)=>(Mu(this.node,r,"Start"),(i,{success:o})=>Mu(this.node,i,o?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Sa=new WeakMap,vs=new WeakMap,wv=e=>{const t=Sa.get(e.target);t&&t(e)},Ev=e=>{e.forEach(wv)};function Sv({root:e,...t}){const n=e||document;vs.has(n)||vs.set(n,{});const r=vs.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(Ev,{root:e,...t})),r[i]}function kv(e,t,n){const r=Sv(t);return Sa.set(e,n),r.observe(e),()=>{Sa.delete(e),r.unobserve(e)}}const Cv={some:0,all:1};class _v extends Ln{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:o}=t,s={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:Cv[i]},a=l=>{const{isIntersecting:c}=l;if(this.isInView===c||(this.isInView=c,o&&!c&&this.hasEnteredView))return;c&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",c);const{onViewportEnter:u,onViewportLeave:d}=this.node.getProps(),f=c?u:d;f&&f(l)};return kv(this.node.current,s,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(Tv(t,n))&&this.startObserver()}unmount(){}}function Tv({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const Nv={inView:{Feature:_v},tap:{Feature:vv},focus:{Feature:xv},hover:{Feature:yv}},Av={layout:{ProjectionNode:Xh,MeasureLayout:Uh}},Mv={...px,...Nv,...bv,...Av},Me=My(Mv,Uy);function Rv(e){const[t,n]=N.useState(()=>e.getLocalParticipant()),[r,i]=N.useState(()=>e.getMicrophoneTrack());return N.useEffect(()=>{const o=()=>{const a=e.getLocalParticipant(),l=e.getMicrophoneTrack();console.log("🎤 useVoxketLocalParticipant: Updating state:",{hasParticipant:!!a,hasMicTrack:!!l,isMicEnabled:e.isMicrophoneEnabled,trackPublications:a?a.trackPublications.size:0}),n(a),i(l)};o(),e.on("connection.connected",o),e.on("connection.disconnected",o),e.on("track.muted",o),e.on("track.unmuted",o);const s=e.getRoom();if(s){const a=()=>{console.log("🎤 Track published, updating participant state"),o()},l=()=>{console.log("🎤 Track unpublished, updating participant state"),o()};return s.on("localTrackPublished",a),s.on("localTrackUnpublished",l),()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("track.muted",o),e.off("track.unmuted",o),s.off("localTrackPublished",a),s.off("localTrackUnpublished",l)}}else return()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("track.muted",o),e.off("track.unmuted",o)}},[e]),{localParticipant:t,microphoneTrack:r}}function oo(e,t,n){const[r,i]=N.useState(!1),[o,s]=N.useState(!1);return N.useEffect(()=>{const l=()=>{let c=!1;switch(t){case"microphone":c=e.isMicrophoneEnabled;break;case"camera":c=e.isCameraEnabled;break;case"screenShare":c=e.isScreenShareEnabled;break}console.log(`🎬 useVoxketTrackToggle: ${t} enabled state updated:`,{oldEnabled:r,newEnabled:c,changed:r!==c}),i(c)};return l(),e.on("track.muted",l),e.on("track.unmuted",l),e.on("connection.connected",l),()=>{e.off("track.muted",l),e.off("track.unmuted",l),e.off("connection.connected",l)}},[e,t]),{enabled:r,pending:o,toggle:async l=>{try{s(!0);const c=l!==void 0?l:!r;switch(console.log(`🎬 useVoxketTrackToggle: ${t} toggle called`,{currentEnabled:r,targetEnabled:c,forceEnabled:l}),t){case"microphone":await e.toggleMicrophone(c);break;case"camera":await e.toggleCamera(c);break;case"screenShare":c?(console.log("🎬 useVoxketTrackToggle: Starting screen share"),await e.startScreenShare()):(console.log("🎬 useVoxketTrackToggle: Stopping screen share"),await e.stopScreenShare());break}console.log(`🎬 useVoxketTrackToggle: ${t} toggle completed`)}catch(c){console.error(`🎬 useVoxketTrackToggle: ${t} toggle failed:`,c)}finally{s(!1)}}}}function Iv(e){const[t,n]=N.useState(()=>e.getRoom()),[r,i]=N.useState(()=>e.getConnectionState());return N.useEffect(()=>{const o=()=>{n(e.getRoom()),i(e.getConnectionState())};return e.on("connection.connected",o),e.on("connection.disconnected",o),e.on("connection.connecting",o),()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("connection.connecting",o)}},[e]),t}function Cl(e){const[t,n]=N.useState(()=>e.getIsAgentConnected()),[r,i]=N.useState(()=>e.getCurrentSession()),[o,s]=N.useState(()=>e.getCurrentAgentInfo()),[a,l]=N.useState(()=>e.getAgentState()),[c,u]=N.useState(()=>e.getAgentAudioTrack()),[d,f]=N.useState(()=>e.getAgentVideoTrack());return N.useEffect(()=>{const p=()=>{const _=e.getIsAgentConnected(),C=e.getCurrentSession(),T=e.getCurrentAgentInfo(),R=e.getAgentState(),A=e.getAgentAudioTrack(),I=e.getAgentVideoTrack();console.log("🤖 useVoxketVoiceAssistant: Updating state:",{isAgentConnected:_,hasSession:!!C,sessionId:C==null?void 0:C.id,sessionState:C==null?void 0:C.state,hasAgentInfo:!!T,agentState:R,hasAudioTrack:!!A,hasVideoTrack:!!I}),n(_),i(C),s(T),l(R),u(A),f(I)};p();const m=()=>{console.log("🤖 useVoxketVoiceAssistant: Agent connected event"),p()},g=()=>{console.log("🤖 useVoxketVoiceAssistant: Agent disconnected event"),p()},v=()=>{console.log("🤖 useVoxketVoiceAssistant: Session changed event"),p()},y=()=>{console.log("🤖 useVoxketVoiceAssistant: Connection changed event"),p()},E=()=>{console.log("🤖 useVoxketVoiceAssistant: Agent state changed event"),p()},w=()=>{console.log("🎵 useVoxketVoiceAssistant: Track subscribed event - updating audio/video tracks"),p()};return e.on("agent.connected",m),e.on("agent.speaking",m),e.on("agent.thinking",m),e.on("agent.state.changed",E),e.on("connection.disconnected",g),e.on("session.created",v),e.on("session.ended",v),e.on("session.state.changed",v),e.on("connection.connected",y),e.on("media.track.subscribed",w),e.on("media.track.unsubscribed",w),()=>{e.off("agent.connected",m),e.off("agent.speaking",m),e.off("agent.thinking",m),e.off("agent.state.changed",E),e.off("connection.disconnected",g),e.off("session.created",v),e.off("session.ended",v),e.off("session.state.changed",v),e.off("connection.connected",y),e.off("media.track.subscribed",w),e.off("media.track.unsubscribed",w)}},[e]),{agent:{isActive:t,info:o},session:r,state:a,audioTrack:c,videoTrack:d}}function Ov(e){const[t,n]=N.useState(()=>e.getVideoTrackRefs()),[r,i]=N.useState(()=>e.getCameraTrackRefs()),[o,s]=N.useState(()=>e.getScreenShareTrackRefs());return N.useEffect(()=>{const a=()=>{const c=e.getVideoTrackRefs(),u=e.getCameraTrackRefs(),d=e.getScreenShareTrackRefs();console.log("📹 useVoxketVideoTracks: Updating tracks:",{videoCount:c.length,cameraCount:u.length,screenShareCount:d.length}),n(c),i(u),s(d)};a(),e.on("connection.connected",a),e.on("connection.disconnected",a),e.on("track.muted",a),e.on("track.unmuted",a),e.on("participant.joined",a),e.on("participant.left",a);const l=e.getRoom();if(l){const c=()=>{console.log("📹 Track event, updating video tracks"),a()};return l.on("localTrackPublished",c),l.on("localTrackUnpublished",c),l.on("trackPublished",c),l.on("trackUnpublished",c),l.on("trackSubscribed",c),l.on("trackUnsubscribed",c),()=>{e.off("connection.connected",a),e.off("connection.disconnected",a),e.off("track.muted",a),e.off("track.unmuted",a),e.off("participant.joined",a),e.off("participant.left",a),l.off("localTrackPublished",c),l.off("localTrackUnpublished",c),l.off("trackPublished",c),l.off("trackUnpublished",c),l.off("trackSubscribed",c),l.off("trackUnsubscribed",c)}}else return()=>{e.off("connection.connected",a),e.off("connection.disconnected",a),e.off("track.muted",a),e.off("track.unmuted",a),e.off("participant.joined",a),e.off("participant.left",a)}},[e]),{videoTrackRefs:t,cameraTrackRefs:r,screenShareTrackRefs:o}}const _l="-",Pv=e=>{const t=Lv(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{const a=s.split(_l);return a[0]===""&&a.length!==1&&a.shift(),Qh(a,t)||Dv(s)},getConflictingClassGroupIds:(s,a)=>{const l=n[s]||[];return a&&r[s]?[...l,...r[s]]:l}}},Qh=(e,t)=>{var s;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),i=r?Qh(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;const o=e.join(_l);return(s=t.validators.find(({validator:a})=>a(o)))==null?void 0:s.classGroupId},Ru=/^\[(.+)\]$/,Dv=e=>{if(Ru.test(e)){const t=Ru.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},Lv=e=>{const{theme:t,classGroups:n}=e,r={nextPart:new Map,validators:[]};for(const i in n)ka(n[i],r,i,t);return r},ka=(e,t,n,r)=>{e.forEach(i=>{if(typeof i=="string"){const o=i===""?t:Iu(t,i);o.classGroupId=n;return}if(typeof i=="function"){if(Fv(i)){ka(i(r),t,n,r);return}t.validators.push({validator:i,classGroupId:n});return}Object.entries(i).forEach(([o,s])=>{ka(s,Iu(t,o),n,r)})})},Iu=(e,t)=>{let n=e;return t.split(_l).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},Fv=e=>e.isThemeGetter,jv=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const i=(o,s)=>{n.set(o,s),t++,t>e&&(t=0,r=n,n=new Map)};return{get(o){let s=n.get(o);if(s!==void 0)return s;if((s=r.get(o))!==void 0)return i(o,s),s},set(o,s){n.has(o)?n.set(o,s):i(o,s)}}},Ca="!",_a=":",Bv=_a.length,$v=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=i=>{const o=[];let s=0,a=0,l=0,c;for(let m=0;m<i.length;m++){let g=i[m];if(s===0&&a===0){if(g===_a){o.push(i.slice(l,m)),l=m+Bv;continue}if(g==="/"){c=m;continue}}g==="["?s++:g==="]"?s--:g==="("?a++:g===")"&&a--}const u=o.length===0?i:i.substring(l),d=Vv(u),f=d!==u,p=c&&c>l?c-l:void 0;return{modifiers:o,hasImportantModifier:f,baseClassName:d,maybePostfixModifierPosition:p}};if(t){const i=t+_a,o=r;r=s=>s.startsWith(i)?o(s.substring(i.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:s,maybePostfixModifierPosition:void 0}}if(n){const i=r;r=o=>n({className:o,parseClassName:i})}return r},Vv=e=>e.endsWith(Ca)?e.substring(0,e.length-1):e.startsWith(Ca)?e.substring(1):e,zv=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(r=>[r,!0]));return r=>{if(r.length<=1)return r;const i=[];let o=[];return r.forEach(s=>{s[0]==="["||t[s]?(i.push(...o.sort(),s),o=[]):o.push(s)}),i.push(...o.sort()),i}},Uv=e=>({cache:jv(e.cacheSize),parseClassName:$v(e),sortModifiers:zv(e),...Pv(e)}),Hv=/\s+/,Wv=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:o}=t,s=[],a=e.trim().split(Hv);let l="";for(let c=a.length-1;c>=0;c-=1){const u=a[c],{isExternal:d,modifiers:f,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:g}=n(u);if(d){l=u+(l.length>0?" "+l:l);continue}let v=!!g,y=r(v?m.substring(0,g):m);if(!y){if(!v){l=u+(l.length>0?" "+l:l);continue}if(y=r(m),!y){l=u+(l.length>0?" "+l:l);continue}v=!1}const E=o(f).join(":"),w=p?E+Ca:E,_=w+y;if(s.includes(_))continue;s.push(_);const C=i(y,v);for(let T=0;T<C.length;++T){const R=C[T];s.push(w+R)}l=u+(l.length>0?" "+l:l)}return l};function Gv(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=Jh(t))&&(r&&(r+=" "),r+=n);return r}const Jh=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=Jh(e[r]))&&(n&&(n+=" "),n+=t);return n};function Kv(e,...t){let n,r,i,o=s;function s(l){const c=t.reduce((u,d)=>d(u),e());return n=Uv(c),r=n.cache.get,i=n.cache.set,o=a,a(l)}function a(l){const c=r(l);if(c)return c;const u=Wv(l,n);return i(l,u),u}return function(){return o(Gv.apply(null,arguments))}}const yt=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},ep=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,tp=/^\((?:(\w[\w-]*):)?(.+)\)$/i,qv=/^\d+\/\d+$/,Yv=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Zv=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Xv=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Qv=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Jv=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,or=e=>qv.test(e),Ie=e=>!!e&&!Number.isNaN(Number(e)),Tn=e=>!!e&&Number.isInteger(Number(e)),ws=e=>e.endsWith("%")&&Ie(e.slice(0,-1)),mn=e=>Yv.test(e),ew=()=>!0,tw=e=>Zv.test(e)&&!Xv.test(e),np=()=>!1,nw=e=>Qv.test(e),rw=e=>Jv.test(e),iw=e=>!fe(e)&&!he(e),ow=e=>Dr(e,op,np),fe=e=>ep.test(e),zn=e=>Dr(e,sp,tw),Es=e=>Dr(e,uw,Ie),Ou=e=>Dr(e,rp,np),sw=e=>Dr(e,ip,rw),ji=e=>Dr(e,ap,nw),he=e=>tp.test(e),zr=e=>Lr(e,sp),aw=e=>Lr(e,dw),Pu=e=>Lr(e,rp),lw=e=>Lr(e,op),cw=e=>Lr(e,ip),Bi=e=>Lr(e,ap,!0),Dr=(e,t,n)=>{const r=ep.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Lr=(e,t,n=!1)=>{const r=tp.exec(e);return r?r[1]?t(r[1]):n:!1},rp=e=>e==="position"||e==="percentage",ip=e=>e==="image"||e==="url",op=e=>e==="length"||e==="size"||e==="bg-size",sp=e=>e==="length",uw=e=>e==="number",dw=e=>e==="family-name",ap=e=>e==="shadow",fw=()=>{const e=yt("color"),t=yt("font"),n=yt("text"),r=yt("font-weight"),i=yt("tracking"),o=yt("leading"),s=yt("breakpoint"),a=yt("container"),l=yt("spacing"),c=yt("radius"),u=yt("shadow"),d=yt("inset-shadow"),f=yt("text-shadow"),p=yt("drop-shadow"),m=yt("blur"),g=yt("perspective"),v=yt("aspect"),y=yt("ease"),E=yt("animate"),w=()=>["auto","avoid","all","avoid-page","page","left","right","column"],_=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],C=()=>[..._(),he,fe],T=()=>["auto","hidden","clip","visible","scroll"],R=()=>["auto","contain","none"],A=()=>[he,fe,l],I=()=>[or,"full","auto",...A()],b=()=>[Tn,"none","subgrid",he,fe],M=()=>["auto",{span:["full",Tn,he,fe]},Tn,he,fe],O=()=>[Tn,"auto",he,fe],L=()=>["auto","min","max","fr",he,fe],j=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],W=()=>["start","end","center","stretch","center-safe","end-safe"],oe=()=>["auto",...A()],te=()=>[or,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...A()],B=()=>[e,he,fe],V=()=>[..._(),Pu,Ou,{position:[he,fe]}],x=()=>["no-repeat",{repeat:["","x","y","space","round"]}],z=()=>["auto","cover","contain",lw,ow,{size:[he,fe]}],G=()=>[ws,zr,zn],k=()=>["","none","full",c,he,fe],K=()=>["",Ie,zr,zn],Z=()=>["solid","dashed","dotted","double"],X=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ie=()=>[Ie,ws,Pu,Ou],Y=()=>["","none",m,he,fe],re=()=>["none",Ie,he,fe],H=()=>["none",Ie,he,fe],Ee=()=>[Ie,he,fe],P=()=>[or,"full",...A()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[mn],breakpoint:[mn],color:[ew],container:[mn],"drop-shadow":[mn],ease:["in","out","in-out"],font:[iw],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[mn],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[mn],shadow:[mn],spacing:["px",Ie],text:[mn],"text-shadow":[mn],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",or,fe,he,v]}],container:["container"],columns:[{columns:[Ie,fe,he,a]}],"break-after":[{"break-after":w()}],"break-before":[{"break-before":w()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:C()}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:R()}],"overscroll-x":[{"overscroll-x":R()}],"overscroll-y":[{"overscroll-y":R()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{start:I()}],end:[{end:I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[Tn,"auto",he,fe]}],basis:[{basis:[or,"full","auto",a,...A()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ie,or,"auto","initial","none",fe]}],grow:[{grow:["",Ie,he,fe]}],shrink:[{shrink:["",Ie,he,fe]}],order:[{order:[Tn,"first","last","none",he,fe]}],"grid-cols":[{"grid-cols":b()}],"col-start-end":[{col:M()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":b()}],"row-start-end":[{row:M()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":L()}],"auto-rows":[{"auto-rows":L()}],gap:[{gap:A()}],"gap-x":[{"gap-x":A()}],"gap-y":[{"gap-y":A()}],"justify-content":[{justify:[...j(),"normal"]}],"justify-items":[{"justify-items":[...W(),"normal"]}],"justify-self":[{"justify-self":["auto",...W()]}],"align-content":[{content:["normal",...j()]}],"align-items":[{items:[...W(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...W(),{baseline:["","last"]}]}],"place-content":[{"place-content":j()}],"place-items":[{"place-items":[...W(),"baseline"]}],"place-self":[{"place-self":["auto",...W()]}],p:[{p:A()}],px:[{px:A()}],py:[{py:A()}],ps:[{ps:A()}],pe:[{pe:A()}],pt:[{pt:A()}],pr:[{pr:A()}],pb:[{pb:A()}],pl:[{pl:A()}],m:[{m:oe()}],mx:[{mx:oe()}],my:[{my:oe()}],ms:[{ms:oe()}],me:[{me:oe()}],mt:[{mt:oe()}],mr:[{mr:oe()}],mb:[{mb:oe()}],ml:[{ml:oe()}],"space-x":[{"space-x":A()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":A()}],"space-y-reverse":["space-y-reverse"],size:[{size:te()}],w:[{w:[a,"screen",...te()]}],"min-w":[{"min-w":[a,"screen","none",...te()]}],"max-w":[{"max-w":[a,"screen","none","prose",{screen:[s]},...te()]}],h:[{h:["screen","lh",...te()]}],"min-h":[{"min-h":["screen","lh","none",...te()]}],"max-h":[{"max-h":["screen","lh",...te()]}],"font-size":[{text:["base",n,zr,zn]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,he,Es]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",ws,fe]}],"font-family":[{font:[aw,fe,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[i,he,fe]}],"line-clamp":[{"line-clamp":[Ie,"none",he,Es]}],leading:[{leading:[o,...A()]}],"list-image":[{"list-image":["none",he,fe]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",he,fe]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:B()}],"text-color":[{text:B()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Z(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ie,"from-font","auto",he,zn]}],"text-decoration-color":[{decoration:B()}],"underline-offset":[{"underline-offset":[Ie,"auto",he,fe]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:A()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",he,fe]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",he,fe]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:V()}],"bg-repeat":[{bg:x()}],"bg-size":[{bg:z()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Tn,he,fe],radial:["",he,fe],conic:[Tn,he,fe]},cw,sw]}],"bg-color":[{bg:B()}],"gradient-from-pos":[{from:G()}],"gradient-via-pos":[{via:G()}],"gradient-to-pos":[{to:G()}],"gradient-from":[{from:B()}],"gradient-via":[{via:B()}],"gradient-to":[{to:B()}],rounded:[{rounded:k()}],"rounded-s":[{"rounded-s":k()}],"rounded-e":[{"rounded-e":k()}],"rounded-t":[{"rounded-t":k()}],"rounded-r":[{"rounded-r":k()}],"rounded-b":[{"rounded-b":k()}],"rounded-l":[{"rounded-l":k()}],"rounded-ss":[{"rounded-ss":k()}],"rounded-se":[{"rounded-se":k()}],"rounded-ee":[{"rounded-ee":k()}],"rounded-es":[{"rounded-es":k()}],"rounded-tl":[{"rounded-tl":k()}],"rounded-tr":[{"rounded-tr":k()}],"rounded-br":[{"rounded-br":k()}],"rounded-bl":[{"rounded-bl":k()}],"border-w":[{border:K()}],"border-w-x":[{"border-x":K()}],"border-w-y":[{"border-y":K()}],"border-w-s":[{"border-s":K()}],"border-w-e":[{"border-e":K()}],"border-w-t":[{"border-t":K()}],"border-w-r":[{"border-r":K()}],"border-w-b":[{"border-b":K()}],"border-w-l":[{"border-l":K()}],"divide-x":[{"divide-x":K()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":K()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Z(),"hidden","none"]}],"divide-style":[{divide:[...Z(),"hidden","none"]}],"border-color":[{border:B()}],"border-color-x":[{"border-x":B()}],"border-color-y":[{"border-y":B()}],"border-color-s":[{"border-s":B()}],"border-color-e":[{"border-e":B()}],"border-color-t":[{"border-t":B()}],"border-color-r":[{"border-r":B()}],"border-color-b":[{"border-b":B()}],"border-color-l":[{"border-l":B()}],"divide-color":[{divide:B()}],"outline-style":[{outline:[...Z(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ie,he,fe]}],"outline-w":[{outline:["",Ie,zr,zn]}],"outline-color":[{outline:B()}],shadow:[{shadow:["","none",u,Bi,ji]}],"shadow-color":[{shadow:B()}],"inset-shadow":[{"inset-shadow":["none",d,Bi,ji]}],"inset-shadow-color":[{"inset-shadow":B()}],"ring-w":[{ring:K()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:B()}],"ring-offset-w":[{"ring-offset":[Ie,zn]}],"ring-offset-color":[{"ring-offset":B()}],"inset-ring-w":[{"inset-ring":K()}],"inset-ring-color":[{"inset-ring":B()}],"text-shadow":[{"text-shadow":["none",f,Bi,ji]}],"text-shadow-color":[{"text-shadow":B()}],opacity:[{opacity:[Ie,he,fe]}],"mix-blend":[{"mix-blend":[...X(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":X()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Ie]}],"mask-image-linear-from-pos":[{"mask-linear-from":ie()}],"mask-image-linear-to-pos":[{"mask-linear-to":ie()}],"mask-image-linear-from-color":[{"mask-linear-from":B()}],"mask-image-linear-to-color":[{"mask-linear-to":B()}],"mask-image-t-from-pos":[{"mask-t-from":ie()}],"mask-image-t-to-pos":[{"mask-t-to":ie()}],"mask-image-t-from-color":[{"mask-t-from":B()}],"mask-image-t-to-color":[{"mask-t-to":B()}],"mask-image-r-from-pos":[{"mask-r-from":ie()}],"mask-image-r-to-pos":[{"mask-r-to":ie()}],"mask-image-r-from-color":[{"mask-r-from":B()}],"mask-image-r-to-color":[{"mask-r-to":B()}],"mask-image-b-from-pos":[{"mask-b-from":ie()}],"mask-image-b-to-pos":[{"mask-b-to":ie()}],"mask-image-b-from-color":[{"mask-b-from":B()}],"mask-image-b-to-color":[{"mask-b-to":B()}],"mask-image-l-from-pos":[{"mask-l-from":ie()}],"mask-image-l-to-pos":[{"mask-l-to":ie()}],"mask-image-l-from-color":[{"mask-l-from":B()}],"mask-image-l-to-color":[{"mask-l-to":B()}],"mask-image-x-from-pos":[{"mask-x-from":ie()}],"mask-image-x-to-pos":[{"mask-x-to":ie()}],"mask-image-x-from-color":[{"mask-x-from":B()}],"mask-image-x-to-color":[{"mask-x-to":B()}],"mask-image-y-from-pos":[{"mask-y-from":ie()}],"mask-image-y-to-pos":[{"mask-y-to":ie()}],"mask-image-y-from-color":[{"mask-y-from":B()}],"mask-image-y-to-color":[{"mask-y-to":B()}],"mask-image-radial":[{"mask-radial":[he,fe]}],"mask-image-radial-from-pos":[{"mask-radial-from":ie()}],"mask-image-radial-to-pos":[{"mask-radial-to":ie()}],"mask-image-radial-from-color":[{"mask-radial-from":B()}],"mask-image-radial-to-color":[{"mask-radial-to":B()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":_()}],"mask-image-conic-pos":[{"mask-conic":[Ie]}],"mask-image-conic-from-pos":[{"mask-conic-from":ie()}],"mask-image-conic-to-pos":[{"mask-conic-to":ie()}],"mask-image-conic-from-color":[{"mask-conic-from":B()}],"mask-image-conic-to-color":[{"mask-conic-to":B()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:V()}],"mask-repeat":[{mask:x()}],"mask-size":[{mask:z()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",he,fe]}],filter:[{filter:["","none",he,fe]}],blur:[{blur:Y()}],brightness:[{brightness:[Ie,he,fe]}],contrast:[{contrast:[Ie,he,fe]}],"drop-shadow":[{"drop-shadow":["","none",p,Bi,ji]}],"drop-shadow-color":[{"drop-shadow":B()}],grayscale:[{grayscale:["",Ie,he,fe]}],"hue-rotate":[{"hue-rotate":[Ie,he,fe]}],invert:[{invert:["",Ie,he,fe]}],saturate:[{saturate:[Ie,he,fe]}],sepia:[{sepia:["",Ie,he,fe]}],"backdrop-filter":[{"backdrop-filter":["","none",he,fe]}],"backdrop-blur":[{"backdrop-blur":Y()}],"backdrop-brightness":[{"backdrop-brightness":[Ie,he,fe]}],"backdrop-contrast":[{"backdrop-contrast":[Ie,he,fe]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ie,he,fe]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ie,he,fe]}],"backdrop-invert":[{"backdrop-invert":["",Ie,he,fe]}],"backdrop-opacity":[{"backdrop-opacity":[Ie,he,fe]}],"backdrop-saturate":[{"backdrop-saturate":[Ie,he,fe]}],"backdrop-sepia":[{"backdrop-sepia":["",Ie,he,fe]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":A()}],"border-spacing-x":[{"border-spacing-x":A()}],"border-spacing-y":[{"border-spacing-y":A()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",he,fe]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ie,"initial",he,fe]}],ease:[{ease:["linear","initial",y,he,fe]}],delay:[{delay:[Ie,he,fe]}],animate:[{animate:["none",E,he,fe]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,he,fe]}],"perspective-origin":[{"perspective-origin":C()}],rotate:[{rotate:re()}],"rotate-x":[{"rotate-x":re()}],"rotate-y":[{"rotate-y":re()}],"rotate-z":[{"rotate-z":re()}],scale:[{scale:H()}],"scale-x":[{"scale-x":H()}],"scale-y":[{"scale-y":H()}],"scale-z":[{"scale-z":H()}],"scale-3d":["scale-3d"],skew:[{skew:Ee()}],"skew-x":[{"skew-x":Ee()}],"skew-y":[{"skew-y":Ee()}],transform:[{transform:[he,fe,"","none","gpu","cpu"]}],"transform-origin":[{origin:C()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:P()}],"translate-x":[{"translate-x":P()}],"translate-y":[{"translate-y":P()}],"translate-z":[{"translate-z":P()}],"translate-none":["translate-none"],accent:[{accent:B()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:B()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",he,fe]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":A()}],"scroll-mx":[{"scroll-mx":A()}],"scroll-my":[{"scroll-my":A()}],"scroll-ms":[{"scroll-ms":A()}],"scroll-me":[{"scroll-me":A()}],"scroll-mt":[{"scroll-mt":A()}],"scroll-mr":[{"scroll-mr":A()}],"scroll-mb":[{"scroll-mb":A()}],"scroll-ml":[{"scroll-ml":A()}],"scroll-p":[{"scroll-p":A()}],"scroll-px":[{"scroll-px":A()}],"scroll-py":[{"scroll-py":A()}],"scroll-ps":[{"scroll-ps":A()}],"scroll-pe":[{"scroll-pe":A()}],"scroll-pt":[{"scroll-pt":A()}],"scroll-pr":[{"scroll-pr":A()}],"scroll-pb":[{"scroll-pb":A()}],"scroll-pl":[{"scroll-pl":A()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",he,fe]}],fill:[{fill:["none",...B()]}],"stroke-w":[{stroke:[Ie,zr,zn,Es]}],stroke:[{stroke:["none",...B()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},hw=Kv(fw);function Be(...e){return hw(Ha.clsx(e))}function Oo(e){var i;if(!e)return{sessionSettings:{},capabilities:{},modality:"voice"};const t={session_timer:((i=e.session_settings)==null?void 0:i.session_timer)||null},n=e.capabilities||{},r=e.modality||"voice";return{sessionSettings:t,capabilities:n,modality:r}}function pw(e,t){return e.capabilities[t]===!0}function Po(e){return e.sessionSettings.session_timer||null}function lp(e){const t=e.capabilities;return{userVideoEnabled:t.user_video_enabled!==!1,agentAvatarEnabled:t.agent_avatar_enabled!==!1,screenshareEnabled:t.screenshare_session_enabled!==!1}}function cp(e){const t=e.capabilities;return{suggestedReplyEnabled:t.suggested_reply_enabled!==!1,attachmentsEnabled:t.support_in_chat_attachments!==!1}}function up(e){return{...e.capabilities}}function dp(e){const t=Math.floor(e/60),n=e%60;return`${t}:${n.toString().padStart(2,"0")}`}const fp=N.forwardRef(({state:e,audioTrack:t,className:n,theme:r="vox"},i)=>{var c,u,d,f,p;const o=N.useRef(null),[s,a]=N.useState(!1);N.useEffect(()=>{o.current&&(console.log("🔊 AgentTile: Audio element created:",{autoplay:o.current.autoplay,muted:o.current.muted,volume:o.current.volume,readyState:o.current.readyState,paused:o.current.paused}),a(!0))},[t]),N.useEffect(()=>{const m=o.current;if(!m)return;const g=()=>console.log("▶️ AgentTile: Audio started playing"),v=()=>console.log("⏸️ AgentTile: Audio paused"),y=()=>console.log("⏹️ AgentTile: Audio ended"),E=C=>console.error("❌ AgentTile: Audio error:",C),w=()=>console.log("⏳ AgentTile: Audio load started"),_=()=>console.log("✅ AgentTile: Audio can play");return m.addEventListener("play",g),m.addEventListener("pause",v),m.addEventListener("ended",y),m.addEventListener("error",E),m.addEventListener("loadstart",w),m.addEventListener("canplay",_),()=>{m.removeEventListener("play",g),m.removeEventListener("pause",v),m.removeEventListener("ended",y),m.removeEventListener("error",E),m.removeEventListener("loadstart",w),m.removeEventListener("canplay",_)}},[s]),console.log("🎤 AgentTile render:",{state:e,hasAudioTrack:!!t,trackSource:t==null?void 0:t.source,participantId:(c=t==null?void 0:t.participant)==null?void 0:c.identity,publicationMuted:(u=t==null?void 0:t.publication)==null?void 0:u.isMuted,audioElementReady:s,trackMediaStreamTrack:(p=(f=(d=t==null?void 0:t.publication)==null?void 0:d.track)==null?void 0:f.mediaStreamTrack)==null?void 0:p.readyState});const l=N.useMemo(()=>r==="light"?{base:"bg-black/90",highlighted:"bg-black",muted:"bg-black/30"}:{base:"bg-white/90",highlighted:"bg-white",muted:"bg-white/30"},[r]);return h.jsxs("div",{ref:i,className:Be("",n),children:[t&&h.jsxs(h.Fragment,{children:[h.jsx(Rt.AudioTrack,{ref:o,trackRef:t,volume:1}),h.jsx(Rt.BarVisualizer,{barCount:5,state:e,options:{minHeight:5},trackRef:t,className:Be("flex aspect-video w-40 items-center justify-center gap-1.5"),children:h.jsx("span",{className:Be([`${l.base} min-h-2 w-2 rounded-full`,"origin-center transition-colors duration-250 ease-linear",`data-[lk-highlighted=true]:${l.highlighted}`,`data-[lk-muted=true]:${l.muted}`])})})]}),!t&&h.jsx("div",{className:Be("flex aspect-video w-40 items-center justify-center"),children:h.jsx("div",{className:"flex flex-col items-center justify-center",children:h.jsx("div",{className:"flex gap-1.5",children:Array.from({length:5}).map((m,g)=>h.jsx("span",{className:Be([`${l.base} min-h-2 w-2 rounded-full`,"origin-center transition-colors duration-250 ease-linear",e==="speaking"&&`animate-pulse ${l.highlighted}`,e==="thinking"&&`animate-pulse ${l.muted}`])},g))})})})]})});fp.displayName="AgentTile";const gw=({videoTrack:e,className:t,ref:n})=>{var r,i;return!e||!e.publication||!e.participant?h.jsx("div",{ref:n,className:Be(t),children:h.jsx("div",{className:"w-full h-full bg-gray-200 rounded-md flex items-center justify-center",children:h.jsx("span",{className:"text-gray-500",children:"No video available"})})}):h.jsx("div",{ref:n,className:Be(t),children:h.jsx(Rt.VideoTrack,{trackRef:e,width:((r=e.publication.dimensions)==null?void 0:r.width)??0,height:((i=e.publication.dimensions)==null?void 0:i.height)??0,className:"rounded-md"})})},mw=D.forwardRef(function({trackRef:t,className:n,...r},i){var o,s;return h.jsx("div",{ref:i,className:Be("bg-muted overflow-hidden rounded-md",n),children:h.jsx(Rt.VideoTrack,{trackRef:t,width:((o=t==null?void 0:t.publication.dimensions)==null?void 0:o.width)??0,height:((s=t==null?void 0:t.publication.dimensions)==null?void 0:s.height)??0,className:Be("h-full w-auto"),...r})})}),Du=Me.create(mw),bw=Me.create(fp),yw=Me.create(gw),bn={initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},exit:{opacity:0,scale:0},transition:{type:"spring",stiffness:675,damping:75,mass:1}},sr={grid:["h-full w-full","grid gap-x-2 place-content-center","grid-cols-[1fr_1fr] grid-rows-[90px_1fr_90px]"],agentChatOpenWithSecondTile:["col-start-1 row-start-1","self-center justify-self-end"],agentChatOpenWithoutSecondTile:["col-start-1 row-start-1","col-span-2","place-content-center"],agentChatClosed:["col-start-1 row-start-1","col-span-2","place-content-center"],secondTileChatOpen:["col-start-2 row-start-1","self-center justify-self-start"],secondTileChatClosed:["col-start-2 row-start-3","place-content-end"]};function xw(e,t){const{localParticipant:n}=Rv(t),r=n==null?void 0:n.getTrackPublication(e);return N.useMemo(()=>r&&n?{source:e,participant:n,publication:r}:void 0,[e,r,n])}function vw({chatOpen:e,client:t,theme:n="vox"}){const{agent:{isActive:r=!1}={},session:i,state:o="idle",audioTrack:s,videoTrack:a}=t?Cl(t):{agent:{isActive:!1},session:null,state:"idle",audioTrack:null,videoTrack:null};console.log("🎨 MediaTiles render:",{chatOpen:e,isAgentActive:r,hasSession:!!i,sessionState:i==null?void 0:i.state,agentState:o,hasAudioTrack:!!s,hasVideoTrack:!!a});const[l]=Rt.useTracks([le.Track.Source.ScreenShare]),c=xw(le.Track.Source.Camera,t),u=c&&!c.publication.isMuted,d=l&&!l.publication.isMuted,f=u||d,p=r||i&&i.state==="active",m={...bn.transition,delay:e?0:.15},g={...bn.animate,scale:e?1:3,transition:m},v={...bn.animate,transition:m},y=m,E=m,w=a&&a.publication&&a.participant;return h.jsx("div",{className:"relative w-full h-full z-10 flex items-center justify-center",children:h.jsx("div",{className:"relative w-full h-full max-w-2xl px-4 md:px-0",children:h.jsxs("div",{className:Be(sr.grid),children:[p&&h.jsx("div",{className:Be(["grid",!e&&sr.agentChatClosed,e&&f&&sr.agentChatOpenWithSecondTile,e&&!f&&sr.agentChatOpenWithoutSecondTile]),children:h.jsxs("div",{className:"h-full flex items-center justify-center",children:[!w&&h.jsx(bw,{layoutId:"agent",...bn,animate:g,transition:y,state:o,audioTrack:s||void 0,theme:n,className:Be(e?"h-[90px]":"h-auto w-full")},"agent"),w&&a&&h.jsx(yw,{layoutId:"avatar",...bn,animate:v,transition:E,videoTrack:a,className:Be(e?"h-[90px] [&>video]:h-[90px] [&>video]:w-auto":"h-auto w-full")},"avatar")]})}),h.jsx("div",{className:Be(["grid",e&&sr.secondTileChatOpen,!e&&sr.secondTileChatClosed]),children:h.jsxs("div",{className:"w-full px-10 flex items-center shadow-2xl justify-between",children:[c&&u&&h.jsx(Du,{layout:"position",layoutId:"camera",...bn,trackRef:c,transition:{...bn.transition,delay:e?0:.15},className:"h-[60px] order-1"},"camera"),d&&h.jsx(Du,{layout:"position",layoutId:"screen",...bn,trackRef:l,transition:{...bn.transition,delay:e?0:.15},className:"h-[70px] order-2"},"screen")]})})]})})})}const ww={card:"text-gray-100 bg-gradient-to-b from-[#0a0a0a] via-[#121212] to-[#0a0a0a] border border-gray-800/50 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-2xl",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-40 z-10 bg-gradient-to-b from-black/90 via-black/40 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(circle_at_50%_-20%,_rgba(75,85,99,0.08),transparent_50%)] opacity-100",cardPurpleBlur:"absolute top-0 left-1/2 -translate-x-1/2 w-[600px] h-[300px] bg-gradient-to-b from-gray-500/[0.12] via-gray-600/[0.06] to-transparent blur-3xl",cardPinkBlur:"absolute bottom-0 left-1/2 -translate-x-1/2 w-[500px] h-[250px] bg-gradient-to-t from-gray-600/[0.08] via-transparent to-transparent blur-3xl",cardPulse1:"hidden",cardPulse2:"hidden",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-b from-[#0a0a0a] via-[#121212] to-[#0a0a0a] shadow-2xl p-0 overflow-hidden h-full relative",text:{primary:"text-gray-100 font-semibold",secondary:"text-gray-200",muted:"text-gray-400",accent:"text-transparent bg-clip-text bg-gradient-to-r from-gray-300 via-gray-200 to-gray-300"},micButton:"relative w-20 h-20 bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 rounded-3xl flex items-center justify-center hover:bg-gray-900 hover:border-gray-600 hover:scale-105 hover:shadow-2xl hover:shadow-gray-600/30 transition-all duration-500 ease-out group overflow-hidden",chatButton:"relative w-20 h-20 bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 rounded-3xl flex items-center justify-center hover:bg-gray-900 hover:border-gray-600 hover:scale-105 hover:shadow-2xl hover:shadow-gray-600/30 transition-all duration-500 ease-out group overflow-hidden",videoButton:"relative w-20 h-20 bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 rounded-3xl flex items-center justify-center hover:bg-gray-900 hover:border-gray-600 hover:scale-105 hover:shadow-2xl hover:shadow-gray-600/30 transition-all duration-500 ease-out group overflow-hidden",popupTrigger:"bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 text-gray-100 font-bold hover:bg-gray-900 hover:border-gray-600 hover:scale-[1.02] hover:shadow-2xl hover:shadow-gray-600/30 focus:outline-none focus:ring-2 focus:ring-gray-600 focus:ring-offset-2 focus:ring-offset-black transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-gray-900/60 backdrop-blur-xl rounded-2xl text-center text-gray-200 text-sm font-medium transition-all duration-700 ease-in-out border border-gray-700/50 shadow-xl",statusIndicator:"w-2.5 h-2.5 bg-gray-400 rounded-full animate-pulse shadow-lg shadow-gray-400/60",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-gray-800/50 rounded-3xl py-4 flex flex-col justify-end h-full bg-black/90 backdrop-blur-xl shadow-2xl",chatInput:{container:"bg-black/90 backdrop-blur-xl border-gray-800/50 shadow-xl",textarea:"bg-black/80 border border-gray-800/50 rounded-xl text-gray-100 placeholder-gray-500 font-medium px-4 py-3",sendButton:"bg-gray-900/90 hover:bg-gray-900 border-2 border-gray-700/50 hover:border-gray-600 disabled:border-gray-800 disabled:opacity-40 text-gray-100 font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-gray-600/30",attachButton:"text-gray-400 hover:text-gray-200 hover:bg-gray-700/30 transition-all duration-300 rounded-xl",endButton:"bg-red-600/90 hover:bg-red-600 border-2 border-red-500/40 hover:border-red-500/60 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-red-500/40"},chatMessage:{own:"bg-gray-800/70 text-gray-100 backdrop-blur-md shadow-lg border border-gray-700/50",other:"bg-gray-900/60 text-gray-100 border border-gray-700/50 backdrop-blur-md shadow-lg"},chatHeader:{container:"bg-gray-900/80 border-gray-700/50 backdrop-blur-xl shadow-xl",backButton:"text-gray-300 hover:text-gray-100 hover:bg-gray-700/30 transition-all duration-300 rounded-xl"},spinner:"w-10 h-10 animate-spin text-gray-400 mb-2",suggestedResponse:{container:"bg-gray-900/70 text-gray-200 border-gray-700/50 backdrop-blur-md hover:bg-gray-800/80 hover:border-gray-600 transition-all duration-300 shadow-lg"},video:{container:"bg-gradient-to-b from-[#0a0a0a] via-[#121212] to-[#0a0a0a] text-gray-100",header:"border-gray-700/50 bg-gray-900/80 backdrop-blur-xl shadow-xl",headerButton:"bg-gray-900/90 hover:bg-gray-900 border-2 border-gray-700/50 hover:border-gray-600 text-gray-100 hover:scale-105 transition-all duration-300 rounded-xl shadow-lg",statusDot:"bg-emerald-400 animate-pulse shadow-lg shadow-emerald-400/60",controlsBackground:"bg-gradient-to-t from-gray-900 via-gray-900/90 to-gray-900/60 backdrop-blur-xl border-t border-gray-700/50 shadow-2xl",controlEnabled:"bg-gray-900/90 hover:bg-gray-900 border-2 border-gray-700/50 hover:border-gray-600 text-gray-100 hover:scale-105 hover:shadow-xl hover:shadow-gray-600/30 transition-all duration-300 font-semibold",controlDisabled:"bg-gray-900/50 hover:bg-gray-900/60 text-gray-500 border border-gray-800 transition-all duration-300",endCall:"bg-red-600/90 hover:bg-red-600 border-2 border-red-500/50 hover:border-red-500/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-2xl hover:shadow-red-500/50",tile:"bg-gray-900/70 border border-gray-700/50 shadow-2xl backdrop-blur-md rounded-2xl",placeholder:"bg-gray-900/60 text-gray-300",avatar:"bg-gray-800/80 text-gray-300 border-2 border-gray-700/50",nameOverlay:"bg-gradient-to-t from-gray-900 via-gray-900/80 to-transparent text-white backdrop-blur-sm font-bold",mutedIndicator:"bg-red-600 text-white shadow-xl shadow-red-500/40 font-semibold"}},Ew={card:"text-gray-900 bg-gradient-to-b from-[#F8F9FC] via-[#FFFFFF] to-[#F8F9FC] border-[3px] border-indigo-200/60 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-2xl shadow-indigo-200/30",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-40 z-10 bg-gradient-to-b from-[#FFFFFF]/90 via-[#FFFFFF]/40 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(circle_at_50%_-20%,_rgba(129,140,248,0.12),transparent_50%)] opacity-100",cardPurpleBlur:"absolute top-0 right-0 w-64 h-64 bg-gradient-to-br from-indigo-300/40 via-purple-300/25 to-transparent rounded-full blur-3xl animate-pulse-slow",cardPinkBlur:"absolute bottom-0 left-0 w-56 h-56 bg-gradient-to-tr from-blue-300/35 via-purple-200/20 to-transparent rounded-full blur-3xl",cardPulse1:"absolute top-4 right-4 w-8 h-8 bg-gradient-to-br from-indigo-400/30 to-purple-400/30 rounded-full blur-md opacity-60 animate-pulse",cardPulse2:"absolute bottom-6 left-6 w-6 h-6 bg-gradient-to-br from-blue-400/25 to-purple-400/25 rounded-full blur-md opacity-50 animate-pulse",main:"w-full flex flex-col items-center justify-center bg-gradient-to-b from-[#F8F9FC] via-[#FFFFFF] to-[#F8F9FC] shadow-2xl p-0 overflow-hidden h-full relative",text:{primary:"text-gray-900 font-semibold",secondary:"text-gray-700",muted:"text-gray-500",accent:"text-transparent bg-clip-text bg-gradient-to-r from-indigo-600 via-purple-600 to-blue-600"},micButton:"relative w-20 h-20 backdrop-blur-xl border-2 border-indigo-400/40 rounded-3xl flex items-center justify-center hover:from-indigo-700 hover:to-purple-700 hover:border-indigo-500/60 hover:scale-105 hover:shadow-2xl hover:shadow-indigo-500/40 transition-all duration-500 ease-out group overflow-hidden text-white",chatButton:"relative w-20 h-20 bg-gradient-to-br from-blue-600 to-cyan-600 backdrop-blur-xl border-2 border-blue-400/40 rounded-3xl flex items-center justify-center hover:from-blue-700 hover:to-cyan-700 hover:border-blue-500/60 hover:scale-105 hover:shadow-2xl hover:shadow-blue-500/40 transition-all duration-500 ease-out group overflow-hidden text-white",videoButton:"relative w-20 h-20 bg-gradient-to-br from-purple-600 to-pink-600 backdrop-blur-xl border-2 border-purple-400/40 rounded-3xl flex items-center justify-center hover:from-purple-700 hover:to-pink-700 hover:border-purple-500/60 hover:scale-105 hover:shadow-2xl hover:shadow-purple-500/40 transition-all duration-500 ease-out group overflow-hidden text-white",popupTrigger:"bg-gradient-to-r from-indigo-600 to-purple-600 backdrop-blur-xl border-2 border-indigo-400/40 text-white font-bold hover:from-indigo-700 hover:to-purple-700 hover:border-indigo-500/60 hover:scale-[1.02] hover:shadow-2xl hover:shadow-indigo-500/40 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 focus:ring-offset-white transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-white/80 backdrop-blur-xl rounded-2xl text-center text-gray-700 text-sm font-medium transition-all duration-700 ease-in-out border border-indigo-100 shadow-lg shadow-indigo-100/20",statusIndicator:"w-2.5 h-2.5 bg-emerald-500 rounded-full animate-pulse shadow-lg shadow-emerald-500/60",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-indigo-100 rounded-3xl py-4 flex flex-col justify-end h-full bg-white/80 backdrop-blur-xl shadow-2xl",chatInput:{container:"bg-white/80 backdrop-blur-xl border-indigo-100 shadow-xl",textarea:"bg-white/90 border border-indigo-100 rounded-xl text-gray-900 placeholder-gray-400 font-medium px-4 py-3 focus:border-indigo-300 focus:ring-2 focus:ring-indigo-200",sendButton:"bg-gradient-to-r from-indigo-600 to-purple-600 hover:from-indigo-700 hover:to-purple-700 border-2 border-transparent disabled:from-gray-300 disabled:to-gray-300 disabled:opacity-40 text-white font-bold hover:scale-105 transition-all duration-300 shadow-lg hover:shadow-indigo-500/40",attachButton:"text-gray-500 hover:text-indigo-600 hover:bg-indigo-50 transition-all duration-300 rounded-xl",endButton:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/50 hover:border-red-400/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-red-500/40"},chatMessage:{own:"bg-indigo-100/70 text-gray-900 backdrop-blur-md shadow-lg border border-indigo-200/50",other:"bg-white/80 text-gray-900 border border-gray-200 backdrop-blur-md shadow-lg"},chatHeader:{container:"bg-white/80 border-indigo-100 backdrop-blur-xl shadow-xl",backButton:"text-gray-600 hover:text-indigo-600 hover:bg-indigo-50 transition-all duration-300 rounded-xl"},spinner:"w-10 h-10 animate-spin text-indigo-600 mb-2",suggestedResponse:{container:"bg-white/80 text-indigo-700 border-indigo-100 backdrop-blur-md hover:bg-indigo-50 hover:border-indigo-200 transition-all duration-300 shadow-lg"},video:{container:"bg-gradient-to-b from-[#F8F9FC] via-[#FFFFFF] to-[#F8F9FC] text-gray-900",header:"border-indigo-100 bg-white/80 backdrop-blur-xl shadow-xl",headerButton:"bg-white/90 hover:bg-indigo-50 border-2 border-indigo-100 hover:border-indigo-200 text-gray-900 hover:scale-105 transition-all duration-300 rounded-xl shadow-lg",statusDot:"bg-emerald-500 animate-pulse shadow-lg shadow-emerald-500/60",controlsBackground:"bg-gradient-to-t from-white via-white/90 to-white/60 backdrop-blur-xl border-t border-indigo-100 shadow-2xl",controlEnabled:"bg-white/90 hover:bg-indigo-50 border-2 border-indigo-100 hover:border-indigo-200 text-gray-900 hover:scale-105 hover:shadow-xl hover:shadow-indigo-200/30 transition-all duration-300 font-semibold",controlDisabled:"bg-gray-100/50 hover:bg-gray-100/60 text-gray-400 border border-gray-200 transition-all duration-300",endCall:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/50 hover:border-red-400/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-2xl hover:shadow-red-500/50",tile:"bg-white/80 border border-indigo-100 shadow-2xl backdrop-blur-md rounded-2xl",placeholder:"bg-gray-50 text-gray-600",avatar:"bg-indigo-100/80 text-indigo-700 border-2 border-indigo-200",nameOverlay:"bg-gradient-to-t from-white via-white/80 to-transparent text-gray-900 backdrop-blur-sm font-bold",mutedIndicator:"bg-red-600 text-white shadow-xl shadow-red-500/40 font-semibold"}},Sw={card:"text-white bg-gradient-to-b from-[#0a0a0a] via-[#000000] to-[#0a0a0a] border border-gray-800/30 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-[0_8px_32px_rgba(0,0,0,0.9),0_0_0_1px_rgba(255,255,255,0.08)_inset]",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-32 z-10 bg-gradient-to-b from-black/95 via-black/30 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_top,_rgba(255,255,255,0.03),transparent_60%)] opacity-100",cardPurpleBlur:"absolute top-0 left-1/2 -translate-x-1/2 w-[400px] h-[200px] bg-gradient-to-b from-white/[0.03] via-white/[0.015] to-transparent blur-3xl",cardPinkBlur:"absolute bottom-0 left-1/2 -translate-x-1/2 w-[300px] h-[150px] bg-gradient-to-t from-white/[0.02] via-transparent to-transparent blur-3xl",cardPulse1:"hidden",cardPulse2:"hidden",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-black p-0 overflow-hidden h-full relative",text:{primary:"text-white font-semibold",secondary:"text-white/95",muted:"text-gray-400",accent:"text-transparent bg-clip-text bg-gradient-to-r from-gray-200 via-white to-gray-200"},micButton:"relative w-20 h-20 bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] rounded-2xl flex items-center justify-center hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.03] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] transition-all duration-300 ease-out group overflow-hidden",chatButton:"relative w-20 h-20 bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] rounded-2xl flex items-center justify-center hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.03] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] transition-all duration-300 ease-out group overflow-hidden",videoButton:"relative w-20 h-20 bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] rounded-2xl flex items-center justify-center hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.03] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] transition-all duration-300 ease-out group overflow-hidden",popupTrigger:"bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] text-white font-bold hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.02] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] focus:outline-none focus:ring-2 focus:ring-white/30 focus:ring-offset-2 focus:ring-offset-black transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-white/[0.06] backdrop-blur-md rounded-xl text-center text-white/90 text-sm font-medium transition-all duration-700 ease-in-out border border-white/[0.12] ",statusIndicator:"w-2 h-2 bg-emerald-400 rounded-full animate-pulse shadow-[0_0_8px_rgba(52,211,153,0.6)]",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-white/[0.12] rounded-2xl py-4 flex flex-col justify-end h-full bg-black/90 backdrop-blur-md shadow-[0_4px_24px_rgba(0,0,0,0.6)]",chatInput:{container:"bg-black/90 backdrop-blur-md border-white/[0.12] shadow-[0_4px_16px_rgba(0,0,0,0.4)]",textarea:"bg-white/[0.08] border border-white/[0.12] rounded-xl text-white placeholder-gray-500 font-medium px-4 py-3 focus:border-white/[0.2] focus:ring-1 focus:ring-white/[0.15] transition-all",sendButton:"bg-white/[0.12] hover:bg-white/[0.18] border border-white/[0.2] hover:border-white/[0.35] disabled:border-white/[0.08] disabled:opacity-40 text-white font-bold hover:scale-[1.02] transition-all duration-300 shadow-md hover:shadow-[0_4px_16px_rgba(255,255,255,0.12)]",attachButton:"text-gray-400 hover:text-white hover:bg-white/[0.08] transition-all duration-300 rounded-lg",endButton:"bg-red-500/90 hover:bg-red-500 border border-red-400/40 hover:border-red-400/60 text-white font-bold hover:scale-[1.02] transition-all duration-300 shadow-md hover:shadow-[0_4px_16px_rgba(239,68,68,0.3)]"},chatMessage:{own:"bg-white/[0.10] text-white backdrop-blur-sm shadow-md border border-white/[0.15]",other:"bg-white/[0.06] text-white border border-white/[0.10] backdrop-blur-sm shadow-md"},chatHeader:{container:"bg-black/90 border-white/[0.12] backdrop-blur-md shadow-lg",backButton:"text-gray-400 hover:text-white hover:bg-white/[0.08] transition-all duration-300 rounded-lg"},spinner:"w-10 h-10 animate-spin text-white mb-2",suggestedResponse:{container:"bg-white/[0.08] text-white border-white/[0.15] backdrop-blur-sm hover:bg-white/[0.12] hover:border-white/[0.25] transition-all duration-300 shadow-md"},video:{container:"bg-black text-white",header:"border-white/[0.12] bg-black/90 backdrop-blur-md shadow-lg",headerButton:"bg-white/[0.12] hover:bg-white/[0.18] border border-white/[0.2] hover:border-white/[0.35] text-white hover:scale-[1.02] transition-all duration-300 rounded-lg shadow-md",statusDot:"bg-emerald-400 animate-pulse shadow-[0_0_8px_rgba(52,211,153,0.6)]",controlsBackground:"bg-gradient-to-t from-black via-black/95 to-black/70 backdrop-blur-md border-t border-white/[0.12] shadow-[0_-4px_24px_rgba(0,0,0,0.6)]",controlEnabled:"bg-white/[0.12] hover:bg-white/[0.18] border border-white/[0.2] hover:border-white/[0.35] text-white hover:scale-[1.02] hover:shadow-md hover:shadow-white/10 transition-all duration-300 font-semibold",controlDisabled:"bg-white/[0.04] hover:bg-white/[0.06] text-gray-500 border border-white/[0.08] transition-all duration-300",endCall:"bg-red-500/90 hover:bg-red-500 border border-red-400/40 hover:border-red-400/60 text-white font-bold hover:scale-[1.02] transition-all duration-300 shadow-md hover:shadow-red-500/30",tile:"bg-white/[0.08] border border-white/[0.12] shadow-lg backdrop-blur-sm rounded-xl",placeholder:"bg-white/[0.06] text-gray-400",avatar:"bg-white/[0.10] text-gray-300 border border-white/[0.12]",nameOverlay:"bg-gradient-to-t from-black via-black/85 to-transparent text-white backdrop-blur-sm font-semibold",mutedIndicator:"bg-red-500 text-white shadow-md shadow-red-500/30 font-semibold"}},kw={card:"text-white bg-gradient-to-b from-[#0e1218] via-[#161a25] to-[#0e1218] border border-[#2a3142]/50 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-2xl",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-40 z-10 bg-gradient-to-b from-[#0b1220]/90 via-[#0b1220]/40 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(circle_at_50%_-20%,_rgba(34,211,238,0.08),transparent_50%)] opacity-100",cardPurpleBlur:"absolute top-0 left-1/2 -translate-x-1/2 w-[600px] h-[300px] bg-gradient-to-b from-cyan-500/[0.12] via-sky-500/[0.06] to-transparent blur-3xl",cardPinkBlur:"absolute bottom-0 left-1/2 -translate-x-1/2 w-[500px] h-[250px] bg-gradient-to-t from-cyan-600/[0.08] via-transparent to-transparent blur-3xl",cardPulse1:"hidden",cardPulse2:"hidden",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-b from-[#0e1218] via-[#161a25] to-[#0e1218] shadow-2xl p-0 overflow-hidden h-full relative",text:{primary:"text-white font-semibold",secondary:"text-white/95",muted:"text-white/70",accent:"text-transparent bg-clip-text bg-gradient-to-r from-cyan-300 via-sky-300 to-cyan-300"},micButton:"relative w-20 h-20 bg-[#171b26]/90 backdrop-blur-xl border-2 border-cyan-500/30 rounded-3xl flex items-center justify-center hover:bg-[#171b26] hover:border-cyan-400/50 hover:scale-105 hover:shadow-2xl hover:shadow-cyan-500/30 transition-all duration-500 ease-out group overflow-hidden",chatButton:"relative w-20 h-20 bg-[#171b26]/90 backdrop-blur-xl border-2 border-sky-500/30 rounded-3xl flex items-center justify-center hover:bg-[#171b26] hover:border-sky-400/50 hover:scale-105 hover:shadow-2xl hover:shadow-sky-500/30 transition-all duration-500 ease-out group overflow-hidden",videoButton:"relative w-20 h-20 bg-[#171b26]/90 backdrop-blur-xl border-2 border-cyan-500/30 rounded-3xl flex items-center justify-center hover:bg-[#171b26] hover:border-cyan-400/50 hover:scale-105 hover:shadow-2xl hover:shadow-cyan-500/30 transition-all duration-500 ease-out group overflow-hidden",popupTrigger:"bg-[#171b26]/90 backdrop-blur-xl border-2 border-cyan-500/30 text-white font-bold hover:bg-[#171b26] hover:border-cyan-400/50 hover:scale-[1.02] hover:shadow-2xl hover:shadow-cyan-500/30 focus:outline-none focus:ring-2 focus:ring-cyan-400/50 focus:ring-offset-2 focus:ring-offset-[#161a25] transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-[#1c2230]/60 backdrop-blur-xl rounded-2xl text-center text-white/90 text-sm font-medium transition-all duration-700 ease-in-out border border-[#2a3142]/80 shadow-xl",statusIndicator:"w-2.5 h-2.5 bg-emerald-400 rounded-full animate-pulse shadow-lg shadow-emerald-400/60",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-[#2a3142]/80 rounded-3xl py-4 flex flex-col justify-end h-full bg-[#161a25]/80 backdrop-blur-xl shadow-2xl",chatInput:{container:"bg-[#1c2230]/80 backdrop-blur-xl border-[#2a3142]/80 shadow-xl",textarea:"bg-[#1c2230]/60 border border-[#2a3142]/50 rounded-xl text-white placeholder-gray-400 font-medium px-4 py-3",sendButton:"bg-[#171b26]/90 hover:bg-[#171b26] border-2 border-cyan-500/30 hover:border-cyan-400/50 disabled:border-[#2a3142] disabled:opacity-40 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-cyan-500/30",attachButton:"text-gray-400 hover:text-white hover:bg-[#2a3142]/30 transition-all duration-300 rounded-xl",endButton:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/40 hover:border-red-400/60 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-red-500/40"},chatMessage:{own:"bg-[#243049]/70 text-white backdrop-blur-md shadow-lg border border-[#2a3142]/80",other:"bg-[#1c2230]/60 text-white border border-[#2a3142]/80 backdrop-blur-md shadow-lg"},chatHeader:{container:"bg-[#1c2230]/80 border-[#2a3142]/80 backdrop-blur-xl shadow-xl",backButton:"text-white/80 hover:text-white hover:bg-[#2a3142]/30 transition-all duration-300 rounded-xl"},spinner:"w-10 h-10 animate-spin text-cyan-400 mb-2",suggestedResponse:{container:"bg-[#1c2230]/70 text-white border-[#2a3142]/80 backdrop-blur-md hover:bg-[#1c2230]/80 hover:border-cyan-400/30 transition-all duration-300 shadow-lg"},video:{container:"bg-gradient-to-b from-[#0e1218] via-[#161a25] to-[#0e1218] text-white",header:"border-[#2a3142]/80 bg-[#1c2230]/80 backdrop-blur-xl shadow-xl",headerButton:"bg-[#171b26]/90 hover:bg-[#171b26] border-2 border-cyan-500/30 hover:border-cyan-400/50 text-white hover:scale-105 transition-all duration-300 rounded-xl shadow-lg",statusDot:"bg-emerald-400 animate-pulse shadow-lg shadow-emerald-400/60",controlsBackground:"bg-gradient-to-t from-[#161a25] via-[#161a25]/90 to-[#161a25]/60 backdrop-blur-xl border-t border-[#2a3142]/80 shadow-2xl",controlEnabled:"bg-[#171b26]/90 hover:bg-[#171b26] border-2 border-cyan-500/30 hover:border-cyan-400/50 text-white hover:scale-105 hover:shadow-xl hover:shadow-cyan-500/30 transition-all duration-300 font-semibold",controlDisabled:"bg-[#1c2230]/50 hover:bg-[#1c2230]/60 text-white/40 border border-[#2a3142] transition-all duration-300",endCall:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/50 hover:border-red-400/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-2xl hover:shadow-red-500/50",tile:"bg-[#1c2230]/70 border border-[#2a3142]/80 shadow-2xl backdrop-blur-md rounded-2xl",placeholder:"bg-[#1c2230]/60 text-white/80",avatar:"bg-[#171b26]/80 text-white border-2 border-[#2a3142]/80",nameOverlay:"bg-gradient-to-t from-[#161a25] via-[#161a25]/80 to-transparent text-white backdrop-blur-sm font-bold",mutedIndicator:"bg-red-600 text-white shadow-xl shadow-red-500/40 font-semibold"}},Cw={card:" text-white bg-gradient-to-br from-[#171727] to-[#12121F] border border-gray-800 w-full h-full flex flex-col justify-between overflow-hidden relative",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-10 z-10 bg-gradient-to-b from-[#171727]/90 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_center,_var(--tw-gradient-stops))] from-[#3B82F6]/15 via-transparent to-transparent",cardPurpleBlur:"absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-[#8B5CF6]/25 to-transparent rounded-full blur-2xl",cardPinkBlur:"absolute bottom-0 left-0 w-24 h-24 bg-gradient-to-tr from-[#EC4899]/20 to-transparent rounded-full blur-xl",cardPulse1:"absolute -top-2 -left-2 w-6 h-6 bg-gradient-to-br from-[#3B82F6] to-[#8B5CF6] rounded-full blur-sm opacity-50 animate-pulse",cardPulse2:"absolute -bottom-2 -right-2 w-4 h-4 bg-gradient-to-br from-[#EC4899] to-[#8B5CF6] rounded-full blur-sm opacity-40 animate-pulse",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-br from-[#171727] to-[#12121F] rounded-2xl shadow-xl p-0 overflow-hidden h-full",text:{primary:"text-white font-semibold",secondary:"text-white/95",muted:"text-white/70",accent:"bg-clip-text text-transparent bg-gradient-to-r from-[#3B82F6] via-[#8B5CF6] to-[#EC4899]"},micButton:"relative w-20 h-20 bg-gradient-to-br from-[#3B82F6] to-[#8B5CF6] rounded-full flex items-center justify-center hover:scale-105 transition-all duration-300 mic-glow shadow-2xl group",chatButton:"relative w-20 h-20 bg-gradient-to-br from-[#10B981] to-[#059669] rounded-full flex items-center justify-center hover:scale-105 transition-all duration-300 shadow-2xl group",videoButton:"relative w-20 h-20 bg-gradient-to-br from-[#8B5CF6] to-[#EC4899] rounded-full flex items-center justify-center hover:scale-105 transition-all duration-300 shadow-2xl group",popupTrigger:"bg-gradient-to-br from-[#3B82F6] to-[#8B5CF6] text-white font-medium hover:from-[#2563EB] hover:to-[#7C3AED] focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 focus:ring-offset-gray-900 shadow-xl",promptSlider:"absolute w-full py-3 px-2 bg-[#1E1E2E] rounded-xl text-center text-gray-200 text-sm transition-opacity duration-700 ease-in-out border border-gray-700",statusIndicator:"w-2 h-2 bg-[#10B981] rounded-full animate-pulse",pulseRings:{ring1:"w-32 h-32 rounded-full border-2 border-[#3B82F6]/40 pulse-ring",ring2:"absolute w-28 h-28 rounded-full border-2 border-[#8B5CF6]/30 pulse-ring",ring3:"absolute w-24 h-24 rounded-full border-2 border-[#EC4899]/20 pulse-ring"},controlBar:"border border-border rounded-3xl py-4 flex flex-col justify-end h-full bg-[#1E1E2E] shadow-2xl",chatInput:{container:"bg-[#1E1E2E] border-gray-700",textarea:"bg-[#1E1E2E] border-none text-white placeholder-gray-400",sendButton:"bg-[#3B82F6] hover:bg-[#2563EB] disabled:bg-gray-600 disabled:opacity-50 text-white",attachButton:"text-gray-400 hover:text-gray-300 hover:bg-gray-700",endButton:"bg-red-900/20 hover:bg-red-800/30 text-red-400 border-red-800"},chatMessage:{own:"bg-[#1E1E2E]/80 text-white",other:"bg-[#1E1E2E] text-white border border-gray-700"},chatHeader:{container:"bg-[#1E1E2E] border-gray-700",backButton:"text-gray-400 hover:text-white hover:bg-gray-700"},spinner:"w-10 h-10 animate-spin text-blue-400 mb-2",suggestedResponse:{container:"bg-[#221f3f] text-white border-none"},video:{container:"bg-gradient-to-br from-[#171727] to-[#12121F] text-white",header:"border-gray-700 bg-[#1E1E2E]/80",headerButton:"bg-[#1E1E2E] hover:bg-gray-700 text-gray-300",statusDot:"bg-[#10B981] animate-pulse",controlsBackground:"bg-[#1E1E2E]/90 backdrop-blur-sm border-t border-gray-700",controlEnabled:"bg-[#3B82F6] hover:bg-[#2563EB] text-white",controlDisabled:"bg-gray-700 hover:bg-gray-600 text-gray-300",endCall:"bg-red-600 hover:bg-red-700 text-white",tile:"bg-[#1E1E2E] border border-gray-700 shadow-xl",placeholder:"bg-[#1E1E2E] text-gray-300",avatar:"bg-gray-700 text-gray-300",nameOverlay:"bg-black/70 text-white",mutedIndicator:"bg-red-600/80 text-white"}},Lu={dark:ww,light:Ew,vox:Sw,midnight:kw,levish:Cw};function Pt(e){return Lu[e]||Lu.vox}function Fu({timeout:e}){const[t,n]=N.useState(100),r=N.useRef(null),i=N.useRef(null);return N.useEffect(()=>{if(!e||e<=0)return;n(100),i.current=Date.now();const o=()=>{if(!e||i.current===null)return;const s=Date.now()-i.current,a=Math.max(0,100-s/e*100);n(a),a>0&&(r.current=requestAnimationFrame(o))};return r.current=requestAnimationFrame(o),()=>{r.current&&cancelAnimationFrame(r.current)}},[e]),!e||e<=0?null:h.jsx("div",{className:"w-full h-1 relative top-1 rounded-t-4xl bg-gray-700 overflow-hidden",children:h.jsx(Me.div,{className:"h-1 rounded-t-4xl dark:bg-white bg-blue-200 ",initial:{width:"100%"},animate:{width:`${Math.max(t,2)}%`},transition:{duration:.1,ease:"linear"},style:{minWidth:"2%"}})})}function fi({interaction:e,theme:t,onDismiss:n,client:r,addLocalMessage:i}){var a;if(!e||!e.isVisible||!e.component)return null;const[o]=D.useState(()=>Date.now()),s=()=>e.component?D.createElement(e.component,{handler:e.handler||void 0,timeout:e.timeout,loadData:async c=>{console.log("InteractiveComponent: Loading data:",c)},presentationMode:e.presentationMode,data:e.data,client:r,addLocalMessage:i}):h.jsx("div",{className:"p-4 text-red-500",children:"Component not found"});switch(e.presentationMode){case"fullscreen":return h.jsx(Tr,{children:h.jsxs(Me.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"fixed inset-0 z-[9999] bg-black",children:[h.jsxs("div",{className:"flex flex-col",children:[h.jsx(Fu,{timeout:e.timeout}),h.jsxs("div",{className:"flex items-center justify-between p-4 bg-black/80 text-white border-b border-gray-700",children:[h.jsx("h3",{className:"text-lg font-semibold",children:e.methodName.replace(/_/g," ").replace(/\b\w/g,l=>l.toUpperCase())}),h.jsx("button",{onClick:n||((a=e.handler)==null?void 0:a.dismissView),className:"p-2 rounded-full bg-white/20 hover:bg-white/30 text-white transition-colors",children:h.jsx(ot.X,{className:"w-5 h-5"})})]})]}),h.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:s()})]})});case"embedded":default:return h.jsx(Tr,{children:h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},className:"w-fit rounded-lg ",children:h.jsxs("div",{children:[h.jsx(Fu,{timeout:e.timeout}),s()]})})})}}function hi({duration:e,theme:t="vox",onTimerExpired:n,className:r="",showIcon:i=!0}){const[o,s]=N.useState(e),[a,l]=N.useState(!1);N.useEffect(()=>{if(o<=0){l(!0),n==null||n();return}const u=setInterval(()=>{s(d=>{const f=d-1;return f<=0?(l(!0),n==null||n(),0):f})},1e3);return()=>clearInterval(u)},[o,n]),N.useEffect(()=>{s(e),l(!1)},[e]);const c=()=>a?"text-red-500":o<=60?"text-orange-500":o<=300?"text-yellow-500":t==="dark"?"text-gray-300":"text-gray-600";return h.jsxs("div",{className:`flex items-center gap-1 text-sm ${c()} ${r}`,children:[i&&h.jsx(ot.Clock,{className:"w-4 h-4"}),h.jsx("span",{className:"font-mono",children:dp(o)}),a&&h.jsx("span",{className:"text-xs ml-1 text-red-500",children:"(Expired)"})]})}function Do({modality:e,theme:t,disabled:n=!1,showMicrophone:r=!1,microphoneEnabled:i=!0,microphoneLoading:o=!1,onToggleMicrophone:s,showCamera:a=!1,cameraEnabled:l=!0,cameraLoading:c=!1,onToggleCamera:u,showScreenShare:d=!1,screenShareEnabled:f=!1,screenShareLoading:p=!1,onToggleScreenShare:m,showChatToggle:g=!1,chatOpen:v=!1,onToggleChat:y,showTextInput:E=!1,textInputPlaceholder:w="Type a message...",onSendText:_,onSendAttachments:C,supportsAttachments:T=!1,showEndCall:R=!0,onEndCall:A}){var V;const I=Pt(t),[b,M]=N.useState(""),O=N.useRef(null),L=()=>{const x=b.trim();x&&_&&(_(x),M(""))},j=x=>{x.key==="Enter"&&!x.shiftKey&&(x.preventDefault(),L())},W=x=>{const z=Array.from(x.target.files||[]);z.length>0&&C&&C(z),O.current&&(O.current.value="")},oe=Be("flex items-center gap-3 px-3 py-2 w-full backdrop-blur-xl ",E?"justify-between":"justify-center",t==="light"?"bg-white/95 border-gray-200":""),te=(x,z)=>{var G,k,K;return z==="end-call"?Be("p-3 rounded-full transition-all duration-200",((G=I.video)==null?void 0:G.endCall)||"bg-red-500 text-white hover:bg-red-600",n?"opacity-50 cursor-not-allowed":"hover:scale-105"):Be("p-3 rounded-full transition-all duration-200",x?((k=I.video)==null?void 0:k.controlEnabled)||"bg-green-500 text-white":((K=I.video)==null?void 0:K.controlDisabled)||"bg-gray-500 text-white",n?"opacity-50 cursor-not-allowed":"hover:scale-105")},B=()=>h.jsx("div",{className:"w-5 h-5 animate-spin rounded-full border-2 border-current border-t-transparent"});return h.jsxs("div",{className:oe,children:[E&&h.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[T&&C&&h.jsxs(h.Fragment,{children:[h.jsx("button",{onClick:()=>{var x;return(x=O.current)==null?void 0:x.click()},disabled:n,className:Be("p-2 rounded-full transition-all duration-200",t==="light"?"hover:bg-gray-100":"hover:bg-gray-800",n&&"opacity-50 cursor-not-allowed"),title:"Attach files",children:h.jsx(ot.Paperclip,{className:"w-5 h-5"})}),h.jsx("input",{ref:O,type:"file",multiple:!0,accept:"image/*",onChange:W,className:"hidden"})]}),h.jsx("input",{type:"text",value:b,onChange:x=>M(x.target.value),onKeyDown:j,disabled:n,placeholder:w,className:Be("flex-1 px-4 py-2 rounded-full border outline-none transition-all",t==="light"?"bg-gray-100 border-gray-300 focus:border-blue-500 text-gray-900":"bg-gray-800 border-gray-700 focus:border-blue-400 text-white",n&&"opacity-50 cursor-not-allowed")}),h.jsx("button",{onClick:L,disabled:n||!b.trim(),className:Be("p-2 rounded-full transition-all duration-200",b.trim()?((V=I.video)==null?void 0:V.controlEnabled)||"bg-blue-500 text-white hover:bg-blue-600":t==="light"?"bg-gray-200 text-gray-400":"bg-gray-700 text-gray-500",n&&"opacity-50 cursor-not-allowed",b.trim()&&!n&&"hover:scale-105"),title:"Send message",children:h.jsx(ot.SendHorizontal,{className:"w-5 h-5"})})]}),!E&&h.jsxs(h.Fragment,{children:[r&&s&&h.jsx("button",{onClick:s,disabled:n||o,className:te(i),title:i?"Mute microphone":"Unmute microphone",children:o?h.jsx(B,{}):i?h.jsx(ot.Mic,{className:"w-5 h-5"}):h.jsx(ot.MicOff,{className:"w-5 h-5"})}),a&&u&&h.jsx("button",{onClick:u,disabled:n||c,className:te(l),title:l?"Turn off camera":"Turn on camera",children:c?h.jsx(B,{}):l?h.jsx(ot.Camera,{className:"w-5 h-5"}):h.jsx(ot.CameraOff,{className:"w-5 h-5"})}),d&&m&&h.jsx("button",{onClick:m,disabled:n||p,className:te(f),title:f?"Stop screen share":"Share screen",children:p?h.jsx(B,{}):h.jsx(ot.Monitor,{className:"w-5 h-5"})}),g&&y&&h.jsx("button",{onClick:y,disabled:n,className:te(v),title:e==="voice"?v?"Hide transcription":"Show transcription":v?"Hide chat":"Show chat",children:h.jsx(ot.MessageCircle,{className:"w-5 h-5"})})]}),R&&A&&h.jsx("button",{onClick:A,disabled:n,className:te(!1,"end-call"),title:"End call",children:h.jsx(ot.PhoneOff,{className:"w-5 h-5"})})]})}Do.displayName="UnifiedControlBar";const _w=({logLevel:e}={})=>{const t=Rt.useRoomContext();D.useEffect(()=>(le.setLogLevel(e??"debug"),window.__lk_room=t,()=>{window.__lk_room=void 0}),[t,e])},hp=D.forwardRef((e,t)=>{const{alt:n,color:r="currentColor",size:i="1em",weight:o="regular",mirrored:s=!1,children:a,weights:l,...c}=e;return D.createElement("svg",{ref:t,xmlns:"http://www.w3.org/2000/svg",width:i,height:i,fill:r,viewBox:"0 0 256 256",transform:s?"scale(-1, 1)":void 0,...c},!!n&&D.createElement("title",null,n),a,l.get(o))});hp.displayName="SSRBase";const Tw=new Map([["bold",D.createElement(D.Fragment,null,D.createElement("path",{d:"M140,32V64a12,12,0,0,1-24,0V32a12,12,0,0,1,24,0Zm33.25,62.75a12,12,0,0,0,8.49-3.52L204.37,68.6a12,12,0,0,0-17-17L164.77,74.26a12,12,0,0,0,8.48,20.49ZM224,116H192a12,12,0,0,0,0,24h32a12,12,0,0,0,0-24Zm-42.26,48.77a12,12,0,1,0-17,17l22.63,22.63a12,12,0,0,0,17-17ZM128,180a12,12,0,0,0-12,12v32a12,12,0,0,0,24,0V192A12,12,0,0,0,128,180ZM74.26,164.77,51.63,187.4a12,12,0,0,0,17,17l22.63-22.63a12,12,0,1,0-17-17ZM76,128a12,12,0,0,0-12-12H32a12,12,0,0,0,0,24H64A12,12,0,0,0,76,128ZM68.6,51.63a12,12,0,1,0-17,17L74.26,91.23a12,12,0,0,0,17-17Z"}))],["duotone",D.createElement(D.Fragment,null,D.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),D.createElement("path",{d:"M136,32V64a8,8,0,0,1-16,0V32a8,8,0,0,1,16,0Zm37.25,58.75a8,8,0,0,0,5.66-2.35l22.63-22.62a8,8,0,0,0-11.32-11.32L167.6,77.09a8,8,0,0,0,5.65,13.66ZM224,120H192a8,8,0,0,0,0,16h32a8,8,0,0,0,0-16Zm-45.09,47.6a8,8,0,0,0-11.31,11.31l22.62,22.63a8,8,0,0,0,11.32-11.32ZM128,184a8,8,0,0,0-8,8v32a8,8,0,0,0,16,0V192A8,8,0,0,0,128,184ZM77.09,167.6,54.46,190.22a8,8,0,0,0,11.32,11.32L88.4,178.91A8,8,0,0,0,77.09,167.6ZM72,128a8,8,0,0,0-8-8H32a8,8,0,0,0,0,16H64A8,8,0,0,0,72,128ZM65.78,54.46A8,8,0,0,0,54.46,65.78L77.09,88.4A8,8,0,0,0,88.4,77.09Z"}))],["fill",D.createElement(D.Fragment,null,D.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm33.94,58.75,17-17a8,8,0,0,1,11.32,11.32l-17,17a8,8,0,0,1-11.31-11.31ZM48,136a8,8,0,0,1,0-16H72a8,8,0,0,1,0,16Zm46.06,37.25-17,17a8,8,0,0,1-11.32-11.32l17-17a8,8,0,0,1,11.31,11.31Zm0-79.19a8,8,0,0,1-11.31,0l-17-17A8,8,0,0,1,77.09,65.77l17,17A8,8,0,0,1,94.06,94.06ZM136,208a8,8,0,0,1-16,0V184a8,8,0,0,1,16,0Zm0-136a8,8,0,0,1-16,0V48a8,8,0,0,1,16,0Zm54.23,118.23a8,8,0,0,1-11.32,0l-17-17a8,8,0,0,1,11.31-11.31l17,17A8,8,0,0,1,190.23,190.23ZM208,136H184a8,8,0,0,1,0-16h24a8,8,0,0,1,0,16Z"}))],["light",D.createElement(D.Fragment,null,D.createElement("path",{d:"M134,32V64a6,6,0,0,1-12,0V32a6,6,0,0,1,12,0Zm39.25,56.75A6,6,0,0,0,177.5,87l22.62-22.63a6,6,0,0,0-8.48-8.48L169,78.5a6,6,0,0,0,4.24,10.25ZM224,122H192a6,6,0,0,0,0,12h32a6,6,0,0,0,0-12Zm-46.5,47A6,6,0,0,0,169,177.5l22.63,22.62a6,6,0,0,0,8.48-8.48ZM128,186a6,6,0,0,0-6,6v32a6,6,0,0,0,12,0V192A6,6,0,0,0,128,186ZM78.5,169,55.88,191.64a6,6,0,1,0,8.48,8.48L87,177.5A6,6,0,1,0,78.5,169ZM70,128a6,6,0,0,0-6-6H32a6,6,0,0,0,0,12H64A6,6,0,0,0,70,128ZM64.36,55.88a6,6,0,0,0-8.48,8.48L78.5,87A6,6,0,1,0,87,78.5Z"}))],["regular",D.createElement(D.Fragment,null,D.createElement("path",{d:"M136,32V64a8,8,0,0,1-16,0V32a8,8,0,0,1,16,0Zm37.25,58.75a8,8,0,0,0,5.66-2.35l22.63-22.62a8,8,0,0,0-11.32-11.32L167.6,77.09a8,8,0,0,0,5.65,13.66ZM224,120H192a8,8,0,0,0,0,16h32a8,8,0,0,0,0-16Zm-45.09,47.6a8,8,0,0,0-11.31,11.31l22.62,22.63a8,8,0,0,0,11.32-11.32ZM128,184a8,8,0,0,0-8,8v32a8,8,0,0,0,16,0V192A8,8,0,0,0,128,184ZM77.09,167.6,54.46,190.22a8,8,0,0,0,11.32,11.32L88.4,178.91A8,8,0,0,0,77.09,167.6ZM72,128a8,8,0,0,0-8-8H32a8,8,0,0,0,0,16H64A8,8,0,0,0,72,128ZM65.78,54.46A8,8,0,0,0,54.46,65.78L77.09,88.4A8,8,0,0,0,88.4,77.09Z"}))],["thin",D.createElement(D.Fragment,null,D.createElement("path",{d:"M132,32V64a4,4,0,0,1-8,0V32a4,4,0,0,1,8,0Zm41.25,54.75a4,4,0,0,0,2.83-1.18L198.71,63a4,4,0,0,0-5.66-5.66L170.43,79.92a4,4,0,0,0,2.82,6.83ZM224,124H192a4,4,0,0,0,0,8h32a4,4,0,0,0,0-8Zm-47.92,46.43a4,4,0,1,0-5.65,5.65l22.62,22.63a4,4,0,0,0,5.66-5.66ZM128,188a4,4,0,0,0-4,4v32a4,4,0,0,0,8,0V192A4,4,0,0,0,128,188ZM79.92,170.43,57.29,193.05A4,4,0,0,0,63,198.71l22.62-22.63a4,4,0,1,0-5.65-5.65ZM68,128a4,4,0,0,0-4-4H32a4,4,0,0,0,0,8H64A4,4,0,0,0,68,128ZM63,57.29A4,4,0,0,0,57.29,63L79.92,85.57a4,4,0,1,0,5.65-5.65Z"}))]]),yo=D.forwardRef((e,t)=>D.createElement(hp,{ref:t,...e,weights:Tw}));yo.displayName="SpinnerIcon";function Nw({text:e,isComplete:t,isRealTimeStream:n=!1,speed:r=50}){const[i,o]=D.useState(""),[s,a]=D.useState(0);return D.useEffect(()=>{if(n){o(e);return}if(t){o(e);return}if(s<e.length){const l=setTimeout(()=>{o(e.slice(0,s+1)),a(s+1)},r);return()=>clearTimeout(l)}},[e,s,t,r,n]),D.useEffect(()=>{n||(a(0),o(""))},[e,n]),h.jsxs("span",{className:"relative",children:[h.jsx("span",{className:"inline-block",children:i}),!t&&h.jsx("span",{className:"inline-flex items-center ml-1",children:[0,1,2].map(l=>h.jsx(Me.span,{className:"w-1.5 h-1.5 bg-current rounded-full mx-0.5",animate:{y:[0,-4,0],opacity:[.4,1,.4],scale:[.8,1,.8]},transition:{duration:.8,repeat:1/0,repeatType:"mirror",delay:l*.2,ease:"easeInOut"}},l))})]})}function Aw(e,t){return e.startsWith("image/")?ot.Image:e.startsWith("video/")?ot.Video:e.startsWith("audio/")?ot.Music:e.includes("zip")||e.includes("rar")||e.includes("archive")?ot.Archive:ot.FileText}function Mw(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],r=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,r)).toFixed(2))+" "+n[r]}function Rw({message:e,theme:t,isOwn:n}){const r=Pt(t),i=e.metadata,o=(i==null?void 0:i.fileName)||"Unknown file",s=(i==null?void 0:i.fileSize)||0,a=(i==null?void 0:i.mimeType)||"application/octet-stream",l=i==null?void 0:i.downloading,c=i==null?void 0:i.uploading,u=(i==null?void 0:i.downloadProgress)||0,d=(i==null?void 0:i.uploadProgress)||0,f=i==null?void 0:i.downloadUrl,p=i==null?void 0:i.file,m=Aw(a),g=l||c,v=l?u:d,y=l?"Downloading...":c?"Uploading...":"Complete",[E,w]=D.useState(null);D.useEffect(()=>{if(f)w(f);else if(p&&a.startsWith("image/")){const R=URL.createObjectURL(p);return w(R),()=>URL.revokeObjectURL(R)}else w(null)},[f,p,a]);const _=()=>{if(f){const R=document.createElement("a");R.href=f,R.download=o,R.click()}},T=a.startsWith("image/")&&E;return h.jsxs("div",{className:"flex flex-col gap-2 max-w-full sm:max-w-sm",children:[T&&h.jsxs("div",{className:"relative rounded-lg overflow-hidden",children:[h.jsx("img",{src:E,alt:o,className:"max-w-full h-auto max-h-48 object-cover rounded-lg cursor-pointer",onClick:_}),h.jsx("div",{className:"absolute inset-0 bg-black/0 hover:bg-black/10 transition-colors duration-200 cursor-pointer"})]}),h.jsxs("div",{className:`
9
+ `),()=>{g.contains(m)&&g.removeChild(m)}},[t]),h.jsx(Y0,{isPresent:t,childRef:o,sizeRef:s,children:D.cloneElement(e,{ref:o})})}const X0=({children:e,initial:t,isPresent:n,onExitComplete:r,custom:i,presenceAffectsLayout:o,mode:s,anchorX:a,root:l})=>{const c=Ga(Q0),u=N.useId();let d=!0,f=N.useMemo(()=>(d=!1,{id:u,initial:t,isPresent:n,custom:i,onExitComplete:p=>{c.set(p,!0);for(const m of c.values())if(!m)return;r&&r()},register:p=>(c.set(p,!1),()=>c.delete(p))}),[n,c,r]);return o&&d&&(f={...f}),N.useMemo(()=>{c.forEach((p,m)=>c.set(m,!1))},[n]),D.useEffect(()=>{!n&&!c.size&&r&&r()},[n]),s==="popLayout"&&(e=h.jsx(Z0,{isPresent:n,anchorX:a,root:l,children:e})),h.jsx(Ao.Provider,{value:f,children:e})};function Q0(){return new Map}function dh(e=!0){const t=N.useContext(Ao);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:r,register:i}=t,o=N.useId();N.useEffect(()=>{if(e)return i(o)},[e]);const s=N.useCallback(()=>e&&r&&r(o),[o,r,e]);return!n&&r?[!1,s]:[!0]}const Li=e=>e.key||"";function jc(e){const t=[];return N.Children.forEach(e,n=>{N.isValidElement(n)&&t.push(n)}),t}const Tr=({children:e,custom:t,initial:n=!0,onExitComplete:r,presenceAffectsLayout:i=!0,mode:o="sync",propagate:s=!1,anchorX:a="left",root:l})=>{const[c,u]=dh(s),d=N.useMemo(()=>jc(e),[e]),f=s&&!c?[]:d.map(Li),p=N.useRef(!0),m=N.useRef(d),g=Ga(()=>new Map),[v,y]=N.useState(d),[E,w]=N.useState(d);vf(()=>{p.current=!1,m.current=d;for(let T=0;T<E.length;T++){const R=Li(E[T]);f.includes(R)?g.delete(R):g.get(R)!==!0&&g.set(R,!1)}},[E,f.length,f.join("-")]);const _=[];if(d!==v){let T=[...d];for(let R=0;R<E.length;R++){const A=E[R],I=Li(A);f.includes(I)||(T.splice(R,0,A),_.push(A))}return o==="wait"&&_.length&&(T=_),w(jc(T)),y(d),null}process.env.NODE_ENV!=="production"&&o==="wait"&&E.length>1&&console.warn(`You're attempting to animate multiple children within AnimatePresence, but its mode is set to "wait". This will lead to odd visual behaviour.`);const{forceRender:C}=N.useContext(Wa);return h.jsx(h.Fragment,{children:E.map(T=>{const R=Li(T),A=s&&!c?!1:d===E||f.includes(R),I=()=>{if(g.has(R))g.set(R,!0);else return;let b=!0;g.forEach(M=>{M||(b=!1)}),b&&(C==null||C(),w(m.current),s&&(u==null||u()),r&&r())};return h.jsx(X0,{isPresent:A,initial:!p.current||n?void 0:!1,custom:t,presenceAffectsLayout:i,mode:o,root:l,onExitComplete:A?void 0:I,anchorX:a,children:T},R)})})},fh=N.createContext({strict:!1}),Bc={animation:["animate","variants","whileHover","whileTap","exit","whileInView","whileFocus","whileDrag"],exit:["exit"],drag:["drag","dragControls"],focus:["whileFocus"],hover:["whileHover","onHoverStart","onHoverEnd"],tap:["whileTap","onTap","onTapStart","onTapCancel"],pan:["onPan","onPanStart","onPanSessionStart","onPanEnd"],inView:["whileInView","onViewportEnter","onViewportLeave"],layout:["layout","layoutId"]},Nr={};for(const e in Bc)Nr[e]={isEnabled:t=>Bc[e].some(n=>!!t[n])};function J0(e){for(const t in e)Nr[t]={...Nr[t],...e[t]}}const ey=new Set(["animate","exit","variants","initial","style","values","variants","transition","transformTemplate","custom","inherit","onBeforeLayoutMeasure","onAnimationStart","onAnimationComplete","onUpdate","onDragStart","onDrag","onDragEnd","onMeasureDragConstraints","onDirectionLock","onDragTransitionEnd","_dragX","_dragY","onHoverStart","onHoverEnd","onViewportEnter","onViewportLeave","globalTapTarget","ignoreStrict","viewport"]);function mo(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||ey.has(e)}let hh=e=>!mo(e);function ty(e){typeof e=="function"&&(hh=t=>t.startsWith("on")?!mo(t):e(t))}try{ty(require("@emotion/is-prop-valid").default)}catch{}function ny(e,t,n){const r={};for(const i in e)i==="values"&&typeof e.values=="object"||(hh(i)||n===!0&&mo(i)||!t&&!mo(i)||e.draggable&&i.startsWith("onDrag"))&&(r[i]=e[i]);return r}const Mo=N.createContext({});function Ro(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function ci(e){return typeof e=="string"||Array.isArray(e)}const ml=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],bl=["initial",...ml];function Io(e){return Ro(e.animate)||bl.some(t=>ci(e[t]))}function ph(e){return!!(Io(e)||e.variants)}function ry(e,t){if(Io(e)){const{initial:n,animate:r}=e;return{initial:n===!1||ci(n)?n:void 0,animate:ci(r)?r:void 0}}return e.inherit!==!1?t:{}}function iy(e){const{initial:t,animate:n}=ry(e,N.useContext(Mo));return N.useMemo(()=>({initial:t,animate:n}),[$c(t),$c(n)])}function $c(e){return Array.isArray(e)?e.join(" "):e}const ui={};function oy(e){for(const t in e)ui[t]=e[t],tl(t)&&(ui[t].isCSSVariable=!0)}function gh(e,{layout:t,layoutId:n}){return Pr.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!ui[e]||e==="opacity")}const sy={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},ay=Or.length;function ly(e,t,n){let r="",i=!0;for(let o=0;o<ay;o++){const s=Or[o],a=e[s];if(a===void 0)continue;let l=!0;if(typeof a=="number"?l=a===(s.startsWith("scale")?1:0):l=parseFloat(a)===0,!l||n){const c=oh(a,fl[s]);if(!l){i=!1;const u=sy[s]||s;r+=`${u}(${c}) `}n&&(t[s]=c)}}return r=r.trim(),n?r=n(t,i?"":r):i&&(r="none"),r}function yl(e,t,n){const{style:r,vars:i,transformOrigin:o}=e;let s=!1,a=!1;for(const l in t){const c=t[l];if(Pr.has(l)){s=!0;continue}else if(tl(l)){i[l]=c;continue}else{const u=oh(c,fl[l]);l.startsWith("origin")?(a=!0,o[l]=u):r[l]=u}}if(t.transform||(s||n?r.transform=ly(t,e.transform,n):r.transform&&(r.transform="none")),a){const{originX:l="50%",originY:c="50%",originZ:u=0}=o;r.transformOrigin=`${l} ${c} ${u}`}}const xl=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function mh(e,t,n){for(const r in t)!_t(t[r])&&!gh(r,n)&&(e[r]=t[r])}function cy({transformTemplate:e},t){return N.useMemo(()=>{const n=xl();return yl(n,t,e),Object.assign({},n.vars,n.style)},[t])}function uy(e,t){const n=e.style||{},r={};return mh(r,n,e),Object.assign(r,cy(e,t)),r}function dy(e,t){const n={},r=uy(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,r.userSelect=r.WebkitUserSelect=r.WebkitTouchCallout="none",r.touchAction=e.drag===!0?"none":`pan-${e.drag==="x"?"y":"x"}`),e.tabIndex===void 0&&(e.onTap||e.onTapStart||e.whileTap)&&(n.tabIndex=0),n.style=r,n}const fy={offset:"stroke-dashoffset",array:"stroke-dasharray"},hy={offset:"strokeDashoffset",array:"strokeDasharray"};function py(e,t,n=1,r=0,i=!0){e.pathLength=1;const o=i?fy:hy;e[o.offset]=_e.transform(-r);const s=_e.transform(t),a=_e.transform(n);e[o.array]=`${s} ${a}`}function bh(e,{attrX:t,attrY:n,attrScale:r,pathLength:i,pathSpacing:o=1,pathOffset:s=0,...a},l,c,u){if(yl(e,a,c),l){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:d,style:f}=e;d.transform&&(f.transform=d.transform,delete d.transform),(f.transform||d.transformOrigin)&&(f.transformOrigin=d.transformOrigin??"50% 50%",delete d.transformOrigin),f.transform&&(f.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete d.transformBox),t!==void 0&&(d.x=t),n!==void 0&&(d.y=n),r!==void 0&&(d.scale=r),i!==void 0&&py(d,i,o,s,!1)}const yh=()=>({...xl(),attrs:{}}),xh=e=>typeof e=="string"&&e.toLowerCase()==="svg";function gy(e,t,n,r){const i=N.useMemo(()=>{const o=yh();return bh(o,t,xh(r),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};mh(o,e.style,e),i.style={...o,...i.style}}return i}const my=["animate","circle","defs","desc","ellipse","g","image","line","filter","marker","mask","metadata","path","pattern","polygon","polyline","rect","stop","switch","symbol","svg","text","tspan","use","view"];function vl(e){return typeof e!="string"||e.includes("-")?!1:!!(my.indexOf(e)>-1||/[A-Z]/u.test(e))}function by(e,t,n,{latestValues:r},i,o=!1){const a=(vl(e)?gy:dy)(t,r,i,e),l=ny(t,typeof e=="string",o),c=e!==N.Fragment?{...l,...a,ref:n}:{},{children:u}=t,d=N.useMemo(()=>_t(u)?u.get():u,[u]);return N.createElement(e,{...c,children:d})}function Vc(e){const t=[{},{}];return e==null||e.values.forEach((n,r)=>{t[0][r]=n.get(),t[1][r]=n.getVelocity()}),t}function wl(e,t,n,r){if(typeof t=="function"){const[i,o]=Vc(r);t=t(n!==void 0?n:e.custom,i,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[i,o]=Vc(r);t=t(n!==void 0?n:e.custom,i,o)}return t}function ro(e){return _t(e)?e.get():e}function yy({scrapeMotionValuesFromProps:e,createRenderState:t},n,r,i){return{latestValues:xy(n,r,i,e),renderState:t()}}function xy(e,t,n,r){const i={},o=r(e,{});for(const f in o)i[f]=ro(o[f]);let{initial:s,animate:a}=e;const l=Io(e),c=ph(e);t&&c&&!l&&e.inherit!==!1&&(s===void 0&&(s=t.initial),a===void 0&&(a=t.animate));let u=n?n.initial===!1:!1;u=u||s===!1;const d=u?a:s;if(d&&typeof d!="boolean"&&!Ro(d)){const f=Array.isArray(d)?d:[d];for(let p=0;p<f.length;p++){const m=wl(e,f[p]);if(m){const{transitionEnd:g,transition:v,...y}=m;for(const E in y){let w=y[E];if(Array.isArray(w)){const _=u?w.length-1:0;w=w[_]}w!==null&&(i[E]=w)}for(const E in g)i[E]=g[E]}}}return i}const vh=e=>(t,n)=>{const r=N.useContext(Mo),i=N.useContext(Ao),o=()=>yy(e,t,r,i);return n?o():Ga(o)};function El(e,t,n){var o;const{style:r}=e,i={};for(const s in r)(_t(r[s])||t.style&&_t(t.style[s])||gh(s,e)||((o=n==null?void 0:n.getValue(s))==null?void 0:o.liveStyle)!==void 0)&&(i[s]=r[s]);return i}const vy=vh({scrapeMotionValuesFromProps:El,createRenderState:xl});function wh(e,t,n){const r=El(e,t,n);for(const i in e)if(_t(e[i])||_t(t[i])){const o=Or.indexOf(i)!==-1?"attr"+i.charAt(0).toUpperCase()+i.substring(1):i;r[o]=e[i]}return r}const wy=vh({scrapeMotionValuesFromProps:wh,createRenderState:yh}),Ey=Symbol.for("motionComponentSymbol");function xr(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function Sy(e,t,n){return N.useCallback(r=>{r&&e.onMount&&e.onMount(r),t&&(r?t.mount(r):t.unmount()),n&&(typeof n=="function"?n(r):xr(n)&&(n.current=r))},[t])}const Sl=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),ky="framerAppearId",Eh="data-"+Sl(ky),Sh=N.createContext({});function Cy(e,t,n,r,i){var g,v;const{visualElement:o}=N.useContext(Mo),s=N.useContext(fh),a=N.useContext(Ao),l=N.useContext(gl).reducedMotion,c=N.useRef(null);r=r||s.renderer,!c.current&&r&&(c.current=r(e,{visualState:t,parent:o,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:l}));const u=c.current,d=N.useContext(Sh);u&&!u.projection&&i&&(u.type==="html"||u.type==="svg")&&_y(c.current,n,i,d);const f=N.useRef(!1);N.useInsertionEffect(()=>{u&&f.current&&u.update(n,a)});const p=n[Eh],m=N.useRef(!!p&&!((g=window.MotionHandoffIsComplete)!=null&&g.call(window,p))&&((v=window.MotionHasOptimisedAnimation)==null?void 0:v.call(window,p)));return vf(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),m.current&&u.animationState&&u.animationState.animateChanges())}),N.useEffect(()=>{u&&(!m.current&&u.animationState&&u.animationState.animateChanges(),m.current&&(queueMicrotask(()=>{var y;(y=window.MotionHandoffMarkAsComplete)==null||y.call(window,p)}),m.current=!1),u.enteringChildren=void 0)}),u}function _y(e,t,n,r){const{layoutId:i,layout:o,drag:s,dragConstraints:a,layoutScroll:l,layoutRoot:c,layoutCrossfade:u}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:kh(e.parent)),e.projection.setOptions({layoutId:i,layout:o,alwaysMeasureLayout:!!s||a&&xr(a),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:r,crossfade:u,layoutScroll:l,layoutRoot:c})}function kh(e){if(e)return e.options.allowProjection!==!1?e.projection:kh(e.parent)}function fs(e,{forwardMotionProps:t=!1}={},n,r){n&&J0(n);const i=vl(e)?wy:vy;function o(a,l){let c;const u={...N.useContext(gl),...a,layoutId:Ty(a)},{isStatic:d}=u,f=iy(a),p=i(a,d);if(!d&&Ka){Ny(u,n);const m=Ay(u);c=m.MeasureLayout,f.visualElement=Cy(e,p,u,r,m.ProjectionNode)}return h.jsxs(Mo.Provider,{value:f,children:[c&&f.visualElement?h.jsx(c,{visualElement:f.visualElement,...u}):null,by(e,a,Sy(p,f.visualElement,l),p,d,t)]})}o.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const s=N.forwardRef(o);return s[Ey]=e,s}function Ty({layoutId:e}){const t=N.useContext(Wa).id;return t&&e!==void 0?t+"-"+e:e}function Ny(e,t){const n=N.useContext(fh).strict;if(process.env.NODE_ENV!=="production"&&t&&n){const r="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";e.ignoreStrict?Rr(!1,r,"lazy-strict-mode"):wn(!1,r,"lazy-strict-mode")}}function Ay(e){const{drag:t,layout:n}=Nr;if(!t&&!n)return{};const r={...t,...n};return{MeasureLayout:t!=null&&t.isEnabled(e)||n!=null&&n.isEnabled(e)?r.MeasureLayout:void 0,ProjectionNode:r.ProjectionNode}}function My(e,t){if(typeof Proxy>"u")return fs;const n=new Map,r=(o,s)=>fs(o,s,e,t),i=(o,s)=>(process.env.NODE_ENV!=="production"&&Qa(!1,"motion() is deprecated. Use motion.create() instead."),r(o,s));return new Proxy(i,{get:(o,s)=>s==="create"?r:(n.has(s)||n.set(s,fs(s,void 0,e,t)),n.get(s))})}function Ch({top:e,left:t,right:n,bottom:r}){return{x:{min:t,max:n},y:{min:e,max:r}}}function Ry({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Iy(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),r=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:r.y,right:r.x}}function hs(e){return e===void 0||e===1}function ma({scale:e,scaleX:t,scaleY:n}){return!hs(e)||!hs(t)||!hs(n)}function Hn(e){return ma(e)||_h(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function _h(e){return zc(e.x)||zc(e.y)}function zc(e){return e&&e!=="0%"}function bo(e,t,n){const r=e-n,i=t*r;return n+i}function Uc(e,t,n,r,i){return i!==void 0&&(e=bo(e,i,r)),bo(e,n,r)+t}function ba(e,t=0,n=1,r,i){e.min=Uc(e.min,t,n,r,i),e.max=Uc(e.max,t,n,r,i)}function Th(e,{x:t,y:n}){ba(e.x,t.translate,t.scale,t.originPoint),ba(e.y,n.translate,n.scale,n.originPoint)}const Hc=.999999999999,Wc=1.0000000000001;function Oy(e,t,n,r=!1){const i=n.length;if(!i)return;t.x=t.y=1;let o,s;for(let a=0;a<i;a++){o=n[a],s=o.projectionDelta;const{visualElement:l}=o.options;l&&l.props.style&&l.props.style.display==="contents"||(r&&o.options.layoutScroll&&o.scroll&&o!==o.root&&wr(e,{x:-o.scroll.offset.x,y:-o.scroll.offset.y}),s&&(t.x*=s.x.scale,t.y*=s.y.scale,Th(e,s)),r&&Hn(o.latestValues)&&wr(e,o.latestValues))}t.x<Wc&&t.x>Hc&&(t.x=1),t.y<Wc&&t.y>Hc&&(t.y=1)}function vr(e,t){e.min=e.min+t,e.max=e.max+t}function Gc(e,t,n,r,i=.5){const o=st(e.min,e.max,i);ba(e,t,n,o,r)}function wr(e,t){Gc(e.x,t.x,t.scaleX,t.scale,t.originX),Gc(e.y,t.y,t.scaleY,t.scale,t.originY)}function Nh(e,t){return Ch(Iy(e.getBoundingClientRect(),t))}function Py(e,t,n){const r=Nh(e,n),{scroll:i}=t;return i&&(vr(r.x,i.offset.x),vr(r.y,i.offset.y)),r}const Kc=()=>({translate:0,scale:1,origin:0,originPoint:0}),Er=()=>({x:Kc(),y:Kc()}),qc=()=>({min:0,max:0}),dt=()=>({x:qc(),y:qc()}),ya={current:null},Ah={current:!1};function Dy(){if(Ah.current=!0,!!Ka)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>ya.current=e.matches;e.addEventListener("change",t),t()}else ya.current=!1}const Ly=new WeakMap;function Fy(e,t,n){for(const r in t){const i=t[r],o=n[r];if(_t(i))e.addValue(r,i);else if(_t(o))e.addValue(r,_r(i,{owner:e}));else if(o!==i)if(e.hasValue(r)){const s=e.getValue(r);s.liveStyle===!0?s.jump(i):s.hasAnimated||s.set(i)}else{const s=e.getStaticValue(r);e.addValue(r,_r(s!==void 0?s:i,{owner:e}))}}for(const r in n)t[r]===void 0&&e.removeValue(r);return t}const Yc=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class jy{scrapeMotionValuesFromProps(t,n,r){return{}}constructor({parent:t,props:n,presenceContext:r,reducedMotionConfig:i,blockInitialAnimation:o,visualState:s},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=ul,this.features={},this.valueSubscriptions=new Map,this.prevMotionValues={},this.events={},this.propEventSubscriptions={},this.notifyUpdate=()=>this.notify("Update",this.latestValues),this.render=()=>{this.current&&(this.triggerBuild(),this.renderInstance(this.current,this.renderState,this.props.style,this.projection))},this.renderScheduledAt=0,this.scheduleRender=()=>{const f=Ft.now();this.renderScheduledAt<f&&(this.renderScheduledAt=f,rt.render(this.render,!1,!0))};const{latestValues:l,renderState:c}=s;this.latestValues=l,this.baseTarget={...l},this.initialValues=n.initial?{...l}:{},this.renderState=c,this.parent=t,this.props=n,this.presenceContext=r,this.depth=t?t.depth+1:0,this.reducedMotionConfig=i,this.options=a,this.blockInitialAnimation=!!o,this.isControllingVariants=Io(n),this.isVariantNode=ph(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:u,...d}=this.scrapeMotionValuesFromProps(n,{},this);for(const f in d){const p=d[f];l[f]!==void 0&&_t(p)&&p.set(l[f])}}mount(t){var n;this.current=t,Ly.set(t,this),this.projection&&!this.projection.instance&&this.projection.mount(t),this.parent&&this.isVariantNode&&!this.isControllingVariants&&(this.removeFromVariantTree=this.parent.addVariantChild(this)),this.values.forEach((r,i)=>this.bindToMotionValue(i,r)),Ah.current||Dy(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:ya.current,process.env.NODE_ENV!=="production"&&Qa(this.shouldReduceMotion!==!0,"You have Reduced Motion enabled on your device. Animations may not appear as expected.","reduced-motion-disabled"),(n=this.parent)==null||n.addChild(this),this.update(this.props,this.presenceContext)}unmount(){var t;this.projection&&this.projection.unmount(),In(this.notifyUpdate),In(this.render),this.valueSubscriptions.forEach(n=>n()),this.valueSubscriptions.clear(),this.removeFromVariantTree&&this.removeFromVariantTree(),(t=this.parent)==null||t.removeChild(this);for(const n in this.events)this.events[n].clear();for(const n in this.features){const r=this.features[n];r&&(r.unmount(),r.isMounted=!1)}this.current=null}addChild(t){this.children.add(t),this.enteringChildren??(this.enteringChildren=new Set),this.enteringChildren.add(t)}removeChild(t){this.children.delete(t),this.enteringChildren&&this.enteringChildren.delete(t)}bindToMotionValue(t,n){this.valueSubscriptions.has(t)&&this.valueSubscriptions.get(t)();const r=Pr.has(t);r&&this.onBindTransform&&this.onBindTransform();const i=n.on("change",s=>{this.latestValues[t]=s,this.props.onUpdate&&rt.preRender(this.notifyUpdate),r&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{i(),o&&o(),n.owner&&n.stop()})}sortNodePosition(t){return!this.current||!this.sortInstanceNodePosition||this.type!==t.type?0:this.sortInstanceNodePosition(this.current,t.current)}updateFeatures(){let t="animation";for(t in Nr){const n=Nr[t];if(!n)continue;const{isEnabled:r,Feature:i}=n;if(!this.features[t]&&i&&r(this.props)&&(this.features[t]=new i(this)),this.features[t]){const o=this.features[t];o.isMounted?o.update():(o.mount(),o.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):dt()}getStaticValue(t){return this.latestValues[t]}setStaticValue(t,n){this.latestValues[t]=n}update(t,n){(t.transformTemplate||this.props.transformTemplate)&&this.scheduleRender(),this.prevProps=this.props,this.props=t,this.prevPresenceContext=this.presenceContext,this.presenceContext=n;for(let r=0;r<Yc.length;r++){const i=Yc[r];this.propEventSubscriptions[i]&&(this.propEventSubscriptions[i](),delete this.propEventSubscriptions[i]);const o="on"+i,s=t[o];s&&(this.propEventSubscriptions[i]=this.on(i,s))}this.prevMotionValues=Fy(this,this.scrapeMotionValuesFromProps(t,this.prevProps,this),this.prevMotionValues),this.handleChildMotionValue&&this.handleChildMotionValue()}getProps(){return this.props}getVariant(t){return this.props.variants?this.props.variants[t]:void 0}getDefaultTransition(){return this.props.transition}getTransformPagePoint(){return this.props.transformPagePoint}getClosestVariantNode(){return this.isVariantNode?this:this.parent?this.parent.getClosestVariantNode():void 0}addVariantChild(t){const n=this.getClosestVariantNode();if(n)return n.variantChildren&&n.variantChildren.add(t),()=>n.variantChildren.delete(t)}addValue(t,n){const r=this.values.get(t);n!==r&&(r&&this.removeValue(t),this.bindToMotionValue(t,n),this.values.set(t,n),this.latestValues[t]=n.get())}removeValue(t){this.values.delete(t);const n=this.valueSubscriptions.get(t);n&&(n(),this.valueSubscriptions.delete(t)),delete this.latestValues[t],this.removeValueFromRenderState(t,this.renderState)}hasValue(t){return this.values.has(t)}getValue(t,n){if(this.props.values&&this.props.values[t])return this.props.values[t];let r=this.values.get(t);return r===void 0&&n!==void 0&&(r=_r(n===null?void 0:n,{owner:this}),this.addValue(t,r)),r}readValue(t,n){let r=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return r!=null&&(typeof r=="string"&&(wf(r)||Sf(r))?r=parseFloat(r):!q0(r)&&On.test(n)&&(r=ih(t,n)),this.setBaseTarget(t,_t(r)?r.get():r)),_t(r)?r.get():r}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var o;const{initial:n}=this.props;let r;if(typeof n=="string"||typeof n=="object"){const s=wl(this.props,n,(o=this.presenceContext)==null?void 0:o.custom);s&&(r=s[t])}if(n&&r!==void 0)return r;const i=this.getBaseTargetFromProps(this.props,t);return i!==void 0&&!_t(i)?i:this.initialValues[t]!==void 0&&r===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new Xa),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){hl.render(this.render)}}class Mh extends jy{constructor(){super(...arguments),this.KeyframeResolver=L0}sortInstanceNodePosition(t,n){return t.compareDocumentPosition(n)&2?1:-1}getBaseTargetFromProps(t,n){return t.style?t.style[n]:void 0}removeValueFromRenderState(t,{vars:n,style:r}){delete n[t],delete r[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;_t(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function Rh(e,{style:t,vars:n},r,i){const o=e.style;let s;for(s in t)o[s]=t[s];i==null||i.applyProjectionStyles(o,r);for(s in n)o.setProperty(s,n[s])}function By(e){return window.getComputedStyle(e)}class $y extends Mh{constructor(){super(...arguments),this.type="html",this.renderInstance=Rh}readValueFromInstance(t,n){var r;if(Pr.has(n))return(r=this.projection)!=null&&r.isProjecting?ca(n):e0(t,n);{const i=By(t),o=(tl(n)?i.getPropertyValue(n):i[n])||0;return typeof o=="string"?o.trim():o}}measureInstanceViewportBox(t,{transformPagePoint:n}){return Nh(t,n)}build(t,n,r){yl(t,n,r.transformTemplate)}scrapeMotionValuesFromProps(t,n,r){return El(t,n,r)}}const Ih=new Set(["baseFrequency","diffuseConstant","kernelMatrix","kernelUnitLength","keySplines","keyTimes","limitingConeAngle","markerHeight","markerWidth","numOctaves","targetX","targetY","surfaceScale","specularConstant","specularExponent","stdDeviation","tableValues","viewBox","gradientTransform","pathLength","startOffset","textLength","lengthAdjust"]);function Vy(e,t,n,r){Rh(e,t,void 0,r);for(const i in t.attrs)e.setAttribute(Ih.has(i)?i:Sl(i),t.attrs[i])}class zy extends Mh{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=dt}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(Pr.has(n)){const r=rh(n);return r&&r.default||0}return n=Ih.has(n)?n:Sl(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,r){return wh(t,n,r)}build(t,n,r){bh(t,n,this.isSVGTag,r.transformTemplate,r.style)}renderInstance(t,n,r,i){Vy(t,n,r,i)}mount(t){this.isSVGTag=xh(t.tagName),super.mount(t)}}const Uy=(e,t)=>vl(e)?new zy(t):new $y(t,{allowProjection:e!==N.Fragment});function Sr(e,t,n){const r=e.getProps();return wl(r,t,n!==void 0?n:r.custom,e)}const xa=e=>Array.isArray(e);function Hy(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,_r(n))}function Wy(e){return xa(e)?e[e.length-1]||0:e}function Gy(e,t){const n=Sr(e,t);let{transitionEnd:r={},transition:i={},...o}=n||{};o={...o,...r};for(const s in o){const a=Wy(o[s]);Hy(e,s,a)}}function Ky(e){return!!(_t(e)&&e.add)}function va(e,t){const n=e.getValue("willChange");if(Ky(n))return n.add(t);if(!n&&En.WillChange){const r=new En.WillChange("auto");e.addValue("willChange",r),r.add(t)}}function Oh(e){return e.props[Eh]}const qy=e=>e!==null;function Yy(e,{repeat:t,repeatType:n="loop"},r){const i=e.filter(qy),o=t&&n!=="loop"&&t%2===1?0:i.length-1;return i[o]}const Zy={type:"spring",stiffness:500,damping:25,restSpeed:10},Xy=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),Qy={type:"keyframes",duration:.8},Jy={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},ex=(e,{keyframes:t})=>t.length>2?Qy:Pr.has(e)?e.startsWith("scale")?Xy(t[1]):Zy:Jy;function tx({when:e,delay:t,delayChildren:n,staggerChildren:r,staggerDirection:i,repeat:o,repeatType:s,repeatDelay:a,from:l,elapsed:c,...u}){return!!Object.keys(u).length}const kl=(e,t,n,r={},i,o)=>s=>{const a=dl(r,e)||{},l=a.delay||r.delay||0;let{elapsed:c=0}=r;c=c-tn(l);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...a,delay:-c,onUpdate:f=>{t.set(f),a.onUpdate&&a.onUpdate(f)},onComplete:()=>{s(),a.onComplete&&a.onComplete()},name:e,motionValue:t,element:o?void 0:i};tx(a)||Object.assign(u,ex(e,u)),u.duration&&(u.duration=tn(u.duration)),u.repeatDelay&&(u.repeatDelay=tn(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let d=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(pa(u),u.delay===0&&(d=!0)),(En.instantAnimations||En.skipAnimations)&&(d=!0,pa(u),u.delay=0),u.allowFlatten=!a.type&&!a.ease,d&&!o&&t.get()!==void 0){const f=Yy(u.keyframes,a);if(f!==void 0){rt.update(()=>{u.onUpdate(f),u.onComplete()});return}}return a.isSync?new cl(u):new S0(u)};function nx({protectedKeys:e,needsAnimating:t},n){const r=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,r}function Ph(e,t,{delay:n=0,transitionOverride:r,type:i}={}){let{transition:o=e.getDefaultTransition(),transitionEnd:s,...a}=t;r&&(o=r);const l=[],c=i&&e.animationState&&e.animationState.getState()[i];for(const u in a){const d=e.getValue(u,e.latestValues[u]??null),f=a[u];if(f===void 0||c&&nx(c,u))continue;const p={delay:n,...dl(o||{},u)},m=d.get();if(m!==void 0&&!d.isAnimating&&!Array.isArray(f)&&f===m&&!p.velocity)continue;let g=!1;if(window.MotionHandoffAnimation){const y=Oh(e);if(y){const E=window.MotionHandoffAnimation(y,u,rt);E!==null&&(p.startTime=E,g=!0)}}va(e,u),d.start(kl(u,d,f,e.shouldReduceMotion&&eh.has(u)?{type:!1}:p,e,g));const v=d.animation;v&&l.push(v)}return s&&Promise.all(l).then(()=>{rt.update(()=>{s&&Gy(e,s)})}),l}function Dh(e,t,n,r=0,i=1){const o=Array.from(e).sort((c,u)=>c.sortNodePosition(u)).indexOf(t),s=e.size,a=(s-1)*r;return typeof n=="function"?n(o,s):i===1?o*r:a-o*r}function wa(e,t,n={}){var l;const r=Sr(e,t,n.type==="exit"?(l=e.presenceContext)==null?void 0:l.custom:void 0);let{transition:i=e.getDefaultTransition()||{}}=r||{};n.transitionOverride&&(i=n.transitionOverride);const o=r?()=>Promise.all(Ph(e,r,n)):()=>Promise.resolve(),s=e.variantChildren&&e.variantChildren.size?(c=0)=>{const{delayChildren:u=0,staggerChildren:d,staggerDirection:f}=i;return rx(e,t,c,u,d,f,n)}:()=>Promise.resolve(),{when:a}=i;if(a){const[c,u]=a==="beforeChildren"?[o,s]:[s,o];return c().then(()=>u())}else return Promise.all([o(),s(n.delay)])}function rx(e,t,n=0,r=0,i=0,o=1,s){const a=[];for(const l of e.variantChildren)l.notify("AnimationStart",t),a.push(wa(l,t,{...s,delay:n+(typeof r=="function"?0:r)+Dh(e.variantChildren,l,r,i,o)}).then(()=>l.notify("AnimationComplete",t)));return Promise.all(a)}function ix(e,t,n={}){e.notify("AnimationStart",t);let r;if(Array.isArray(t)){const i=t.map(o=>wa(e,o,n));r=Promise.all(i)}else if(typeof t=="string")r=wa(e,t,n);else{const i=typeof t=="function"?Sr(e,t,n.custom):t;r=Promise.all(Ph(e,i,n))}return r.then(()=>{e.notify("AnimationComplete",t)})}function Lh(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let r=0;r<n;r++)if(t[r]!==e[r])return!1;return!0}const ox=bl.length;function Fh(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?Fh(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;n<ox;n++){const r=bl[n],i=e.props[r];(ci(i)||i===!1)&&(t[r]=i)}return t}const sx=[...ml].reverse(),ax=ml.length;function lx(e){return t=>Promise.all(t.map(({animation:n,options:r})=>ix(e,n,r)))}function cx(e){let t=lx(e),n=Zc(),r=!0;const i=l=>(c,u)=>{var f;const d=Sr(e,u,l==="exit"?(f=e.presenceContext)==null?void 0:f.custom:void 0);if(d){const{transition:p,transitionEnd:m,...g}=d;c={...c,...g,...m}}return c};function o(l){t=l(e)}function s(l){const{props:c}=e,u=Fh(e.parent)||{},d=[],f=new Set;let p={},m=1/0;for(let v=0;v<ax;v++){const y=sx[v],E=n[y],w=c[y]!==void 0?c[y]:u[y],_=ci(w),C=y===l?E.isActive:null;C===!1&&(m=v);let T=w===u[y]&&w!==c[y]&&_;if(T&&r&&e.manuallyAnimateOnMount&&(T=!1),E.protectedKeys={...p},!E.isActive&&C===null||!w&&!E.prevProp||Ro(w)||typeof w=="boolean")continue;const R=ux(E.prevProp,w);let A=R||y===l&&E.isActive&&!T&&_||v>m&&_,I=!1;const b=Array.isArray(w)?w:[w];let M=b.reduce(i(y),{});C===!1&&(M={});const{prevResolvedValues:O={}}=E,L={...O,...M},j=te=>{A=!0,f.has(te)&&(I=!0,f.delete(te)),E.needsAnimating[te]=!0;const B=e.getValue(te);B&&(B.liveStyle=!1)};for(const te in L){const B=M[te],$=O[te];if(p.hasOwnProperty(te))continue;let x=!1;xa(B)&&xa($)?x=!Lh(B,$):x=B!==$,x?B!=null?j(te):f.add(te):B!==void 0&&f.has(te)?j(te):E.protectedKeys[te]=!0}E.prevProp=w,E.prevResolvedValues=M,E.isActive&&(p={...p,...M}),r&&e.blockInitialAnimation&&(A=!1);const W=T&&R;A&&(!W||I)&&d.push(...b.map(te=>{const B={type:y};if(typeof te=="string"&&r&&!W&&e.manuallyAnimateOnMount&&e.parent){const{parent:$}=e,x=Sr($,te);if($.enteringChildren&&x){const{delayChildren:z}=x.transition||{};B.delay=Dh($.enteringChildren,e,z)}}return{animation:te,options:B}}))}if(f.size){const v={};if(typeof c.initial!="boolean"){const y=Sr(e,Array.isArray(c.initial)?c.initial[0]:c.initial);y&&y.transition&&(v.transition=y.transition)}f.forEach(y=>{const E=e.getBaseTarget(y),w=e.getValue(y);w&&(w.liveStyle=!0),v[y]=E??null}),d.push({animation:v})}let g=!!d.length;return r&&(c.initial===!1||c.initial===c.animate)&&!e.manuallyAnimateOnMount&&(g=!1),r=!1,g?t(d):Promise.resolve()}function a(l,c){var d;if(n[l].isActive===c)return Promise.resolve();(d=e.variantChildren)==null||d.forEach(f=>{var p;return(p=f.animationState)==null?void 0:p.setActive(l,c)}),n[l].isActive=c;const u=s(l);for(const f in n)n[f].protectedKeys={};return u}return{animateChanges:s,setActive:a,setAnimateFunction:o,getState:()=>n,reset:()=>{n=Zc(),r=!0}}}function ux(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!Lh(t,e):!1}function Vn(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Zc(){return{animate:Vn(!0),whileInView:Vn(),whileHover:Vn(),whileTap:Vn(),whileDrag:Vn(),whileFocus:Vn(),exit:Vn()}}class Ln{constructor(t){this.isMounted=!1,this.node=t}update(){}}class dx extends Ln{constructor(t){super(t),t.animationState||(t.animationState=cx(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();Ro(t)&&(this.unmountControls=t.subscribe(this.node))}mount(){this.updateAnimationControlsSubscription()}update(){const{animate:t}=this.node.getProps(),{animate:n}=this.node.prevProps||{};t!==n&&this.updateAnimationControlsSubscription()}unmount(){var t;this.node.animationState.reset(),(t=this.unmountControls)==null||t.call(this)}}let fx=0;class hx extends Ln{constructor(){super(...arguments),this.id=fx++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:r}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===r)return;const i=this.node.animationState.setActive("exit",!t);n&&!t&&i.then(()=>{n(this.id)})}mount(){const{register:t,onExitComplete:n}=this.node.presenceContext||{};n&&n(this.id),t&&(this.unmount=t(this.id))}unmount(){}}const px={animation:{Feature:dx},exit:{Feature:hx}};function di(e,t,n,r={passive:!0}){return e.addEventListener(t,n,r),()=>e.removeEventListener(t,n)}function vi(e){return{point:{x:e.pageX,y:e.pageY}}}const gx=e=>t=>pl(t)&&e(t,vi(t));function Jr(e,t,n,r){return di(e,t,gx(n),r)}const jh=1e-4,mx=1-jh,bx=1+jh,Bh=.01,yx=0-Bh,xx=0+Bh;function Ot(e){return e.max-e.min}function vx(e,t,n){return Math.abs(e-t)<=n}function Xc(e,t,n,r=.5){e.origin=r,e.originPoint=st(t.min,t.max,e.origin),e.scale=Ot(n)/Ot(t),e.translate=st(n.min,n.max,e.origin)-e.originPoint,(e.scale>=mx&&e.scale<=bx||isNaN(e.scale))&&(e.scale=1),(e.translate>=yx&&e.translate<=xx||isNaN(e.translate))&&(e.translate=0)}function ei(e,t,n,r){Xc(e.x,t.x,n.x,r?r.originX:void 0),Xc(e.y,t.y,n.y,r?r.originY:void 0)}function Qc(e,t,n){e.min=n.min+t.min,e.max=e.min+Ot(t)}function wx(e,t,n){Qc(e.x,t.x,n.x),Qc(e.y,t.y,n.y)}function Jc(e,t,n){e.min=t.min-n.min,e.max=e.min+Ot(t)}function ti(e,t,n){Jc(e.x,t.x,n.x),Jc(e.y,t.y,n.y)}function Kt(e){return[e("x"),e("y")]}const $h=({current:e})=>e?e.ownerDocument.defaultView:null,eu=(e,t)=>Math.abs(e-t);function Ex(e,t){const n=eu(e.x,t.x),r=eu(e.y,t.y);return Math.sqrt(n**2+r**2)}class Vh{constructor(t,n,{transformPagePoint:r,contextWindow:i=window,dragSnapToOrigin:o=!1,distanceThreshold:s=3}={}){if(this.startEvent=null,this.lastMoveEvent=null,this.lastMoveEventInfo=null,this.handlers={},this.contextWindow=window,this.updatePoint=()=>{if(!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const f=gs(this.lastMoveEventInfo,this.history),p=this.startEvent!==null,m=Ex(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!p&&!m)return;const{point:g}=f,{timestamp:v}=kt;this.history.push({...g,timestamp:v});const{onStart:y,onMove:E}=this.handlers;p||(y&&y(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),E&&E(this.lastMoveEvent,f)},this.handlePointerMove=(f,p)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=ps(p,this.transformPagePoint),rt.update(this.updatePoint,!0)},this.handlePointerUp=(f,p)=>{this.end();const{onEnd:m,onSessionEnd:g,resumeAnimation:v}=this.handlers;if(this.dragSnapToOrigin&&v&&v(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const y=gs(f.type==="pointercancel"?this.lastMoveEventInfo:ps(p,this.transformPagePoint),this.history);this.startEvent&&m&&m(f,y),g&&g(f,y)},!pl(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=r,this.distanceThreshold=s,this.contextWindow=i||window;const a=vi(t),l=ps(a,this.transformPagePoint),{point:c}=l,{timestamp:u}=kt;this.history=[{...c,timestamp:u}];const{onSessionStart:d}=n;d&&d(t,gs(l,this.history)),this.removeListeners=bi(Jr(this.contextWindow,"pointermove",this.handlePointerMove),Jr(this.contextWindow,"pointerup",this.handlePointerUp),Jr(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),In(this.updatePoint)}}function ps(e,t){return t?{point:t(e.point)}:e}function tu(e,t){return{x:e.x-t.x,y:e.y-t.y}}function gs({point:e},t){return{point:e,delta:tu(e,zh(t)),offset:tu(e,Sx(t)),velocity:kx(t,.1)}}function Sx(e){return e[0]}function zh(e){return e[e.length-1]}function kx(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,r=null;const i=zh(e);for(;n>=0&&(r=e[n],!(i.timestamp-r.timestamp>tn(t)));)n--;if(!r)return{x:0,y:0};const o=un(i.timestamp-r.timestamp);if(o===0)return{x:0,y:0};const s={x:(i.x-r.x)/o,y:(i.y-r.y)/o};return s.x===1/0&&(s.x=0),s.y===1/0&&(s.y=0),s}function Cx(e,{min:t,max:n},r){return t!==void 0&&e<t?e=r?st(t,e,r.min):Math.max(e,t):n!==void 0&&e>n&&(e=r?st(n,e,r.max):Math.min(e,n)),e}function nu(e,t,n){return{min:t!==void 0?e.min+t:void 0,max:n!==void 0?e.max+n-(e.max-e.min):void 0}}function _x(e,{top:t,left:n,bottom:r,right:i}){return{x:nu(e.x,n,i),y:nu(e.y,t,r)}}function ru(e,t){let n=t.min-e.min,r=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,r]=[r,n]),{min:n,max:r}}function Tx(e,t){return{x:ru(e.x,t.x),y:ru(e.y,t.y)}}function Nx(e,t){let n=.5;const r=Ot(e),i=Ot(t);return i>r?n=si(t.min,t.max-r,e.min):r>i&&(n=si(e.min,e.max-i,t.min)),vn(0,1,n)}function Ax(e,t){const n={};return t.min!==void 0&&(n.min=t.min-e.min),t.max!==void 0&&(n.max=t.max-e.min),n}const Ea=.35;function Mx(e=Ea){return e===!1?e=0:e===!0&&(e=Ea),{x:iu(e,"left","right"),y:iu(e,"top","bottom")}}function iu(e,t,n){return{min:ou(e,t),max:ou(e,n)}}function ou(e,t){return typeof e=="number"?e:e[t]||0}const Rx=new WeakMap;class Ix{constructor(t){this.openDragLock=null,this.isDragging=!1,this.currentDirection=null,this.originPoint={x:0,y:0},this.constraints=!1,this.hasMutatedConstraints=!1,this.elastic=dt(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:r}={}){const{presenceContext:i}=this.visualElement;if(i&&i.isPresent===!1)return;const o=d=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(vi(d).point)},s=(d,f)=>{const{drag:p,dragPropagation:m,onDragStart:g}=this.getProps();if(p&&!m&&(this.openDragLock&&this.openDragLock(),this.openDragLock=$0(p),!this.openDragLock))return;this.latestPointerEvent=d,this.latestPanInfo=f,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),Kt(y=>{let E=this.getAxisMotionValue(y).get()||0;if(dn.test(E)){const{projection:w}=this.visualElement;if(w&&w.layout){const _=w.layout.layoutBox[y];_&&(E=Ot(_)*(parseFloat(E)/100))}}this.originPoint[y]=E}),g&&rt.postRender(()=>g(d,f)),va(this.visualElement,"transform");const{animationState:v}=this.visualElement;v&&v.setActive("whileDrag",!0)},a=(d,f)=>{this.latestPointerEvent=d,this.latestPanInfo=f;const{dragPropagation:p,dragDirectionLock:m,onDirectionLock:g,onDrag:v}=this.getProps();if(!p&&!this.openDragLock)return;const{offset:y}=f;if(m&&this.currentDirection===null){this.currentDirection=Ox(y),this.currentDirection!==null&&g&&g(this.currentDirection);return}this.updateAxis("x",f.point,y),this.updateAxis("y",f.point,y),this.visualElement.render(),v&&v(d,f)},l=(d,f)=>{this.latestPointerEvent=d,this.latestPanInfo=f,this.stop(d,f),this.latestPointerEvent=null,this.latestPanInfo=null},c=()=>Kt(d=>{var f;return this.getAnimationState(d)==="paused"&&((f=this.getAxisMotionValue(d).animation)==null?void 0:f.play())}),{dragSnapToOrigin:u}=this.getProps();this.panSession=new Vh(t,{onSessionStart:o,onStart:s,onMove:a,onSessionEnd:l,resumeAnimation:c},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:r,contextWindow:$h(this.visualElement)})}stop(t,n){const r=t||this.latestPointerEvent,i=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!i||!r)return;const{velocity:s}=i;this.startAnimation(s);const{onDragEnd:a}=this.getProps();a&&rt.postRender(()=>a(r,i))}cancel(){this.isDragging=!1;const{projection:t,animationState:n}=this.visualElement;t&&(t.isAnimationBlocked=!1),this.panSession&&this.panSession.end(),this.panSession=void 0;const{dragPropagation:r}=this.getProps();!r&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(t,n,r){const{drag:i}=this.getProps();if(!r||!Fi(t,i,this.currentDirection))return;const o=this.getAxisMotionValue(t);let s=this.originPoint[t]+r[t];this.constraints&&this.constraints[t]&&(s=Cx(s,this.constraints[t],this.elastic[t])),o.set(s)}resolveConstraints(){var o;const{dragConstraints:t,dragElastic:n}=this.getProps(),r=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(o=this.visualElement.projection)==null?void 0:o.layout,i=this.constraints;t&&xr(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&r?this.constraints=_x(r.layoutBox,t):this.constraints=!1,this.elastic=Mx(n),i!==this.constraints&&r&&this.constraints&&!this.hasMutatedConstraints&&Kt(s=>{this.constraints!==!1&&this.getAxisMotionValue(s)&&(this.constraints[s]=Ax(r.layoutBox[s],this.constraints[s]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!xr(t))return!1;const r=t.current;wn(r!==null,"If `dragConstraints` is set as a React ref, that ref must be passed to another component's `ref` prop.","drag-constraints-ref");const{projection:i}=this.visualElement;if(!i||!i.layout)return!1;const o=Py(r,i.root,this.visualElement.getTransformPagePoint());let s=Tx(i.layout.layoutBox,o);if(n){const a=n(Ry(s));this.hasMutatedConstraints=!!a,a&&(s=Ch(a))}return s}startAnimation(t){const{drag:n,dragMomentum:r,dragElastic:i,dragTransition:o,dragSnapToOrigin:s,onDragTransitionEnd:a}=this.getProps(),l=this.constraints||{},c=Kt(u=>{if(!Fi(u,n,this.currentDirection))return;let d=l&&l[u]||{};s&&(d={min:0,max:0});const f=i?200:1e6,p=i?40:1e7,m={type:"inertia",velocity:r?t[u]:0,bounceStiffness:f,bounceDamping:p,timeConstant:750,restDelta:1,restSpeed:10,...o,...d};return this.startAxisValueAnimation(u,m)});return Promise.all(c).then(a)}startAxisValueAnimation(t,n){const r=this.getAxisMotionValue(t);return va(this.visualElement,t),r.start(kl(t,r,0,n,this.visualElement,!1))}stopAnimation(){Kt(t=>this.getAxisMotionValue(t).stop())}pauseAnimation(){Kt(t=>{var n;return(n=this.getAxisMotionValue(t).animation)==null?void 0:n.pause()})}getAnimationState(t){var n;return(n=this.getAxisMotionValue(t).animation)==null?void 0:n.state}getAxisMotionValue(t){const n=`_drag${t.toUpperCase()}`,r=this.visualElement.getProps(),i=r[n];return i||this.visualElement.getValue(t,(r.initial?r.initial[t]:void 0)||0)}snapToCursor(t){Kt(n=>{const{drag:r}=this.getProps();if(!Fi(n,r,this.currentDirection))return;const{projection:i}=this.visualElement,o=this.getAxisMotionValue(n);if(i&&i.layout){const{min:s,max:a}=i.layout.layoutBox[n];o.set(t[n]-st(s,a,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:r}=this.visualElement;if(!xr(n)||!r||!this.constraints)return;this.stopAnimation();const i={x:0,y:0};Kt(s=>{const a=this.getAxisMotionValue(s);if(a&&this.constraints!==!1){const l=a.get();i[s]=Nx({min:l,max:l},this.constraints[s])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",r.root&&r.root.updateScroll(),r.updateLayout(),this.resolveConstraints(),Kt(s=>{if(!Fi(s,t,null))return;const a=this.getAxisMotionValue(s),{min:l,max:c}=this.constraints[s];a.set(st(l,c,i[s]))})}addListeners(){if(!this.visualElement.current)return;Rx.set(this.visualElement,this);const t=this.visualElement.current,n=Jr(t,"pointerdown",l=>{const{drag:c,dragListener:u=!0}=this.getProps();c&&u&&this.start(l)}),r=()=>{const{dragConstraints:l}=this.getProps();xr(l)&&l.current&&(this.constraints=this.resolveRefConstraints())},{projection:i}=this.visualElement,o=i.addEventListener("measure",r);i&&!i.layout&&(i.root&&i.root.updateScroll(),i.updateLayout()),rt.read(r);const s=di(window,"resize",()=>this.scalePositionWithinConstraints()),a=i.addEventListener("didUpdate",({delta:l,hasLayoutChanged:c})=>{this.isDragging&&c&&(Kt(u=>{const d=this.getAxisMotionValue(u);d&&(this.originPoint[u]+=l[u].translate,d.set(d.get()+l[u].translate))}),this.visualElement.render())});return()=>{s(),n(),o(),a&&a()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:r=!1,dragPropagation:i=!1,dragConstraints:o=!1,dragElastic:s=Ea,dragMomentum:a=!0}=t;return{...t,drag:n,dragDirectionLock:r,dragPropagation:i,dragConstraints:o,dragElastic:s,dragMomentum:a}}}function Fi(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function Ox(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class Px extends Ln{constructor(t){super(t),this.removeGroupControls=Zt,this.removeListeners=Zt,this.controls=new Ix(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Zt}unmount(){this.removeGroupControls(),this.removeListeners()}}const su=e=>(t,n)=>{e&&rt.postRender(()=>e(t,n))};class Dx extends Ln{constructor(){super(...arguments),this.removePointerDownListener=Zt}onPointerDown(t){this.session=new Vh(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:$h(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:r,onPanEnd:i}=this.node.getProps();return{onSessionStart:su(t),onStart:su(n),onMove:r,onEnd:(o,s)=>{delete this.session,i&&rt.postRender(()=>i(o,s))}}}mount(){this.removePointerDownListener=Jr(this.node.current,"pointerdown",t=>this.onPointerDown(t))}update(){this.session&&this.session.updateHandlers(this.createPanHandlers())}unmount(){this.removePointerDownListener(),this.session&&this.session.end()}}const io={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function au(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const Vr={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(_e.test(e))e=parseFloat(e);else return e;const n=au(e,t.target.x),r=au(e,t.target.y);return`${n}% ${r}%`}},Lx={correct:(e,{treeScale:t,projectionDelta:n})=>{const r=e,i=On.parse(e);if(i.length>5)return r;const o=On.createTransformer(e),s=typeof i[0]!="number"?1:0,a=n.x.scale*t.x,l=n.y.scale*t.y;i[0+s]/=a,i[1+s]/=l;const c=st(a,l,.5);return typeof i[2+s]=="number"&&(i[2+s]/=c),typeof i[3+s]=="number"&&(i[3+s]/=c),o(i)}};let ms=!1;class Fx extends N.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r,layoutId:i}=this.props,{projection:o}=t;oy(jx),o&&(n.group&&n.group.add(o),r&&r.register&&i&&r.register(o),ms&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),io.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:r,drag:i,isPresent:o}=this.props,{projection:s}=r;return s&&(s.isPresent=o,ms=!0,i||t.layoutDependency!==n||n===void 0||t.isPresent!==o?s.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?s.promote():s.relegate()||rt.postRender(()=>{const a=s.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),hl.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:r}=this.props,{projection:i}=t;ms=!0,i&&(i.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(i),r&&r.deregister&&r.deregister(i))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function Uh(e){const[t,n]=dh(),r=N.useContext(Wa);return h.jsx(Fx,{...e,layoutGroup:r,switchLayoutGroup:N.useContext(Sh),isPresent:t,safeToRemove:n})}const jx={borderRadius:{...Vr,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:Vr,borderTopRightRadius:Vr,borderBottomLeftRadius:Vr,borderBottomRightRadius:Vr,boxShadow:Lx};function Bx(e,t,n){const r=_t(e)?e:_r(e);return r.start(kl("",r,t,n)),r.animation}const $x=(e,t)=>e.depth-t.depth;class Vx{constructor(){this.children=[],this.isDirty=!1}add(t){qa(this.children,t),this.isDirty=!0}remove(t){Ya(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort($x),this.isDirty=!1,this.children.forEach(t)}}function zx(e,t){const n=Ft.now(),r=({timestamp:i})=>{const o=i-n;o>=t&&(In(r),e(o-t))};return rt.setup(r,!0),()=>In(r)}const Hh=["TopLeft","TopRight","BottomLeft","BottomRight"],Ux=Hh.length,lu=e=>typeof e=="string"?parseFloat(e):e,cu=e=>typeof e=="number"||_e.test(e);function Hx(e,t,n,r,i,o){i?(e.opacity=st(0,n.opacity??1,Wx(r)),e.opacityExit=st(t.opacity??1,0,Gx(r))):o&&(e.opacity=st(t.opacity??1,n.opacity??1,r));for(let s=0;s<Ux;s++){const a=`border${Hh[s]}Radius`;let l=uu(t,a),c=uu(n,a);if(l===void 0&&c===void 0)continue;l||(l=0),c||(c=0),l===0||c===0||cu(l)===cu(c)?(e[a]=Math.max(st(lu(l),lu(c),r),0),(dn.test(c)||dn.test(l))&&(e[a]+="%")):e[a]=c}(t.rotate||n.rotate)&&(e.rotate=st(t.rotate||0,n.rotate||0,r))}function uu(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const Wx=Wh(0,.5,Rf),Gx=Wh(.5,.95,Zt);function Wh(e,t,n){return r=>r<e?0:r>t?1:n(si(e,t,r))}function du(e,t){e.min=t.min,e.max=t.max}function Gt(e,t){du(e.x,t.x),du(e.y,t.y)}function fu(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function hu(e,t,n,r,i){return e-=t,e=bo(e,1/n,r),i!==void 0&&(e=bo(e,1/i,r)),e}function Kx(e,t=0,n=1,r=.5,i,o=e,s=e){if(dn.test(t)&&(t=parseFloat(t),t=st(s.min,s.max,t/100)-s.min),typeof t!="number")return;let a=st(o.min,o.max,r);e===o&&(a-=t),e.min=hu(e.min,t,n,a,i),e.max=hu(e.max,t,n,a,i)}function pu(e,t,[n,r,i],o,s){Kx(e,t[n],t[r],t[i],t.scale,o,s)}const qx=["x","scaleX","originX"],Yx=["y","scaleY","originY"];function gu(e,t,n,r){pu(e.x,t,qx,n?n.x:void 0,r?r.x:void 0),pu(e.y,t,Yx,n?n.y:void 0,r?r.y:void 0)}function mu(e){return e.translate===0&&e.scale===1}function Gh(e){return mu(e.x)&&mu(e.y)}function bu(e,t){return e.min===t.min&&e.max===t.max}function Zx(e,t){return bu(e.x,t.x)&&bu(e.y,t.y)}function yu(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function Kh(e,t){return yu(e.x,t.x)&&yu(e.y,t.y)}function xu(e){return Ot(e.x)/Ot(e.y)}function vu(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class Xx{constructor(){this.members=[]}add(t){qa(this.members,t),t.scheduleRender()}remove(t){if(Ya(this.members,t),t===this.prevLead&&(this.prevLead=void 0),t===this.lead){const n=this.members[this.members.length-1];n&&this.promote(n)}}relegate(t){const n=this.members.findIndex(i=>t===i);if(n===0)return!1;let r;for(let i=n;i>=0;i--){const o=this.members[i];if(o.isPresent!==!1){r=o;break}}return r?(this.promote(r),!0):!1}promote(t,n){const r=this.lead;if(t!==r&&(this.prevLead=r,this.lead=t,t.show(),r)){r.instance&&r.scheduleRender(),t.scheduleRender(),t.resumeFrom=r,n&&(t.resumeFrom.preserveOpacity=!0),r.snapshot&&(t.snapshot=r.snapshot,t.snapshot.latestValues=r.animationValues||r.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:i}=t.options;i===!1&&r.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:r}=t;n.onExitComplete&&n.onExitComplete(),r&&r.options.onExitComplete&&r.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function Qx(e,t,n){let r="";const i=e.x.translate/t.x,o=e.y.translate/t.y,s=(n==null?void 0:n.z)||0;if((i||o||s)&&(r=`translate3d(${i}px, ${o}px, ${s}px) `),(t.x!==1||t.y!==1)&&(r+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:c,rotate:u,rotateX:d,rotateY:f,skewX:p,skewY:m}=n;c&&(r=`perspective(${c}px) ${r}`),u&&(r+=`rotate(${u}deg) `),d&&(r+=`rotateX(${d}deg) `),f&&(r+=`rotateY(${f}deg) `),p&&(r+=`skewX(${p}deg) `),m&&(r+=`skewY(${m}deg) `)}const a=e.x.scale*t.x,l=e.y.scale*t.y;return(a!==1||l!==1)&&(r+=`scale(${a}, ${l})`),r||"none"}const bs=["","X","Y","Z"],Jx=1e3;let ev=0;function ys(e,t,n,r){const{latestValues:i}=t;i[e]&&(n[e]=i[e],t.setStaticValue(e,0),r&&(r[e]=0))}function qh(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=Oh(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:i,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",rt,!(i||o))}const{parent:r}=e;r&&!r.hasCheckedOptimisedAppear&&qh(r)}function Yh({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:r,resetTransform:i}){return class{constructor(s={},a=t==null?void 0:t()){this.id=ev++,this.animationId=0,this.animationCommitId=0,this.children=new Set,this.options={},this.isTreeAnimating=!1,this.isAnimationBlocked=!1,this.isLayoutDirty=!1,this.isProjectionDirty=!1,this.isSharedProjectionDirty=!1,this.isTransformDirty=!1,this.updateManuallyBlocked=!1,this.updateBlockedByResize=!1,this.isUpdating=!1,this.isSVG=!1,this.needsReset=!1,this.shouldResetTransform=!1,this.hasCheckedOptimisedAppear=!1,this.treeScale={x:1,y:1},this.eventHandlers=new Map,this.hasTreeAnimated=!1,this.updateScheduled=!1,this.scheduleUpdate=()=>this.update(),this.projectionUpdateScheduled=!1,this.checkUpdateFailed=()=>{this.isUpdating&&(this.isUpdating=!1,this.clearAllSnapshots())},this.updateProjection=()=>{this.projectionUpdateScheduled=!1,this.nodes.forEach(rv),this.nodes.forEach(av),this.nodes.forEach(lv),this.nodes.forEach(iv)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=s,this.root=a?a.root||a:this,this.path=a?[...a.path,a]:[],this.parent=a,this.depth=a?a.depth+1:0;for(let l=0;l<this.path.length;l++)this.path[l].shouldResetTransform=!0;this.root===this&&(this.nodes=new Vx)}addEventListener(s,a){return this.eventHandlers.has(s)||this.eventHandlers.set(s,new Xa),this.eventHandlers.get(s).add(a)}notifyListeners(s,...a){const l=this.eventHandlers.get(s);l&&l.notify(...a)}hasListeners(s){return this.eventHandlers.has(s)}mount(s){if(this.instance)return;this.isSVG=uh(s)&&!G0(s),this.instance=s;const{layoutId:a,layout:l,visualElement:c}=this.options;if(c&&!c.current&&c.mount(s),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(l||a)&&(this.isLayoutDirty=!0),e){let u,d=0;const f=()=>this.root.updateBlockedByResize=!1;rt.read(()=>{d=window.innerWidth}),e(s,()=>{const p=window.innerWidth;p!==d&&(d=p,this.root.updateBlockedByResize=!0,u&&u(),u=zx(f,250),io.hasAnimatedSinceResize&&(io.hasAnimatedSinceResize=!1,this.nodes.forEach(Su)))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&c&&(a||l)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:d,hasRelativeLayoutChanged:f,layout:p})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const m=this.options.transition||c.getDefaultTransition()||hv,{onLayoutAnimationStart:g,onLayoutAnimationComplete:v}=c.getProps(),y=!this.targetLayout||!Kh(this.targetLayout,p),E=!d&&f;if(this.options.layoutRoot||this.resumeFrom||E||d&&(y||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const w={...dl(m,"layout"),onPlay:g,onComplete:v};(c.shouldReduceMotion||this.options.layoutRoot)&&(w.delay=0,w.type=!1),this.startAnimation(w),this.setAnimationOrigin(u,E)}else d||Su(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=p})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const s=this.getStack();s&&s.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),In(this.updateProjection)}blockUpdate(){this.updateManuallyBlocked=!0}unblockUpdate(){this.updateManuallyBlocked=!1}isUpdateBlocked(){return this.updateManuallyBlocked||this.updateBlockedByResize}isTreeAnimationBlocked(){return this.isAnimationBlocked||this.parent&&this.parent.isTreeAnimationBlocked()||!1}startUpdate(){this.isUpdateBlocked()||(this.isUpdating=!0,this.nodes&&this.nodes.forEach(cv),this.animationId++)}getTransformTemplate(){const{visualElement:s}=this.options;return s&&s.getProps().transformTemplate}willUpdate(s=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&qh(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const d=this.path[u];d.shouldResetTransform=!0,d.updateScroll("snapshot"),d.options.layoutRoot&&d.willUpdate(!1)}const{layoutId:a,layout:l}=this.options;if(a===void 0&&!l)return;const c=this.getTransformTemplate();this.prevTransformTemplateValue=c?c(this.latestValues,""):void 0,this.updateSnapshot(),s&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(wu);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(Eu);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(sv),this.nodes.forEach(tv),this.nodes.forEach(nv)):this.nodes.forEach(Eu),this.clearAllSnapshots();const a=Ft.now();kt.delta=vn(0,1e3/60,a-kt.timestamp),kt.timestamp=a,kt.isProcessing=!0,ss.update.process(kt),ss.preRender.process(kt),ss.render.process(kt),kt.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,hl.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(ov),this.sharedNodes.forEach(uv)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,rt.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){rt.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Ot(this.snapshot.measuredBox.x)&&!Ot(this.snapshot.measuredBox.y)&&(this.snapshot=void 0))}updateLayout(){if(!this.instance||(this.updateScroll(),!(this.options.alwaysMeasureLayout&&this.isLead())&&!this.isLayoutDirty))return;if(this.resumeFrom&&!this.resumeFrom.instance)for(let l=0;l<this.path.length;l++)this.path[l].updateScroll();const s=this.layout;this.layout=this.measure(!1),this.layoutCorrected=dt(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:a}=this.options;a&&a.notify("LayoutMeasure",this.layout.layoutBox,s?s.layoutBox:void 0)}updateScroll(s="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===s&&(a=!1),a&&this.instance){const l=r(this.instance);this.scroll={animationId:this.root.animationId,phase:s,isRoot:l,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:l}}}resetTransform(){if(!i)return;const s=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!Gh(this.projectionDelta),l=this.getTransformTemplate(),c=l?l(this.latestValues,""):void 0,u=c!==this.prevTransformTemplateValue;s&&this.instance&&(a||Hn(this.latestValues)||u)&&(i(this.instance,c),this.shouldResetTransform=!1,this.scheduleRender())}measure(s=!0){const a=this.measurePageBox();let l=this.removeElementScroll(a);return s&&(l=this.removeTransform(l)),pv(l),{animationId:this.root.animationId,measuredBox:a,layoutBox:l,latestValues:{},source:this.id}}measurePageBox(){var c;const{visualElement:s}=this.options;if(!s)return dt();const a=s.measureViewportBox();if(!(((c=this.scroll)==null?void 0:c.wasRoot)||this.path.some(gv))){const{scroll:u}=this.root;u&&(vr(a.x,u.offset.x),vr(a.y,u.offset.y))}return a}removeElementScroll(s){var l;const a=dt();if(Gt(a,s),(l=this.scroll)!=null&&l.wasRoot)return a;for(let c=0;c<this.path.length;c++){const u=this.path[c],{scroll:d,options:f}=u;u!==this.root&&d&&f.layoutScroll&&(d.wasRoot&&Gt(a,s),vr(a.x,d.offset.x),vr(a.y,d.offset.y))}return a}applyTransform(s,a=!1){const l=dt();Gt(l,s);for(let c=0;c<this.path.length;c++){const u=this.path[c];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&wr(l,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),Hn(u.latestValues)&&wr(l,u.latestValues)}return Hn(this.latestValues)&&wr(l,this.latestValues),l}removeTransform(s){const a=dt();Gt(a,s);for(let l=0;l<this.path.length;l++){const c=this.path[l];if(!c.instance||!Hn(c.latestValues))continue;ma(c.latestValues)&&c.updateSnapshot();const u=dt(),d=c.measurePageBox();Gt(u,d),gu(a,c.latestValues,c.snapshot?c.snapshot.layoutBox:void 0,u)}return Hn(this.latestValues)&&gu(a,this.latestValues),a}setTargetDelta(s){this.targetDelta=s,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(s){this.options={...this.options,...s,crossfade:s.crossfade!==void 0?s.crossfade:!0}}clearMeasurements(){this.scroll=void 0,this.layout=void 0,this.snapshot=void 0,this.prevTransformTemplateValue=void 0,this.targetDelta=void 0,this.target=void 0,this.isLayoutDirty=!1}forceRelativeParentToResolveTarget(){this.relativeParent&&this.relativeParent.resolvedRelativeTargetAt!==kt.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(s=!1){var f;const a=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=a.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=a.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=a.isSharedProjectionDirty);const l=!!this.resumingFrom||this!==a;if(!(s||l&&this.isSharedProjectionDirty||this.isProjectionDirty||(f=this.parent)!=null&&f.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:d}=this.options;if(!(!this.layout||!(u||d))){if(this.resolvedRelativeTargetAt=kt.timestamp,!this.targetDelta&&!this.relativeTarget){const p=this.getClosestProjectingParent();p&&p.layout&&this.animationProgress!==1?(this.relativeParent=p,this.forceRelativeParentToResolveTarget(),this.relativeTarget=dt(),this.relativeTargetOrigin=dt(),ti(this.relativeTargetOrigin,this.layout.layoutBox,p.layout.layoutBox),Gt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=dt(),this.targetWithTransforms=dt()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),wx(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):Gt(this.target,this.layout.layoutBox),Th(this.target,this.targetDelta)):Gt(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget)){this.attemptToResolveRelativeTarget=!1;const p=this.getClosestProjectingParent();p&&!!p.resumingFrom==!!this.resumingFrom&&!p.options.layoutScroll&&p.target&&this.animationProgress!==1?(this.relativeParent=p,this.forceRelativeParentToResolveTarget(),this.relativeTarget=dt(),this.relativeTargetOrigin=dt(),ti(this.relativeTargetOrigin,this.target,p.target),Gt(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||ma(this.parent.latestValues)||_h(this.parent.latestValues)))return this.parent.isProjecting()?this.parent:this.parent.getClosestProjectingParent()}isProjecting(){return!!((this.relativeTarget||this.targetDelta||this.options.layoutRoot)&&this.layout)}calcProjection(){var m;const s=this.getLead(),a=!!this.resumingFrom||this!==s;let l=!0;if((this.isProjectionDirty||(m=this.parent)!=null&&m.isProjectionDirty)&&(l=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(l=!1),this.resolvedRelativeTargetAt===kt.timestamp&&(l=!1),l)return;const{layout:c,layoutId:u}=this.options;if(this.isTreeAnimating=!!(this.parent&&this.parent.isTreeAnimating||this.currentAnimation||this.pendingAnimation),this.isTreeAnimating||(this.targetDelta=this.relativeTarget=void 0),!this.layout||!(c||u))return;Gt(this.layoutCorrected,this.layout.layoutBox);const d=this.treeScale.x,f=this.treeScale.y;Oy(this.layoutCorrected,this.treeScale,this.path,a),s.layout&&!s.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(s.target=s.layout.layoutBox,s.targetWithTransforms=dt());const{target:p}=s;if(!p){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(fu(this.prevProjectionDelta.x,this.projectionDelta.x),fu(this.prevProjectionDelta.y,this.projectionDelta.y)),ei(this.projectionDelta,this.layoutCorrected,p,this.latestValues),(this.treeScale.x!==d||this.treeScale.y!==f||!vu(this.projectionDelta.x,this.prevProjectionDelta.x)||!vu(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",p))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(s=!0){var a;if((a=this.options.visualElement)==null||a.scheduleRender(),s){const l=this.getStack();l&&l.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Er(),this.projectionDelta=Er(),this.projectionDeltaWithTransform=Er()}setAnimationOrigin(s,a=!1){const l=this.snapshot,c=l?l.latestValues:{},u={...this.latestValues},d=Er();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const f=dt(),p=l?l.source:void 0,m=this.layout?this.layout.source:void 0,g=p!==m,v=this.getStack(),y=!v||v.members.length<=1,E=!!(g&&!y&&this.options.crossfade===!0&&!this.path.some(fv));this.animationProgress=0;let w;this.mixTargetDelta=_=>{const C=_/1e3;ku(d.x,s.x,C),ku(d.y,s.y,C),this.setTargetDelta(d),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(ti(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox),dv(this.relativeTarget,this.relativeTargetOrigin,f,C),w&&Zx(this.relativeTarget,w)&&(this.isProjectionDirty=!1),w||(w=dt()),Gt(w,this.relativeTarget)),g&&(this.animationValues=u,Hx(u,c,this.latestValues,C,E,y)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=C},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(s){var a,l,c;this.notifyListeners("animationStart"),(a=this.currentAnimation)==null||a.stop(),(c=(l=this.resumingFrom)==null?void 0:l.currentAnimation)==null||c.stop(),this.pendingAnimation&&(In(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=rt.update(()=>{io.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=_r(0)),this.currentAnimation=Bx(this.motionValue,[0,1e3],{...s,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),s.onUpdate&&s.onUpdate(u)},onStop:()=>{},onComplete:()=>{s.onComplete&&s.onComplete(),this.completeAnimation()}}),this.resumingFrom&&(this.resumingFrom.currentAnimation=this.currentAnimation),this.pendingAnimation=void 0})}completeAnimation(){this.resumingFrom&&(this.resumingFrom.currentAnimation=void 0,this.resumingFrom.preserveOpacity=void 0);const s=this.getStack();s&&s.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Jx),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const s=this.getLead();let{targetWithTransforms:a,target:l,layout:c,latestValues:u}=s;if(!(!a||!l||!c)){if(this!==s&&this.layout&&c&&Zh(this.options.animationType,this.layout.layoutBox,c.layoutBox)){l=this.target||dt();const d=Ot(this.layout.layoutBox.x);l.x.min=s.target.x.min,l.x.max=l.x.min+d;const f=Ot(this.layout.layoutBox.y);l.y.min=s.target.y.min,l.y.max=l.y.min+f}Gt(a,l),wr(a,u),ei(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(s,a){this.sharedNodes.has(s)||this.sharedNodes.set(s,new Xx),this.sharedNodes.get(s).add(a);const c=a.options.initialPromotionConfig;a.promote({transition:c?c.transition:void 0,preserveFollowOpacity:c&&c.shouldPreserveFollowOpacity?c.shouldPreserveFollowOpacity(a):void 0})}isLead(){const s=this.getStack();return s?s.lead===this:!0}getLead(){var a;const{layoutId:s}=this.options;return s?((a=this.getStack())==null?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:s}=this.options;return s?(a=this.getStack())==null?void 0:a.prevLead:void 0}getStack(){const{layoutId:s}=this.options;if(s)return this.root.sharedNodes.get(s)}promote({needsReset:s,transition:a,preserveFollowOpacity:l}={}){const c=this.getStack();c&&c.promote(this,l),s&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const s=this.getStack();return s?s.relegate(this):!1}resetSkewAndRotation(){const{visualElement:s}=this.options;if(!s)return;let a=!1;const{latestValues:l}=s;if((l.z||l.rotate||l.rotateX||l.rotateY||l.rotateZ||l.skewX||l.skewY)&&(a=!0),!a)return;const c={};l.z&&ys("z",s,c,this.animationValues);for(let u=0;u<bs.length;u++)ys(`rotate${bs[u]}`,s,c,this.animationValues),ys(`skew${bs[u]}`,s,c,this.animationValues);s.render();for(const u in c)s.setStaticValue(u,c[u]),this.animationValues&&(this.animationValues[u]=c[u]);s.scheduleRender()}applyProjectionStyles(s,a){if(!this.instance||this.isSVG)return;if(!this.isVisible){s.visibility="hidden";return}const l=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,s.visibility="",s.opacity="",s.pointerEvents=ro(a==null?void 0:a.pointerEvents)||"",s.transform=l?l(this.latestValues,""):"none";return}const c=this.getLead();if(!this.projectionDelta||!this.layout||!c.target){this.options.layoutId&&(s.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,s.pointerEvents=ro(a==null?void 0:a.pointerEvents)||""),this.hasProjected&&!Hn(this.latestValues)&&(s.transform=l?l({},""):"none",this.hasProjected=!1);return}s.visibility="";const u=c.animationValues||c.latestValues;this.applyTransformsToTarget();let d=Qx(this.projectionDeltaWithTransform,this.treeScale,u);l&&(d=l(u,d)),s.transform=d;const{x:f,y:p}=this.projectionDelta;s.transformOrigin=`${f.origin*100}% ${p.origin*100}% 0`,c.animationValues?s.opacity=c===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:s.opacity=c===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const m in ui){if(u[m]===void 0)continue;const{correct:g,applyTo:v,isCSSVariable:y}=ui[m],E=d==="none"?u[m]:g(u[m],c);if(v){const w=v.length;for(let _=0;_<w;_++)s[v[_]]=E}else y?this.options.visualElement.renderState.vars[m]=E:s[m]=E}this.options.layoutId&&(s.pointerEvents=c===this?ro(a==null?void 0:a.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(s=>{var a;return(a=s.currentAnimation)==null?void 0:a.stop()}),this.root.nodes.forEach(wu),this.root.sharedNodes.clear()}}}function tv(e){e.updateLayout()}function nv(e){var n;const t=((n=e.resumeFrom)==null?void 0:n.snapshot)||e.snapshot;if(e.isLead()&&e.layout&&t&&e.hasListeners("didUpdate")){const{layoutBox:r,measuredBox:i}=e.layout,{animationType:o}=e.options,s=t.source!==e.layout.source;o==="size"?Kt(d=>{const f=s?t.measuredBox[d]:t.layoutBox[d],p=Ot(f);f.min=r[d].min,f.max=f.min+p}):Zh(o,t.layoutBox,r)&&Kt(d=>{const f=s?t.measuredBox[d]:t.layoutBox[d],p=Ot(r[d]);f.max=f.min+p,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[d].max=e.relativeTarget[d].min+p)});const a=Er();ei(a,r,t.layoutBox);const l=Er();s?ei(l,e.applyTransform(i,!0),t.measuredBox):ei(l,r,t.layoutBox);const c=!Gh(a);let u=!1;if(!e.resumeFrom){const d=e.getClosestProjectingParent();if(d&&!d.resumeFrom){const{snapshot:f,layout:p}=d;if(f&&p){const m=dt();ti(m,t.layoutBox,f.layoutBox);const g=dt();ti(g,r,p.layoutBox),Kh(m,g)||(u=!0),d.options.layoutRoot&&(e.relativeTarget=g,e.relativeTargetOrigin=m,e.relativeParent=d)}}}e.notifyListeners("didUpdate",{layout:r,snapshot:t,delta:l,layoutDelta:a,hasLayoutChanged:c,hasRelativeLayoutChanged:u})}else if(e.isLead()){const{onExitComplete:r}=e.options;r&&r()}e.options.transition=void 0}function rv(e){e.parent&&(e.isProjecting()||(e.isProjectionDirty=e.parent.isProjectionDirty),e.isSharedProjectionDirty||(e.isSharedProjectionDirty=!!(e.isProjectionDirty||e.parent.isProjectionDirty||e.parent.isSharedProjectionDirty)),e.isTransformDirty||(e.isTransformDirty=e.parent.isTransformDirty))}function iv(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function ov(e){e.clearSnapshot()}function wu(e){e.clearMeasurements()}function Eu(e){e.isLayoutDirty=!1}function sv(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function Su(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function av(e){e.resolveTargetDelta()}function lv(e){e.calcProjection()}function cv(e){e.resetSkewAndRotation()}function uv(e){e.removeLeadSnapshot()}function ku(e,t,n){e.translate=st(t.translate,0,n),e.scale=st(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Cu(e,t,n,r){e.min=st(t.min,n.min,r),e.max=st(t.max,n.max,r)}function dv(e,t,n,r){Cu(e.x,t.x,n.x,r),Cu(e.y,t.y,n.y,r)}function fv(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const hv={duration:.45,ease:[.4,0,.1,1]},_u=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Tu=_u("applewebkit/")&&!_u("chrome/")?Math.round:Zt;function Nu(e){e.min=Tu(e.min),e.max=Tu(e.max)}function pv(e){Nu(e.x),Nu(e.y)}function Zh(e,t,n){return e==="position"||e==="preserve-aspect"&&!vx(xu(t),xu(n),.2)}function gv(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const mv=Yh({attachResizeListener:(e,t)=>di(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),xs={current:void 0},Xh=Yh({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!xs.current){const e=new mv({});e.mount(window),e.setOptions({layoutScroll:!0}),xs.current=e}return xs.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),bv={pan:{Feature:Dx},drag:{Feature:Px,ProjectionNode:Xh,MeasureLayout:Uh}};function Au(e,t,n){const{props:r}=e;e.animationState&&r.whileHover&&e.animationState.setActive("whileHover",n==="Start");const i="onHover"+n,o=r[i];o&&rt.postRender(()=>o(t,vi(t)))}class yv extends Ln{mount(){const{current:t}=this.node;t&&(this.unmount=V0(t,(n,r)=>(Au(this.node,r,"Start"),i=>Au(this.node,i,"End"))))}unmount(){}}class xv extends Ln{constructor(){super(...arguments),this.isActive=!1}onFocus(){let t=!1;try{t=this.node.current.matches(":focus-visible")}catch{t=!0}!t||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!0),this.isActive=!0)}onBlur(){!this.isActive||!this.node.animationState||(this.node.animationState.setActive("whileFocus",!1),this.isActive=!1)}mount(){this.unmount=bi(di(this.node.current,"focus",()=>this.onFocus()),di(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function Mu(e,t,n){const{props:r}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&r.whileTap&&e.animationState.setActive("whileTap",n==="Start");const i="onTap"+(n==="End"?"":n),o=r[i];o&&rt.postRender(()=>o(t,vi(t)))}class vv extends Ln{mount(){const{current:t}=this.node;t&&(this.unmount=W0(t,(n,r)=>(Mu(this.node,r,"Start"),(i,{success:o})=>Mu(this.node,i,o?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Sa=new WeakMap,vs=new WeakMap,wv=e=>{const t=Sa.get(e.target);t&&t(e)},Ev=e=>{e.forEach(wv)};function Sv({root:e,...t}){const n=e||document;vs.has(n)||vs.set(n,{});const r=vs.get(n),i=JSON.stringify(t);return r[i]||(r[i]=new IntersectionObserver(Ev,{root:e,...t})),r[i]}function kv(e,t,n){const r=Sv(t);return Sa.set(e,n),r.observe(e),()=>{Sa.delete(e),r.unobserve(e)}}const Cv={some:0,all:1};class _v extends Ln{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:r,amount:i="some",once:o}=t,s={root:n?n.current:void 0,rootMargin:r,threshold:typeof i=="number"?i:Cv[i]},a=l=>{const{isIntersecting:c}=l;if(this.isInView===c||(this.isInView=c,o&&!c&&this.hasEnteredView))return;c&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",c);const{onViewportEnter:u,onViewportLeave:d}=this.node.getProps(),f=c?u:d;f&&f(l)};return kv(this.node.current,s,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(Tv(t,n))&&this.startObserver()}unmount(){}}function Tv({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const Nv={inView:{Feature:_v},tap:{Feature:vv},focus:{Feature:xv},hover:{Feature:yv}},Av={layout:{ProjectionNode:Xh,MeasureLayout:Uh}},Mv={...px,...Nv,...bv,...Av},Me=My(Mv,Uy);function Rv(e){const[t,n]=N.useState(()=>e.getLocalParticipant()),[r,i]=N.useState(()=>e.getMicrophoneTrack());return N.useEffect(()=>{const o=()=>{const a=e.getLocalParticipant(),l=e.getMicrophoneTrack();console.log("🎤 useVoxketLocalParticipant: Updating state:",{hasParticipant:!!a,hasMicTrack:!!l,isMicEnabled:e.isMicrophoneEnabled,trackPublications:a?a.trackPublications.size:0}),n(a),i(l)};o(),e.on("connection.connected",o),e.on("connection.disconnected",o),e.on("track.muted",o),e.on("track.unmuted",o);const s=e.getRoom();if(s){const a=()=>{console.log("🎤 Track published, updating participant state"),o()},l=()=>{console.log("🎤 Track unpublished, updating participant state"),o()};return s.on("localTrackPublished",a),s.on("localTrackUnpublished",l),()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("track.muted",o),e.off("track.unmuted",o),s.off("localTrackPublished",a),s.off("localTrackUnpublished",l)}}else return()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("track.muted",o),e.off("track.unmuted",o)}},[e]),{localParticipant:t,microphoneTrack:r}}function oo(e,t,n){const[r,i]=N.useState(!1),[o,s]=N.useState(!1);return N.useEffect(()=>{const l=()=>{let c=!1;switch(t){case"microphone":c=e.isMicrophoneEnabled;break;case"camera":c=e.isCameraEnabled;break;case"screenShare":c=e.isScreenShareEnabled;break}console.log(`🎬 useVoxketTrackToggle: ${t} enabled state updated:`,{oldEnabled:r,newEnabled:c,changed:r!==c}),i(c)};return l(),e.on("track.muted",l),e.on("track.unmuted",l),e.on("connection.connected",l),()=>{e.off("track.muted",l),e.off("track.unmuted",l),e.off("connection.connected",l)}},[e,t]),{enabled:r,pending:o,toggle:async l=>{try{s(!0);const c=l!==void 0?l:!r;switch(console.log(`🎬 useVoxketTrackToggle: ${t} toggle called`,{currentEnabled:r,targetEnabled:c,forceEnabled:l}),t){case"microphone":await e.toggleMicrophone(c);break;case"camera":await e.toggleCamera(c);break;case"screenShare":c?(console.log("🎬 useVoxketTrackToggle: Starting screen share"),await e.startScreenShare()):(console.log("🎬 useVoxketTrackToggle: Stopping screen share"),await e.stopScreenShare());break}console.log(`🎬 useVoxketTrackToggle: ${t} toggle completed`)}catch(c){console.error(`🎬 useVoxketTrackToggle: ${t} toggle failed:`,c)}finally{s(!1)}}}}function Iv(e){const[t,n]=N.useState(()=>e.getRoom()),[r,i]=N.useState(()=>e.getConnectionState());return N.useEffect(()=>{const o=()=>{n(e.getRoom()),i(e.getConnectionState())};return e.on("connection.connected",o),e.on("connection.disconnected",o),e.on("connection.connecting",o),()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("connection.connecting",o)}},[e]),t}function Cl(e){const[t,n]=N.useState(()=>e.getIsAgentConnected()),[r,i]=N.useState(()=>e.getCurrentSession()),[o,s]=N.useState(()=>e.getCurrentAgentInfo()),[a,l]=N.useState(()=>e.getAgentState()),[c,u]=N.useState(()=>e.getAgentAudioTrack()),[d,f]=N.useState(()=>e.getAgentVideoTrack());return N.useEffect(()=>{const p=()=>{const _=e.getIsAgentConnected(),C=e.getCurrentSession(),T=e.getCurrentAgentInfo(),R=e.getAgentState(),A=e.getAgentAudioTrack(),I=e.getAgentVideoTrack();console.log("🤖 useVoxketVoiceAssistant: Updating state:",{isAgentConnected:_,hasSession:!!C,sessionId:C==null?void 0:C.id,sessionState:C==null?void 0:C.state,hasAgentInfo:!!T,agentState:R,hasAudioTrack:!!A,hasVideoTrack:!!I}),n(_),i(C),s(T),l(R),u(A),f(I)};p();const m=()=>{console.log("🤖 useVoxketVoiceAssistant: Agent connected event"),p()},g=()=>{console.log("🤖 useVoxketVoiceAssistant: Agent disconnected event"),p()},v=()=>{console.log("🤖 useVoxketVoiceAssistant: Session changed event"),p()},y=()=>{console.log("🤖 useVoxketVoiceAssistant: Connection changed event"),p()},E=()=>{console.log("🤖 useVoxketVoiceAssistant: Agent state changed event"),p()},w=()=>{console.log("🎵 useVoxketVoiceAssistant: Track subscribed event - updating audio/video tracks"),p()};return e.on("agent.connected",m),e.on("agent.speaking",m),e.on("agent.thinking",m),e.on("agent.state.changed",E),e.on("connection.disconnected",g),e.on("session.created",v),e.on("session.ended",v),e.on("session.state.changed",v),e.on("connection.connected",y),e.on("media.track.subscribed",w),e.on("media.track.unsubscribed",w),()=>{e.off("agent.connected",m),e.off("agent.speaking",m),e.off("agent.thinking",m),e.off("agent.state.changed",E),e.off("connection.disconnected",g),e.off("session.created",v),e.off("session.ended",v),e.off("session.state.changed",v),e.off("connection.connected",y),e.off("media.track.subscribed",w),e.off("media.track.unsubscribed",w)}},[e]),{agent:{isActive:t,info:o},session:r,state:a,audioTrack:c,videoTrack:d}}function Ov(e){const[t,n]=N.useState(()=>e.getVideoTrackRefs()),[r,i]=N.useState(()=>e.getCameraTrackRefs()),[o,s]=N.useState(()=>e.getScreenShareTrackRefs());return N.useEffect(()=>{const a=()=>{const c=e.getVideoTrackRefs(),u=e.getCameraTrackRefs(),d=e.getScreenShareTrackRefs();console.log("📹 useVoxketVideoTracks: Updating tracks:",{videoCount:c.length,cameraCount:u.length,screenShareCount:d.length}),n(c),i(u),s(d)};a(),e.on("connection.connected",a),e.on("connection.disconnected",a),e.on("track.muted",a),e.on("track.unmuted",a),e.on("participant.joined",a),e.on("participant.left",a);const l=e.getRoom();if(l){const c=()=>{console.log("📹 Track event, updating video tracks"),a()};return l.on("localTrackPublished",c),l.on("localTrackUnpublished",c),l.on("trackPublished",c),l.on("trackUnpublished",c),l.on("trackSubscribed",c),l.on("trackUnsubscribed",c),()=>{e.off("connection.connected",a),e.off("connection.disconnected",a),e.off("track.muted",a),e.off("track.unmuted",a),e.off("participant.joined",a),e.off("participant.left",a),l.off("localTrackPublished",c),l.off("localTrackUnpublished",c),l.off("trackPublished",c),l.off("trackUnpublished",c),l.off("trackSubscribed",c),l.off("trackUnsubscribed",c)}}else return()=>{e.off("connection.connected",a),e.off("connection.disconnected",a),e.off("track.muted",a),e.off("track.unmuted",a),e.off("participant.joined",a),e.off("participant.left",a)}},[e]),{videoTrackRefs:t,cameraTrackRefs:r,screenShareTrackRefs:o}}const _l="-",Pv=e=>{const t=Lv(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:s=>{const a=s.split(_l);return a[0]===""&&a.length!==1&&a.shift(),Qh(a,t)||Dv(s)},getConflictingClassGroupIds:(s,a)=>{const l=n[s]||[];return a&&r[s]?[...l,...r[s]]:l}}},Qh=(e,t)=>{var s;if(e.length===0)return t.classGroupId;const n=e[0],r=t.nextPart.get(n),i=r?Qh(e.slice(1),r):void 0;if(i)return i;if(t.validators.length===0)return;const o=e.join(_l);return(s=t.validators.find(({validator:a})=>a(o)))==null?void 0:s.classGroupId},Ru=/^\[(.+)\]$/,Dv=e=>{if(Ru.test(e)){const t=Ru.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},Lv=e=>{const{theme:t,classGroups:n}=e,r={nextPart:new Map,validators:[]};for(const i in n)ka(n[i],r,i,t);return r},ka=(e,t,n,r)=>{e.forEach(i=>{if(typeof i=="string"){const o=i===""?t:Iu(t,i);o.classGroupId=n;return}if(typeof i=="function"){if(Fv(i)){ka(i(r),t,n,r);return}t.validators.push({validator:i,classGroupId:n});return}Object.entries(i).forEach(([o,s])=>{ka(s,Iu(t,o),n,r)})})},Iu=(e,t)=>{let n=e;return t.split(_l).forEach(r=>{n.nextPart.has(r)||n.nextPart.set(r,{nextPart:new Map,validators:[]}),n=n.nextPart.get(r)}),n},Fv=e=>e.isThemeGetter,jv=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,r=new Map;const i=(o,s)=>{n.set(o,s),t++,t>e&&(t=0,r=n,n=new Map)};return{get(o){let s=n.get(o);if(s!==void 0)return s;if((s=r.get(o))!==void 0)return i(o,s),s},set(o,s){n.has(o)?n.set(o,s):i(o,s)}}},Ca="!",_a=":",Bv=_a.length,$v=e=>{const{prefix:t,experimentalParseClassName:n}=e;let r=i=>{const o=[];let s=0,a=0,l=0,c;for(let m=0;m<i.length;m++){let g=i[m];if(s===0&&a===0){if(g===_a){o.push(i.slice(l,m)),l=m+Bv;continue}if(g==="/"){c=m;continue}}g==="["?s++:g==="]"?s--:g==="("?a++:g===")"&&a--}const u=o.length===0?i:i.substring(l),d=Vv(u),f=d!==u,p=c&&c>l?c-l:void 0;return{modifiers:o,hasImportantModifier:f,baseClassName:d,maybePostfixModifierPosition:p}};if(t){const i=t+_a,o=r;r=s=>s.startsWith(i)?o(s.substring(i.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:s,maybePostfixModifierPosition:void 0}}if(n){const i=r;r=o=>n({className:o,parseClassName:i})}return r},Vv=e=>e.endsWith(Ca)?e.substring(0,e.length-1):e.startsWith(Ca)?e.substring(1):e,zv=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(r=>[r,!0]));return r=>{if(r.length<=1)return r;const i=[];let o=[];return r.forEach(s=>{s[0]==="["||t[s]?(i.push(...o.sort(),s),o=[]):o.push(s)}),i.push(...o.sort()),i}},Uv=e=>({cache:jv(e.cacheSize),parseClassName:$v(e),sortModifiers:zv(e),...Pv(e)}),Hv=/\s+/,Wv=(e,t)=>{const{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:o}=t,s=[],a=e.trim().split(Hv);let l="";for(let c=a.length-1;c>=0;c-=1){const u=a[c],{isExternal:d,modifiers:f,hasImportantModifier:p,baseClassName:m,maybePostfixModifierPosition:g}=n(u);if(d){l=u+(l.length>0?" "+l:l);continue}let v=!!g,y=r(v?m.substring(0,g):m);if(!y){if(!v){l=u+(l.length>0?" "+l:l);continue}if(y=r(m),!y){l=u+(l.length>0?" "+l:l);continue}v=!1}const E=o(f).join(":"),w=p?E+Ca:E,_=w+y;if(s.includes(_))continue;s.push(_);const C=i(y,v);for(let T=0;T<C.length;++T){const R=C[T];s.push(w+R)}l=u+(l.length>0?" "+l:l)}return l};function Gv(){let e=0,t,n,r="";for(;e<arguments.length;)(t=arguments[e++])&&(n=Jh(t))&&(r&&(r+=" "),r+=n);return r}const Jh=e=>{if(typeof e=="string")return e;let t,n="";for(let r=0;r<e.length;r++)e[r]&&(t=Jh(e[r]))&&(n&&(n+=" "),n+=t);return n};function Kv(e,...t){let n,r,i,o=s;function s(l){const c=t.reduce((u,d)=>d(u),e());return n=Uv(c),r=n.cache.get,i=n.cache.set,o=a,a(l)}function a(l){const c=r(l);if(c)return c;const u=Wv(l,n);return i(l,u),u}return function(){return o(Gv.apply(null,arguments))}}const yt=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},ep=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,tp=/^\((?:(\w[\w-]*):)?(.+)\)$/i,qv=/^\d+\/\d+$/,Yv=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Zv=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,Xv=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Qv=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,Jv=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,or=e=>qv.test(e),Ie=e=>!!e&&!Number.isNaN(Number(e)),Tn=e=>!!e&&Number.isInteger(Number(e)),ws=e=>e.endsWith("%")&&Ie(e.slice(0,-1)),mn=e=>Yv.test(e),ew=()=>!0,tw=e=>Zv.test(e)&&!Xv.test(e),np=()=>!1,nw=e=>Qv.test(e),rw=e=>Jv.test(e),iw=e=>!fe(e)&&!he(e),ow=e=>Dr(e,op,np),fe=e=>ep.test(e),zn=e=>Dr(e,sp,tw),Es=e=>Dr(e,uw,Ie),Ou=e=>Dr(e,rp,np),sw=e=>Dr(e,ip,rw),ji=e=>Dr(e,ap,nw),he=e=>tp.test(e),zr=e=>Lr(e,sp),aw=e=>Lr(e,dw),Pu=e=>Lr(e,rp),lw=e=>Lr(e,op),cw=e=>Lr(e,ip),Bi=e=>Lr(e,ap,!0),Dr=(e,t,n)=>{const r=ep.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},Lr=(e,t,n=!1)=>{const r=tp.exec(e);return r?r[1]?t(r[1]):n:!1},rp=e=>e==="position"||e==="percentage",ip=e=>e==="image"||e==="url",op=e=>e==="length"||e==="size"||e==="bg-size",sp=e=>e==="length",uw=e=>e==="number",dw=e=>e==="family-name",ap=e=>e==="shadow",fw=()=>{const e=yt("color"),t=yt("font"),n=yt("text"),r=yt("font-weight"),i=yt("tracking"),o=yt("leading"),s=yt("breakpoint"),a=yt("container"),l=yt("spacing"),c=yt("radius"),u=yt("shadow"),d=yt("inset-shadow"),f=yt("text-shadow"),p=yt("drop-shadow"),m=yt("blur"),g=yt("perspective"),v=yt("aspect"),y=yt("ease"),E=yt("animate"),w=()=>["auto","avoid","all","avoid-page","page","left","right","column"],_=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],C=()=>[..._(),he,fe],T=()=>["auto","hidden","clip","visible","scroll"],R=()=>["auto","contain","none"],A=()=>[he,fe,l],I=()=>[or,"full","auto",...A()],b=()=>[Tn,"none","subgrid",he,fe],M=()=>["auto",{span:["full",Tn,he,fe]},Tn,he,fe],O=()=>[Tn,"auto",he,fe],L=()=>["auto","min","max","fr",he,fe],j=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],W=()=>["start","end","center","stretch","center-safe","end-safe"],oe=()=>["auto",...A()],te=()=>[or,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...A()],B=()=>[e,he,fe],$=()=>[..._(),Pu,Ou,{position:[he,fe]}],x=()=>["no-repeat",{repeat:["","x","y","space","round"]}],z=()=>["auto","cover","contain",lw,ow,{size:[he,fe]}],G=()=>[ws,zr,zn],k=()=>["","none","full",c,he,fe],K=()=>["",Ie,zr,zn],Z=()=>["solid","dashed","dotted","double"],X=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],ie=()=>[Ie,ws,Pu,Ou],Y=()=>["","none",m,he,fe],re=()=>["none",Ie,he,fe],H=()=>["none",Ie,he,fe],Ee=()=>[Ie,he,fe],P=()=>[or,"full",...A()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[mn],breakpoint:[mn],color:[ew],container:[mn],"drop-shadow":[mn],ease:["in","out","in-out"],font:[iw],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[mn],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[mn],shadow:[mn],spacing:["px",Ie],text:[mn],"text-shadow":[mn],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",or,fe,he,v]}],container:["container"],columns:[{columns:[Ie,fe,he,a]}],"break-after":[{"break-after":w()}],"break-before":[{"break-before":w()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:C()}],overflow:[{overflow:T()}],"overflow-x":[{"overflow-x":T()}],"overflow-y":[{"overflow-y":T()}],overscroll:[{overscroll:R()}],"overscroll-x":[{"overscroll-x":R()}],"overscroll-y":[{"overscroll-y":R()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{start:I()}],end:[{end:I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[Tn,"auto",he,fe]}],basis:[{basis:[or,"full","auto",a,...A()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ie,or,"auto","initial","none",fe]}],grow:[{grow:["",Ie,he,fe]}],shrink:[{shrink:["",Ie,he,fe]}],order:[{order:[Tn,"first","last","none",he,fe]}],"grid-cols":[{"grid-cols":b()}],"col-start-end":[{col:M()}],"col-start":[{"col-start":O()}],"col-end":[{"col-end":O()}],"grid-rows":[{"grid-rows":b()}],"row-start-end":[{row:M()}],"row-start":[{"row-start":O()}],"row-end":[{"row-end":O()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":L()}],"auto-rows":[{"auto-rows":L()}],gap:[{gap:A()}],"gap-x":[{"gap-x":A()}],"gap-y":[{"gap-y":A()}],"justify-content":[{justify:[...j(),"normal"]}],"justify-items":[{"justify-items":[...W(),"normal"]}],"justify-self":[{"justify-self":["auto",...W()]}],"align-content":[{content:["normal",...j()]}],"align-items":[{items:[...W(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...W(),{baseline:["","last"]}]}],"place-content":[{"place-content":j()}],"place-items":[{"place-items":[...W(),"baseline"]}],"place-self":[{"place-self":["auto",...W()]}],p:[{p:A()}],px:[{px:A()}],py:[{py:A()}],ps:[{ps:A()}],pe:[{pe:A()}],pt:[{pt:A()}],pr:[{pr:A()}],pb:[{pb:A()}],pl:[{pl:A()}],m:[{m:oe()}],mx:[{mx:oe()}],my:[{my:oe()}],ms:[{ms:oe()}],me:[{me:oe()}],mt:[{mt:oe()}],mr:[{mr:oe()}],mb:[{mb:oe()}],ml:[{ml:oe()}],"space-x":[{"space-x":A()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":A()}],"space-y-reverse":["space-y-reverse"],size:[{size:te()}],w:[{w:[a,"screen",...te()]}],"min-w":[{"min-w":[a,"screen","none",...te()]}],"max-w":[{"max-w":[a,"screen","none","prose",{screen:[s]},...te()]}],h:[{h:["screen","lh",...te()]}],"min-h":[{"min-h":["screen","lh","none",...te()]}],"max-h":[{"max-h":["screen","lh",...te()]}],"font-size":[{text:["base",n,zr,zn]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[r,he,Es]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",ws,fe]}],"font-family":[{font:[aw,fe,t]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[i,he,fe]}],"line-clamp":[{"line-clamp":[Ie,"none",he,Es]}],leading:[{leading:[o,...A()]}],"list-image":[{"list-image":["none",he,fe]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",he,fe]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:B()}],"text-color":[{text:B()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Z(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ie,"from-font","auto",he,zn]}],"text-decoration-color":[{decoration:B()}],"underline-offset":[{"underline-offset":[Ie,"auto",he,fe]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:A()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",he,fe]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",he,fe]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:$()}],"bg-repeat":[{bg:x()}],"bg-size":[{bg:z()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Tn,he,fe],radial:["",he,fe],conic:[Tn,he,fe]},cw,sw]}],"bg-color":[{bg:B()}],"gradient-from-pos":[{from:G()}],"gradient-via-pos":[{via:G()}],"gradient-to-pos":[{to:G()}],"gradient-from":[{from:B()}],"gradient-via":[{via:B()}],"gradient-to":[{to:B()}],rounded:[{rounded:k()}],"rounded-s":[{"rounded-s":k()}],"rounded-e":[{"rounded-e":k()}],"rounded-t":[{"rounded-t":k()}],"rounded-r":[{"rounded-r":k()}],"rounded-b":[{"rounded-b":k()}],"rounded-l":[{"rounded-l":k()}],"rounded-ss":[{"rounded-ss":k()}],"rounded-se":[{"rounded-se":k()}],"rounded-ee":[{"rounded-ee":k()}],"rounded-es":[{"rounded-es":k()}],"rounded-tl":[{"rounded-tl":k()}],"rounded-tr":[{"rounded-tr":k()}],"rounded-br":[{"rounded-br":k()}],"rounded-bl":[{"rounded-bl":k()}],"border-w":[{border:K()}],"border-w-x":[{"border-x":K()}],"border-w-y":[{"border-y":K()}],"border-w-s":[{"border-s":K()}],"border-w-e":[{"border-e":K()}],"border-w-t":[{"border-t":K()}],"border-w-r":[{"border-r":K()}],"border-w-b":[{"border-b":K()}],"border-w-l":[{"border-l":K()}],"divide-x":[{"divide-x":K()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":K()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Z(),"hidden","none"]}],"divide-style":[{divide:[...Z(),"hidden","none"]}],"border-color":[{border:B()}],"border-color-x":[{"border-x":B()}],"border-color-y":[{"border-y":B()}],"border-color-s":[{"border-s":B()}],"border-color-e":[{"border-e":B()}],"border-color-t":[{"border-t":B()}],"border-color-r":[{"border-r":B()}],"border-color-b":[{"border-b":B()}],"border-color-l":[{"border-l":B()}],"divide-color":[{divide:B()}],"outline-style":[{outline:[...Z(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ie,he,fe]}],"outline-w":[{outline:["",Ie,zr,zn]}],"outline-color":[{outline:B()}],shadow:[{shadow:["","none",u,Bi,ji]}],"shadow-color":[{shadow:B()}],"inset-shadow":[{"inset-shadow":["none",d,Bi,ji]}],"inset-shadow-color":[{"inset-shadow":B()}],"ring-w":[{ring:K()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:B()}],"ring-offset-w":[{"ring-offset":[Ie,zn]}],"ring-offset-color":[{"ring-offset":B()}],"inset-ring-w":[{"inset-ring":K()}],"inset-ring-color":[{"inset-ring":B()}],"text-shadow":[{"text-shadow":["none",f,Bi,ji]}],"text-shadow-color":[{"text-shadow":B()}],opacity:[{opacity:[Ie,he,fe]}],"mix-blend":[{"mix-blend":[...X(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":X()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Ie]}],"mask-image-linear-from-pos":[{"mask-linear-from":ie()}],"mask-image-linear-to-pos":[{"mask-linear-to":ie()}],"mask-image-linear-from-color":[{"mask-linear-from":B()}],"mask-image-linear-to-color":[{"mask-linear-to":B()}],"mask-image-t-from-pos":[{"mask-t-from":ie()}],"mask-image-t-to-pos":[{"mask-t-to":ie()}],"mask-image-t-from-color":[{"mask-t-from":B()}],"mask-image-t-to-color":[{"mask-t-to":B()}],"mask-image-r-from-pos":[{"mask-r-from":ie()}],"mask-image-r-to-pos":[{"mask-r-to":ie()}],"mask-image-r-from-color":[{"mask-r-from":B()}],"mask-image-r-to-color":[{"mask-r-to":B()}],"mask-image-b-from-pos":[{"mask-b-from":ie()}],"mask-image-b-to-pos":[{"mask-b-to":ie()}],"mask-image-b-from-color":[{"mask-b-from":B()}],"mask-image-b-to-color":[{"mask-b-to":B()}],"mask-image-l-from-pos":[{"mask-l-from":ie()}],"mask-image-l-to-pos":[{"mask-l-to":ie()}],"mask-image-l-from-color":[{"mask-l-from":B()}],"mask-image-l-to-color":[{"mask-l-to":B()}],"mask-image-x-from-pos":[{"mask-x-from":ie()}],"mask-image-x-to-pos":[{"mask-x-to":ie()}],"mask-image-x-from-color":[{"mask-x-from":B()}],"mask-image-x-to-color":[{"mask-x-to":B()}],"mask-image-y-from-pos":[{"mask-y-from":ie()}],"mask-image-y-to-pos":[{"mask-y-to":ie()}],"mask-image-y-from-color":[{"mask-y-from":B()}],"mask-image-y-to-color":[{"mask-y-to":B()}],"mask-image-radial":[{"mask-radial":[he,fe]}],"mask-image-radial-from-pos":[{"mask-radial-from":ie()}],"mask-image-radial-to-pos":[{"mask-radial-to":ie()}],"mask-image-radial-from-color":[{"mask-radial-from":B()}],"mask-image-radial-to-color":[{"mask-radial-to":B()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":_()}],"mask-image-conic-pos":[{"mask-conic":[Ie]}],"mask-image-conic-from-pos":[{"mask-conic-from":ie()}],"mask-image-conic-to-pos":[{"mask-conic-to":ie()}],"mask-image-conic-from-color":[{"mask-conic-from":B()}],"mask-image-conic-to-color":[{"mask-conic-to":B()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:$()}],"mask-repeat":[{mask:x()}],"mask-size":[{mask:z()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",he,fe]}],filter:[{filter:["","none",he,fe]}],blur:[{blur:Y()}],brightness:[{brightness:[Ie,he,fe]}],contrast:[{contrast:[Ie,he,fe]}],"drop-shadow":[{"drop-shadow":["","none",p,Bi,ji]}],"drop-shadow-color":[{"drop-shadow":B()}],grayscale:[{grayscale:["",Ie,he,fe]}],"hue-rotate":[{"hue-rotate":[Ie,he,fe]}],invert:[{invert:["",Ie,he,fe]}],saturate:[{saturate:[Ie,he,fe]}],sepia:[{sepia:["",Ie,he,fe]}],"backdrop-filter":[{"backdrop-filter":["","none",he,fe]}],"backdrop-blur":[{"backdrop-blur":Y()}],"backdrop-brightness":[{"backdrop-brightness":[Ie,he,fe]}],"backdrop-contrast":[{"backdrop-contrast":[Ie,he,fe]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ie,he,fe]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ie,he,fe]}],"backdrop-invert":[{"backdrop-invert":["",Ie,he,fe]}],"backdrop-opacity":[{"backdrop-opacity":[Ie,he,fe]}],"backdrop-saturate":[{"backdrop-saturate":[Ie,he,fe]}],"backdrop-sepia":[{"backdrop-sepia":["",Ie,he,fe]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":A()}],"border-spacing-x":[{"border-spacing-x":A()}],"border-spacing-y":[{"border-spacing-y":A()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",he,fe]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ie,"initial",he,fe]}],ease:[{ease:["linear","initial",y,he,fe]}],delay:[{delay:[Ie,he,fe]}],animate:[{animate:["none",E,he,fe]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[g,he,fe]}],"perspective-origin":[{"perspective-origin":C()}],rotate:[{rotate:re()}],"rotate-x":[{"rotate-x":re()}],"rotate-y":[{"rotate-y":re()}],"rotate-z":[{"rotate-z":re()}],scale:[{scale:H()}],"scale-x":[{"scale-x":H()}],"scale-y":[{"scale-y":H()}],"scale-z":[{"scale-z":H()}],"scale-3d":["scale-3d"],skew:[{skew:Ee()}],"skew-x":[{"skew-x":Ee()}],"skew-y":[{"skew-y":Ee()}],transform:[{transform:[he,fe,"","none","gpu","cpu"]}],"transform-origin":[{origin:C()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:P()}],"translate-x":[{"translate-x":P()}],"translate-y":[{"translate-y":P()}],"translate-z":[{"translate-z":P()}],"translate-none":["translate-none"],accent:[{accent:B()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:B()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",he,fe]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":A()}],"scroll-mx":[{"scroll-mx":A()}],"scroll-my":[{"scroll-my":A()}],"scroll-ms":[{"scroll-ms":A()}],"scroll-me":[{"scroll-me":A()}],"scroll-mt":[{"scroll-mt":A()}],"scroll-mr":[{"scroll-mr":A()}],"scroll-mb":[{"scroll-mb":A()}],"scroll-ml":[{"scroll-ml":A()}],"scroll-p":[{"scroll-p":A()}],"scroll-px":[{"scroll-px":A()}],"scroll-py":[{"scroll-py":A()}],"scroll-ps":[{"scroll-ps":A()}],"scroll-pe":[{"scroll-pe":A()}],"scroll-pt":[{"scroll-pt":A()}],"scroll-pr":[{"scroll-pr":A()}],"scroll-pb":[{"scroll-pb":A()}],"scroll-pl":[{"scroll-pl":A()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",he,fe]}],fill:[{fill:["none",...B()]}],"stroke-w":[{stroke:[Ie,zr,zn,Es]}],stroke:[{stroke:["none",...B()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},hw=Kv(fw);function Be(...e){return hw(Ha.clsx(e))}function Oo(e){var i;if(!e)return{sessionSettings:{},capabilities:{},modality:"voice"};const t={session_timer:((i=e.session_settings)==null?void 0:i.session_timer)||null},n=e.capabilities||{},r=e.modality||"voice";return{sessionSettings:t,capabilities:n,modality:r}}function pw(e,t){return e.capabilities[t]===!0}function Po(e){return e.sessionSettings.session_timer||null}function lp(e){const t=e.capabilities;return{userVideoEnabled:t.user_video_enabled!==!1,agentAvatarEnabled:t.agent_avatar_enabled!==!1,screenshareEnabled:t.screenshare_session_enabled!==!1}}function cp(e){const t=e.capabilities;return{suggestedReplyEnabled:t.suggested_reply_enabled!==!1,attachmentsEnabled:t.support_in_chat_attachments!==!1}}function up(e){return{...e.capabilities}}function dp(e){const t=Math.floor(e/60),n=e%60;return`${t}:${n.toString().padStart(2,"0")}`}const fp=N.forwardRef(({state:e,audioTrack:t,className:n,theme:r="vox"},i)=>{var c,u,d,f,p;const o=N.useRef(null),[s,a]=N.useState(!1);N.useEffect(()=>{o.current&&(console.log("🔊 AgentTile: Audio element created:",{autoplay:o.current.autoplay,muted:o.current.muted,volume:o.current.volume,readyState:o.current.readyState,paused:o.current.paused}),a(!0))},[t]),N.useEffect(()=>{const m=o.current;if(!m)return;const g=()=>console.log("▶️ AgentTile: Audio started playing"),v=()=>console.log("⏸️ AgentTile: Audio paused"),y=()=>console.log("⏹️ AgentTile: Audio ended"),E=C=>console.error("❌ AgentTile: Audio error:",C),w=()=>console.log("⏳ AgentTile: Audio load started"),_=()=>console.log("✅ AgentTile: Audio can play");return m.addEventListener("play",g),m.addEventListener("pause",v),m.addEventListener("ended",y),m.addEventListener("error",E),m.addEventListener("loadstart",w),m.addEventListener("canplay",_),()=>{m.removeEventListener("play",g),m.removeEventListener("pause",v),m.removeEventListener("ended",y),m.removeEventListener("error",E),m.removeEventListener("loadstart",w),m.removeEventListener("canplay",_)}},[s]),console.log("🎤 AgentTile render:",{state:e,hasAudioTrack:!!t,trackSource:t==null?void 0:t.source,participantId:(c=t==null?void 0:t.participant)==null?void 0:c.identity,publicationMuted:(u=t==null?void 0:t.publication)==null?void 0:u.isMuted,audioElementReady:s,trackMediaStreamTrack:(p=(f=(d=t==null?void 0:t.publication)==null?void 0:d.track)==null?void 0:f.mediaStreamTrack)==null?void 0:p.readyState});const l=N.useMemo(()=>r==="light"?{base:"bg-black/90",highlighted:"bg-black",muted:"bg-black/30"}:{base:"bg-white/90",highlighted:"bg-white",muted:"bg-white/30"},[r]);return h.jsxs("div",{ref:i,className:Be("",n),children:[t&&h.jsxs(h.Fragment,{children:[h.jsx(Rt.AudioTrack,{ref:o,trackRef:t,volume:1}),h.jsx(Rt.BarVisualizer,{barCount:5,state:e,options:{minHeight:5},trackRef:t,className:Be("flex aspect-video w-40 items-center justify-center gap-1.5"),children:h.jsx("span",{className:Be([`${l.base} min-h-2 w-2 rounded-full`,"origin-center transition-colors duration-250 ease-linear",`data-[lk-highlighted=true]:${l.highlighted}`,`data-[lk-muted=true]:${l.muted}`])})})]}),!t&&h.jsx("div",{className:Be("flex aspect-video w-40 items-center justify-center"),children:h.jsx("div",{className:"flex flex-col items-center justify-center",children:h.jsx("div",{className:"flex gap-1.5",children:Array.from({length:5}).map((m,g)=>h.jsx("span",{className:Be([`${l.base} min-h-2 w-2 rounded-full`,"origin-center transition-colors duration-250 ease-linear",e==="speaking"&&`animate-pulse ${l.highlighted}`,e==="thinking"&&`animate-pulse ${l.muted}`])},g))})})})]})});fp.displayName="AgentTile";const gw=({videoTrack:e,className:t,ref:n})=>{var r,i;return!e||!e.publication||!e.participant?h.jsx("div",{ref:n,className:Be(t),children:h.jsx("div",{className:"w-full h-full bg-gray-200 rounded-md flex items-center justify-center",children:h.jsx("span",{className:"text-gray-500",children:"No video available"})})}):h.jsx("div",{ref:n,className:Be(t),children:h.jsx(Rt.VideoTrack,{trackRef:e,width:((r=e.publication.dimensions)==null?void 0:r.width)??0,height:((i=e.publication.dimensions)==null?void 0:i.height)??0,className:"rounded-md"})})},mw=D.forwardRef(function({trackRef:t,className:n,...r},i){var o,s;return h.jsx("div",{ref:i,className:Be("bg-muted overflow-hidden rounded-md",n),children:h.jsx(Rt.VideoTrack,{trackRef:t,width:((o=t==null?void 0:t.publication.dimensions)==null?void 0:o.width)??0,height:((s=t==null?void 0:t.publication.dimensions)==null?void 0:s.height)??0,className:Be("h-full w-auto"),...r})})}),Du=Me.create(mw),bw=Me.create(fp),yw=Me.create(gw),bn={initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},exit:{opacity:0,scale:0},transition:{type:"spring",stiffness:675,damping:75,mass:1}},sr={grid:["h-full w-full","grid gap-x-2 place-content-center","grid-cols-[1fr_1fr] grid-rows-[90px_1fr_90px]"],agentChatOpenWithSecondTile:["col-start-1 row-start-1","self-center justify-self-end"],agentChatOpenWithoutSecondTile:["col-start-1 row-start-1","col-span-2","place-content-center"],agentChatClosed:["col-start-1 row-start-1","col-span-2","place-content-center"],secondTileChatOpen:["col-start-2 row-start-1","self-center justify-self-start"],secondTileChatClosed:["col-start-2 row-start-3","place-content-end"]};function xw(e,t){const{localParticipant:n}=Rv(t),r=n==null?void 0:n.getTrackPublication(e);return N.useMemo(()=>r&&n?{source:e,participant:n,publication:r}:void 0,[e,r,n])}function vw({chatOpen:e,client:t,theme:n="vox"}){const{agent:{isActive:r=!1}={},session:i,state:o="idle",audioTrack:s,videoTrack:a}=t?Cl(t):{agent:{isActive:!1},session:null,state:"idle",audioTrack:null,videoTrack:null};console.log("🎨 MediaTiles render:",{chatOpen:e,isAgentActive:r,hasSession:!!i,sessionState:i==null?void 0:i.state,agentState:o,hasAudioTrack:!!s,hasVideoTrack:!!a});const[l]=Rt.useTracks([le.Track.Source.ScreenShare]),c=xw(le.Track.Source.Camera,t),u=c&&!c.publication.isMuted,d=l&&!l.publication.isMuted,f=u||d,p=r||i&&i.state==="active",m={...bn.transition,delay:e?0:.15},g={...bn.animate,scale:e?1:3,transition:m},v={...bn.animate,transition:m},y=m,E=m,w=a&&a.publication&&a.participant;return h.jsx("div",{className:"relative w-full h-full z-10 flex items-center justify-center",children:h.jsx("div",{className:"relative w-full h-full max-w-2xl px-4 md:px-0",children:h.jsxs("div",{className:Be(sr.grid),children:[p&&h.jsx("div",{className:Be(["grid",!e&&sr.agentChatClosed,e&&f&&sr.agentChatOpenWithSecondTile,e&&!f&&sr.agentChatOpenWithoutSecondTile]),children:h.jsxs("div",{className:"h-full flex items-center justify-center",children:[!w&&h.jsx(bw,{layoutId:"agent",...bn,animate:g,transition:y,state:o,audioTrack:s||void 0,theme:n,className:Be(e?"h-[90px]":"h-auto w-full")},"agent"),w&&a&&h.jsx(yw,{layoutId:"avatar",...bn,animate:v,transition:E,videoTrack:a,className:Be(e?"h-[90px] [&>video]:h-[90px] [&>video]:w-auto":"h-auto w-full")},"avatar")]})}),h.jsx("div",{className:Be(["grid",e&&sr.secondTileChatOpen,!e&&sr.secondTileChatClosed]),children:h.jsxs("div",{className:"w-full px-10 flex items-center shadow-2xl justify-between",children:[c&&u&&h.jsx(Du,{layout:"position",layoutId:"camera",...bn,trackRef:c,transition:{...bn.transition,delay:e?0:.15},className:"h-[60px] order-1"},"camera"),d&&h.jsx(Du,{layout:"position",layoutId:"screen",...bn,trackRef:l,transition:{...bn.transition,delay:e?0:.15},className:"h-[70px] order-2"},"screen")]})})]})})})}const ww={card:"text-gray-100 bg-gradient-to-b from-[#0a0a0a] via-[#121212] to-[#0a0a0a] border border-gray-800/50 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-2xl",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-40 z-10 bg-gradient-to-b from-black/90 via-black/40 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(circle_at_50%_-20%,_rgba(75,85,99,0.08),transparent_50%)] opacity-100",cardPurpleBlur:"absolute top-0 left-1/2 -translate-x-1/2 w-[600px] h-[300px] bg-gradient-to-b from-gray-500/[0.12] via-gray-600/[0.06] to-transparent blur-3xl",cardPinkBlur:"absolute bottom-0 left-1/2 -translate-x-1/2 w-[500px] h-[250px] bg-gradient-to-t from-gray-600/[0.08] via-transparent to-transparent blur-3xl",cardPulse1:"hidden",cardPulse2:"hidden",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-b from-[#0a0a0a] via-[#121212] to-[#0a0a0a] shadow-2xl p-0 overflow-hidden h-full relative",text:{primary:"text-gray-100 font-semibold",secondary:"text-gray-200",muted:"text-gray-400",accent:"text-transparent bg-clip-text bg-gradient-to-r from-gray-300 via-gray-200 to-gray-300"},micButton:"relative w-20 h-20 bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 rounded-3xl flex items-center justify-center hover:bg-gray-900 hover:border-gray-600 hover:scale-105 hover:shadow-2xl hover:shadow-gray-600/30 transition-all duration-500 ease-out group overflow-hidden",chatButton:"relative w-20 h-20 bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 rounded-3xl flex items-center justify-center hover:bg-gray-900 hover:border-gray-600 hover:scale-105 hover:shadow-2xl hover:shadow-gray-600/30 transition-all duration-500 ease-out group overflow-hidden",videoButton:"relative w-20 h-20 bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 rounded-3xl flex items-center justify-center hover:bg-gray-900 hover:border-gray-600 hover:scale-105 hover:shadow-2xl hover:shadow-gray-600/30 transition-all duration-500 ease-out group overflow-hidden",popupTrigger:"bg-gray-900/90 backdrop-blur-xl border-2 border-gray-700/50 text-gray-100 font-bold hover:bg-gray-900 hover:border-gray-600 hover:scale-[1.02] hover:shadow-2xl hover:shadow-gray-600/30 focus:outline-none focus:ring-2 focus:ring-gray-600 focus:ring-offset-2 focus:ring-offset-black transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-gray-900/60 backdrop-blur-xl rounded-2xl text-center text-gray-200 text-sm font-medium transition-all duration-700 ease-in-out border border-gray-700/50 shadow-xl",statusIndicator:"w-2.5 h-2.5 bg-gray-400 rounded-full animate-pulse shadow-lg shadow-gray-400/60",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-gray-800/50 rounded-3xl py-4 flex flex-col justify-end h-full bg-black/90 backdrop-blur-xl shadow-2xl",chatInput:{container:"bg-black/90 backdrop-blur-xl border-gray-800/50 shadow-xl",textarea:"bg-black/80 border border-gray-800/50 rounded-xl text-gray-100 placeholder-gray-500 font-medium px-4 py-3",sendButton:"bg-gray-900/90 hover:bg-gray-900 border-2 border-gray-700/50 hover:border-gray-600 disabled:border-gray-800 disabled:opacity-40 text-gray-100 font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-gray-600/30",attachButton:"text-gray-400 hover:text-gray-200 hover:bg-gray-700/30 transition-all duration-300 rounded-xl",endButton:"bg-red-600/90 hover:bg-red-600 border-2 border-red-500/40 hover:border-red-500/60 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-red-500/40"},chatMessage:{own:"bg-gray-800/70 text-gray-100 backdrop-blur-md shadow-lg border border-gray-700/50",other:"bg-gray-900/60 text-gray-100 border border-gray-700/50 backdrop-blur-md shadow-lg"},chatHeader:{container:"bg-gray-900/80 border-gray-700/50 backdrop-blur-xl shadow-xl",backButton:"text-gray-300 hover:text-gray-100 hover:bg-gray-700/30 transition-all duration-300 rounded-xl"},spinner:"w-10 h-10 animate-spin text-gray-400 mb-2",suggestedResponse:{container:"bg-gray-900/70 text-gray-200 border-gray-700/50 backdrop-blur-md hover:bg-gray-800/80 hover:border-gray-600 transition-all duration-300 shadow-lg"},video:{container:"bg-gradient-to-b from-[#0a0a0a] via-[#121212] to-[#0a0a0a] text-gray-100",header:"border-gray-700/50 bg-gray-900/80 backdrop-blur-xl shadow-xl",headerButton:"bg-gray-900/90 hover:bg-gray-900 border-2 border-gray-700/50 hover:border-gray-600 text-gray-100 hover:scale-105 transition-all duration-300 rounded-xl shadow-lg",statusDot:"bg-emerald-400 animate-pulse shadow-lg shadow-emerald-400/60",controlsBackground:"bg-gradient-to-t from-gray-900 via-gray-900/90 to-gray-900/60 backdrop-blur-xl border-t border-gray-700/50 shadow-2xl",controlEnabled:"bg-gray-900/90 hover:bg-gray-900 border-2 border-gray-700/50 hover:border-gray-600 text-gray-100 hover:scale-105 hover:shadow-xl hover:shadow-gray-600/30 transition-all duration-300 font-semibold",controlDisabled:"bg-gray-900/50 hover:bg-gray-900/60 text-gray-500 border border-gray-800 transition-all duration-300",endCall:"bg-red-600/90 hover:bg-red-600 border-2 border-red-500/50 hover:border-red-500/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-2xl hover:shadow-red-500/50",tile:"bg-gray-900/70 border border-gray-700/50 shadow-2xl backdrop-blur-md rounded-2xl",placeholder:"bg-gray-900/60 text-gray-300",avatar:"bg-gray-800/80 text-gray-300 border-2 border-gray-700/50",nameOverlay:"bg-gradient-to-t from-gray-900 via-gray-900/80 to-transparent text-white backdrop-blur-sm font-bold",mutedIndicator:"bg-red-600 text-white shadow-xl shadow-red-500/40 font-semibold"}},Ew={card:"text-gray-900 bg-gradient-to-b from-[#F8F9FC] via-[#FFFFFF] to-[#F8F9FC] border-[3px] border-indigo-200/60 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-2xl shadow-indigo-200/30",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-40 z-10 bg-gradient-to-b from-[#FFFFFF]/90 via-[#FFFFFF]/40 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(circle_at_50%_-20%,_rgba(129,140,248,0.12),transparent_50%)] opacity-100",cardPurpleBlur:"absolute top-0 right-0 w-64 h-64 bg-gradient-to-br from-indigo-300/40 via-purple-300/25 to-transparent rounded-full blur-3xl animate-pulse-slow",cardPinkBlur:"absolute bottom-0 left-0 w-56 h-56 bg-gradient-to-tr from-blue-300/35 via-purple-200/20 to-transparent rounded-full blur-3xl",cardPulse1:"absolute top-4 right-4 w-8 h-8 bg-gradient-to-br from-indigo-400/30 to-purple-400/30 rounded-full blur-md opacity-60 animate-pulse",cardPulse2:"absolute bottom-6 left-6 w-6 h-6 bg-gradient-to-br from-blue-400/25 to-purple-400/25 rounded-full blur-md opacity-50 animate-pulse",main:"w-full flex flex-col items-center justify-center bg-gradient-to-b from-[#F8F9FC] via-[#FFFFFF] to-[#F8F9FC] shadow-2xl p-0 overflow-hidden h-full relative",text:{primary:"text-gray-900 font-semibold",secondary:"text-gray-700",muted:"text-gray-500",accent:"text-transparent bg-clip-text bg-gradient-to-r from-indigo-600 via-purple-600 to-blue-600"},micButton:"relative w-20 h-20 backdrop-blur-xl border-2 border-indigo-400/40 rounded-3xl flex items-center justify-center hover:from-indigo-700 hover:to-purple-700 hover:border-indigo-500/60 hover:scale-105 hover:shadow-2xl hover:shadow-indigo-500/40 transition-all duration-500 ease-out group overflow-hidden text-white",chatButton:"relative w-20 h-20 bg-gradient-to-br from-blue-600 to-cyan-600 backdrop-blur-xl border-2 border-blue-400/40 rounded-3xl flex items-center justify-center hover:from-blue-700 hover:to-cyan-700 hover:border-blue-500/60 hover:scale-105 hover:shadow-2xl hover:shadow-blue-500/40 transition-all duration-500 ease-out group overflow-hidden text-white",videoButton:"relative w-20 h-20 bg-gradient-to-br from-purple-600 to-pink-600 backdrop-blur-xl border-2 border-purple-400/40 rounded-3xl flex items-center justify-center hover:from-purple-700 hover:to-pink-700 hover:border-purple-500/60 hover:scale-105 hover:shadow-2xl hover:shadow-purple-500/40 transition-all duration-500 ease-out group overflow-hidden text-white",popupTrigger:"bg-gradient-to-r from-indigo-600 to-purple-600 backdrop-blur-xl border-2 border-indigo-400/40 text-white font-bold hover:from-indigo-700 hover:to-purple-700 hover:border-indigo-500/60 hover:scale-[1.02] hover:shadow-2xl hover:shadow-indigo-500/40 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:ring-offset-2 focus:ring-offset-white transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-white/80 backdrop-blur-xl rounded-2xl text-center text-gray-700 text-sm font-medium transition-all duration-700 ease-in-out border border-indigo-100 shadow-lg shadow-indigo-100/20",statusIndicator:"w-2.5 h-2.5 bg-emerald-500 rounded-full animate-pulse shadow-lg shadow-emerald-500/60",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-indigo-100 rounded-3xl py-4 flex flex-col justify-end h-full bg-white/80 backdrop-blur-xl shadow-2xl",chatInput:{container:"bg-white/80 backdrop-blur-xl border-indigo-100 shadow-xl",textarea:"bg-white/90 border border-indigo-100 rounded-xl text-gray-900 placeholder-gray-400 font-medium px-4 py-3 focus:border-indigo-300 focus:ring-2 focus:ring-indigo-200",sendButton:"bg-gradient-to-r from-indigo-600 to-purple-600 hover:from-indigo-700 hover:to-purple-700 border-2 border-transparent disabled:from-gray-300 disabled:to-gray-300 disabled:opacity-40 text-white font-bold hover:scale-105 transition-all duration-300 shadow-lg hover:shadow-indigo-500/40",attachButton:"text-gray-500 hover:text-indigo-600 hover:bg-indigo-50 transition-all duration-300 rounded-xl",endButton:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/50 hover:border-red-400/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-red-500/40"},chatMessage:{own:"bg-indigo-100/70 text-gray-900 backdrop-blur-md shadow-lg border border-indigo-200/50",other:"bg-white/80 text-gray-900 border border-gray-200 backdrop-blur-md shadow-lg"},chatHeader:{container:"bg-white/80 border-indigo-100 backdrop-blur-xl shadow-xl",backButton:"text-gray-600 hover:text-indigo-600 hover:bg-indigo-50 transition-all duration-300 rounded-xl"},spinner:"w-10 h-10 animate-spin text-indigo-600 mb-2",suggestedResponse:{container:"bg-white/80 text-indigo-700 border-indigo-100 backdrop-blur-md hover:bg-indigo-50 hover:border-indigo-200 transition-all duration-300 shadow-lg"},video:{container:"bg-gradient-to-b from-[#F8F9FC] via-[#FFFFFF] to-[#F8F9FC] text-gray-900",header:"border-indigo-100 bg-white/80 backdrop-blur-xl shadow-xl",headerButton:"bg-white/90 hover:bg-indigo-50 border-2 border-indigo-100 hover:border-indigo-200 text-gray-900 hover:scale-105 transition-all duration-300 rounded-xl shadow-lg",statusDot:"bg-emerald-500 animate-pulse shadow-lg shadow-emerald-500/60",controlsBackground:"bg-gradient-to-t from-white via-white/90 to-white/60 backdrop-blur-xl border-t border-indigo-100 shadow-2xl",controlEnabled:"bg-white/90 hover:bg-indigo-50 border-2 border-indigo-100 hover:border-indigo-200 text-gray-900 hover:scale-105 hover:shadow-xl hover:shadow-indigo-200/30 transition-all duration-300 font-semibold",controlDisabled:"bg-gray-100/50 hover:bg-gray-100/60 text-gray-400 border border-gray-200 transition-all duration-300",endCall:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/50 hover:border-red-400/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-2xl hover:shadow-red-500/50",tile:"bg-white/80 border border-indigo-100 shadow-2xl backdrop-blur-md rounded-2xl",placeholder:"bg-gray-50 text-gray-600",avatar:"bg-indigo-100/80 text-indigo-700 border-2 border-indigo-200",nameOverlay:"bg-gradient-to-t from-white via-white/80 to-transparent text-gray-900 backdrop-blur-sm font-bold",mutedIndicator:"bg-red-600 text-white shadow-xl shadow-red-500/40 font-semibold"}},Sw={card:"text-white bg-gradient-to-b from-[#0a0a0a] via-[#000000] to-[#0a0a0a] border border-gray-800/30 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-[0_8px_32px_rgba(0,0,0,0.9),0_0_0_1px_rgba(255,255,255,0.08)_inset]",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-32 z-10 bg-gradient-to-b from-black/95 via-black/30 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_top,_rgba(255,255,255,0.03),transparent_60%)] opacity-100",cardPurpleBlur:"absolute top-0 left-1/2 -translate-x-1/2 w-[400px] h-[200px] bg-gradient-to-b from-white/[0.03] via-white/[0.015] to-transparent blur-3xl",cardPinkBlur:"absolute bottom-0 left-1/2 -translate-x-1/2 w-[300px] h-[150px] bg-gradient-to-t from-white/[0.02] via-transparent to-transparent blur-3xl",cardPulse1:"hidden",cardPulse2:"hidden",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-black p-0 overflow-hidden h-full relative",text:{primary:"text-white font-semibold",secondary:"text-white/95",muted:"text-gray-400",accent:"text-transparent bg-clip-text bg-gradient-to-r from-gray-200 via-white to-gray-200"},micButton:"relative w-20 h-20 bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] rounded-2xl flex items-center justify-center hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.03] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] transition-all duration-300 ease-out group overflow-hidden",chatButton:"relative w-20 h-20 bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] rounded-2xl flex items-center justify-center hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.03] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] transition-all duration-300 ease-out group overflow-hidden",videoButton:"relative w-20 h-20 bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] rounded-2xl flex items-center justify-center hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.03] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] transition-all duration-300 ease-out group overflow-hidden",popupTrigger:"bg-white/[0.10] backdrop-blur-sm border border-white/[0.2] text-white font-bold hover:bg-white/[0.15] hover:border-white/[0.35] hover:scale-[1.02] hover:shadow-[0_8px_24px_rgba(255,255,255,0.15)] focus:outline-none focus:ring-2 focus:ring-white/30 focus:ring-offset-2 focus:ring-offset-black transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-white/[0.06] backdrop-blur-md rounded-xl text-center text-white/90 text-sm font-medium transition-all duration-700 ease-in-out border border-white/[0.12] ",statusIndicator:"w-2 h-2 bg-emerald-400 rounded-full animate-pulse shadow-[0_0_8px_rgba(52,211,153,0.6)]",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-white/[0.12] rounded-2xl py-4 flex flex-col justify-end h-full bg-black/90 backdrop-blur-md shadow-[0_4px_24px_rgba(0,0,0,0.6)]",chatInput:{container:"bg-black/90 backdrop-blur-md border-white/[0.12] shadow-[0_4px_16px_rgba(0,0,0,0.4)]",textarea:"bg-white/[0.08] border border-white/[0.12] rounded-xl text-white placeholder-gray-500 font-medium px-4 py-3 focus:border-white/[0.2] focus:ring-1 focus:ring-white/[0.15] transition-all",sendButton:"bg-white/[0.12] hover:bg-white/[0.18] border border-white/[0.2] hover:border-white/[0.35] disabled:border-white/[0.08] disabled:opacity-40 text-white font-bold hover:scale-[1.02] transition-all duration-300 shadow-md hover:shadow-[0_4px_16px_rgba(255,255,255,0.12)]",attachButton:"text-gray-400 hover:text-white hover:bg-white/[0.08] transition-all duration-300 rounded-lg",endButton:"bg-red-500/90 hover:bg-red-500 border border-red-400/40 hover:border-red-400/60 text-white font-bold hover:scale-[1.02] transition-all duration-300 shadow-md hover:shadow-[0_4px_16px_rgba(239,68,68,0.3)]"},chatMessage:{own:"bg-white/[0.10] text-white backdrop-blur-sm shadow-md border border-white/[0.15]",other:"bg-white/[0.06] text-white border border-white/[0.10] backdrop-blur-sm shadow-md"},chatHeader:{container:"bg-black/90 border-white/[0.12] backdrop-blur-md shadow-lg",backButton:"text-gray-400 hover:text-white hover:bg-white/[0.08] transition-all duration-300 rounded-lg"},spinner:"w-10 h-10 animate-spin text-white mb-2",suggestedResponse:{container:"bg-white/[0.08] text-white border-white/[0.15] backdrop-blur-sm hover:bg-white/[0.12] hover:border-white/[0.25] transition-all duration-300 shadow-md"},video:{container:"bg-black text-white",header:"border-white/[0.12] bg-black/90 backdrop-blur-md shadow-lg",headerButton:"bg-white/[0.12] hover:bg-white/[0.18] border border-white/[0.2] hover:border-white/[0.35] text-white hover:scale-[1.02] transition-all duration-300 rounded-lg shadow-md",statusDot:"bg-emerald-400 animate-pulse shadow-[0_0_8px_rgba(52,211,153,0.6)]",controlsBackground:"bg-gradient-to-t from-black via-black/95 to-black/70 backdrop-blur-md border-t border-white/[0.12] shadow-[0_-4px_24px_rgba(0,0,0,0.6)]",controlEnabled:"bg-white/[0.12] hover:bg-white/[0.18] border border-white/[0.2] hover:border-white/[0.35] text-white hover:scale-[1.02] hover:shadow-md hover:shadow-white/10 transition-all duration-300 font-semibold",controlDisabled:"bg-white/[0.04] hover:bg-white/[0.06] text-gray-500 border border-white/[0.08] transition-all duration-300",endCall:"bg-red-500/90 hover:bg-red-500 border border-red-400/40 hover:border-red-400/60 text-white font-bold hover:scale-[1.02] transition-all duration-300 shadow-md hover:shadow-red-500/30",tile:"bg-white/[0.08] border border-white/[0.12] shadow-lg backdrop-blur-sm rounded-xl",placeholder:"bg-white/[0.06] text-gray-400",avatar:"bg-white/[0.10] text-gray-300 border border-white/[0.12]",nameOverlay:"bg-gradient-to-t from-black via-black/85 to-transparent text-white backdrop-blur-sm font-semibold",mutedIndicator:"bg-red-500 text-white shadow-md shadow-red-500/30 font-semibold"}},kw={card:"text-white bg-gradient-to-b from-[#0e1218] via-[#161a25] to-[#0e1218] border border-[#2a3142]/50 w-full h-full flex flex-col justify-between overflow-hidden relative shadow-2xl",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-40 z-10 bg-gradient-to-b from-[#0b1220]/90 via-[#0b1220]/40 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(circle_at_50%_-20%,_rgba(34,211,238,0.08),transparent_50%)] opacity-100",cardPurpleBlur:"absolute top-0 left-1/2 -translate-x-1/2 w-[600px] h-[300px] bg-gradient-to-b from-cyan-500/[0.12] via-sky-500/[0.06] to-transparent blur-3xl",cardPinkBlur:"absolute bottom-0 left-1/2 -translate-x-1/2 w-[500px] h-[250px] bg-gradient-to-t from-cyan-600/[0.08] via-transparent to-transparent blur-3xl",cardPulse1:"hidden",cardPulse2:"hidden",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-b from-[#0e1218] via-[#161a25] to-[#0e1218] shadow-2xl p-0 overflow-hidden h-full relative",text:{primary:"text-white font-semibold",secondary:"text-white/95",muted:"text-white/70",accent:"text-transparent bg-clip-text bg-gradient-to-r from-cyan-300 via-sky-300 to-cyan-300"},micButton:"relative w-20 h-20 bg-[#171b26]/90 backdrop-blur-xl border-2 border-cyan-500/30 rounded-3xl flex items-center justify-center hover:bg-[#171b26] hover:border-cyan-400/50 hover:scale-105 hover:shadow-2xl hover:shadow-cyan-500/30 transition-all duration-500 ease-out group overflow-hidden",chatButton:"relative w-20 h-20 bg-[#171b26]/90 backdrop-blur-xl border-2 border-sky-500/30 rounded-3xl flex items-center justify-center hover:bg-[#171b26] hover:border-sky-400/50 hover:scale-105 hover:shadow-2xl hover:shadow-sky-500/30 transition-all duration-500 ease-out group overflow-hidden",videoButton:"relative w-20 h-20 bg-[#171b26]/90 backdrop-blur-xl border-2 border-cyan-500/30 rounded-3xl flex items-center justify-center hover:bg-[#171b26] hover:border-cyan-400/50 hover:scale-105 hover:shadow-2xl hover:shadow-cyan-500/30 transition-all duration-500 ease-out group overflow-hidden",popupTrigger:"bg-[#171b26]/90 backdrop-blur-xl border-2 border-cyan-500/30 text-white font-bold hover:bg-[#171b26] hover:border-cyan-400/50 hover:scale-[1.02] hover:shadow-2xl hover:shadow-cyan-500/30 focus:outline-none focus:ring-2 focus:ring-cyan-400/50 focus:ring-offset-2 focus:ring-offset-[#161a25] transition-all duration-300",promptSlider:"absolute w-full py-4 px-6 bg-[#1c2230]/60 backdrop-blur-xl rounded-2xl text-center text-white/90 text-sm font-medium transition-all duration-700 ease-in-out border border-[#2a3142]/80 shadow-xl",statusIndicator:"w-2.5 h-2.5 bg-emerald-400 rounded-full animate-pulse shadow-lg shadow-emerald-400/60",pulseRings:{ring1:"hidden",ring2:"hidden",ring3:"hidden"},controlBar:"border border-[#2a3142]/80 rounded-3xl py-4 flex flex-col justify-end h-full bg-[#161a25]/80 backdrop-blur-xl shadow-2xl",chatInput:{container:"bg-[#1c2230]/80 backdrop-blur-xl border-[#2a3142]/80 shadow-xl",textarea:"bg-[#1c2230]/60 border border-[#2a3142]/50 rounded-xl text-white placeholder-gray-400 font-medium px-4 py-3",sendButton:"bg-[#171b26]/90 hover:bg-[#171b26] border-2 border-cyan-500/30 hover:border-cyan-400/50 disabled:border-[#2a3142] disabled:opacity-40 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-cyan-500/30",attachButton:"text-gray-400 hover:text-white hover:bg-[#2a3142]/30 transition-all duration-300 rounded-xl",endButton:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/40 hover:border-red-400/60 text-white font-bold hover:scale-105 transition-all duration-300 shadow-xl hover:shadow-red-500/40"},chatMessage:{own:"bg-[#243049]/70 text-white backdrop-blur-md shadow-lg border border-[#2a3142]/80",other:"bg-[#1c2230]/60 text-white border border-[#2a3142]/80 backdrop-blur-md shadow-lg"},chatHeader:{container:"bg-[#1c2230]/80 border-[#2a3142]/80 backdrop-blur-xl shadow-xl",backButton:"text-white/80 hover:text-white hover:bg-[#2a3142]/30 transition-all duration-300 rounded-xl"},spinner:"w-10 h-10 animate-spin text-cyan-400 mb-2",suggestedResponse:{container:"bg-[#1c2230]/70 text-white border-[#2a3142]/80 backdrop-blur-md hover:bg-[#1c2230]/80 hover:border-cyan-400/30 transition-all duration-300 shadow-lg"},video:{container:"bg-gradient-to-b from-[#0e1218] via-[#161a25] to-[#0e1218] text-white",header:"border-[#2a3142]/80 bg-[#1c2230]/80 backdrop-blur-xl shadow-xl",headerButton:"bg-[#171b26]/90 hover:bg-[#171b26] border-2 border-cyan-500/30 hover:border-cyan-400/50 text-white hover:scale-105 transition-all duration-300 rounded-xl shadow-lg",statusDot:"bg-emerald-400 animate-pulse shadow-lg shadow-emerald-400/60",controlsBackground:"bg-gradient-to-t from-[#161a25] via-[#161a25]/90 to-[#161a25]/60 backdrop-blur-xl border-t border-[#2a3142]/80 shadow-2xl",controlEnabled:"bg-[#171b26]/90 hover:bg-[#171b26] border-2 border-cyan-500/30 hover:border-cyan-400/50 text-white hover:scale-105 hover:shadow-xl hover:shadow-cyan-500/30 transition-all duration-300 font-semibold",controlDisabled:"bg-[#1c2230]/50 hover:bg-[#1c2230]/60 text-white/40 border border-[#2a3142] transition-all duration-300",endCall:"bg-red-600/90 hover:bg-red-600 border-2 border-red-400/50 hover:border-red-400/70 text-white font-bold hover:scale-105 transition-all duration-300 shadow-2xl hover:shadow-red-500/50",tile:"bg-[#1c2230]/70 border border-[#2a3142]/80 shadow-2xl backdrop-blur-md rounded-2xl",placeholder:"bg-[#1c2230]/60 text-white/80",avatar:"bg-[#171b26]/80 text-white border-2 border-[#2a3142]/80",nameOverlay:"bg-gradient-to-t from-[#161a25] via-[#161a25]/80 to-transparent text-white backdrop-blur-sm font-bold",mutedIndicator:"bg-red-600 text-white shadow-xl shadow-red-500/40 font-semibold"}},Cw={card:" text-white bg-gradient-to-br from-[#171727] to-[#12121F] border border-gray-800 w-full h-full flex flex-col justify-between overflow-hidden relative",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-10 z-10 bg-gradient-to-b from-[#171727]/90 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_center,_var(--tw-gradient-stops))] from-[#3B82F6]/15 via-transparent to-transparent",cardPurpleBlur:"absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-[#8B5CF6]/25 to-transparent rounded-full blur-2xl",cardPinkBlur:"absolute bottom-0 left-0 w-24 h-24 bg-gradient-to-tr from-[#EC4899]/20 to-transparent rounded-full blur-xl",cardPulse1:"absolute -top-2 -left-2 w-6 h-6 bg-gradient-to-br from-[#3B82F6] to-[#8B5CF6] rounded-full blur-sm opacity-50 animate-pulse",cardPulse2:"absolute -bottom-2 -right-2 w-4 h-4 bg-gradient-to-br from-[#EC4899] to-[#8B5CF6] rounded-full blur-sm opacity-40 animate-pulse",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-br from-[#171727] to-[#12121F] rounded-2xl shadow-xl p-0 overflow-hidden h-full",text:{primary:"text-white font-semibold",secondary:"text-white/95",muted:"text-white/70",accent:"bg-clip-text text-transparent bg-gradient-to-r from-[#3B82F6] via-[#8B5CF6] to-[#EC4899]"},micButton:"relative w-20 h-20 bg-gradient-to-br from-[#3B82F6] to-[#8B5CF6] rounded-full flex items-center justify-center hover:scale-105 transition-all duration-300 mic-glow shadow-2xl group",chatButton:"relative w-20 h-20 bg-gradient-to-br from-[#10B981] to-[#059669] rounded-full flex items-center justify-center hover:scale-105 transition-all duration-300 shadow-2xl group",videoButton:"relative w-20 h-20 bg-gradient-to-br from-[#8B5CF6] to-[#EC4899] rounded-full flex items-center justify-center hover:scale-105 transition-all duration-300 shadow-2xl group",popupTrigger:"bg-gradient-to-br from-[#3B82F6] to-[#8B5CF6] text-white font-medium hover:from-[#2563EB] hover:to-[#7C3AED] focus:outline-none focus:ring-2 focus:ring-blue-500 focus:ring-offset-2 focus:ring-offset-gray-900 shadow-xl",promptSlider:"absolute w-full py-3 px-2 bg-[#1E1E2E] rounded-xl text-center text-gray-200 text-sm transition-opacity duration-700 ease-in-out border border-gray-700",statusIndicator:"w-2 h-2 bg-[#10B981] rounded-full animate-pulse",pulseRings:{ring1:"w-32 h-32 rounded-full border-2 border-[#3B82F6]/40 pulse-ring",ring2:"absolute w-28 h-28 rounded-full border-2 border-[#8B5CF6]/30 pulse-ring",ring3:"absolute w-24 h-24 rounded-full border-2 border-[#EC4899]/20 pulse-ring"},controlBar:"border border-border rounded-3xl py-4 flex flex-col justify-end h-full bg-[#1E1E2E] shadow-2xl",chatInput:{container:"bg-[#1E1E2E] border-gray-700",textarea:"bg-[#1E1E2E] border-none text-white placeholder-gray-400",sendButton:"bg-[#3B82F6] hover:bg-[#2563EB] disabled:bg-gray-600 disabled:opacity-50 text-white",attachButton:"text-gray-400 hover:text-gray-300 hover:bg-gray-700",endButton:"bg-red-900/20 hover:bg-red-800/30 text-red-400 border-red-800"},chatMessage:{own:"bg-[#1E1E2E]/80 text-white",other:"bg-[#1E1E2E] text-white border border-gray-700"},chatHeader:{container:"bg-[#1E1E2E] border-gray-700",backButton:"text-gray-400 hover:text-white hover:bg-gray-700"},spinner:"w-10 h-10 animate-spin text-blue-400 mb-2",suggestedResponse:{container:"bg-[#221f3f] text-white border-none"},video:{container:"bg-gradient-to-br from-[#171727] to-[#12121F] text-white",header:"border-gray-700 bg-[#1E1E2E]/80",headerButton:"bg-[#1E1E2E] hover:bg-gray-700 text-gray-300",statusDot:"bg-[#10B981] animate-pulse",controlsBackground:"bg-[#1E1E2E]/90 backdrop-blur-sm border-t border-gray-700",controlEnabled:"bg-[#3B82F6] hover:bg-[#2563EB] text-white",controlDisabled:"bg-gray-700 hover:bg-gray-600 text-gray-300",endCall:"bg-red-600 hover:bg-red-700 text-white",tile:"bg-[#1E1E2E] border border-gray-700 shadow-xl",placeholder:"bg-[#1E1E2E] text-gray-300",avatar:"bg-gray-700 text-gray-300",nameOverlay:"bg-black/70 text-white",mutedIndicator:"bg-red-600/80 text-white"}},Lu={dark:ww,light:Ew,vox:Sw,midnight:kw,levish:Cw};function Pt(e){return Lu[e]||Lu.vox}function Fu({timeout:e}){const[t,n]=N.useState(100),r=N.useRef(null),i=N.useRef(null);return N.useEffect(()=>{if(!e||e<=0)return;n(100),i.current=Date.now();const o=()=>{if(!e||i.current===null)return;const s=Date.now()-i.current,a=Math.max(0,100-s/e*100);n(a),a>0&&(r.current=requestAnimationFrame(o))};return r.current=requestAnimationFrame(o),()=>{r.current&&cancelAnimationFrame(r.current)}},[e]),!e||e<=0?null:h.jsx("div",{className:"w-full h-1 relative top-1 rounded-t-4xl bg-gray-700 overflow-hidden",children:h.jsx(Me.div,{className:"h-1 rounded-t-4xl dark:bg-white bg-blue-200 ",initial:{width:"100%"},animate:{width:`${Math.max(t,2)}%`},transition:{duration:.1,ease:"linear"},style:{minWidth:"2%"}})})}function fi({interaction:e,theme:t,onDismiss:n,client:r,addLocalMessage:i}){var a;if(!e||!e.isVisible||!e.component)return null;const[o]=D.useState(()=>Date.now()),s=()=>e.component?D.createElement(e.component,{handler:e.handler||void 0,timeout:e.timeout,loadData:async c=>{console.log("InteractiveComponent: Loading data:",c)},presentationMode:e.presentationMode,data:e.data,client:r,addLocalMessage:i}):h.jsx("div",{className:"p-4 text-red-500",children:"Component not found"});switch(e.presentationMode){case"fullscreen":return h.jsx(Tr,{children:h.jsxs(Me.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"fixed inset-0 z-[9999] bg-black",children:[h.jsxs("div",{className:"flex flex-col",children:[h.jsx(Fu,{timeout:e.timeout}),h.jsxs("div",{className:"flex items-center justify-between p-4 bg-black/80 text-white border-b border-gray-700",children:[h.jsx("h3",{className:"text-lg font-semibold",children:e.methodName.replace(/_/g," ").replace(/\b\w/g,l=>l.toUpperCase())}),h.jsx("button",{onClick:n||((a=e.handler)==null?void 0:a.dismissView),className:"p-2 rounded-full bg-white/20 hover:bg-white/30 text-white transition-colors",children:h.jsx(ot.X,{className:"w-5 h-5"})})]})]}),h.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:s()})]})});case"embedded":default:return h.jsx(Tr,{children:h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},className:"w-fit rounded-lg ",children:h.jsxs("div",{children:[h.jsx(Fu,{timeout:e.timeout}),s()]})})})}}function hi({duration:e,theme:t="vox",onTimerExpired:n,className:r="",showIcon:i=!0}){const[o,s]=N.useState(e),[a,l]=N.useState(!1);N.useEffect(()=>{if(o<=0){l(!0),n==null||n();return}const u=setInterval(()=>{s(d=>{const f=d-1;return f<=0?(l(!0),n==null||n(),0):f})},1e3);return()=>clearInterval(u)},[o,n]),N.useEffect(()=>{s(e),l(!1)},[e]);const c=()=>a?"text-red-500":o<=60?"text-orange-500":o<=300?"text-yellow-500":t==="dark"?"text-gray-300":"text-gray-600";return h.jsxs("div",{className:`flex items-center gap-1 text-sm ${c()} ${r}`,children:[i&&h.jsx(ot.Clock,{className:"w-4 h-4"}),h.jsx("span",{className:"font-mono",children:dp(o)}),a&&h.jsx("span",{className:"text-xs ml-1 text-red-500",children:"(Expired)"})]})}function Do({modality:e,theme:t,disabled:n=!1,showMicrophone:r=!1,microphoneEnabled:i=!0,microphoneLoading:o=!1,onToggleMicrophone:s,showCamera:a=!1,cameraEnabled:l=!0,cameraLoading:c=!1,onToggleCamera:u,showScreenShare:d=!1,screenShareEnabled:f=!1,screenShareLoading:p=!1,onToggleScreenShare:m,showChatToggle:g=!1,chatOpen:v=!1,onToggleChat:y,showTextInput:E=!1,textInputPlaceholder:w="Type a message...",onSendText:_,onSendAttachments:C,supportsAttachments:T=!1,showEndCall:R=!0,onEndCall:A}){var $;const I=Pt(t),[b,M]=N.useState(""),O=N.useRef(null),L=()=>{const x=b.trim();x&&_&&(_(x),M(""))},j=x=>{x.key==="Enter"&&!x.shiftKey&&(x.preventDefault(),L())},W=x=>{const z=Array.from(x.target.files||[]);z.length>0&&C&&C(z),O.current&&(O.current.value="")},oe=Be("flex items-center gap-3 px-3 py-2 w-full backdrop-blur-xl ",E?"justify-between":"justify-center",t==="light"?"bg-white/95 border-gray-200":""),te=(x,z)=>{var G,k,K;return z==="end-call"?Be("p-3 rounded-full transition-all duration-200",((G=I.video)==null?void 0:G.endCall)||"bg-red-500 text-white hover:bg-red-600",n?"opacity-50 cursor-not-allowed":"hover:scale-105"):Be("p-3 rounded-full transition-all duration-200",x?((k=I.video)==null?void 0:k.controlEnabled)||"bg-green-500 text-white":((K=I.video)==null?void 0:K.controlDisabled)||"bg-gray-500 text-white",n?"opacity-50 cursor-not-allowed":"hover:scale-105")},B=()=>h.jsx("div",{className:"w-5 h-5 animate-spin rounded-full border-2 border-current border-t-transparent"});return h.jsxs("div",{className:oe,children:[E&&h.jsxs("div",{className:"flex items-center gap-2 flex-1",children:[T&&C&&h.jsxs(h.Fragment,{children:[h.jsx("button",{onClick:()=>{var x;return(x=O.current)==null?void 0:x.click()},disabled:n,className:Be("p-2 rounded-full transition-all duration-200",t==="light"?"hover:bg-gray-100":"hover:bg-gray-800",n&&"opacity-50 cursor-not-allowed"),title:"Attach files",children:h.jsx(ot.Paperclip,{className:"w-5 h-5"})}),h.jsx("input",{ref:O,type:"file",multiple:!0,accept:"image/*",onChange:W,className:"hidden"})]}),h.jsx("input",{type:"text",value:b,onChange:x=>M(x.target.value),onKeyDown:j,disabled:n,placeholder:w,className:Be("flex-1 px-4 py-2 rounded-full border outline-none transition-all",t==="light"?"bg-gray-100 border-gray-300 focus:border-blue-500 text-gray-900":"bg-gray-800 border-gray-700 focus:border-blue-400 text-white",n&&"opacity-50 cursor-not-allowed")}),h.jsx("button",{onClick:L,disabled:n||!b.trim(),className:Be("p-2 rounded-full transition-all duration-200",b.trim()?(($=I.video)==null?void 0:$.controlEnabled)||"bg-blue-500 text-white hover:bg-blue-600":t==="light"?"bg-gray-200 text-gray-400":"bg-gray-700 text-gray-500",n&&"opacity-50 cursor-not-allowed",b.trim()&&!n&&"hover:scale-105"),title:"Send message",children:h.jsx(ot.SendHorizontal,{className:"w-5 h-5"})})]}),!E&&h.jsxs(h.Fragment,{children:[r&&s&&h.jsx("button",{onClick:s,disabled:n||o,className:te(i),title:i?"Mute microphone":"Unmute microphone",children:o?h.jsx(B,{}):i?h.jsx(ot.Mic,{className:"w-5 h-5"}):h.jsx(ot.MicOff,{className:"w-5 h-5"})}),a&&u&&h.jsx("button",{onClick:u,disabled:n||c,className:te(l),title:l?"Turn off camera":"Turn on camera",children:c?h.jsx(B,{}):l?h.jsx(ot.Camera,{className:"w-5 h-5"}):h.jsx(ot.CameraOff,{className:"w-5 h-5"})}),d&&m&&h.jsx("button",{onClick:m,disabled:n||p,className:te(f),title:f?"Stop screen share":"Share screen",children:p?h.jsx(B,{}):h.jsx(ot.Monitor,{className:"w-5 h-5"})}),g&&y&&h.jsx("button",{onClick:y,disabled:n,className:te(v),title:e==="voice"?v?"Hide transcription":"Show transcription":v?"Hide chat":"Show chat",children:h.jsx(ot.MessageCircle,{className:"w-5 h-5"})})]}),R&&A&&h.jsx("button",{onClick:A,disabled:n,className:te(!1,"end-call"),title:"End call",children:h.jsx(ot.PhoneOff,{className:"w-5 h-5"})})]})}Do.displayName="UnifiedControlBar";const _w=({logLevel:e}={})=>{const t=Rt.useRoomContext();D.useEffect(()=>(le.setLogLevel(e??"debug"),window.__lk_room=t,()=>{window.__lk_room=void 0}),[t,e])},hp=D.forwardRef((e,t)=>{const{alt:n,color:r="currentColor",size:i="1em",weight:o="regular",mirrored:s=!1,children:a,weights:l,...c}=e;return D.createElement("svg",{ref:t,xmlns:"http://www.w3.org/2000/svg",width:i,height:i,fill:r,viewBox:"0 0 256 256",transform:s?"scale(-1, 1)":void 0,...c},!!n&&D.createElement("title",null,n),a,l.get(o))});hp.displayName="SSRBase";const Tw=new Map([["bold",D.createElement(D.Fragment,null,D.createElement("path",{d:"M140,32V64a12,12,0,0,1-24,0V32a12,12,0,0,1,24,0Zm33.25,62.75a12,12,0,0,0,8.49-3.52L204.37,68.6a12,12,0,0,0-17-17L164.77,74.26a12,12,0,0,0,8.48,20.49ZM224,116H192a12,12,0,0,0,0,24h32a12,12,0,0,0,0-24Zm-42.26,48.77a12,12,0,1,0-17,17l22.63,22.63a12,12,0,0,0,17-17ZM128,180a12,12,0,0,0-12,12v32a12,12,0,0,0,24,0V192A12,12,0,0,0,128,180ZM74.26,164.77,51.63,187.4a12,12,0,0,0,17,17l22.63-22.63a12,12,0,1,0-17-17ZM76,128a12,12,0,0,0-12-12H32a12,12,0,0,0,0,24H64A12,12,0,0,0,76,128ZM68.6,51.63a12,12,0,1,0-17,17L74.26,91.23a12,12,0,0,0,17-17Z"}))],["duotone",D.createElement(D.Fragment,null,D.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),D.createElement("path",{d:"M136,32V64a8,8,0,0,1-16,0V32a8,8,0,0,1,16,0Zm37.25,58.75a8,8,0,0,0,5.66-2.35l22.63-22.62a8,8,0,0,0-11.32-11.32L167.6,77.09a8,8,0,0,0,5.65,13.66ZM224,120H192a8,8,0,0,0,0,16h32a8,8,0,0,0,0-16Zm-45.09,47.6a8,8,0,0,0-11.31,11.31l22.62,22.63a8,8,0,0,0,11.32-11.32ZM128,184a8,8,0,0,0-8,8v32a8,8,0,0,0,16,0V192A8,8,0,0,0,128,184ZM77.09,167.6,54.46,190.22a8,8,0,0,0,11.32,11.32L88.4,178.91A8,8,0,0,0,77.09,167.6ZM72,128a8,8,0,0,0-8-8H32a8,8,0,0,0,0,16H64A8,8,0,0,0,72,128ZM65.78,54.46A8,8,0,0,0,54.46,65.78L77.09,88.4A8,8,0,0,0,88.4,77.09Z"}))],["fill",D.createElement(D.Fragment,null,D.createElement("path",{d:"M128,24A104,104,0,1,0,232,128,104.11,104.11,0,0,0,128,24Zm33.94,58.75,17-17a8,8,0,0,1,11.32,11.32l-17,17a8,8,0,0,1-11.31-11.31ZM48,136a8,8,0,0,1,0-16H72a8,8,0,0,1,0,16Zm46.06,37.25-17,17a8,8,0,0,1-11.32-11.32l17-17a8,8,0,0,1,11.31,11.31Zm0-79.19a8,8,0,0,1-11.31,0l-17-17A8,8,0,0,1,77.09,65.77l17,17A8,8,0,0,1,94.06,94.06ZM136,208a8,8,0,0,1-16,0V184a8,8,0,0,1,16,0Zm0-136a8,8,0,0,1-16,0V48a8,8,0,0,1,16,0Zm54.23,118.23a8,8,0,0,1-11.32,0l-17-17a8,8,0,0,1,11.31-11.31l17,17A8,8,0,0,1,190.23,190.23ZM208,136H184a8,8,0,0,1,0-16h24a8,8,0,0,1,0,16Z"}))],["light",D.createElement(D.Fragment,null,D.createElement("path",{d:"M134,32V64a6,6,0,0,1-12,0V32a6,6,0,0,1,12,0Zm39.25,56.75A6,6,0,0,0,177.5,87l22.62-22.63a6,6,0,0,0-8.48-8.48L169,78.5a6,6,0,0,0,4.24,10.25ZM224,122H192a6,6,0,0,0,0,12h32a6,6,0,0,0,0-12Zm-46.5,47A6,6,0,0,0,169,177.5l22.63,22.62a6,6,0,0,0,8.48-8.48ZM128,186a6,6,0,0,0-6,6v32a6,6,0,0,0,12,0V192A6,6,0,0,0,128,186ZM78.5,169,55.88,191.64a6,6,0,1,0,8.48,8.48L87,177.5A6,6,0,1,0,78.5,169ZM70,128a6,6,0,0,0-6-6H32a6,6,0,0,0,0,12H64A6,6,0,0,0,70,128ZM64.36,55.88a6,6,0,0,0-8.48,8.48L78.5,87A6,6,0,1,0,87,78.5Z"}))],["regular",D.createElement(D.Fragment,null,D.createElement("path",{d:"M136,32V64a8,8,0,0,1-16,0V32a8,8,0,0,1,16,0Zm37.25,58.75a8,8,0,0,0,5.66-2.35l22.63-22.62a8,8,0,0,0-11.32-11.32L167.6,77.09a8,8,0,0,0,5.65,13.66ZM224,120H192a8,8,0,0,0,0,16h32a8,8,0,0,0,0-16Zm-45.09,47.6a8,8,0,0,0-11.31,11.31l22.62,22.63a8,8,0,0,0,11.32-11.32ZM128,184a8,8,0,0,0-8,8v32a8,8,0,0,0,16,0V192A8,8,0,0,0,128,184ZM77.09,167.6,54.46,190.22a8,8,0,0,0,11.32,11.32L88.4,178.91A8,8,0,0,0,77.09,167.6ZM72,128a8,8,0,0,0-8-8H32a8,8,0,0,0,0,16H64A8,8,0,0,0,72,128ZM65.78,54.46A8,8,0,0,0,54.46,65.78L77.09,88.4A8,8,0,0,0,88.4,77.09Z"}))],["thin",D.createElement(D.Fragment,null,D.createElement("path",{d:"M132,32V64a4,4,0,0,1-8,0V32a4,4,0,0,1,8,0Zm41.25,54.75a4,4,0,0,0,2.83-1.18L198.71,63a4,4,0,0,0-5.66-5.66L170.43,79.92a4,4,0,0,0,2.82,6.83ZM224,124H192a4,4,0,0,0,0,8h32a4,4,0,0,0,0-8Zm-47.92,46.43a4,4,0,1,0-5.65,5.65l22.62,22.63a4,4,0,0,0,5.66-5.66ZM128,188a4,4,0,0,0-4,4v32a4,4,0,0,0,8,0V192A4,4,0,0,0,128,188ZM79.92,170.43,57.29,193.05A4,4,0,0,0,63,198.71l22.62-22.63a4,4,0,1,0-5.65-5.65ZM68,128a4,4,0,0,0-4-4H32a4,4,0,0,0,0,8H64A4,4,0,0,0,68,128ZM63,57.29A4,4,0,0,0,57.29,63L79.92,85.57a4,4,0,1,0,5.65-5.65Z"}))]]),yo=D.forwardRef((e,t)=>D.createElement(hp,{ref:t,...e,weights:Tw}));yo.displayName="SpinnerIcon";function Nw({text:e,isComplete:t,isRealTimeStream:n=!1,speed:r=50}){const[i,o]=D.useState(""),[s,a]=D.useState(0);return D.useEffect(()=>{if(n){o(e);return}if(t){o(e);return}if(s<e.length){const l=setTimeout(()=>{o(e.slice(0,s+1)),a(s+1)},r);return()=>clearTimeout(l)}},[e,s,t,r,n]),D.useEffect(()=>{n||(a(0),o(""))},[e,n]),h.jsxs("span",{className:"relative",children:[h.jsx("span",{className:"inline-block",children:i}),!t&&h.jsx("span",{className:"inline-flex items-center ml-1",children:[0,1,2].map(l=>h.jsx(Me.span,{className:"w-1.5 h-1.5 bg-current rounded-full mx-0.5",animate:{y:[0,-4,0],opacity:[.4,1,.4],scale:[.8,1,.8]},transition:{duration:.8,repeat:1/0,repeatType:"mirror",delay:l*.2,ease:"easeInOut"}},l))})]})}function Aw(e,t){return e.startsWith("image/")?ot.Image:e.startsWith("video/")?ot.Video:e.startsWith("audio/")?ot.Music:e.includes("zip")||e.includes("rar")||e.includes("archive")?ot.Archive:ot.FileText}function Mw(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],r=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,r)).toFixed(2))+" "+n[r]}function Rw({message:e,theme:t,isOwn:n}){const r=Pt(t),i=e.metadata,o=(i==null?void 0:i.fileName)||"Unknown file",s=(i==null?void 0:i.fileSize)||0,a=(i==null?void 0:i.mimeType)||"application/octet-stream",l=i==null?void 0:i.downloading,c=i==null?void 0:i.uploading,u=(i==null?void 0:i.downloadProgress)||0,d=(i==null?void 0:i.uploadProgress)||0,f=i==null?void 0:i.downloadUrl,p=i==null?void 0:i.file,m=Aw(a),g=l||c,v=l?u:d,y=l?"Downloading...":c?"Uploading...":"Complete",[E,w]=D.useState(null);D.useEffect(()=>{if(f)w(f);else if(p&&a.startsWith("image/")){const R=URL.createObjectURL(p);return w(R),()=>URL.revokeObjectURL(R)}else w(null)},[f,p,a]);const _=()=>{if(f){const R=document.createElement("a");R.href=f,R.download=o,R.click()}},T=a.startsWith("image/")&&E;return h.jsxs("div",{className:"flex flex-col gap-2 max-w-full sm:max-w-sm",children:[T&&h.jsxs("div",{className:"relative rounded-lg overflow-hidden",children:[h.jsx("img",{src:E,alt:o,className:"max-w-full h-auto max-h-48 object-cover rounded-lg cursor-pointer",onClick:_}),h.jsx("div",{className:"absolute inset-0 bg-black/0 hover:bg-black/10 transition-colors duration-200 cursor-pointer"})]}),h.jsxs("div",{className:`
10
10
  flex items-center gap-3 p-3 rounded-lg border transition-all duration-200
11
11
  ${t==="light"?"bg-gray-50 border-gray-200 hover:bg-gray-100":"bg-gray-800/50 border-gray-700 hover:bg-gray-700/50"}
12
12
  `,children:[h.jsx("div",{className:`
@@ -19,51 +19,51 @@
19
19
  p-2 rounded-lg transition-colors duration-200
20
20
  ${t==="light"?"hover:bg-gray-200 text-gray-600 hover:text-gray-800":"hover:bg-gray-600 text-gray-400 hover:text-gray-200"}
21
21
  `,"aria-label":"Download file",children:h.jsx(ot.Download,{className:"w-4 h-4"})})]})]})}function Iw(e){return{h1:t=>h.jsx("h1",{className:`text-lg font-bold mt-4 mb-2 pb-1 border-b ${e==="dark"?"border-gray-600 text-gray-100":"border-gray-200 text-gray-900"}`,...t}),h2:t=>h.jsx("h2",{className:`text-base font-semibold mt-3 mb-2 ${e==="dark"?"text-gray-200":"text-gray-800"}`,...t}),h3:t=>h.jsx("h3",{className:`text-sm font-semibold mt-2 mb-1 ${e==="dark"?"text-gray-300":"text-gray-700"}`,...t}),p:t=>h.jsx("p",{className:"my-2 leading-relaxed",...t}),a:({href:t,children:n,...r})=>{const i=t||(typeof n=="string"&&n.startsWith("http")?n:"#");return h.jsx("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:`underline font-medium transition-colors hover:opacity-80 cursor-pointer ${e==="dark"?"text-blue-400 hover:text-blue-300":"text-blue-600 hover:text-blue-800"}`,onClick:o=>{if(!i||i==="#"){o.preventDefault();return}},...r,children:n})},code:({inline:t,className:n,children:r,...i})=>{const o=/language-(\w+)/.exec(n||""),s=o?o[1]:"";return t?h.jsx("code",{className:`px-1.5 py-0.5 rounded text-[0.85em] font-mono ${e==="dark"?"bg-gray-700 text-gray-200":"bg-gray-100 text-gray-800"}`,...i,children:r}):h.jsxs("div",{className:"my-3",children:[s&&h.jsx("div",{className:`px-3 py-1 text-xs font-medium rounded-t-md ${e==="dark"?"bg-gray-900 text-gray-300 border-b border-gray-700":"bg-gray-50 text-gray-600 border-b border-gray-200"}`,children:s}),h.jsx("pre",{className:`overflow-x-auto text-sm ${s?"rounded-t-none":""} rounded-md ${e==="dark"?"bg-gray-900 border border-gray-700 text-gray-100":"bg-gray-50 border border-gray-200 text-gray-900"}`,style:{margin:0},children:h.jsx("code",{className:`block p-3 font-mono ${e==="dark"?"text-gray-100":"text-gray-900"} ${n||""}`,...i,children:r})})]})},pre:({children:t,...n})=>h.jsx(h.Fragment,{children:t}),ul:t=>h.jsx("ul",{className:"list-disc pl-5 my-2 space-y-1",...t}),ol:t=>h.jsx("ol",{className:"list-decimal pl-5 my-2 space-y-1",...t}),li:t=>h.jsx("li",{className:"leading-relaxed",...t}),blockquote:t=>h.jsx("blockquote",{className:`border-l-4 pl-4 italic my-3 ${e==="dark"?"border-gray-600 text-gray-300 bg-gray-800/30":"border-gray-300 text-gray-600 bg-gray-50/50"}`,...t}),img:t=>h.jsx("img",{className:"max-w-full h-auto rounded-md my-2 shadow-sm",loading:"lazy",...t}),table:t=>h.jsx("div",{className:"overflow-x-auto my-3",children:h.jsx("table",{className:`min-w-full text-left text-sm border rounded-md ${e==="dark"?"border-gray-600":"border-gray-200"}`,...t})}),th:t=>h.jsx("th",{className:`px-3 py-2 font-semibold border-b ${e==="dark"?"bg-gray-800 border-gray-600 text-gray-200":"bg-gray-50 border-gray-200 text-gray-700"}`,...t}),td:t=>h.jsx("td",{className:`px-3 py-2 border-b ${e==="dark"?"border-gray-700":"border-gray-200"}`,...t}),hr:t=>h.jsx("hr",{className:`my-4 border-0 h-px ${e==="dark"?"bg-gray-600":"bg-gray-300"}`,...t}),strong:t=>h.jsx("strong",{className:"font-semibold",...t}),em:t=>h.jsx("em",{className:"italic",...t})}}function Ow(e,t){const n=/(https?:\/\/[^\s<>"{}|\\^`[\]]*)/g;return e.split(n).map((i,o)=>n.test(i)?h.jsx("a",{href:i,target:"_blank",rel:"noopener noreferrer",className:`underline font-medium transition-colors hover:opacity-80 cursor-pointer ${t==="dark"?"text-blue-400 hover:text-blue-300":"text-blue-600 hover:text-blue-800"}`,onClick:s=>{s.preventDefault(),window.open(i,"_blank","noopener,noreferrer")},children:i},o):i)}function Pw(e){return/(\n|^)#\s|\n##\s|```|\*\s|\-\s|\d+\.\s|>\s|!\[|\]\(https?:\/\//.test(e)||/^```markdown\s[\s\S]*```$/.test(e.trim())||/^``markdown\s[\s\S]*``?$/.test(e.trim())||/^``markdown\s[\s\S]*$/.test(e.trim())||/^`markdown\s[\s\S]*`$/.test(e.trim())||/\[.*\]\(.*\)/.test(e)||/\|.*\|/.test(e)||/^-\s/.test(e)||/^\*\s/.test(e)||/^\d+\.\s/.test(e)||/(^|\n)#.*\n#/.test(e)||/```[\s\S]*?```[\s\S]*?```/.test(e)||/#.*\n/.test(e)&&(/```/.test(e)||/^\s*[\-\*]\s/m.test(e))||e.includes("README")&&/#/.test(e)||/^`+markdown\s/.test(e.trim())}function Dw(e){const t=e.trim(),n=t.match(/^```markdown\s?([\s\S]*?)```$/);if(n)return n[1].trim();let r=t.match(/^``markdown\s?([\s\S]*?)``$/);if(r)return r[1].trim();if(t.startsWith("``markdown"))return t.replace(/^``markdown\s*\n?/,"").replace(/``?$/,"").trim();const i=t.match(/^`markdown\s?([\s\S]*?)`$/);return i?i[1].trim():e}function Lw(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const Fw=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,jw=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Bw={};function ju(e,t){return(Bw.jsx?jw:Fw).test(e)}const $w=/[ \t\n\f\r]/g;function Vw(e){return typeof e=="object"?e.type==="text"?Bu(e.value):!1:Bu(e)}function Bu(e){return e.replace($w,"")===""}class wi{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}wi.prototype.normal={};wi.prototype.property={};wi.prototype.space=void 0;function pp(e,t){const n={},r={};for(const i of e)Object.assign(n,i.property),Object.assign(r,i.normal);return new wi(n,r,t)}function Ta(e){return e.toLowerCase()}class jt{constructor(t,n){this.attribute=n,this.property=t}}jt.prototype.attribute="";jt.prototype.booleanish=!1;jt.prototype.boolean=!1;jt.prototype.commaOrSpaceSeparated=!1;jt.prototype.commaSeparated=!1;jt.prototype.defined=!1;jt.prototype.mustUseProperty=!1;jt.prototype.number=!1;jt.prototype.overloadedBoolean=!1;jt.prototype.property="";jt.prototype.spaceSeparated=!1;jt.prototype.space=void 0;let zw=0;const Ae=er(),pt=er(),Na=er(),Q=er(),tt=er(),kr=er(),Vt=er();function er(){return 2**++zw}const Aa=Object.freeze(Object.defineProperty({__proto__:null,boolean:Ae,booleanish:pt,commaOrSpaceSeparated:Vt,commaSeparated:kr,number:Q,overloadedBoolean:Na,spaceSeparated:tt},Symbol.toStringTag,{value:"Module"})),Ss=Object.keys(Aa);class Tl extends jt{constructor(t,n,r,i){let o=-1;if(super(t,n),$u(this,"space",i),typeof r=="number")for(;++o<Ss.length;){const s=Ss[o];$u(this,Ss[o],(r&Aa[s])===Aa[s])}}}Tl.prototype.defined=!0;function $u(e,t,n){n&&(e[t]=n)}function Fr(e){const t={},n={};for(const[r,i]of Object.entries(e.properties)){const o=new Tl(r,e.transform(e.attributes||{},r),i,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(o.mustUseProperty=!0),t[r]=o,n[Ta(r)]=r,n[Ta(o.attribute)]=r}return new wi(t,n,e.space)}const gp=Fr({properties:{ariaActiveDescendant:null,ariaAtomic:pt,ariaAutoComplete:null,ariaBusy:pt,ariaChecked:pt,ariaColCount:Q,ariaColIndex:Q,ariaColSpan:Q,ariaControls:tt,ariaCurrent:null,ariaDescribedBy:tt,ariaDetails:null,ariaDisabled:pt,ariaDropEffect:tt,ariaErrorMessage:null,ariaExpanded:pt,ariaFlowTo:tt,ariaGrabbed:pt,ariaHasPopup:null,ariaHidden:pt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:tt,ariaLevel:Q,ariaLive:null,ariaModal:pt,ariaMultiLine:pt,ariaMultiSelectable:pt,ariaOrientation:null,ariaOwns:tt,ariaPlaceholder:null,ariaPosInSet:Q,ariaPressed:pt,ariaReadOnly:pt,ariaRelevant:null,ariaRequired:pt,ariaRoleDescription:tt,ariaRowCount:Q,ariaRowIndex:Q,ariaRowSpan:Q,ariaSelected:pt,ariaSetSize:Q,ariaSort:null,ariaValueMax:Q,ariaValueMin:Q,ariaValueNow:Q,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function mp(e,t){return t in e?e[t]:t}function bp(e,t){return mp(e,t.toLowerCase())}const Uw=Fr({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:kr,acceptCharset:tt,accessKey:tt,action:null,allow:null,allowFullScreen:Ae,allowPaymentRequest:Ae,allowUserMedia:Ae,alt:null,as:null,async:Ae,autoCapitalize:null,autoComplete:tt,autoFocus:Ae,autoPlay:Ae,blocking:tt,capture:null,charSet:null,checked:Ae,cite:null,className:tt,cols:Q,colSpan:null,content:null,contentEditable:pt,controls:Ae,controlsList:tt,coords:Q|kr,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Ae,defer:Ae,dir:null,dirName:null,disabled:Ae,download:Na,draggable:pt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Ae,formTarget:null,headers:tt,height:Q,hidden:Na,high:Q,href:null,hrefLang:null,htmlFor:tt,httpEquiv:tt,id:null,imageSizes:null,imageSrcSet:null,inert:Ae,inputMode:null,integrity:null,is:null,isMap:Ae,itemId:null,itemProp:tt,itemRef:tt,itemScope:Ae,itemType:tt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Ae,low:Q,manifest:null,max:null,maxLength:Q,media:null,method:null,min:null,minLength:Q,multiple:Ae,muted:Ae,name:null,nonce:null,noModule:Ae,noValidate:Ae,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Ae,optimum:Q,pattern:null,ping:tt,placeholder:null,playsInline:Ae,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Ae,referrerPolicy:null,rel:tt,required:Ae,reversed:Ae,rows:Q,rowSpan:Q,sandbox:tt,scope:null,scoped:Ae,seamless:Ae,selected:Ae,shadowRootClonable:Ae,shadowRootDelegatesFocus:Ae,shadowRootMode:null,shape:null,size:Q,sizes:null,slot:null,span:Q,spellCheck:pt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:Q,step:null,style:null,tabIndex:Q,target:null,title:null,translate:null,type:null,typeMustMatch:Ae,useMap:null,value:pt,width:Q,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:tt,axis:null,background:null,bgColor:null,border:Q,borderColor:null,bottomMargin:Q,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Ae,declare:Ae,event:null,face:null,frame:null,frameBorder:null,hSpace:Q,leftMargin:Q,link:null,longDesc:null,lowSrc:null,marginHeight:Q,marginWidth:Q,noResize:Ae,noHref:Ae,noShade:Ae,noWrap:Ae,object:null,profile:null,prompt:null,rev:null,rightMargin:Q,rules:null,scheme:null,scrolling:pt,standby:null,summary:null,text:null,topMargin:Q,valueType:null,version:null,vAlign:null,vLink:null,vSpace:Q,allowTransparency:null,autoCorrect:null,autoSave:null,disablePictureInPicture:Ae,disableRemotePlayback:Ae,prefix:null,property:null,results:Q,security:null,unselectable:null},space:"html",transform:bp}),Hw=Fr({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",dominantBaseline:"dominant-baseline",enableBackground:"enable-background",fillOpacity:"fill-opacity",fillRule:"fill-rule",floodColor:"flood-color",floodOpacity:"flood-opacity",fontFamily:"font-family",fontSize:"font-size",fontSizeAdjust:"font-size-adjust",fontStretch:"font-stretch",fontStyle:"font-style",fontVariant:"font-variant",fontWeight:"font-weight",glyphName:"glyph-name",glyphOrientationHorizontal:"glyph-orientation-horizontal",glyphOrientationVertical:"glyph-orientation-vertical",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",renderingIntent:"rendering-intent",shapeRendering:"shape-rendering",stopColor:"stop-color",stopOpacity:"stop-opacity",strikethroughPosition:"strikethrough-position",strikethroughThickness:"strikethrough-thickness",strokeDashArray:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeLineCap:"stroke-linecap",strokeLineJoin:"stroke-linejoin",strokeMiterLimit:"stroke-miterlimit",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",underlinePosition:"underline-position",underlineThickness:"underline-thickness",unicodeBidi:"unicode-bidi",unicodeRange:"unicode-range",unitsPerEm:"units-per-em",vAlphabetic:"v-alphabetic",vHanging:"v-hanging",vIdeographic:"v-ideographic",vMathematical:"v-mathematical",vectorEffect:"vector-effect",vertAdvY:"vert-adv-y",vertOriginX:"vert-origin-x",vertOriginY:"vert-origin-y",wordSpacing:"word-spacing",writingMode:"writing-mode",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Vt,accentHeight:Q,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:Q,amplitude:Q,arabicForm:null,ascent:Q,attributeName:null,attributeType:null,azimuth:Q,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:Q,by:null,calcMode:null,capHeight:Q,className:tt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:Q,diffuseConstant:Q,direction:null,display:null,dur:null,divisor:Q,dominantBaseline:null,download:Ae,dx:null,dy:null,edgeMode:null,editable:null,elevation:Q,enableBackground:null,end:null,event:null,exponent:Q,externalResourcesRequired:null,fill:null,fillOpacity:Q,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:kr,g2:kr,glyphName:kr,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:Q,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:Q,horizOriginX:Q,horizOriginY:Q,id:null,ideographic:Q,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:Q,k:Q,k1:Q,k2:Q,k3:Q,k4:Q,kernelMatrix:Vt,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:Q,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:Q,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:Q,overlineThickness:Q,paintOrder:null,panose1:null,path:null,pathLength:Q,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:tt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:Q,pointsAtY:Q,pointsAtZ:Q,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Vt,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Vt,rev:Vt,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Vt,requiredFeatures:Vt,requiredFonts:Vt,requiredFormats:Vt,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:Q,specularExponent:Q,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:Q,strikethroughThickness:Q,string:null,stroke:null,strokeDashArray:Vt,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:Q,strokeOpacity:Q,strokeWidth:null,style:null,surfaceScale:Q,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Vt,tabIndex:Q,tableValues:null,target:null,targetX:Q,targetY:Q,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Vt,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:Q,underlineThickness:Q,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:Q,values:null,vAlphabetic:Q,vMathematical:Q,vectorEffect:null,vHanging:Q,vIdeographic:Q,version:null,vertAdvY:Q,vertOriginX:Q,vertOriginY:Q,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:Q,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:mp}),yp=Fr({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),xp=Fr({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:bp}),vp=Fr({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Ww={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Gw=/[A-Z]/g,Vu=/-[a-z]/g,Kw=/^data[-\w.:]+$/i;function qw(e,t){const n=Ta(t);let r=t,i=jt;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Kw.test(t)){if(t.charAt(4)==="-"){const o=t.slice(5).replace(Vu,Zw);r="data"+o.charAt(0).toUpperCase()+o.slice(1)}else{const o=t.slice(4);if(!Vu.test(o)){let s=o.replace(Gw,Yw);s.charAt(0)!=="-"&&(s="-"+s),t="data"+s}}i=Tl}return new i(r,t)}function Yw(e){return"-"+e.toLowerCase()}function Zw(e){return e.charAt(1).toUpperCase()}const Xw=pp([gp,Uw,yp,xp,vp],"html"),Nl=pp([gp,Hw,yp,xp,vp],"svg");function Qw(e){return e.join(" ").trim()}function Lo(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ar={},ks,zu;function Jw(){if(zu)return ks;zu=1;var e=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,t=/\n/g,n=/^\s*/,r=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,i=/^:\s*/,o=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,s=/^[;\s]*/,a=/^\s+|\s+$/g,l=`
22
- `,c="/",u="*",d="",f="comment",p="declaration";ks=function(g,v){if(typeof g!="string")throw new TypeError("First argument must be a string");if(!g)return[];v=v||{};var y=1,E=1;function w(L){var j=L.match(t);j&&(y+=j.length);var W=L.lastIndexOf(l);E=~W?L.length-W:E+L.length}function _(){var L={line:y,column:E};return function(j){return j.position=new C(L),A(),j}}function C(L){this.start=L,this.end={line:y,column:E},this.source=v.source}C.prototype.content=g;function T(L){var j=new Error(v.source+":"+y+":"+E+": "+L);if(j.reason=L,j.filename=v.source,j.line=y,j.column=E,j.source=g,!v.silent)throw j}function R(L){var j=L.exec(g);if(j){var W=j[0];return w(W),g=g.slice(W.length),j}}function A(){R(n)}function I(L){var j;for(L=L||[];j=b();)j!==!1&&L.push(j);return L}function b(){var L=_();if(!(c!=g.charAt(0)||u!=g.charAt(1))){for(var j=2;d!=g.charAt(j)&&(u!=g.charAt(j)||c!=g.charAt(j+1));)++j;if(j+=2,d===g.charAt(j-1))return T("End of comment missing");var W=g.slice(2,j-2);return E+=2,w(W),g=g.slice(j),E+=2,L({type:f,comment:W})}}function M(){var L=_(),j=R(r);if(j){if(b(),!R(i))return T("property missing ':'");var W=R(o),oe=L({type:p,property:m(j[0].replace(e,d)),value:W?m(W[0].replace(e,d)):d});return R(s),oe}}function O(){var L=[];I(L);for(var j;j=M();)j!==!1&&(L.push(j),I(L));return L}return A(),O()};function m(g){return g?g.replace(a,d):d}return ks}var Uu;function eE(){if(Uu)return ar;Uu=1;var e=ar&&ar.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ar,"__esModule",{value:!0}),ar.default=n;var t=e(Jw());function n(r,i){var o=null;if(!r||typeof r!="string")return o;var s=(0,t.default)(r),a=typeof i=="function";return s.forEach(function(l){if(l.type==="declaration"){var c=l.property,u=l.value;a?i(c,u,l):u&&(o=o||{},o[c]=u)}}),o}return ar}var Ur={},Hu;function tE(){if(Hu)return Ur;Hu=1,Object.defineProperty(Ur,"__esModule",{value:!0}),Ur.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,i=/^-(ms)-/,o=function(c){return!c||n.test(c)||e.test(c)},s=function(c,u){return u.toUpperCase()},a=function(c,u){return"".concat(u,"-")},l=function(c,u){return u===void 0&&(u={}),o(c)?c:(c=c.toLowerCase(),u.reactCompat?c=c.replace(i,a):c=c.replace(r,a),c.replace(t,s))};return Ur.camelCase=l,Ur}var Hr,Wu;function nE(){if(Wu)return Hr;Wu=1;var e=Hr&&Hr.__importDefault||function(i){return i&&i.__esModule?i:{default:i}},t=e(eE()),n=tE();function r(i,o){var s={};return!i||typeof i!="string"||(0,t.default)(i,function(a,l){a&&l&&(s[(0,n.camelCase)(a,o)]=l)}),s}return r.default=r,Hr=r,Hr}var rE=nE();const iE=Lo(rE),wp=Ep("end"),Al=Ep("start");function Ep(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function oE(e){const t=Al(e),n=wp(e);if(t&&n)return{start:t,end:n}}function ni(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Gu(e.position):"start"in e||"end"in e?Gu(e):"line"in e||"column"in e?Ma(e):""}function Ma(e){return Ku(e&&e.line)+":"+Ku(e&&e.column)}function Gu(e){return Ma(e&&e.start)+"-"+Ma(e&&e.end)}function Ku(e){return e&&typeof e=="number"?e:1}class Nt extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",o={},s=!1;if(n&&("line"in n&&"column"in n?o={place:n}:"start"in n&&"end"in n?o={place:n}:"type"in n?o={ancestors:[n],place:n.position}:o={...n}),typeof t=="string"?i=t:!o.cause&&t&&(s=!0,i=t.message,o.cause=t),!o.ruleId&&!o.source&&typeof r=="string"){const l=r.indexOf(":");l===-1?o.ruleId=r:(o.source=r.slice(0,l),o.ruleId=r.slice(l+1))}if(!o.place&&o.ancestors&&o.ancestors){const l=o.ancestors[o.ancestors.length-1];l&&(o.place=l.position)}const a=o.place&&"start"in o.place?o.place.start:o.place;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=a?a.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=a?a.line:void 0,this.name=ni(o.place)||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=s&&o.cause&&typeof o.cause.stack=="string"?o.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Nt.prototype.file="";Nt.prototype.name="";Nt.prototype.reason="";Nt.prototype.message="";Nt.prototype.stack="";Nt.prototype.column=void 0;Nt.prototype.line=void 0;Nt.prototype.ancestors=void 0;Nt.prototype.cause=void 0;Nt.prototype.fatal=void 0;Nt.prototype.place=void 0;Nt.prototype.ruleId=void 0;Nt.prototype.source=void 0;const Ml={}.hasOwnProperty,sE=new Map,aE=/[A-Z]/g,lE=new Set(["table","tbody","thead","tfoot","tr"]),cE=new Set(["td","th"]),Sp="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function uE(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=yE(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=bE(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Nl:Xw,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},o=kp(i,e,void 0);return o&&typeof o!="string"?o:i.create(e,i.Fragment,{children:o||void 0},void 0)}function kp(e,t,n){if(t.type==="element")return dE(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return fE(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return pE(e,t,n);if(t.type==="mdxjsEsm")return hE(e,t);if(t.type==="root")return gE(e,t,n);if(t.type==="text")return mE(e,t)}function dE(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=Nl,e.schema=i),e.ancestors.push(t);const o=_p(e,t.tagName,!1),s=xE(e,t);let a=Il(e,t);return lE.has(t.tagName)&&(a=a.filter(function(l){return typeof l=="string"?!Vw(l):!0})),Cp(e,s,o,t),Rl(s,a),e.ancestors.pop(),e.schema=r,e.create(t,o,s,n)}function fE(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}pi(e,t.position)}function hE(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);pi(e,t.position)}function pE(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=Nl,e.schema=i),e.ancestors.push(t);const o=t.name===null?e.Fragment:_p(e,t.name,!0),s=vE(e,t),a=Il(e,t);return Cp(e,s,o,t),Rl(s,a),e.ancestors.pop(),e.schema=r,e.create(t,o,s,n)}function gE(e,t,n){const r={};return Rl(r,Il(e,t)),e.create(t,e.Fragment,r,n)}function mE(e,t){return t.value}function Cp(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Rl(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function bE(e,t,n){return r;function r(i,o,s,a){const c=Array.isArray(s.children)?n:t;return a?c(o,s,a):c(o,s)}}function yE(e,t){return n;function n(r,i,o,s){const a=Array.isArray(o.children),l=Al(r);return t(i,o,s,a,{columnNumber:l?l.column-1:void 0,fileName:e,lineNumber:l?l.line:void 0},void 0)}}function xE(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&Ml.call(t.properties,i)){const o=wE(e,i,t.properties[i]);if(o){const[s,a]=o;e.tableCellAlignToStyle&&s==="align"&&typeof a=="string"&&cE.has(t.tagName)?r=a:n[s]=a}}if(r){const o=n.style||(n.style={});o[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function vE(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const o=r.data.estree.body[0];o.type;const s=o.expression;s.type;const a=s.properties[0];a.type,Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else pi(e,t.position);else{const i=r.name;let o;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const a=r.value.data.estree.body[0];a.type,o=e.evaluater.evaluateExpression(a.expression)}else pi(e,t.position);else o=r.value===null?!0:r.value;n[i]=o}return n}function Il(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:sE;for(;++r<t.children.length;){const o=t.children[r];let s;if(e.passKeys){const l=o.type==="element"?o.tagName:o.type==="mdxJsxFlowElement"||o.type==="mdxJsxTextElement"?o.name:void 0;if(l){const c=i.get(l)||0;s=l+"-"+c,i.set(l,c+1)}}const a=kp(e,o,s);a!==void 0&&n.push(a)}return n}function wE(e,t,n){const r=qw(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?Lw(n):Qw(n)),r.property==="style"){let i=typeof n=="object"?n:EE(e,String(n));return e.stylePropertyNameCase==="css"&&(i=SE(i)),["style",i]}return[e.elementAttributeNameCase==="react"&&r.space?Ww[r.property]||r.property:r.attribute,n]}}function EE(e,t){try{return iE(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,i=new Nt("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:r,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw i.file=e.filePath||void 0,i.url=Sp+"#cannot-parse-style-attribute",i}}function _p(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const i=t.split(".");let o=-1,s;for(;++o<i.length;){const a=ju(i[o])?{type:"Identifier",name:i[o]}:{type:"Literal",value:i[o]};s=s?{type:"MemberExpression",object:s,property:a,computed:!!(o&&a.type==="Literal"),optional:!1}:a}r=s}else r=ju(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const i=r.value;return Ml.call(e.components,i)?e.components[i]:i}if(e.evaluater)return e.evaluater.evaluateExpression(r);pi(e)}function pi(e,t){const n=new Nt("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=Sp+"#cannot-handle-mdx-estrees-without-createevaluater",n}function SE(e){const t={};let n;for(n in e)Ml.call(e,n)&&(t[kE(n)]=e[n]);return t}function kE(e){let t=e.replace(aE,CE);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function CE(e){return"-"+e.toLowerCase()}const Cs={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},_E={};function Ol(e,t){const n=_E,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,i=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return Tp(e,r,i)}function Tp(e,t,n){if(TE(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return qu(e.children,t,n)}return Array.isArray(e)?qu(e,t,n):""}function qu(e,t,n){const r=[];let i=-1;for(;++i<e.length;)r[i]=Tp(e[i],t,n);return r.join("")}function TE(e){return!!(e&&typeof e=="object")}const Yu=document.createElement("i");function Pl(e){const t="&"+e+";";Yu.innerHTML=t;const n=Yu.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function Ut(e,t,n,r){const i=e.length;let o=0,s;if(t<0?t=-t>i?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)s=Array.from(r),s.unshift(t,n),e.splice(...s);else for(n&&e.splice(t,n);o<r.length;)s=r.slice(o,o+1e4),s.unshift(t,0),e.splice(...s),o+=1e4,t+=1e4}function qt(e,t){return e.length>0?(Ut(e,e.length,0,t),e):t}const Zu={}.hasOwnProperty;function Np(e){const t={};let n=-1;for(;++n<e.length;)NE(t,e[n]);return t}function NE(e,t){let n;for(n in t){const i=(Zu.call(e,n)?e[n]:void 0)||(e[n]={}),o=t[n];let s;if(o)for(s in o){Zu.call(i,s)||(i[s]=[]);const a=o[s];AE(i[s],Array.isArray(a)?a:a?[a]:[])}}}function AE(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);Ut(e,0,0,r)}function Ap(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function nn(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const It=Fn(/[A-Za-z]/),Tt=Fn(/[\dA-Za-z]/),ME=Fn(/[#-'*+\--9=?A-Z^-~]/);function xo(e){return e!==null&&(e<32||e===127)}const Ra=Fn(/\d/),RE=Fn(/[\dA-Fa-f]/),IE=Fn(/[!-/:-@[-`{-~]/);function ve(e){return e!==null&&e<-2}function Xe(e){return e!==null&&(e<0||e===32)}function Pe(e){return e===-2||e===-1||e===32}const Fo=Fn(new RegExp("\\p{P}|\\p{S}","u")),Qn=Fn(/\s/);function Fn(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function jr(e){const t=[];let n=-1,r=0,i=0;for(;++n<e.length;){const o=e.charCodeAt(n);let s="";if(o===37&&Tt(e.charCodeAt(n+1))&&Tt(e.charCodeAt(n+2)))i=2;else if(o<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(o))||(s=String.fromCharCode(o));else if(o>55295&&o<57344){const a=e.charCodeAt(n+1);o<56320&&a>56319&&a<57344?(s=String.fromCharCode(o,a),i=1):s="�"}else s=String.fromCharCode(o);s&&(t.push(e.slice(r,n),encodeURIComponent(s)),r=n+i+1,s=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function Le(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let o=0;return s;function s(l){return Pe(l)?(e.enter(n),a(l)):t(l)}function a(l){return Pe(l)&&o++<i?(e.consume(l),a):(e.exit(n),t(l))}}const OE={tokenize:PE};function PE(e){const t=e.attempt(this.parser.constructs.contentInitial,r,i);let n;return t;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),Le(e,t,"linePrefix")}function i(a){return e.enter("paragraph"),o(a)}function o(a){const l=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=l),n=l,s(a)}function s(a){if(a===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(a);return}return ve(a)?(e.consume(a),e.exit("chunkText"),o):(e.consume(a),s)}}const DE={tokenize:LE},Xu={tokenize:FE};function LE(e){const t=this,n=[];let r=0,i,o,s;return a;function a(w){if(r<n.length){const _=n[r];return t.containerState=_[1],e.attempt(_[0].continuation,l,c)(w)}return c(w)}function l(w){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&E();const _=t.events.length;let C=_,T;for(;C--;)if(t.events[C][0]==="exit"&&t.events[C][1].type==="chunkFlow"){T=t.events[C][1].end;break}y(r);let R=_;for(;R<t.events.length;)t.events[R][1].end={...T},R++;return Ut(t.events,C+1,0,t.events.slice(_)),t.events.length=R,c(w)}return a(w)}function c(w){if(r===n.length){if(!i)return f(w);if(i.currentConstruct&&i.currentConstruct.concrete)return m(w);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Xu,u,d)(w)}function u(w){return i&&E(),y(r),f(w)}function d(w){return t.parser.lazy[t.now().line]=r!==n.length,s=t.now().offset,m(w)}function f(w){return t.containerState={},e.attempt(Xu,p,m)(w)}function p(w){return r++,n.push([t.currentConstruct,t.containerState]),f(w)}function m(w){if(w===null){i&&E(),y(0),e.consume(w);return}return i=i||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:i,contentType:"flow",previous:o}),g(w)}function g(w){if(w===null){v(e.exit("chunkFlow"),!0),y(0),e.consume(w);return}return ve(w)?(e.consume(w),v(e.exit("chunkFlow")),r=0,t.interrupt=void 0,a):(e.consume(w),g)}function v(w,_){const C=t.sliceStream(w);if(_&&C.push(null),w.previous=o,o&&(o.next=w),o=w,i.defineSkip(w.start),i.write(C),t.parser.lazy[w.start.line]){let T=i.events.length;for(;T--;)if(i.events[T][1].start.offset<s&&(!i.events[T][1].end||i.events[T][1].end.offset>s))return;const R=t.events.length;let A=R,I,b;for(;A--;)if(t.events[A][0]==="exit"&&t.events[A][1].type==="chunkFlow"){if(I){b=t.events[A][1].end;break}I=!0}for(y(r),T=R;T<t.events.length;)t.events[T][1].end={...b},T++;Ut(t.events,A+1,0,t.events.slice(R)),t.events.length=T}}function y(w){let _=n.length;for(;_-- >w;){const C=n[_];t.containerState=C[1],C[0].exit.call(t,e)}n.length=w}function E(){i.write([null]),o=void 0,i=void 0,t.containerState._closeFlow=void 0}}function FE(e,t,n){return Le(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Ar(e){if(e===null||Xe(e)||Qn(e))return 1;if(Fo(e))return 2}function jo(e,t,n){const r=[];let i=-1;for(;++i<e.length;){const o=e[i].resolveAll;o&&!r.includes(o)&&(t=o(t,n),r.push(o))}return t}const Ia={name:"attention",resolveAll:jE,tokenize:BE};function jE(e,t){let n=-1,r,i,o,s,a,l,c,u;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(r=n;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const d={...e[r][1].end},f={...e[n][1].start};Qu(d,-l),Qu(f,l),s={type:l>1?"strongSequence":"emphasisSequence",start:d,end:{...e[r][1].end}},a={type:l>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},o={type:l>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:l>1?"strong":"emphasis",start:{...s.start},end:{...a.end}},e[r][1].end={...s.start},e[n][1].start={...a.end},c=[],e[r][1].end.offset-e[r][1].start.offset&&(c=qt(c,[["enter",e[r][1],t],["exit",e[r][1],t]])),c=qt(c,[["enter",i,t],["enter",s,t],["exit",s,t],["enter",o,t]]),c=qt(c,jo(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),c=qt(c,[["exit",o,t],["enter",a,t],["exit",a,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,c=qt(c,[["enter",e[n][1],t],["exit",e[n][1],t]])):u=0,Ut(e,r-1,n-r+3,c),n=r+c.length-u-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function BE(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,i=Ar(r);let o;return s;function s(l){return o=l,e.enter("attentionSequence"),a(l)}function a(l){if(l===o)return e.consume(l),a;const c=e.exit("attentionSequence"),u=Ar(l),d=!u||u===2&&i||n.includes(l),f=!i||i===2&&u||n.includes(r);return c._open=!!(o===42?d:d&&(i||!f)),c._close=!!(o===42?f:f&&(u||!d)),t(l)}}function Qu(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const $E={name:"autolink",tokenize:VE};function VE(e,t,n){let r=0;return i;function i(p){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),o}function o(p){return It(p)?(e.consume(p),s):p===64?n(p):c(p)}function s(p){return p===43||p===45||p===46||Tt(p)?(r=1,a(p)):c(p)}function a(p){return p===58?(e.consume(p),r=0,l):(p===43||p===45||p===46||Tt(p))&&r++<32?(e.consume(p),a):(r=0,c(p))}function l(p){return p===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):p===null||p===32||p===60||xo(p)?n(p):(e.consume(p),l)}function c(p){return p===64?(e.consume(p),u):ME(p)?(e.consume(p),c):n(p)}function u(p){return Tt(p)?d(p):n(p)}function d(p){return p===46?(e.consume(p),r=0,u):p===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):f(p)}function f(p){if((p===45||Tt(p))&&r++<63){const m=p===45?f:d;return e.consume(p),m}return n(p)}}const Ei={partial:!0,tokenize:zE};function zE(e,t,n){return r;function r(o){return Pe(o)?Le(e,i,"linePrefix")(o):i(o)}function i(o){return o===null||ve(o)?t(o):n(o)}}const Mp={continuation:{tokenize:HE},exit:WE,name:"blockQuote",tokenize:UE};function UE(e,t,n){const r=this;return i;function i(s){if(s===62){const a=r.containerState;return a.open||(e.enter("blockQuote",{_container:!0}),a.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(s),e.exit("blockQuoteMarker"),o}return n(s)}function o(s){return Pe(s)?(e.enter("blockQuotePrefixWhitespace"),e.consume(s),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(s))}}function HE(e,t,n){const r=this;return i;function i(s){return Pe(s)?Le(e,o,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s):o(s)}function o(s){return e.attempt(Mp,t,n)(s)}}function WE(e){e.exit("blockQuote")}const Rp={name:"characterEscape",tokenize:GE};function GE(e,t,n){return r;function r(o){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(o),e.exit("escapeMarker"),i}function i(o){return IE(o)?(e.enter("characterEscapeValue"),e.consume(o),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(o)}}const Ip={name:"characterReference",tokenize:KE};function KE(e,t,n){const r=this;let i=0,o,s;return a;function a(d){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),l}function l(d){return d===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(d),e.exit("characterReferenceMarkerNumeric"),c):(e.enter("characterReferenceValue"),o=31,s=Tt,u(d))}function c(d){return d===88||d===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(d),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),o=6,s=RE,u):(e.enter("characterReferenceValue"),o=7,s=Ra,u(d))}function u(d){if(d===59&&i){const f=e.exit("characterReferenceValue");return s===Tt&&!Pl(r.sliceSerialize(f))?n(d):(e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return s(d)&&i++<o?(e.consume(d),u):n(d)}}const Ju={partial:!0,tokenize:YE},ed={concrete:!0,name:"codeFenced",tokenize:qE};function qE(e,t,n){const r=this,i={partial:!0,tokenize:C};let o=0,s=0,a;return l;function l(T){return c(T)}function c(T){const R=r.events[r.events.length-1];return o=R&&R[1].type==="linePrefix"?R[2].sliceSerialize(R[1],!0).length:0,a=T,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),u(T)}function u(T){return T===a?(s++,e.consume(T),u):s<3?n(T):(e.exit("codeFencedFenceSequence"),Pe(T)?Le(e,d,"whitespace")(T):d(T))}function d(T){return T===null||ve(T)?(e.exit("codeFencedFence"),r.interrupt?t(T):e.check(Ju,g,_)(T)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),f(T))}function f(T){return T===null||ve(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),d(T)):Pe(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),Le(e,p,"whitespace")(T)):T===96&&T===a?n(T):(e.consume(T),f)}function p(T){return T===null||ve(T)?d(T):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),m(T))}function m(T){return T===null||ve(T)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),d(T)):T===96&&T===a?n(T):(e.consume(T),m)}function g(T){return e.attempt(i,_,v)(T)}function v(T){return e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),y}function y(T){return o>0&&Pe(T)?Le(e,E,"linePrefix",o+1)(T):E(T)}function E(T){return T===null||ve(T)?e.check(Ju,g,_)(T):(e.enter("codeFlowValue"),w(T))}function w(T){return T===null||ve(T)?(e.exit("codeFlowValue"),E(T)):(e.consume(T),w)}function _(T){return e.exit("codeFenced"),t(T)}function C(T,R,A){let I=0;return b;function b(W){return T.enter("lineEnding"),T.consume(W),T.exit("lineEnding"),M}function M(W){return T.enter("codeFencedFence"),Pe(W)?Le(T,O,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(W):O(W)}function O(W){return W===a?(T.enter("codeFencedFenceSequence"),L(W)):A(W)}function L(W){return W===a?(I++,T.consume(W),L):I>=s?(T.exit("codeFencedFenceSequence"),Pe(W)?Le(T,j,"whitespace")(W):j(W)):A(W)}function j(W){return W===null||ve(W)?(T.exit("codeFencedFence"),R(W)):A(W)}}}function YE(e,t,n){const r=this;return i;function i(s){return s===null?n(s):(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),o)}function o(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}const _s={name:"codeIndented",tokenize:XE},ZE={partial:!0,tokenize:QE};function XE(e,t,n){const r=this;return i;function i(c){return e.enter("codeIndented"),Le(e,o,"linePrefix",5)(c)}function o(c){const u=r.events[r.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?s(c):n(c)}function s(c){return c===null?l(c):ve(c)?e.attempt(ZE,s,l)(c):(e.enter("codeFlowValue"),a(c))}function a(c){return c===null||ve(c)?(e.exit("codeFlowValue"),s(c)):(e.consume(c),a)}function l(c){return e.exit("codeIndented"),t(c)}}function QE(e,t,n){const r=this;return i;function i(s){return r.parser.lazy[r.now().line]?n(s):ve(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i):Le(e,o,"linePrefix",5)(s)}function o(s){const a=r.events[r.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?t(s):ve(s)?i(s):n(s)}}const JE={name:"codeText",previous:tS,resolve:eS,tokenize:nS};function eS(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r<t;)if(e[r][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)i===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(i=r):(r===t||e[r][1].type==="lineEnding")&&(e[i][1].type="codeTextData",r!==i+2&&(e[i][1].end=e[r-1][1].end,e.splice(i+2,r-i-2),t-=r-i-2,r=i+2),i=void 0);return e}function tS(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function nS(e,t,n){let r=0,i,o;return s;function s(d){return e.enter("codeText"),e.enter("codeTextSequence"),a(d)}function a(d){return d===96?(e.consume(d),r++,a):(e.exit("codeTextSequence"),l(d))}function l(d){return d===null?n(d):d===32?(e.enter("space"),e.consume(d),e.exit("space"),l):d===96?(o=e.enter("codeTextSequence"),i=0,u(d)):ve(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),l):(e.enter("codeTextData"),c(d))}function c(d){return d===null||d===32||d===96||ve(d)?(e.exit("codeTextData"),l(d)):(e.consume(d),c)}function u(d){return d===96?(e.consume(d),i++,u):i===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(d)):(o.type="codeTextData",c(d))}}class rS{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const r=n??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const o=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&Wr(this.left,r),o.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Wr(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Wr(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);Wr(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);Wr(this.left,n.reverse())}}}function Wr(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function Op(e){const t={};let n=-1,r,i,o,s,a,l,c;const u=new rS(e);for(;++n<u.length;){for(;n in t;)n=t[n];if(r=u.get(n),n&&r[1].type==="chunkFlow"&&u.get(n-1)[1].type==="listItemPrefix"&&(l=r[1]._tokenizer.events,o=0,o<l.length&&l[o][1].type==="lineEndingBlank"&&(o+=2),o<l.length&&l[o][1].type==="content"))for(;++o<l.length&&l[o][1].type!=="content";)l[o][1].type==="chunkText"&&(l[o][1]._isInFirstContentOfListItem=!0,o++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,iS(u,n)),n=t[n],c=!0);else if(r[1]._container){for(o=n,i=void 0;o--;)if(s=u.get(o),s[1].type==="lineEnding"||s[1].type==="lineEndingBlank")s[0]==="enter"&&(i&&(u.get(i)[1].type="lineEndingBlank"),s[1].type="lineEnding",i=o);else if(!(s[1].type==="linePrefix"||s[1].type==="listItemIndent"))break;i&&(r[1].end={...u.get(i)[1].start},a=u.slice(i,n),a.unshift(r),u.splice(i,n-i+1,a))}}return Ut(e,0,Number.POSITIVE_INFINITY,u.slice(0)),!c}function iS(e,t){const n=e.get(t)[1],r=e.get(t)[2];let i=t-1;const o=[];let s=n._tokenizer;s||(s=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(s._contentTypeTextTrailing=!0));const a=s.events,l=[],c={};let u,d,f=-1,p=n,m=0,g=0;const v=[g];for(;p;){for(;e.get(++i)[1]!==p;);o.push(i),p._tokenizer||(u=r.sliceStream(p),p.next||u.push(null),d&&s.defineSkip(p.start),p._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=!0),s.write(u),p._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=n;++f<a.length;)a[f][0]==="exit"&&a[f-1][0]==="enter"&&a[f][1].type===a[f-1][1].type&&a[f][1].start.line!==a[f][1].end.line&&(g=f+1,v.push(g),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(s.events=[],p?(p._tokenizer=void 0,p.previous=void 0):v.pop(),f=v.length;f--;){const y=a.slice(v[f],v[f+1]),E=o.pop();l.push([E,E+y.length-1]),e.splice(E,2,y)}for(l.reverse(),f=-1;++f<l.length;)c[m+l[f][0]]=m+l[f][1],m+=l[f][1]-l[f][0]-1;return c}const oS={resolve:aS,tokenize:lS},sS={partial:!0,tokenize:cS};function aS(e){return Op(e),e}function lS(e,t){let n;return r;function r(a){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),i(a)}function i(a){return a===null?o(a):ve(a)?e.check(sS,s,o)(a):(e.consume(a),i)}function o(a){return e.exit("chunkContent"),e.exit("content"),t(a)}function s(a){return e.consume(a),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,i}}function cS(e,t,n){const r=this;return i;function i(s){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Le(e,o,"linePrefix")}function o(s){if(s===null||ve(s))return n(s);const a=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?t(s):e.interrupt(r.parser.constructs.flow,n,t)(s)}}function Pp(e,t,n,r,i,o,s,a,l){const c=l||Number.POSITIVE_INFINITY;let u=0;return d;function d(y){return y===60?(e.enter(r),e.enter(i),e.enter(o),e.consume(y),e.exit(o),f):y===null||y===32||y===41||xo(y)?n(y):(e.enter(r),e.enter(s),e.enter(a),e.enter("chunkString",{contentType:"string"}),g(y))}function f(y){return y===62?(e.enter(o),e.consume(y),e.exit(o),e.exit(i),e.exit(r),t):(e.enter(a),e.enter("chunkString",{contentType:"string"}),p(y))}function p(y){return y===62?(e.exit("chunkString"),e.exit(a),f(y)):y===null||y===60||ve(y)?n(y):(e.consume(y),y===92?m:p)}function m(y){return y===60||y===62||y===92?(e.consume(y),p):p(y)}function g(y){return!u&&(y===null||y===41||Xe(y))?(e.exit("chunkString"),e.exit(a),e.exit(s),e.exit(r),t(y)):u<c&&y===40?(e.consume(y),u++,g):y===41?(e.consume(y),u--,g):y===null||y===32||y===40||xo(y)?n(y):(e.consume(y),y===92?v:g)}function v(y){return y===40||y===41||y===92?(e.consume(y),g):g(y)}}function Dp(e,t,n,r,i,o){const s=this;let a=0,l;return c;function c(p){return e.enter(r),e.enter(i),e.consume(p),e.exit(i),e.enter(o),u}function u(p){return a>999||p===null||p===91||p===93&&!l||p===94&&!a&&"_hiddenFootnoteSupport"in s.parser.constructs?n(p):p===93?(e.exit(o),e.enter(i),e.consume(p),e.exit(i),e.exit(r),t):ve(p)?(e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),d(p))}function d(p){return p===null||p===91||p===93||ve(p)||a++>999?(e.exit("chunkString"),u(p)):(e.consume(p),l||(l=!Pe(p)),p===92?f:d)}function f(p){return p===91||p===92||p===93?(e.consume(p),a++,d):d(p)}}function Lp(e,t,n,r,i,o){let s;return a;function a(f){return f===34||f===39||f===40?(e.enter(r),e.enter(i),e.consume(f),e.exit(i),s=f===40?41:f,l):n(f)}function l(f){return f===s?(e.enter(i),e.consume(f),e.exit(i),e.exit(r),t):(e.enter(o),c(f))}function c(f){return f===s?(e.exit(o),l(s)):f===null?n(f):ve(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),Le(e,c,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===s||f===null||ve(f)?(e.exit("chunkString"),c(f)):(e.consume(f),f===92?d:u)}function d(f){return f===s||f===92?(e.consume(f),u):u(f)}}function ri(e,t){let n;return r;function r(i){return ve(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):Pe(i)?Le(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const uS={name:"definition",tokenize:fS},dS={partial:!0,tokenize:hS};function fS(e,t,n){const r=this;let i;return o;function o(p){return e.enter("definition"),s(p)}function s(p){return Dp.call(r,e,a,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(p)}function a(p){return i=nn(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),p===58?(e.enter("definitionMarker"),e.consume(p),e.exit("definitionMarker"),l):n(p)}function l(p){return Xe(p)?ri(e,c)(p):c(p)}function c(p){return Pp(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(p)}function u(p){return e.attempt(dS,d,d)(p)}function d(p){return Pe(p)?Le(e,f,"whitespace")(p):f(p)}function f(p){return p===null||ve(p)?(e.exit("definition"),r.parser.defined.push(i),t(p)):n(p)}}function hS(e,t,n){return r;function r(a){return Xe(a)?ri(e,i)(a):n(a)}function i(a){return Lp(e,o,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(a)}function o(a){return Pe(a)?Le(e,s,"whitespace")(a):s(a)}function s(a){return a===null||ve(a)?t(a):n(a)}}const pS={name:"hardBreakEscape",tokenize:gS};function gS(e,t,n){return r;function r(o){return e.enter("hardBreakEscape"),e.consume(o),i}function i(o){return ve(o)?(e.exit("hardBreakEscape"),t(o)):n(o)}}const mS={name:"headingAtx",resolve:bS,tokenize:yS};function bS(e,t){let n=e.length-2,r=3,i,o;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},o={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Ut(e,r,n-r+1,[["enter",i,t],["enter",o,t],["exit",o,t],["exit",i,t]])),e}function yS(e,t,n){let r=0;return i;function i(u){return e.enter("atxHeading"),o(u)}function o(u){return e.enter("atxHeadingSequence"),s(u)}function s(u){return u===35&&r++<6?(e.consume(u),s):u===null||Xe(u)?(e.exit("atxHeadingSequence"),a(u)):n(u)}function a(u){return u===35?(e.enter("atxHeadingSequence"),l(u)):u===null||ve(u)?(e.exit("atxHeading"),t(u)):Pe(u)?Le(e,a,"whitespace")(u):(e.enter("atxHeadingText"),c(u))}function l(u){return u===35?(e.consume(u),l):(e.exit("atxHeadingSequence"),a(u))}function c(u){return u===null||u===35||Xe(u)?(e.exit("atxHeadingText"),a(u)):(e.consume(u),c)}}const xS=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],td=["pre","script","style","textarea"],vS={concrete:!0,name:"htmlFlow",resolveTo:SS,tokenize:kS},wS={partial:!0,tokenize:_S},ES={partial:!0,tokenize:CS};function SS(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function kS(e,t,n){const r=this;let i,o,s,a,l;return c;function c(k){return u(k)}function u(k){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(k),d}function d(k){return k===33?(e.consume(k),f):k===47?(e.consume(k),o=!0,g):k===63?(e.consume(k),i=3,r.interrupt?t:x):It(k)?(e.consume(k),s=String.fromCharCode(k),v):n(k)}function f(k){return k===45?(e.consume(k),i=2,p):k===91?(e.consume(k),i=5,a=0,m):It(k)?(e.consume(k),i=4,r.interrupt?t:x):n(k)}function p(k){return k===45?(e.consume(k),r.interrupt?t:x):n(k)}function m(k){const K="CDATA[";return k===K.charCodeAt(a++)?(e.consume(k),a===K.length?r.interrupt?t:O:m):n(k)}function g(k){return It(k)?(e.consume(k),s=String.fromCharCode(k),v):n(k)}function v(k){if(k===null||k===47||k===62||Xe(k)){const K=k===47,Z=s.toLowerCase();return!K&&!o&&td.includes(Z)?(i=1,r.interrupt?t(k):O(k)):xS.includes(s.toLowerCase())?(i=6,K?(e.consume(k),y):r.interrupt?t(k):O(k)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(k):o?E(k):w(k))}return k===45||Tt(k)?(e.consume(k),s+=String.fromCharCode(k),v):n(k)}function y(k){return k===62?(e.consume(k),r.interrupt?t:O):n(k)}function E(k){return Pe(k)?(e.consume(k),E):b(k)}function w(k){return k===47?(e.consume(k),b):k===58||k===95||It(k)?(e.consume(k),_):Pe(k)?(e.consume(k),w):b(k)}function _(k){return k===45||k===46||k===58||k===95||Tt(k)?(e.consume(k),_):C(k)}function C(k){return k===61?(e.consume(k),T):Pe(k)?(e.consume(k),C):w(k)}function T(k){return k===null||k===60||k===61||k===62||k===96?n(k):k===34||k===39?(e.consume(k),l=k,R):Pe(k)?(e.consume(k),T):A(k)}function R(k){return k===l?(e.consume(k),l=null,I):k===null||ve(k)?n(k):(e.consume(k),R)}function A(k){return k===null||k===34||k===39||k===47||k===60||k===61||k===62||k===96||Xe(k)?C(k):(e.consume(k),A)}function I(k){return k===47||k===62||Pe(k)?w(k):n(k)}function b(k){return k===62?(e.consume(k),M):n(k)}function M(k){return k===null||ve(k)?O(k):Pe(k)?(e.consume(k),M):n(k)}function O(k){return k===45&&i===2?(e.consume(k),oe):k===60&&i===1?(e.consume(k),te):k===62&&i===4?(e.consume(k),z):k===63&&i===3?(e.consume(k),x):k===93&&i===5?(e.consume(k),V):ve(k)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(wS,G,L)(k)):k===null||ve(k)?(e.exit("htmlFlowData"),L(k)):(e.consume(k),O)}function L(k){return e.check(ES,j,G)(k)}function j(k){return e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),W}function W(k){return k===null||ve(k)?L(k):(e.enter("htmlFlowData"),O(k))}function oe(k){return k===45?(e.consume(k),x):O(k)}function te(k){return k===47?(e.consume(k),s="",B):O(k)}function B(k){if(k===62){const K=s.toLowerCase();return td.includes(K)?(e.consume(k),z):O(k)}return It(k)&&s.length<8?(e.consume(k),s+=String.fromCharCode(k),B):O(k)}function V(k){return k===93?(e.consume(k),x):O(k)}function x(k){return k===62?(e.consume(k),z):k===45&&i===2?(e.consume(k),x):O(k)}function z(k){return k===null||ve(k)?(e.exit("htmlFlowData"),G(k)):(e.consume(k),z)}function G(k){return e.exit("htmlFlow"),t(k)}}function CS(e,t,n){const r=this;return i;function i(s){return ve(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),o):n(s)}function o(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}function _S(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(Ei,t,n)}}const TS={name:"htmlText",tokenize:NS};function NS(e,t,n){const r=this;let i,o,s;return a;function a(x){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(x),l}function l(x){return x===33?(e.consume(x),c):x===47?(e.consume(x),C):x===63?(e.consume(x),w):It(x)?(e.consume(x),A):n(x)}function c(x){return x===45?(e.consume(x),u):x===91?(e.consume(x),o=0,m):It(x)?(e.consume(x),E):n(x)}function u(x){return x===45?(e.consume(x),p):n(x)}function d(x){return x===null?n(x):x===45?(e.consume(x),f):ve(x)?(s=d,te(x)):(e.consume(x),d)}function f(x){return x===45?(e.consume(x),p):d(x)}function p(x){return x===62?oe(x):x===45?f(x):d(x)}function m(x){const z="CDATA[";return x===z.charCodeAt(o++)?(e.consume(x),o===z.length?g:m):n(x)}function g(x){return x===null?n(x):x===93?(e.consume(x),v):ve(x)?(s=g,te(x)):(e.consume(x),g)}function v(x){return x===93?(e.consume(x),y):g(x)}function y(x){return x===62?oe(x):x===93?(e.consume(x),y):g(x)}function E(x){return x===null||x===62?oe(x):ve(x)?(s=E,te(x)):(e.consume(x),E)}function w(x){return x===null?n(x):x===63?(e.consume(x),_):ve(x)?(s=w,te(x)):(e.consume(x),w)}function _(x){return x===62?oe(x):w(x)}function C(x){return It(x)?(e.consume(x),T):n(x)}function T(x){return x===45||Tt(x)?(e.consume(x),T):R(x)}function R(x){return ve(x)?(s=R,te(x)):Pe(x)?(e.consume(x),R):oe(x)}function A(x){return x===45||Tt(x)?(e.consume(x),A):x===47||x===62||Xe(x)?I(x):n(x)}function I(x){return x===47?(e.consume(x),oe):x===58||x===95||It(x)?(e.consume(x),b):ve(x)?(s=I,te(x)):Pe(x)?(e.consume(x),I):oe(x)}function b(x){return x===45||x===46||x===58||x===95||Tt(x)?(e.consume(x),b):M(x)}function M(x){return x===61?(e.consume(x),O):ve(x)?(s=M,te(x)):Pe(x)?(e.consume(x),M):I(x)}function O(x){return x===null||x===60||x===61||x===62||x===96?n(x):x===34||x===39?(e.consume(x),i=x,L):ve(x)?(s=O,te(x)):Pe(x)?(e.consume(x),O):(e.consume(x),j)}function L(x){return x===i?(e.consume(x),i=void 0,W):x===null?n(x):ve(x)?(s=L,te(x)):(e.consume(x),L)}function j(x){return x===null||x===34||x===39||x===60||x===61||x===96?n(x):x===47||x===62||Xe(x)?I(x):(e.consume(x),j)}function W(x){return x===47||x===62||Xe(x)?I(x):n(x)}function oe(x){return x===62?(e.consume(x),e.exit("htmlTextData"),e.exit("htmlText"),t):n(x)}function te(x){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),B}function B(x){return Pe(x)?Le(e,V,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(x):V(x)}function V(x){return e.enter("htmlTextData"),s(x)}}const Dl={name:"labelEnd",resolveAll:IS,resolveTo:OS,tokenize:PS},AS={tokenize:DS},MS={tokenize:LS},RS={tokenize:FS};function IS(e){let t=-1;const n=[];for(;++t<e.length;){const r=e[t][1];if(n.push(e[t]),r.type==="labelImage"||r.type==="labelLink"||r.type==="labelEnd"){const i=r.type==="labelImage"?4:2;r.type="data",t+=i}}return e.length!==n.length&&Ut(e,0,e.length,n),e}function OS(e,t){let n=e.length,r=0,i,o,s,a;for(;n--;)if(i=e[n][1],o){if(i.type==="link"||i.type==="labelLink"&&i._inactive)break;e[n][0]==="enter"&&i.type==="labelLink"&&(i._inactive=!0)}else if(s){if(e[n][0]==="enter"&&(i.type==="labelImage"||i.type==="labelLink")&&!i._balanced&&(o=n,i.type!=="labelLink")){r=2;break}}else i.type==="labelEnd"&&(s=n);const l={type:e[o][1].type==="labelLink"?"link":"image",start:{...e[o][1].start},end:{...e[e.length-1][1].end}},c={type:"label",start:{...e[o][1].start},end:{...e[s][1].end}},u={type:"labelText",start:{...e[o+r+2][1].end},end:{...e[s-2][1].start}};return a=[["enter",l,t],["enter",c,t]],a=qt(a,e.slice(o+1,o+r+3)),a=qt(a,[["enter",u,t]]),a=qt(a,jo(t.parser.constructs.insideSpan.null,e.slice(o+r+4,s-3),t)),a=qt(a,[["exit",u,t],e[s-2],e[s-1],["exit",c,t]]),a=qt(a,e.slice(s+1)),a=qt(a,[["exit",l,t]]),Ut(e,o,e.length,a),e}function PS(e,t,n){const r=this;let i=r.events.length,o,s;for(;i--;)if((r.events[i][1].type==="labelImage"||r.events[i][1].type==="labelLink")&&!r.events[i][1]._balanced){o=r.events[i][1];break}return a;function a(f){return o?o._inactive?d(f):(s=r.parser.defined.includes(nn(r.sliceSerialize({start:o.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(f),e.exit("labelMarker"),e.exit("labelEnd"),l):n(f)}function l(f){return f===40?e.attempt(AS,u,s?u:d)(f):f===91?e.attempt(MS,u,s?c:d)(f):s?u(f):d(f)}function c(f){return e.attempt(RS,u,d)(f)}function u(f){return t(f)}function d(f){return o._balanced=!0,n(f)}}function DS(e,t,n){return r;function r(d){return e.enter("resource"),e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),i}function i(d){return Xe(d)?ri(e,o)(d):o(d)}function o(d){return d===41?u(d):Pp(e,s,a,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(d)}function s(d){return Xe(d)?ri(e,l)(d):u(d)}function a(d){return n(d)}function l(d){return d===34||d===39||d===40?Lp(e,c,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(d):u(d)}function c(d){return Xe(d)?ri(e,u)(d):u(d)}function u(d){return d===41?(e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),e.exit("resource"),t):n(d)}}function LS(e,t,n){const r=this;return i;function i(a){return Dp.call(r,e,o,s,"reference","referenceMarker","referenceString")(a)}function o(a){return r.parser.defined.includes(nn(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(a):n(a)}function s(a){return n(a)}}function FS(e,t,n){return r;function r(o){return e.enter("reference"),e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),i}function i(o){return o===93?(e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),e.exit("reference"),t):n(o)}}const jS={name:"labelStartImage",resolveAll:Dl.resolveAll,tokenize:BS};function BS(e,t,n){const r=this;return i;function i(a){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(a),e.exit("labelImageMarker"),o}function o(a){return a===91?(e.enter("labelMarker"),e.consume(a),e.exit("labelMarker"),e.exit("labelImage"),s):n(a)}function s(a){return a===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(a):t(a)}}const $S={name:"labelStartLink",resolveAll:Dl.resolveAll,tokenize:VS};function VS(e,t,n){const r=this;return i;function i(s){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(s),e.exit("labelMarker"),e.exit("labelLink"),o}function o(s){return s===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(s):t(s)}}const Ts={name:"lineEnding",tokenize:zS};function zS(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),Le(e,t,"linePrefix")}}const so={name:"thematicBreak",tokenize:US};function US(e,t,n){let r=0,i;return o;function o(c){return e.enter("thematicBreak"),s(c)}function s(c){return i=c,a(c)}function a(c){return c===i?(e.enter("thematicBreakSequence"),l(c)):r>=3&&(c===null||ve(c))?(e.exit("thematicBreak"),t(c)):n(c)}function l(c){return c===i?(e.consume(c),r++,l):(e.exit("thematicBreakSequence"),Pe(c)?Le(e,a,"whitespace")(c):a(c))}}const Lt={continuation:{tokenize:KS},exit:YS,name:"list",tokenize:GS},HS={partial:!0,tokenize:ZS},WS={partial:!0,tokenize:qS};function GS(e,t,n){const r=this,i=r.events[r.events.length-1];let o=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,s=0;return a;function a(p){const m=r.containerState.type||(p===42||p===43||p===45?"listUnordered":"listOrdered");if(m==="listUnordered"?!r.containerState.marker||p===r.containerState.marker:Ra(p)){if(r.containerState.type||(r.containerState.type=m,e.enter(m,{_container:!0})),m==="listUnordered")return e.enter("listItemPrefix"),p===42||p===45?e.check(so,n,c)(p):c(p);if(!r.interrupt||p===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(p)}return n(p)}function l(p){return Ra(p)&&++s<10?(e.consume(p),l):(!r.interrupt||s<2)&&(r.containerState.marker?p===r.containerState.marker:p===41||p===46)?(e.exit("listItemValue"),c(p)):n(p)}function c(p){return e.enter("listItemMarker"),e.consume(p),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||p,e.check(Ei,r.interrupt?n:u,e.attempt(HS,f,d))}function u(p){return r.containerState.initialBlankLine=!0,o++,f(p)}function d(p){return Pe(p)?(e.enter("listItemPrefixWhitespace"),e.consume(p),e.exit("listItemPrefixWhitespace"),f):n(p)}function f(p){return r.containerState.size=o+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(p)}}function KS(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Ei,i,o);function i(a){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Le(e,t,"listItemIndent",r.containerState.size+1)(a)}function o(a){return r.containerState.furtherBlankLines||!Pe(a)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,s(a)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(WS,t,s)(a))}function s(a){return r.containerState._closeFlow=!0,r.interrupt=void 0,Le(e,e.attempt(Lt,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a)}}function qS(e,t,n){const r=this;return Le(e,i,"listItemIndent",r.containerState.size+1);function i(o){const s=r.events[r.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===r.containerState.size?t(o):n(o)}}function YS(e){e.exit(this.containerState.type)}function ZS(e,t,n){const r=this;return Le(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(o){const s=r.events[r.events.length-1];return!Pe(o)&&s&&s[1].type==="listItemPrefixWhitespace"?t(o):n(o)}}const nd={name:"setextUnderline",resolveTo:XS,tokenize:QS};function XS(e,t){let n=e.length,r,i,o;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!o&&e[n][1].type==="definition"&&(o=n);const s={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",o?(e.splice(i,0,["enter",s,t]),e.splice(o+1,0,["exit",e[r][1],t]),e[r][1].end={...e[o][1].end}):e[r][1]=s,e.push(["exit",s,t]),e}function QS(e,t,n){const r=this;let i;return o;function o(c){let u=r.events.length,d;for(;u--;)if(r.events[u][1].type!=="lineEnding"&&r.events[u][1].type!=="linePrefix"&&r.events[u][1].type!=="content"){d=r.events[u][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||d)?(e.enter("setextHeadingLine"),i=c,s(c)):n(c)}function s(c){return e.enter("setextHeadingLineSequence"),a(c)}function a(c){return c===i?(e.consume(c),a):(e.exit("setextHeadingLineSequence"),Pe(c)?Le(e,l,"lineSuffix")(c):l(c))}function l(c){return c===null||ve(c)?(e.exit("setextHeadingLine"),t(c)):n(c)}}const JS={tokenize:ek};function ek(e){const t=this,n=e.attempt(Ei,r,e.attempt(this.parser.constructs.flowInitial,i,Le(e,e.attempt(this.parser.constructs.flow,i,e.attempt(oS,i)),"linePrefix")));return n;function r(o){if(o===null){e.consume(o);return}return e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const tk={resolveAll:jp()},nk=Fp("string"),rk=Fp("text");function Fp(e){return{resolveAll:jp(e==="text"?ik:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],o=n.attempt(i,s,a);return s;function s(u){return c(u)?o(u):a(u)}function a(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),l}function l(u){return c(u)?(n.exit("data"),o(u)):(n.consume(u),l)}function c(u){if(u===null)return!0;const d=i[u];let f=-1;if(d)for(;++f<d.length;){const p=d[f];if(!p.previous||p.previous.call(r,r.previous))return!0}return!1}}}function jp(e){return t;function t(n,r){let i=-1,o;for(;++i<=n.length;)o===void 0?n[i]&&n[i][1].type==="data"&&(o=i,i++):(!n[i]||n[i][1].type!=="data")&&(i!==o+2&&(n[o][1].end=n[i-1][1].end,n.splice(o+2,i-o-2),i=o+2),o=void 0);return e?e(n,r):n}}function ik(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const r=e[n-1][1],i=t.sliceStream(r);let o=i.length,s=-1,a=0,l;for(;o--;){const c=i[o];if(typeof c=="string"){for(s=c.length;c.charCodeAt(s-1)===32;)a++,s--;if(s)break;s=-1}else if(c===-2)l=!0,a++;else if(c!==-1){o++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(a=0),a){const c={type:n===e.length||l||a<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:o?s:r.start._bufferIndex+s,_index:r.start._index+o,line:r.end.line,column:r.end.column-a,offset:r.end.offset-a},end:{...r.end}};r.end={...c.start},r.start.offset===r.end.offset?Object.assign(r,c):(e.splice(n,0,["enter",c,t],["exit",c,t]),n+=2)}n++}return e}const ok={42:Lt,43:Lt,45:Lt,48:Lt,49:Lt,50:Lt,51:Lt,52:Lt,53:Lt,54:Lt,55:Lt,56:Lt,57:Lt,62:Mp},sk={91:uS},ak={[-2]:_s,[-1]:_s,32:_s},lk={35:mS,42:so,45:[nd,so],60:vS,61:nd,95:so,96:ed,126:ed},ck={38:Ip,92:Rp},uk={[-5]:Ts,[-4]:Ts,[-3]:Ts,33:jS,38:Ip,42:Ia,60:[$E,TS],91:$S,92:[pS,Rp],93:Dl,95:Ia,96:JE},dk={null:[Ia,tk]},fk={null:[42,95]},hk={null:[]},pk=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:fk,contentInitial:sk,disable:hk,document:ok,flow:lk,flowInitial:ak,insideSpan:dk,string:ck,text:uk},Symbol.toStringTag,{value:"Module"}));function gk(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const i={},o=[];let s=[],a=[];const l={attempt:R(C),check:R(T),consume:E,enter:w,exit:_,interrupt:R(T,{interrupt:!0})},c={code:null,containerState:{},defineSkip:g,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d};let u=t.tokenize.call(c,l);return t.resolveAll&&o.push(t),c;function d(M){return s=qt(s,M),v(),s[s.length-1]!==null?[]:(A(t,0),c.events=jo(o,c.events,c),c.events)}function f(M,O){return bk(p(M),O)}function p(M){return mk(s,M)}function m(){const{_bufferIndex:M,_index:O,line:L,column:j,offset:W}=r;return{_bufferIndex:M,_index:O,line:L,column:j,offset:W}}function g(M){i[M.line]=M.column,b()}function v(){let M;for(;r._index<s.length;){const O=s[r._index];if(typeof O=="string")for(M=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===M&&r._bufferIndex<O.length;)y(O.charCodeAt(r._bufferIndex));else y(O)}}function y(M){u=u(M)}function E(M){ve(M)?(r.line++,r.column=1,r.offset+=M===-3?2:1,b()):M!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===s[r._index].length&&(r._bufferIndex=-1,r._index++)),c.previous=M}function w(M,O){const L=O||{};return L.type=M,L.start=m(),c.events.push(["enter",L,c]),a.push(L),L}function _(M){const O=a.pop();return O.end=m(),c.events.push(["exit",O,c]),O}function C(M,O){A(M,O.from)}function T(M,O){O.restore()}function R(M,O){return L;function L(j,W,oe){let te,B,V,x;return Array.isArray(j)?G(j):"tokenize"in j?G([j]):z(j);function z(X){return ie;function ie(Y){const re=Y!==null&&X[Y],H=Y!==null&&X.null,Ee=[...Array.isArray(re)?re:re?[re]:[],...Array.isArray(H)?H:H?[H]:[]];return G(Ee)(Y)}}function G(X){return te=X,B=0,X.length===0?oe:k(X[B])}function k(X){return ie;function ie(Y){return x=I(),V=X,X.partial||(c.currentConstruct=X),X.name&&c.parser.constructs.disable.null.includes(X.name)?Z():X.tokenize.call(O?Object.assign(Object.create(c),O):c,l,K,Z)(Y)}}function K(X){return M(V,x),W}function Z(X){return x.restore(),++B<te.length?k(te[B]):oe}}}function A(M,O){M.resolveAll&&!o.includes(M)&&o.push(M),M.resolve&&Ut(c.events,O,c.events.length-O,M.resolve(c.events.slice(O),c)),M.resolveTo&&(c.events=M.resolveTo(c.events,c))}function I(){const M=m(),O=c.previous,L=c.currentConstruct,j=c.events.length,W=Array.from(a);return{from:j,restore:oe};function oe(){r=M,c.previous=O,c.currentConstruct=L,c.events.length=j,a=W,b()}}function b(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function mk(e,t){const n=t.start._index,r=t.start._bufferIndex,i=t.end._index,o=t.end._bufferIndex;let s;if(n===i)s=[e[n].slice(r,o)];else{if(s=e.slice(n,i),r>-1){const a=s[0];typeof a=="string"?s[0]=a.slice(r):s.shift()}o>0&&s.push(e[i].slice(0,o))}return s}function bk(e,t){let n=-1;const r=[];let i;for(;++n<e.length;){const o=e[n];let s;if(typeof o=="string")s=o;else switch(o){case-5:{s="\r";break}case-4:{s=`
22
+ `,c="/",u="*",d="",f="comment",p="declaration";ks=function(g,v){if(typeof g!="string")throw new TypeError("First argument must be a string");if(!g)return[];v=v||{};var y=1,E=1;function w(L){var j=L.match(t);j&&(y+=j.length);var W=L.lastIndexOf(l);E=~W?L.length-W:E+L.length}function _(){var L={line:y,column:E};return function(j){return j.position=new C(L),A(),j}}function C(L){this.start=L,this.end={line:y,column:E},this.source=v.source}C.prototype.content=g;function T(L){var j=new Error(v.source+":"+y+":"+E+": "+L);if(j.reason=L,j.filename=v.source,j.line=y,j.column=E,j.source=g,!v.silent)throw j}function R(L){var j=L.exec(g);if(j){var W=j[0];return w(W),g=g.slice(W.length),j}}function A(){R(n)}function I(L){var j;for(L=L||[];j=b();)j!==!1&&L.push(j);return L}function b(){var L=_();if(!(c!=g.charAt(0)||u!=g.charAt(1))){for(var j=2;d!=g.charAt(j)&&(u!=g.charAt(j)||c!=g.charAt(j+1));)++j;if(j+=2,d===g.charAt(j-1))return T("End of comment missing");var W=g.slice(2,j-2);return E+=2,w(W),g=g.slice(j),E+=2,L({type:f,comment:W})}}function M(){var L=_(),j=R(r);if(j){if(b(),!R(i))return T("property missing ':'");var W=R(o),oe=L({type:p,property:m(j[0].replace(e,d)),value:W?m(W[0].replace(e,d)):d});return R(s),oe}}function O(){var L=[];I(L);for(var j;j=M();)j!==!1&&(L.push(j),I(L));return L}return A(),O()};function m(g){return g?g.replace(a,d):d}return ks}var Uu;function eE(){if(Uu)return ar;Uu=1;var e=ar&&ar.__importDefault||function(r){return r&&r.__esModule?r:{default:r}};Object.defineProperty(ar,"__esModule",{value:!0}),ar.default=n;var t=e(Jw());function n(r,i){var o=null;if(!r||typeof r!="string")return o;var s=(0,t.default)(r),a=typeof i=="function";return s.forEach(function(l){if(l.type==="declaration"){var c=l.property,u=l.value;a?i(c,u,l):u&&(o=o||{},o[c]=u)}}),o}return ar}var Ur={},Hu;function tE(){if(Hu)return Ur;Hu=1,Object.defineProperty(Ur,"__esModule",{value:!0}),Ur.camelCase=void 0;var e=/^--[a-zA-Z0-9_-]+$/,t=/-([a-z])/g,n=/^[^-]+$/,r=/^-(webkit|moz|ms|o|khtml)-/,i=/^-(ms)-/,o=function(c){return!c||n.test(c)||e.test(c)},s=function(c,u){return u.toUpperCase()},a=function(c,u){return"".concat(u,"-")},l=function(c,u){return u===void 0&&(u={}),o(c)?c:(c=c.toLowerCase(),u.reactCompat?c=c.replace(i,a):c=c.replace(r,a),c.replace(t,s))};return Ur.camelCase=l,Ur}var Hr,Wu;function nE(){if(Wu)return Hr;Wu=1;var e=Hr&&Hr.__importDefault||function(i){return i&&i.__esModule?i:{default:i}},t=e(eE()),n=tE();function r(i,o){var s={};return!i||typeof i!="string"||(0,t.default)(i,function(a,l){a&&l&&(s[(0,n.camelCase)(a,o)]=l)}),s}return r.default=r,Hr=r,Hr}var rE=nE();const iE=Lo(rE),wp=Ep("end"),Al=Ep("start");function Ep(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function oE(e){const t=Al(e),n=wp(e);if(t&&n)return{start:t,end:n}}function ni(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?Gu(e.position):"start"in e||"end"in e?Gu(e):"line"in e||"column"in e?Ma(e):""}function Ma(e){return Ku(e&&e.line)+":"+Ku(e&&e.column)}function Gu(e){return Ma(e&&e.start)+"-"+Ma(e&&e.end)}function Ku(e){return e&&typeof e=="number"?e:1}class Nt extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let i="",o={},s=!1;if(n&&("line"in n&&"column"in n?o={place:n}:"start"in n&&"end"in n?o={place:n}:"type"in n?o={ancestors:[n],place:n.position}:o={...n}),typeof t=="string"?i=t:!o.cause&&t&&(s=!0,i=t.message,o.cause=t),!o.ruleId&&!o.source&&typeof r=="string"){const l=r.indexOf(":");l===-1?o.ruleId=r:(o.source=r.slice(0,l),o.ruleId=r.slice(l+1))}if(!o.place&&o.ancestors&&o.ancestors){const l=o.ancestors[o.ancestors.length-1];l&&(o.place=l.position)}const a=o.place&&"start"in o.place?o.place.start:o.place;this.ancestors=o.ancestors||void 0,this.cause=o.cause||void 0,this.column=a?a.column:void 0,this.fatal=void 0,this.file="",this.message=i,this.line=a?a.line:void 0,this.name=ni(o.place)||"1:1",this.place=o.place||void 0,this.reason=this.message,this.ruleId=o.ruleId||void 0,this.source=o.source||void 0,this.stack=s&&o.cause&&typeof o.cause.stack=="string"?o.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Nt.prototype.file="";Nt.prototype.name="";Nt.prototype.reason="";Nt.prototype.message="";Nt.prototype.stack="";Nt.prototype.column=void 0;Nt.prototype.line=void 0;Nt.prototype.ancestors=void 0;Nt.prototype.cause=void 0;Nt.prototype.fatal=void 0;Nt.prototype.place=void 0;Nt.prototype.ruleId=void 0;Nt.prototype.source=void 0;const Ml={}.hasOwnProperty,sE=new Map,aE=/[A-Z]/g,lE=new Set(["table","tbody","thead","tfoot","tr"]),cE=new Set(["td","th"]),Sp="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function uE(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=yE(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=bE(n,t.jsx,t.jsxs)}const i={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?Nl:Xw,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},o=kp(i,e,void 0);return o&&typeof o!="string"?o:i.create(e,i.Fragment,{children:o||void 0},void 0)}function kp(e,t,n){if(t.type==="element")return dE(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return fE(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return pE(e,t,n);if(t.type==="mdxjsEsm")return hE(e,t);if(t.type==="root")return gE(e,t,n);if(t.type==="text")return mE(e,t)}function dE(e,t,n){const r=e.schema;let i=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(i=Nl,e.schema=i),e.ancestors.push(t);const o=_p(e,t.tagName,!1),s=xE(e,t);let a=Il(e,t);return lE.has(t.tagName)&&(a=a.filter(function(l){return typeof l=="string"?!Vw(l):!0})),Cp(e,s,o,t),Rl(s,a),e.ancestors.pop(),e.schema=r,e.create(t,o,s,n)}function fE(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}pi(e,t.position)}function hE(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);pi(e,t.position)}function pE(e,t,n){const r=e.schema;let i=r;t.name==="svg"&&r.space==="html"&&(i=Nl,e.schema=i),e.ancestors.push(t);const o=t.name===null?e.Fragment:_p(e,t.name,!0),s=vE(e,t),a=Il(e,t);return Cp(e,s,o,t),Rl(s,a),e.ancestors.pop(),e.schema=r,e.create(t,o,s,n)}function gE(e,t,n){const r={};return Rl(r,Il(e,t)),e.create(t,e.Fragment,r,n)}function mE(e,t){return t.value}function Cp(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function Rl(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function bE(e,t,n){return r;function r(i,o,s,a){const c=Array.isArray(s.children)?n:t;return a?c(o,s,a):c(o,s)}}function yE(e,t){return n;function n(r,i,o,s){const a=Array.isArray(o.children),l=Al(r);return t(i,o,s,a,{columnNumber:l?l.column-1:void 0,fileName:e,lineNumber:l?l.line:void 0},void 0)}}function xE(e,t){const n={};let r,i;for(i in t.properties)if(i!=="children"&&Ml.call(t.properties,i)){const o=wE(e,i,t.properties[i]);if(o){const[s,a]=o;e.tableCellAlignToStyle&&s==="align"&&typeof a=="string"&&cE.has(t.tagName)?r=a:n[s]=a}}if(r){const o=n.style||(n.style={});o[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function vE(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const o=r.data.estree.body[0];o.type;const s=o.expression;s.type;const a=s.properties[0];a.type,Object.assign(n,e.evaluater.evaluateExpression(a.argument))}else pi(e,t.position);else{const i=r.name;let o;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const a=r.value.data.estree.body[0];a.type,o=e.evaluater.evaluateExpression(a.expression)}else pi(e,t.position);else o=r.value===null?!0:r.value;n[i]=o}return n}function Il(e,t){const n=[];let r=-1;const i=e.passKeys?new Map:sE;for(;++r<t.children.length;){const o=t.children[r];let s;if(e.passKeys){const l=o.type==="element"?o.tagName:o.type==="mdxJsxFlowElement"||o.type==="mdxJsxTextElement"?o.name:void 0;if(l){const c=i.get(l)||0;s=l+"-"+c,i.set(l,c+1)}}const a=kp(e,o,s);a!==void 0&&n.push(a)}return n}function wE(e,t,n){const r=qw(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?Lw(n):Qw(n)),r.property==="style"){let i=typeof n=="object"?n:EE(e,String(n));return e.stylePropertyNameCase==="css"&&(i=SE(i)),["style",i]}return[e.elementAttributeNameCase==="react"&&r.space?Ww[r.property]||r.property:r.attribute,n]}}function EE(e,t){try{return iE(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,i=new Nt("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:r,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw i.file=e.filePath||void 0,i.url=Sp+"#cannot-parse-style-attribute",i}}function _p(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const i=t.split(".");let o=-1,s;for(;++o<i.length;){const a=ju(i[o])?{type:"Identifier",name:i[o]}:{type:"Literal",value:i[o]};s=s?{type:"MemberExpression",object:s,property:a,computed:!!(o&&a.type==="Literal"),optional:!1}:a}r=s}else r=ju(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const i=r.value;return Ml.call(e.components,i)?e.components[i]:i}if(e.evaluater)return e.evaluater.evaluateExpression(r);pi(e)}function pi(e,t){const n=new Nt("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=Sp+"#cannot-handle-mdx-estrees-without-createevaluater",n}function SE(e){const t={};let n;for(n in e)Ml.call(e,n)&&(t[kE(n)]=e[n]);return t}function kE(e){let t=e.replace(aE,CE);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function CE(e){return"-"+e.toLowerCase()}const Cs={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},_E={};function Ol(e,t){const n=_E,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,i=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return Tp(e,r,i)}function Tp(e,t,n){if(TE(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return qu(e.children,t,n)}return Array.isArray(e)?qu(e,t,n):""}function qu(e,t,n){const r=[];let i=-1;for(;++i<e.length;)r[i]=Tp(e[i],t,n);return r.join("")}function TE(e){return!!(e&&typeof e=="object")}const Yu=document.createElement("i");function Pl(e){const t="&"+e+";";Yu.innerHTML=t;const n=Yu.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function Ut(e,t,n,r){const i=e.length;let o=0,s;if(t<0?t=-t>i?0:i+t:t=t>i?i:t,n=n>0?n:0,r.length<1e4)s=Array.from(r),s.unshift(t,n),e.splice(...s);else for(n&&e.splice(t,n);o<r.length;)s=r.slice(o,o+1e4),s.unshift(t,0),e.splice(...s),o+=1e4,t+=1e4}function qt(e,t){return e.length>0?(Ut(e,e.length,0,t),e):t}const Zu={}.hasOwnProperty;function Np(e){const t={};let n=-1;for(;++n<e.length;)NE(t,e[n]);return t}function NE(e,t){let n;for(n in t){const i=(Zu.call(e,n)?e[n]:void 0)||(e[n]={}),o=t[n];let s;if(o)for(s in o){Zu.call(i,s)||(i[s]=[]);const a=o[s];AE(i[s],Array.isArray(a)?a:a?[a]:[])}}}function AE(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);Ut(e,0,0,r)}function Ap(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function nn(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const It=Fn(/[A-Za-z]/),Tt=Fn(/[\dA-Za-z]/),ME=Fn(/[#-'*+\--9=?A-Z^-~]/);function xo(e){return e!==null&&(e<32||e===127)}const Ra=Fn(/\d/),RE=Fn(/[\dA-Fa-f]/),IE=Fn(/[!-/:-@[-`{-~]/);function ve(e){return e!==null&&e<-2}function Xe(e){return e!==null&&(e<0||e===32)}function Pe(e){return e===-2||e===-1||e===32}const Fo=Fn(new RegExp("\\p{P}|\\p{S}","u")),Qn=Fn(/\s/);function Fn(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function jr(e){const t=[];let n=-1,r=0,i=0;for(;++n<e.length;){const o=e.charCodeAt(n);let s="";if(o===37&&Tt(e.charCodeAt(n+1))&&Tt(e.charCodeAt(n+2)))i=2;else if(o<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(o))||(s=String.fromCharCode(o));else if(o>55295&&o<57344){const a=e.charCodeAt(n+1);o<56320&&a>56319&&a<57344?(s=String.fromCharCode(o,a),i=1):s="�"}else s=String.fromCharCode(o);s&&(t.push(e.slice(r,n),encodeURIComponent(s)),r=n+i+1,s=""),i&&(n+=i,i=0)}return t.join("")+e.slice(r)}function Le(e,t,n,r){const i=r?r-1:Number.POSITIVE_INFINITY;let o=0;return s;function s(l){return Pe(l)?(e.enter(n),a(l)):t(l)}function a(l){return Pe(l)&&o++<i?(e.consume(l),a):(e.exit(n),t(l))}}const OE={tokenize:PE};function PE(e){const t=e.attempt(this.parser.constructs.contentInitial,r,i);let n;return t;function r(a){if(a===null){e.consume(a);return}return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),Le(e,t,"linePrefix")}function i(a){return e.enter("paragraph"),o(a)}function o(a){const l=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=l),n=l,s(a)}function s(a){if(a===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(a);return}return ve(a)?(e.consume(a),e.exit("chunkText"),o):(e.consume(a),s)}}const DE={tokenize:LE},Xu={tokenize:FE};function LE(e){const t=this,n=[];let r=0,i,o,s;return a;function a(w){if(r<n.length){const _=n[r];return t.containerState=_[1],e.attempt(_[0].continuation,l,c)(w)}return c(w)}function l(w){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,i&&E();const _=t.events.length;let C=_,T;for(;C--;)if(t.events[C][0]==="exit"&&t.events[C][1].type==="chunkFlow"){T=t.events[C][1].end;break}y(r);let R=_;for(;R<t.events.length;)t.events[R][1].end={...T},R++;return Ut(t.events,C+1,0,t.events.slice(_)),t.events.length=R,c(w)}return a(w)}function c(w){if(r===n.length){if(!i)return f(w);if(i.currentConstruct&&i.currentConstruct.concrete)return m(w);t.interrupt=!!(i.currentConstruct&&!i._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(Xu,u,d)(w)}function u(w){return i&&E(),y(r),f(w)}function d(w){return t.parser.lazy[t.now().line]=r!==n.length,s=t.now().offset,m(w)}function f(w){return t.containerState={},e.attempt(Xu,p,m)(w)}function p(w){return r++,n.push([t.currentConstruct,t.containerState]),f(w)}function m(w){if(w===null){i&&E(),y(0),e.consume(w);return}return i=i||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:i,contentType:"flow",previous:o}),g(w)}function g(w){if(w===null){v(e.exit("chunkFlow"),!0),y(0),e.consume(w);return}return ve(w)?(e.consume(w),v(e.exit("chunkFlow")),r=0,t.interrupt=void 0,a):(e.consume(w),g)}function v(w,_){const C=t.sliceStream(w);if(_&&C.push(null),w.previous=o,o&&(o.next=w),o=w,i.defineSkip(w.start),i.write(C),t.parser.lazy[w.start.line]){let T=i.events.length;for(;T--;)if(i.events[T][1].start.offset<s&&(!i.events[T][1].end||i.events[T][1].end.offset>s))return;const R=t.events.length;let A=R,I,b;for(;A--;)if(t.events[A][0]==="exit"&&t.events[A][1].type==="chunkFlow"){if(I){b=t.events[A][1].end;break}I=!0}for(y(r),T=R;T<t.events.length;)t.events[T][1].end={...b},T++;Ut(t.events,A+1,0,t.events.slice(R)),t.events.length=T}}function y(w){let _=n.length;for(;_-- >w;){const C=n[_];t.containerState=C[1],C[0].exit.call(t,e)}n.length=w}function E(){i.write([null]),o=void 0,i=void 0,t.containerState._closeFlow=void 0}}function FE(e,t,n){return Le(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function Ar(e){if(e===null||Xe(e)||Qn(e))return 1;if(Fo(e))return 2}function jo(e,t,n){const r=[];let i=-1;for(;++i<e.length;){const o=e[i].resolveAll;o&&!r.includes(o)&&(t=o(t,n),r.push(o))}return t}const Ia={name:"attention",resolveAll:jE,tokenize:BE};function jE(e,t){let n=-1,r,i,o,s,a,l,c,u;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(r=n;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;l=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const d={...e[r][1].end},f={...e[n][1].start};Qu(d,-l),Qu(f,l),s={type:l>1?"strongSequence":"emphasisSequence",start:d,end:{...e[r][1].end}},a={type:l>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:f},o={type:l>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},i={type:l>1?"strong":"emphasis",start:{...s.start},end:{...a.end}},e[r][1].end={...s.start},e[n][1].start={...a.end},c=[],e[r][1].end.offset-e[r][1].start.offset&&(c=qt(c,[["enter",e[r][1],t],["exit",e[r][1],t]])),c=qt(c,[["enter",i,t],["enter",s,t],["exit",s,t],["enter",o,t]]),c=qt(c,jo(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),c=qt(c,[["exit",o,t],["enter",a,t],["exit",a,t],["exit",i,t]]),e[n][1].end.offset-e[n][1].start.offset?(u=2,c=qt(c,[["enter",e[n][1],t],["exit",e[n][1],t]])):u=0,Ut(e,r-1,n-r+3,c),n=r+c.length-u-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function BE(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,i=Ar(r);let o;return s;function s(l){return o=l,e.enter("attentionSequence"),a(l)}function a(l){if(l===o)return e.consume(l),a;const c=e.exit("attentionSequence"),u=Ar(l),d=!u||u===2&&i||n.includes(l),f=!i||i===2&&u||n.includes(r);return c._open=!!(o===42?d:d&&(i||!f)),c._close=!!(o===42?f:f&&(u||!d)),t(l)}}function Qu(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const $E={name:"autolink",tokenize:VE};function VE(e,t,n){let r=0;return i;function i(p){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),o}function o(p){return It(p)?(e.consume(p),s):p===64?n(p):c(p)}function s(p){return p===43||p===45||p===46||Tt(p)?(r=1,a(p)):c(p)}function a(p){return p===58?(e.consume(p),r=0,l):(p===43||p===45||p===46||Tt(p))&&r++<32?(e.consume(p),a):(r=0,c(p))}function l(p){return p===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):p===null||p===32||p===60||xo(p)?n(p):(e.consume(p),l)}function c(p){return p===64?(e.consume(p),u):ME(p)?(e.consume(p),c):n(p)}function u(p){return Tt(p)?d(p):n(p)}function d(p){return p===46?(e.consume(p),r=0,u):p===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):f(p)}function f(p){if((p===45||Tt(p))&&r++<63){const m=p===45?f:d;return e.consume(p),m}return n(p)}}const Ei={partial:!0,tokenize:zE};function zE(e,t,n){return r;function r(o){return Pe(o)?Le(e,i,"linePrefix")(o):i(o)}function i(o){return o===null||ve(o)?t(o):n(o)}}const Mp={continuation:{tokenize:HE},exit:WE,name:"blockQuote",tokenize:UE};function UE(e,t,n){const r=this;return i;function i(s){if(s===62){const a=r.containerState;return a.open||(e.enter("blockQuote",{_container:!0}),a.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(s),e.exit("blockQuoteMarker"),o}return n(s)}function o(s){return Pe(s)?(e.enter("blockQuotePrefixWhitespace"),e.consume(s),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(s))}}function HE(e,t,n){const r=this;return i;function i(s){return Pe(s)?Le(e,o,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(s):o(s)}function o(s){return e.attempt(Mp,t,n)(s)}}function WE(e){e.exit("blockQuote")}const Rp={name:"characterEscape",tokenize:GE};function GE(e,t,n){return r;function r(o){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(o),e.exit("escapeMarker"),i}function i(o){return IE(o)?(e.enter("characterEscapeValue"),e.consume(o),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(o)}}const Ip={name:"characterReference",tokenize:KE};function KE(e,t,n){const r=this;let i=0,o,s;return a;function a(d){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),l}function l(d){return d===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(d),e.exit("characterReferenceMarkerNumeric"),c):(e.enter("characterReferenceValue"),o=31,s=Tt,u(d))}function c(d){return d===88||d===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(d),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),o=6,s=RE,u):(e.enter("characterReferenceValue"),o=7,s=Ra,u(d))}function u(d){if(d===59&&i){const f=e.exit("characterReferenceValue");return s===Tt&&!Pl(r.sliceSerialize(f))?n(d):(e.enter("characterReferenceMarker"),e.consume(d),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return s(d)&&i++<o?(e.consume(d),u):n(d)}}const Ju={partial:!0,tokenize:YE},ed={concrete:!0,name:"codeFenced",tokenize:qE};function qE(e,t,n){const r=this,i={partial:!0,tokenize:C};let o=0,s=0,a;return l;function l(T){return c(T)}function c(T){const R=r.events[r.events.length-1];return o=R&&R[1].type==="linePrefix"?R[2].sliceSerialize(R[1],!0).length:0,a=T,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),u(T)}function u(T){return T===a?(s++,e.consume(T),u):s<3?n(T):(e.exit("codeFencedFenceSequence"),Pe(T)?Le(e,d,"whitespace")(T):d(T))}function d(T){return T===null||ve(T)?(e.exit("codeFencedFence"),r.interrupt?t(T):e.check(Ju,g,_)(T)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),f(T))}function f(T){return T===null||ve(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),d(T)):Pe(T)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),Le(e,p,"whitespace")(T)):T===96&&T===a?n(T):(e.consume(T),f)}function p(T){return T===null||ve(T)?d(T):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),m(T))}function m(T){return T===null||ve(T)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),d(T)):T===96&&T===a?n(T):(e.consume(T),m)}function g(T){return e.attempt(i,_,v)(T)}function v(T){return e.enter("lineEnding"),e.consume(T),e.exit("lineEnding"),y}function y(T){return o>0&&Pe(T)?Le(e,E,"linePrefix",o+1)(T):E(T)}function E(T){return T===null||ve(T)?e.check(Ju,g,_)(T):(e.enter("codeFlowValue"),w(T))}function w(T){return T===null||ve(T)?(e.exit("codeFlowValue"),E(T)):(e.consume(T),w)}function _(T){return e.exit("codeFenced"),t(T)}function C(T,R,A){let I=0;return b;function b(W){return T.enter("lineEnding"),T.consume(W),T.exit("lineEnding"),M}function M(W){return T.enter("codeFencedFence"),Pe(W)?Le(T,O,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(W):O(W)}function O(W){return W===a?(T.enter("codeFencedFenceSequence"),L(W)):A(W)}function L(W){return W===a?(I++,T.consume(W),L):I>=s?(T.exit("codeFencedFenceSequence"),Pe(W)?Le(T,j,"whitespace")(W):j(W)):A(W)}function j(W){return W===null||ve(W)?(T.exit("codeFencedFence"),R(W)):A(W)}}}function YE(e,t,n){const r=this;return i;function i(s){return s===null?n(s):(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),o)}function o(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}const _s={name:"codeIndented",tokenize:XE},ZE={partial:!0,tokenize:QE};function XE(e,t,n){const r=this;return i;function i(c){return e.enter("codeIndented"),Le(e,o,"linePrefix",5)(c)}function o(c){const u=r.events[r.events.length-1];return u&&u[1].type==="linePrefix"&&u[2].sliceSerialize(u[1],!0).length>=4?s(c):n(c)}function s(c){return c===null?l(c):ve(c)?e.attempt(ZE,s,l)(c):(e.enter("codeFlowValue"),a(c))}function a(c){return c===null||ve(c)?(e.exit("codeFlowValue"),s(c)):(e.consume(c),a)}function l(c){return e.exit("codeIndented"),t(c)}}function QE(e,t,n){const r=this;return i;function i(s){return r.parser.lazy[r.now().line]?n(s):ve(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),i):Le(e,o,"linePrefix",5)(s)}function o(s){const a=r.events[r.events.length-1];return a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?t(s):ve(s)?i(s):n(s)}}const JE={name:"codeText",previous:tS,resolve:eS,tokenize:nS};function eS(e){let t=e.length-4,n=3,r,i;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r<t;)if(e[r][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)i===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(i=r):(r===t||e[r][1].type==="lineEnding")&&(e[i][1].type="codeTextData",r!==i+2&&(e[i][1].end=e[r-1][1].end,e.splice(i+2,r-i-2),t-=r-i-2,r=i+2),i=void 0);return e}function tS(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function nS(e,t,n){let r=0,i,o;return s;function s(d){return e.enter("codeText"),e.enter("codeTextSequence"),a(d)}function a(d){return d===96?(e.consume(d),r++,a):(e.exit("codeTextSequence"),l(d))}function l(d){return d===null?n(d):d===32?(e.enter("space"),e.consume(d),e.exit("space"),l):d===96?(o=e.enter("codeTextSequence"),i=0,u(d)):ve(d)?(e.enter("lineEnding"),e.consume(d),e.exit("lineEnding"),l):(e.enter("codeTextData"),c(d))}function c(d){return d===null||d===32||d===96||ve(d)?(e.exit("codeTextData"),l(d)):(e.consume(d),c)}function u(d){return d===96?(e.consume(d),i++,u):i===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(d)):(o.type="codeTextData",c(d))}}class rS{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const r=n??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const i=n||0;this.setCursor(Math.trunc(t));const o=this.right.splice(this.right.length-i,Number.POSITIVE_INFINITY);return r&&Wr(this.left,r),o.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),Wr(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),Wr(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);Wr(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);Wr(this.left,n.reverse())}}}function Wr(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function Op(e){const t={};let n=-1,r,i,o,s,a,l,c;const u=new rS(e);for(;++n<u.length;){for(;n in t;)n=t[n];if(r=u.get(n),n&&r[1].type==="chunkFlow"&&u.get(n-1)[1].type==="listItemPrefix"&&(l=r[1]._tokenizer.events,o=0,o<l.length&&l[o][1].type==="lineEndingBlank"&&(o+=2),o<l.length&&l[o][1].type==="content"))for(;++o<l.length&&l[o][1].type!=="content";)l[o][1].type==="chunkText"&&(l[o][1]._isInFirstContentOfListItem=!0,o++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,iS(u,n)),n=t[n],c=!0);else if(r[1]._container){for(o=n,i=void 0;o--;)if(s=u.get(o),s[1].type==="lineEnding"||s[1].type==="lineEndingBlank")s[0]==="enter"&&(i&&(u.get(i)[1].type="lineEndingBlank"),s[1].type="lineEnding",i=o);else if(!(s[1].type==="linePrefix"||s[1].type==="listItemIndent"))break;i&&(r[1].end={...u.get(i)[1].start},a=u.slice(i,n),a.unshift(r),u.splice(i,n-i+1,a))}}return Ut(e,0,Number.POSITIVE_INFINITY,u.slice(0)),!c}function iS(e,t){const n=e.get(t)[1],r=e.get(t)[2];let i=t-1;const o=[];let s=n._tokenizer;s||(s=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(s._contentTypeTextTrailing=!0));const a=s.events,l=[],c={};let u,d,f=-1,p=n,m=0,g=0;const v=[g];for(;p;){for(;e.get(++i)[1]!==p;);o.push(i),p._tokenizer||(u=r.sliceStream(p),p.next||u.push(null),d&&s.defineSkip(p.start),p._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=!0),s.write(u),p._isInFirstContentOfListItem&&(s._gfmTasklistFirstContentOfListItem=void 0)),d=p,p=p.next}for(p=n;++f<a.length;)a[f][0]==="exit"&&a[f-1][0]==="enter"&&a[f][1].type===a[f-1][1].type&&a[f][1].start.line!==a[f][1].end.line&&(g=f+1,v.push(g),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(s.events=[],p?(p._tokenizer=void 0,p.previous=void 0):v.pop(),f=v.length;f--;){const y=a.slice(v[f],v[f+1]),E=o.pop();l.push([E,E+y.length-1]),e.splice(E,2,y)}for(l.reverse(),f=-1;++f<l.length;)c[m+l[f][0]]=m+l[f][1],m+=l[f][1]-l[f][0]-1;return c}const oS={resolve:aS,tokenize:lS},sS={partial:!0,tokenize:cS};function aS(e){return Op(e),e}function lS(e,t){let n;return r;function r(a){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),i(a)}function i(a){return a===null?o(a):ve(a)?e.check(sS,s,o)(a):(e.consume(a),i)}function o(a){return e.exit("chunkContent"),e.exit("content"),t(a)}function s(a){return e.consume(a),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,i}}function cS(e,t,n){const r=this;return i;function i(s){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),Le(e,o,"linePrefix")}function o(s){if(s===null||ve(s))return n(s);const a=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&a&&a[1].type==="linePrefix"&&a[2].sliceSerialize(a[1],!0).length>=4?t(s):e.interrupt(r.parser.constructs.flow,n,t)(s)}}function Pp(e,t,n,r,i,o,s,a,l){const c=l||Number.POSITIVE_INFINITY;let u=0;return d;function d(y){return y===60?(e.enter(r),e.enter(i),e.enter(o),e.consume(y),e.exit(o),f):y===null||y===32||y===41||xo(y)?n(y):(e.enter(r),e.enter(s),e.enter(a),e.enter("chunkString",{contentType:"string"}),g(y))}function f(y){return y===62?(e.enter(o),e.consume(y),e.exit(o),e.exit(i),e.exit(r),t):(e.enter(a),e.enter("chunkString",{contentType:"string"}),p(y))}function p(y){return y===62?(e.exit("chunkString"),e.exit(a),f(y)):y===null||y===60||ve(y)?n(y):(e.consume(y),y===92?m:p)}function m(y){return y===60||y===62||y===92?(e.consume(y),p):p(y)}function g(y){return!u&&(y===null||y===41||Xe(y))?(e.exit("chunkString"),e.exit(a),e.exit(s),e.exit(r),t(y)):u<c&&y===40?(e.consume(y),u++,g):y===41?(e.consume(y),u--,g):y===null||y===32||y===40||xo(y)?n(y):(e.consume(y),y===92?v:g)}function v(y){return y===40||y===41||y===92?(e.consume(y),g):g(y)}}function Dp(e,t,n,r,i,o){const s=this;let a=0,l;return c;function c(p){return e.enter(r),e.enter(i),e.consume(p),e.exit(i),e.enter(o),u}function u(p){return a>999||p===null||p===91||p===93&&!l||p===94&&!a&&"_hiddenFootnoteSupport"in s.parser.constructs?n(p):p===93?(e.exit(o),e.enter(i),e.consume(p),e.exit(i),e.exit(r),t):ve(p)?(e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),u):(e.enter("chunkString",{contentType:"string"}),d(p))}function d(p){return p===null||p===91||p===93||ve(p)||a++>999?(e.exit("chunkString"),u(p)):(e.consume(p),l||(l=!Pe(p)),p===92?f:d)}function f(p){return p===91||p===92||p===93?(e.consume(p),a++,d):d(p)}}function Lp(e,t,n,r,i,o){let s;return a;function a(f){return f===34||f===39||f===40?(e.enter(r),e.enter(i),e.consume(f),e.exit(i),s=f===40?41:f,l):n(f)}function l(f){return f===s?(e.enter(i),e.consume(f),e.exit(i),e.exit(r),t):(e.enter(o),c(f))}function c(f){return f===s?(e.exit(o),l(s)):f===null?n(f):ve(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),Le(e,c,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),u(f))}function u(f){return f===s||f===null||ve(f)?(e.exit("chunkString"),c(f)):(e.consume(f),f===92?d:u)}function d(f){return f===s||f===92?(e.consume(f),u):u(f)}}function ri(e,t){let n;return r;function r(i){return ve(i)?(e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),n=!0,r):Pe(i)?Le(e,r,n?"linePrefix":"lineSuffix")(i):t(i)}}const uS={name:"definition",tokenize:fS},dS={partial:!0,tokenize:hS};function fS(e,t,n){const r=this;let i;return o;function o(p){return e.enter("definition"),s(p)}function s(p){return Dp.call(r,e,a,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(p)}function a(p){return i=nn(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),p===58?(e.enter("definitionMarker"),e.consume(p),e.exit("definitionMarker"),l):n(p)}function l(p){return Xe(p)?ri(e,c)(p):c(p)}function c(p){return Pp(e,u,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(p)}function u(p){return e.attempt(dS,d,d)(p)}function d(p){return Pe(p)?Le(e,f,"whitespace")(p):f(p)}function f(p){return p===null||ve(p)?(e.exit("definition"),r.parser.defined.push(i),t(p)):n(p)}}function hS(e,t,n){return r;function r(a){return Xe(a)?ri(e,i)(a):n(a)}function i(a){return Lp(e,o,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(a)}function o(a){return Pe(a)?Le(e,s,"whitespace")(a):s(a)}function s(a){return a===null||ve(a)?t(a):n(a)}}const pS={name:"hardBreakEscape",tokenize:gS};function gS(e,t,n){return r;function r(o){return e.enter("hardBreakEscape"),e.consume(o),i}function i(o){return ve(o)?(e.exit("hardBreakEscape"),t(o)):n(o)}}const mS={name:"headingAtx",resolve:bS,tokenize:yS};function bS(e,t){let n=e.length-2,r=3,i,o;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(i={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},o={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},Ut(e,r,n-r+1,[["enter",i,t],["enter",o,t],["exit",o,t],["exit",i,t]])),e}function yS(e,t,n){let r=0;return i;function i(u){return e.enter("atxHeading"),o(u)}function o(u){return e.enter("atxHeadingSequence"),s(u)}function s(u){return u===35&&r++<6?(e.consume(u),s):u===null||Xe(u)?(e.exit("atxHeadingSequence"),a(u)):n(u)}function a(u){return u===35?(e.enter("atxHeadingSequence"),l(u)):u===null||ve(u)?(e.exit("atxHeading"),t(u)):Pe(u)?Le(e,a,"whitespace")(u):(e.enter("atxHeadingText"),c(u))}function l(u){return u===35?(e.consume(u),l):(e.exit("atxHeadingSequence"),a(u))}function c(u){return u===null||u===35||Xe(u)?(e.exit("atxHeadingText"),a(u)):(e.consume(u),c)}}const xS=["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","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],td=["pre","script","style","textarea"],vS={concrete:!0,name:"htmlFlow",resolveTo:SS,tokenize:kS},wS={partial:!0,tokenize:_S},ES={partial:!0,tokenize:CS};function SS(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function kS(e,t,n){const r=this;let i,o,s,a,l;return c;function c(k){return u(k)}function u(k){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume(k),d}function d(k){return k===33?(e.consume(k),f):k===47?(e.consume(k),o=!0,g):k===63?(e.consume(k),i=3,r.interrupt?t:x):It(k)?(e.consume(k),s=String.fromCharCode(k),v):n(k)}function f(k){return k===45?(e.consume(k),i=2,p):k===91?(e.consume(k),i=5,a=0,m):It(k)?(e.consume(k),i=4,r.interrupt?t:x):n(k)}function p(k){return k===45?(e.consume(k),r.interrupt?t:x):n(k)}function m(k){const K="CDATA[";return k===K.charCodeAt(a++)?(e.consume(k),a===K.length?r.interrupt?t:O:m):n(k)}function g(k){return It(k)?(e.consume(k),s=String.fromCharCode(k),v):n(k)}function v(k){if(k===null||k===47||k===62||Xe(k)){const K=k===47,Z=s.toLowerCase();return!K&&!o&&td.includes(Z)?(i=1,r.interrupt?t(k):O(k)):xS.includes(s.toLowerCase())?(i=6,K?(e.consume(k),y):r.interrupt?t(k):O(k)):(i=7,r.interrupt&&!r.parser.lazy[r.now().line]?n(k):o?E(k):w(k))}return k===45||Tt(k)?(e.consume(k),s+=String.fromCharCode(k),v):n(k)}function y(k){return k===62?(e.consume(k),r.interrupt?t:O):n(k)}function E(k){return Pe(k)?(e.consume(k),E):b(k)}function w(k){return k===47?(e.consume(k),b):k===58||k===95||It(k)?(e.consume(k),_):Pe(k)?(e.consume(k),w):b(k)}function _(k){return k===45||k===46||k===58||k===95||Tt(k)?(e.consume(k),_):C(k)}function C(k){return k===61?(e.consume(k),T):Pe(k)?(e.consume(k),C):w(k)}function T(k){return k===null||k===60||k===61||k===62||k===96?n(k):k===34||k===39?(e.consume(k),l=k,R):Pe(k)?(e.consume(k),T):A(k)}function R(k){return k===l?(e.consume(k),l=null,I):k===null||ve(k)?n(k):(e.consume(k),R)}function A(k){return k===null||k===34||k===39||k===47||k===60||k===61||k===62||k===96||Xe(k)?C(k):(e.consume(k),A)}function I(k){return k===47||k===62||Pe(k)?w(k):n(k)}function b(k){return k===62?(e.consume(k),M):n(k)}function M(k){return k===null||ve(k)?O(k):Pe(k)?(e.consume(k),M):n(k)}function O(k){return k===45&&i===2?(e.consume(k),oe):k===60&&i===1?(e.consume(k),te):k===62&&i===4?(e.consume(k),z):k===63&&i===3?(e.consume(k),x):k===93&&i===5?(e.consume(k),$):ve(k)&&(i===6||i===7)?(e.exit("htmlFlowData"),e.check(wS,G,L)(k)):k===null||ve(k)?(e.exit("htmlFlowData"),L(k)):(e.consume(k),O)}function L(k){return e.check(ES,j,G)(k)}function j(k){return e.enter("lineEnding"),e.consume(k),e.exit("lineEnding"),W}function W(k){return k===null||ve(k)?L(k):(e.enter("htmlFlowData"),O(k))}function oe(k){return k===45?(e.consume(k),x):O(k)}function te(k){return k===47?(e.consume(k),s="",B):O(k)}function B(k){if(k===62){const K=s.toLowerCase();return td.includes(K)?(e.consume(k),z):O(k)}return It(k)&&s.length<8?(e.consume(k),s+=String.fromCharCode(k),B):O(k)}function $(k){return k===93?(e.consume(k),x):O(k)}function x(k){return k===62?(e.consume(k),z):k===45&&i===2?(e.consume(k),x):O(k)}function z(k){return k===null||ve(k)?(e.exit("htmlFlowData"),G(k)):(e.consume(k),z)}function G(k){return e.exit("htmlFlow"),t(k)}}function CS(e,t,n){const r=this;return i;function i(s){return ve(s)?(e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),o):n(s)}function o(s){return r.parser.lazy[r.now().line]?n(s):t(s)}}function _S(e,t,n){return r;function r(i){return e.enter("lineEnding"),e.consume(i),e.exit("lineEnding"),e.attempt(Ei,t,n)}}const TS={name:"htmlText",tokenize:NS};function NS(e,t,n){const r=this;let i,o,s;return a;function a(x){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(x),l}function l(x){return x===33?(e.consume(x),c):x===47?(e.consume(x),C):x===63?(e.consume(x),w):It(x)?(e.consume(x),A):n(x)}function c(x){return x===45?(e.consume(x),u):x===91?(e.consume(x),o=0,m):It(x)?(e.consume(x),E):n(x)}function u(x){return x===45?(e.consume(x),p):n(x)}function d(x){return x===null?n(x):x===45?(e.consume(x),f):ve(x)?(s=d,te(x)):(e.consume(x),d)}function f(x){return x===45?(e.consume(x),p):d(x)}function p(x){return x===62?oe(x):x===45?f(x):d(x)}function m(x){const z="CDATA[";return x===z.charCodeAt(o++)?(e.consume(x),o===z.length?g:m):n(x)}function g(x){return x===null?n(x):x===93?(e.consume(x),v):ve(x)?(s=g,te(x)):(e.consume(x),g)}function v(x){return x===93?(e.consume(x),y):g(x)}function y(x){return x===62?oe(x):x===93?(e.consume(x),y):g(x)}function E(x){return x===null||x===62?oe(x):ve(x)?(s=E,te(x)):(e.consume(x),E)}function w(x){return x===null?n(x):x===63?(e.consume(x),_):ve(x)?(s=w,te(x)):(e.consume(x),w)}function _(x){return x===62?oe(x):w(x)}function C(x){return It(x)?(e.consume(x),T):n(x)}function T(x){return x===45||Tt(x)?(e.consume(x),T):R(x)}function R(x){return ve(x)?(s=R,te(x)):Pe(x)?(e.consume(x),R):oe(x)}function A(x){return x===45||Tt(x)?(e.consume(x),A):x===47||x===62||Xe(x)?I(x):n(x)}function I(x){return x===47?(e.consume(x),oe):x===58||x===95||It(x)?(e.consume(x),b):ve(x)?(s=I,te(x)):Pe(x)?(e.consume(x),I):oe(x)}function b(x){return x===45||x===46||x===58||x===95||Tt(x)?(e.consume(x),b):M(x)}function M(x){return x===61?(e.consume(x),O):ve(x)?(s=M,te(x)):Pe(x)?(e.consume(x),M):I(x)}function O(x){return x===null||x===60||x===61||x===62||x===96?n(x):x===34||x===39?(e.consume(x),i=x,L):ve(x)?(s=O,te(x)):Pe(x)?(e.consume(x),O):(e.consume(x),j)}function L(x){return x===i?(e.consume(x),i=void 0,W):x===null?n(x):ve(x)?(s=L,te(x)):(e.consume(x),L)}function j(x){return x===null||x===34||x===39||x===60||x===61||x===96?n(x):x===47||x===62||Xe(x)?I(x):(e.consume(x),j)}function W(x){return x===47||x===62||Xe(x)?I(x):n(x)}function oe(x){return x===62?(e.consume(x),e.exit("htmlTextData"),e.exit("htmlText"),t):n(x)}function te(x){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(x),e.exit("lineEnding"),B}function B(x){return Pe(x)?Le(e,$,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(x):$(x)}function $(x){return e.enter("htmlTextData"),s(x)}}const Dl={name:"labelEnd",resolveAll:IS,resolveTo:OS,tokenize:PS},AS={tokenize:DS},MS={tokenize:LS},RS={tokenize:FS};function IS(e){let t=-1;const n=[];for(;++t<e.length;){const r=e[t][1];if(n.push(e[t]),r.type==="labelImage"||r.type==="labelLink"||r.type==="labelEnd"){const i=r.type==="labelImage"?4:2;r.type="data",t+=i}}return e.length!==n.length&&Ut(e,0,e.length,n),e}function OS(e,t){let n=e.length,r=0,i,o,s,a;for(;n--;)if(i=e[n][1],o){if(i.type==="link"||i.type==="labelLink"&&i._inactive)break;e[n][0]==="enter"&&i.type==="labelLink"&&(i._inactive=!0)}else if(s){if(e[n][0]==="enter"&&(i.type==="labelImage"||i.type==="labelLink")&&!i._balanced&&(o=n,i.type!=="labelLink")){r=2;break}}else i.type==="labelEnd"&&(s=n);const l={type:e[o][1].type==="labelLink"?"link":"image",start:{...e[o][1].start},end:{...e[e.length-1][1].end}},c={type:"label",start:{...e[o][1].start},end:{...e[s][1].end}},u={type:"labelText",start:{...e[o+r+2][1].end},end:{...e[s-2][1].start}};return a=[["enter",l,t],["enter",c,t]],a=qt(a,e.slice(o+1,o+r+3)),a=qt(a,[["enter",u,t]]),a=qt(a,jo(t.parser.constructs.insideSpan.null,e.slice(o+r+4,s-3),t)),a=qt(a,[["exit",u,t],e[s-2],e[s-1],["exit",c,t]]),a=qt(a,e.slice(s+1)),a=qt(a,[["exit",l,t]]),Ut(e,o,e.length,a),e}function PS(e,t,n){const r=this;let i=r.events.length,o,s;for(;i--;)if((r.events[i][1].type==="labelImage"||r.events[i][1].type==="labelLink")&&!r.events[i][1]._balanced){o=r.events[i][1];break}return a;function a(f){return o?o._inactive?d(f):(s=r.parser.defined.includes(nn(r.sliceSerialize({start:o.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(f),e.exit("labelMarker"),e.exit("labelEnd"),l):n(f)}function l(f){return f===40?e.attempt(AS,u,s?u:d)(f):f===91?e.attempt(MS,u,s?c:d)(f):s?u(f):d(f)}function c(f){return e.attempt(RS,u,d)(f)}function u(f){return t(f)}function d(f){return o._balanced=!0,n(f)}}function DS(e,t,n){return r;function r(d){return e.enter("resource"),e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),i}function i(d){return Xe(d)?ri(e,o)(d):o(d)}function o(d){return d===41?u(d):Pp(e,s,a,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(d)}function s(d){return Xe(d)?ri(e,l)(d):u(d)}function a(d){return n(d)}function l(d){return d===34||d===39||d===40?Lp(e,c,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(d):u(d)}function c(d){return Xe(d)?ri(e,u)(d):u(d)}function u(d){return d===41?(e.enter("resourceMarker"),e.consume(d),e.exit("resourceMarker"),e.exit("resource"),t):n(d)}}function LS(e,t,n){const r=this;return i;function i(a){return Dp.call(r,e,o,s,"reference","referenceMarker","referenceString")(a)}function o(a){return r.parser.defined.includes(nn(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(a):n(a)}function s(a){return n(a)}}function FS(e,t,n){return r;function r(o){return e.enter("reference"),e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),i}function i(o){return o===93?(e.enter("referenceMarker"),e.consume(o),e.exit("referenceMarker"),e.exit("reference"),t):n(o)}}const jS={name:"labelStartImage",resolveAll:Dl.resolveAll,tokenize:BS};function BS(e,t,n){const r=this;return i;function i(a){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(a),e.exit("labelImageMarker"),o}function o(a){return a===91?(e.enter("labelMarker"),e.consume(a),e.exit("labelMarker"),e.exit("labelImage"),s):n(a)}function s(a){return a===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(a):t(a)}}const $S={name:"labelStartLink",resolveAll:Dl.resolveAll,tokenize:VS};function VS(e,t,n){const r=this;return i;function i(s){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(s),e.exit("labelMarker"),e.exit("labelLink"),o}function o(s){return s===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(s):t(s)}}const Ts={name:"lineEnding",tokenize:zS};function zS(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),Le(e,t,"linePrefix")}}const so={name:"thematicBreak",tokenize:US};function US(e,t,n){let r=0,i;return o;function o(c){return e.enter("thematicBreak"),s(c)}function s(c){return i=c,a(c)}function a(c){return c===i?(e.enter("thematicBreakSequence"),l(c)):r>=3&&(c===null||ve(c))?(e.exit("thematicBreak"),t(c)):n(c)}function l(c){return c===i?(e.consume(c),r++,l):(e.exit("thematicBreakSequence"),Pe(c)?Le(e,a,"whitespace")(c):a(c))}}const Lt={continuation:{tokenize:KS},exit:YS,name:"list",tokenize:GS},HS={partial:!0,tokenize:ZS},WS={partial:!0,tokenize:qS};function GS(e,t,n){const r=this,i=r.events[r.events.length-1];let o=i&&i[1].type==="linePrefix"?i[2].sliceSerialize(i[1],!0).length:0,s=0;return a;function a(p){const m=r.containerState.type||(p===42||p===43||p===45?"listUnordered":"listOrdered");if(m==="listUnordered"?!r.containerState.marker||p===r.containerState.marker:Ra(p)){if(r.containerState.type||(r.containerState.type=m,e.enter(m,{_container:!0})),m==="listUnordered")return e.enter("listItemPrefix"),p===42||p===45?e.check(so,n,c)(p):c(p);if(!r.interrupt||p===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),l(p)}return n(p)}function l(p){return Ra(p)&&++s<10?(e.consume(p),l):(!r.interrupt||s<2)&&(r.containerState.marker?p===r.containerState.marker:p===41||p===46)?(e.exit("listItemValue"),c(p)):n(p)}function c(p){return e.enter("listItemMarker"),e.consume(p),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||p,e.check(Ei,r.interrupt?n:u,e.attempt(HS,f,d))}function u(p){return r.containerState.initialBlankLine=!0,o++,f(p)}function d(p){return Pe(p)?(e.enter("listItemPrefixWhitespace"),e.consume(p),e.exit("listItemPrefixWhitespace"),f):n(p)}function f(p){return r.containerState.size=o+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(p)}}function KS(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(Ei,i,o);function i(a){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,Le(e,t,"listItemIndent",r.containerState.size+1)(a)}function o(a){return r.containerState.furtherBlankLines||!Pe(a)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,s(a)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(WS,t,s)(a))}function s(a){return r.containerState._closeFlow=!0,r.interrupt=void 0,Le(e,e.attempt(Lt,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(a)}}function qS(e,t,n){const r=this;return Le(e,i,"listItemIndent",r.containerState.size+1);function i(o){const s=r.events[r.events.length-1];return s&&s[1].type==="listItemIndent"&&s[2].sliceSerialize(s[1],!0).length===r.containerState.size?t(o):n(o)}}function YS(e){e.exit(this.containerState.type)}function ZS(e,t,n){const r=this;return Le(e,i,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function i(o){const s=r.events[r.events.length-1];return!Pe(o)&&s&&s[1].type==="listItemPrefixWhitespace"?t(o):n(o)}}const nd={name:"setextUnderline",resolveTo:XS,tokenize:QS};function XS(e,t){let n=e.length,r,i,o;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(i=n)}else e[n][1].type==="content"&&e.splice(n,1),!o&&e[n][1].type==="definition"&&(o=n);const s={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[i][1].type="setextHeadingText",o?(e.splice(i,0,["enter",s,t]),e.splice(o+1,0,["exit",e[r][1],t]),e[r][1].end={...e[o][1].end}):e[r][1]=s,e.push(["exit",s,t]),e}function QS(e,t,n){const r=this;let i;return o;function o(c){let u=r.events.length,d;for(;u--;)if(r.events[u][1].type!=="lineEnding"&&r.events[u][1].type!=="linePrefix"&&r.events[u][1].type!=="content"){d=r.events[u][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||d)?(e.enter("setextHeadingLine"),i=c,s(c)):n(c)}function s(c){return e.enter("setextHeadingLineSequence"),a(c)}function a(c){return c===i?(e.consume(c),a):(e.exit("setextHeadingLineSequence"),Pe(c)?Le(e,l,"lineSuffix")(c):l(c))}function l(c){return c===null||ve(c)?(e.exit("setextHeadingLine"),t(c)):n(c)}}const JS={tokenize:ek};function ek(e){const t=this,n=e.attempt(Ei,r,e.attempt(this.parser.constructs.flowInitial,i,Le(e,e.attempt(this.parser.constructs.flow,i,e.attempt(oS,i)),"linePrefix")));return n;function r(o){if(o===null){e.consume(o);return}return e.enter("lineEndingBlank"),e.consume(o),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function i(o){if(o===null){e.consume(o);return}return e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const tk={resolveAll:jp()},nk=Fp("string"),rk=Fp("text");function Fp(e){return{resolveAll:jp(e==="text"?ik:void 0),tokenize:t};function t(n){const r=this,i=this.parser.constructs[e],o=n.attempt(i,s,a);return s;function s(u){return c(u)?o(u):a(u)}function a(u){if(u===null){n.consume(u);return}return n.enter("data"),n.consume(u),l}function l(u){return c(u)?(n.exit("data"),o(u)):(n.consume(u),l)}function c(u){if(u===null)return!0;const d=i[u];let f=-1;if(d)for(;++f<d.length;){const p=d[f];if(!p.previous||p.previous.call(r,r.previous))return!0}return!1}}}function jp(e){return t;function t(n,r){let i=-1,o;for(;++i<=n.length;)o===void 0?n[i]&&n[i][1].type==="data"&&(o=i,i++):(!n[i]||n[i][1].type!=="data")&&(i!==o+2&&(n[o][1].end=n[i-1][1].end,n.splice(o+2,i-o-2),i=o+2),o=void 0);return e?e(n,r):n}}function ik(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const r=e[n-1][1],i=t.sliceStream(r);let o=i.length,s=-1,a=0,l;for(;o--;){const c=i[o];if(typeof c=="string"){for(s=c.length;c.charCodeAt(s-1)===32;)a++,s--;if(s)break;s=-1}else if(c===-2)l=!0,a++;else if(c!==-1){o++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(a=0),a){const c={type:n===e.length||l||a<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:o?s:r.start._bufferIndex+s,_index:r.start._index+o,line:r.end.line,column:r.end.column-a,offset:r.end.offset-a},end:{...r.end}};r.end={...c.start},r.start.offset===r.end.offset?Object.assign(r,c):(e.splice(n,0,["enter",c,t],["exit",c,t]),n+=2)}n++}return e}const ok={42:Lt,43:Lt,45:Lt,48:Lt,49:Lt,50:Lt,51:Lt,52:Lt,53:Lt,54:Lt,55:Lt,56:Lt,57:Lt,62:Mp},sk={91:uS},ak={[-2]:_s,[-1]:_s,32:_s},lk={35:mS,42:so,45:[nd,so],60:vS,61:nd,95:so,96:ed,126:ed},ck={38:Ip,92:Rp},uk={[-5]:Ts,[-4]:Ts,[-3]:Ts,33:jS,38:Ip,42:Ia,60:[$E,TS],91:$S,92:[pS,Rp],93:Dl,95:Ia,96:JE},dk={null:[Ia,tk]},fk={null:[42,95]},hk={null:[]},pk=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:fk,contentInitial:sk,disable:hk,document:ok,flow:lk,flowInitial:ak,insideSpan:dk,string:ck,text:uk},Symbol.toStringTag,{value:"Module"}));function gk(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const i={},o=[];let s=[],a=[];const l={attempt:R(C),check:R(T),consume:E,enter:w,exit:_,interrupt:R(T,{interrupt:!0})},c={code:null,containerState:{},defineSkip:g,events:[],now:m,parser:e,previous:null,sliceSerialize:f,sliceStream:p,write:d};let u=t.tokenize.call(c,l);return t.resolveAll&&o.push(t),c;function d(M){return s=qt(s,M),v(),s[s.length-1]!==null?[]:(A(t,0),c.events=jo(o,c.events,c),c.events)}function f(M,O){return bk(p(M),O)}function p(M){return mk(s,M)}function m(){const{_bufferIndex:M,_index:O,line:L,column:j,offset:W}=r;return{_bufferIndex:M,_index:O,line:L,column:j,offset:W}}function g(M){i[M.line]=M.column,b()}function v(){let M;for(;r._index<s.length;){const O=s[r._index];if(typeof O=="string")for(M=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===M&&r._bufferIndex<O.length;)y(O.charCodeAt(r._bufferIndex));else y(O)}}function y(M){u=u(M)}function E(M){ve(M)?(r.line++,r.column=1,r.offset+=M===-3?2:1,b()):M!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===s[r._index].length&&(r._bufferIndex=-1,r._index++)),c.previous=M}function w(M,O){const L=O||{};return L.type=M,L.start=m(),c.events.push(["enter",L,c]),a.push(L),L}function _(M){const O=a.pop();return O.end=m(),c.events.push(["exit",O,c]),O}function C(M,O){A(M,O.from)}function T(M,O){O.restore()}function R(M,O){return L;function L(j,W,oe){let te,B,$,x;return Array.isArray(j)?G(j):"tokenize"in j?G([j]):z(j);function z(X){return ie;function ie(Y){const re=Y!==null&&X[Y],H=Y!==null&&X.null,Ee=[...Array.isArray(re)?re:re?[re]:[],...Array.isArray(H)?H:H?[H]:[]];return G(Ee)(Y)}}function G(X){return te=X,B=0,X.length===0?oe:k(X[B])}function k(X){return ie;function ie(Y){return x=I(),$=X,X.partial||(c.currentConstruct=X),X.name&&c.parser.constructs.disable.null.includes(X.name)?Z():X.tokenize.call(O?Object.assign(Object.create(c),O):c,l,K,Z)(Y)}}function K(X){return M($,x),W}function Z(X){return x.restore(),++B<te.length?k(te[B]):oe}}}function A(M,O){M.resolveAll&&!o.includes(M)&&o.push(M),M.resolve&&Ut(c.events,O,c.events.length-O,M.resolve(c.events.slice(O),c)),M.resolveTo&&(c.events=M.resolveTo(c.events,c))}function I(){const M=m(),O=c.previous,L=c.currentConstruct,j=c.events.length,W=Array.from(a);return{from:j,restore:oe};function oe(){r=M,c.previous=O,c.currentConstruct=L,c.events.length=j,a=W,b()}}function b(){r.line in i&&r.column<2&&(r.column=i[r.line],r.offset+=i[r.line]-1)}}function mk(e,t){const n=t.start._index,r=t.start._bufferIndex,i=t.end._index,o=t.end._bufferIndex;let s;if(n===i)s=[e[n].slice(r,o)];else{if(s=e.slice(n,i),r>-1){const a=s[0];typeof a=="string"?s[0]=a.slice(r):s.shift()}o>0&&s.push(e[i].slice(0,o))}return s}function bk(e,t){let n=-1;const r=[];let i;for(;++n<e.length;){const o=e[n];let s;if(typeof o=="string")s=o;else switch(o){case-5:{s="\r";break}case-4:{s=`
23
23
  `;break}case-3:{s=`\r
24
- `;break}case-2:{s=t?" ":" ";break}case-1:{if(!t&&i)continue;s=" ";break}default:s=String.fromCharCode(o)}i=o===-2,r.push(s)}return r.join("")}function yk(e){const r={constructs:Np([pk,...(e||{}).extensions||[]]),content:i(OE),defined:[],document:i(DE),flow:i(JS),lazy:{},string:i(nk),text:i(rk)};return r;function i(o){return s;function s(a){return gk(r,o,a)}}}function xk(e){for(;!Op(e););return e}const rd=/[\0\t\n\r]/g;function vk(){let e=1,t="",n=!0,r;return i;function i(o,s,a){const l=[];let c,u,d,f,p;for(o=t+(typeof o=="string"?o.toString():new TextDecoder(s||void 0).decode(o)),d=0,t="",n&&(o.charCodeAt(0)===65279&&d++,n=void 0);d<o.length;){if(rd.lastIndex=d,c=rd.exec(o),f=c&&c.index!==void 0?c.index:o.length,p=o.charCodeAt(f),!c){t=o.slice(d);break}if(p===10&&d===f&&r)l.push(-3),r=void 0;else switch(r&&(l.push(-5),r=void 0),d<f&&(l.push(o.slice(d,f)),e+=f-d),p){case 0:{l.push(65533),e++;break}case 9:{for(u=Math.ceil(e/4)*4,l.push(-2);e++<u;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:r=!0,e=1}d=f+1}return a&&(r&&l.push(-5),t&&l.push(t),l.push(null)),l}}const wk=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Ek(e){return e.replace(wk,Sk)}function Sk(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const i=n.charCodeAt(1),o=i===120||i===88;return Ap(n.slice(o?2:1),o?16:10)}return Pl(n)||e}const Bp={}.hasOwnProperty;function kk(e,t,n){return typeof t!="string"&&(n=t,t=void 0),Ck(n)(xk(yk(n).document().write(vk()(e,t,!0))))}function Ck(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:o(ye),autolinkProtocol:I,autolinkEmail:I,atxHeading:o(pe),blockQuote:o(H),characterEscape:I,characterReference:I,codeFenced:o(Ee),codeFencedFenceInfo:s,codeFencedFenceMeta:s,codeIndented:o(Ee,s),codeText:o(P,s),codeTextData:I,data:I,codeFlowValue:I,definition:o(ne),definitionDestinationString:s,definitionLabelString:s,definitionTitleString:s,emphasis:o(Se),hardBreakEscape:o(se),hardBreakTrailing:o(se),htmlFlow:o(be,s),htmlFlowData:I,htmlText:o(be,s),htmlTextData:I,image:o(ke),label:s,link:o(ye),listItem:o(xt),listItemValue:f,listOrdered:o(ct,d),listUnordered:o(ct),paragraph:o(Ke),reference:k,referenceString:s,resourceDestinationString:s,resourceTitleString:s,setextHeading:o(pe),strong:o(ue),thematicBreak:o(qe)},exit:{atxHeading:l(),atxHeadingSequence:C,autolink:l(),autolinkEmail:re,autolinkProtocol:Y,blockQuote:l(),characterEscapeValue:b,characterReferenceMarkerHexadecimal:Z,characterReferenceMarkerNumeric:Z,characterReferenceValue:X,characterReference:ie,codeFenced:l(v),codeFencedFence:g,codeFencedFenceInfo:p,codeFencedFenceMeta:m,codeFlowValue:b,codeIndented:l(y),codeText:l(W),codeTextData:b,data:b,definition:l(),definitionDestinationString:_,definitionLabelString:E,definitionTitleString:w,emphasis:l(),hardBreakEscape:l(O),hardBreakTrailing:l(O),htmlFlow:l(L),htmlFlowData:b,htmlText:l(j),htmlTextData:b,image:l(te),label:V,labelText:B,lineEnding:M,link:l(oe),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:K,resourceDestinationString:x,resourceTitleString:z,resource:G,setextHeading:l(A),setextHeadingLineSequence:R,setextHeadingText:T,strong:l(),thematicBreak:l()}};$p(t,(e||{}).mdastExtensions||[]);const n={};return r;function r($){let J={type:"root",children:[]};const we={stack:[J],tokenStack:[],config:t,enter:a,exit:c,buffer:s,resume:u,data:n},Oe=[];let Fe=-1;for(;++Fe<$.length;)if($[Fe][1].type==="listOrdered"||$[Fe][1].type==="listUnordered")if($[Fe][0]==="enter")Oe.push(Fe);else{const At=Oe.pop();Fe=i($,At,Fe)}for(Fe=-1;++Fe<$.length;){const At=t[$[Fe][0]];Bp.call(At,$[Fe][1].type)&&At[$[Fe][1].type].call(Object.assign({sliceSerialize:$[Fe][2].sliceSerialize},we),$[Fe][1])}if(we.tokenStack.length>0){const At=we.tokenStack[we.tokenStack.length-1];(At[1]||id).call(we,void 0,At[0])}for(J.position={start:Nn($.length>0?$[0][1].start:{line:1,column:1,offset:0}),end:Nn($.length>0?$[$.length-2][1].end:{line:1,column:1,offset:0})},Fe=-1;++Fe<t.transforms.length;)J=t.transforms[Fe](J)||J;return J}function i($,J,we){let Oe=J-1,Fe=-1,At=!1,Qt,Bt,Dt,Wt;for(;++Oe<=we;){const wt=$[Oe];switch(wt[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{wt[0]==="enter"?Fe++:Fe--,Wt=void 0;break}case"lineEndingBlank":{wt[0]==="enter"&&(Qt&&!Wt&&!Fe&&!Dt&&(Dt=Oe),Wt=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Wt=void 0}if(!Fe&&wt[0]==="enter"&&wt[1].type==="listItemPrefix"||Fe===-1&&wt[0]==="exit"&&(wt[1].type==="listUnordered"||wt[1].type==="listOrdered")){if(Qt){let rn=Oe;for(Bt=void 0;rn--;){const Et=$[rn];if(Et[1].type==="lineEnding"||Et[1].type==="lineEndingBlank"){if(Et[0]==="exit")continue;Bt&&($[Bt][1].type="lineEndingBlank",At=!0),Et[1].type="lineEnding",Bt=rn}else if(!(Et[1].type==="linePrefix"||Et[1].type==="blockQuotePrefix"||Et[1].type==="blockQuotePrefixWhitespace"||Et[1].type==="blockQuoteMarker"||Et[1].type==="listItemIndent"))break}Dt&&(!Bt||Dt<Bt)&&(Qt._spread=!0),Qt.end=Object.assign({},Bt?$[Bt][1].start:wt[1].end),$.splice(Bt||Oe,0,["exit",Qt,wt[2]]),Oe++,we++}if(wt[1].type==="listItemPrefix"){const rn={type:"listItem",_spread:!1,start:Object.assign({},wt[1].start),end:void 0};Qt=rn,$.splice(Oe,0,["enter",rn,wt[2]]),Oe++,we++,Dt=void 0,Wt=!0}}}return $[J][1]._spread=At,we}function o($,J){return we;function we(Oe){a.call(this,$(Oe),Oe),J&&J.call(this,Oe)}}function s(){this.stack.push({type:"fragment",children:[]})}function a($,J,we){this.stack[this.stack.length-1].children.push($),this.stack.push($),this.tokenStack.push([J,we||void 0]),$.position={start:Nn(J.start),end:void 0}}function l($){return J;function J(we){$&&$.call(this,we),c.call(this,we)}}function c($,J){const we=this.stack.pop(),Oe=this.tokenStack.pop();if(Oe)Oe[0].type!==$.type&&(J?J.call(this,$,Oe[0]):(Oe[1]||id).call(this,$,Oe[0]));else throw new Error("Cannot close `"+$.type+"` ("+ni({start:$.start,end:$.end})+"): it’s not open");we.position.end=Nn($.end)}function u(){return Ol(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f($){if(this.data.expectingFirstListItemValue){const J=this.stack[this.stack.length-2];J.start=Number.parseInt(this.sliceSerialize($),10),this.data.expectingFirstListItemValue=void 0}}function p(){const $=this.resume(),J=this.stack[this.stack.length-1];J.lang=$}function m(){const $=this.resume(),J=this.stack[this.stack.length-1];J.meta=$}function g(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function v(){const $=this.resume(),J=this.stack[this.stack.length-1];J.value=$.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function y(){const $=this.resume(),J=this.stack[this.stack.length-1];J.value=$.replace(/(\r?\n|\r)$/g,"")}function E($){const J=this.resume(),we=this.stack[this.stack.length-1];we.label=J,we.identifier=nn(this.sliceSerialize($)).toLowerCase()}function w(){const $=this.resume(),J=this.stack[this.stack.length-1];J.title=$}function _(){const $=this.resume(),J=this.stack[this.stack.length-1];J.url=$}function C($){const J=this.stack[this.stack.length-1];if(!J.depth){const we=this.sliceSerialize($).length;J.depth=we}}function T(){this.data.setextHeadingSlurpLineEnding=!0}function R($){const J=this.stack[this.stack.length-1];J.depth=this.sliceSerialize($).codePointAt(0)===61?1:2}function A(){this.data.setextHeadingSlurpLineEnding=void 0}function I($){const we=this.stack[this.stack.length-1].children;let Oe=we[we.length-1];(!Oe||Oe.type!=="text")&&(Oe=mt(),Oe.position={start:Nn($.start),end:void 0},we.push(Oe)),this.stack.push(Oe)}function b($){const J=this.stack.pop();J.value+=this.sliceSerialize($),J.position.end=Nn($.end)}function M($){const J=this.stack[this.stack.length-1];if(this.data.atHardBreak){const we=J.children[J.children.length-1];we.position.end=Nn($.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(J.type)&&(I.call(this,$),b.call(this,$))}function O(){this.data.atHardBreak=!0}function L(){const $=this.resume(),J=this.stack[this.stack.length-1];J.value=$}function j(){const $=this.resume(),J=this.stack[this.stack.length-1];J.value=$}function W(){const $=this.resume(),J=this.stack[this.stack.length-1];J.value=$}function oe(){const $=this.stack[this.stack.length-1];if(this.data.inReference){const J=this.data.referenceType||"shortcut";$.type+="Reference",$.referenceType=J,delete $.url,delete $.title}else delete $.identifier,delete $.label;this.data.referenceType=void 0}function te(){const $=this.stack[this.stack.length-1];if(this.data.inReference){const J=this.data.referenceType||"shortcut";$.type+="Reference",$.referenceType=J,delete $.url,delete $.title}else delete $.identifier,delete $.label;this.data.referenceType=void 0}function B($){const J=this.sliceSerialize($),we=this.stack[this.stack.length-2];we.label=Ek(J),we.identifier=nn(J).toLowerCase()}function V(){const $=this.stack[this.stack.length-1],J=this.resume(),we=this.stack[this.stack.length-1];if(this.data.inReference=!0,we.type==="link"){const Oe=$.children;we.children=Oe}else we.alt=J}function x(){const $=this.resume(),J=this.stack[this.stack.length-1];J.url=$}function z(){const $=this.resume(),J=this.stack[this.stack.length-1];J.title=$}function G(){this.data.inReference=void 0}function k(){this.data.referenceType="collapsed"}function K($){const J=this.resume(),we=this.stack[this.stack.length-1];we.label=J,we.identifier=nn(this.sliceSerialize($)).toLowerCase(),this.data.referenceType="full"}function Z($){this.data.characterReferenceType=$.type}function X($){const J=this.sliceSerialize($),we=this.data.characterReferenceType;let Oe;we?(Oe=Ap(J,we==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):Oe=Pl(J);const Fe=this.stack[this.stack.length-1];Fe.value+=Oe}function ie($){const J=this.stack.pop();J.position.end=Nn($.end)}function Y($){b.call(this,$);const J=this.stack[this.stack.length-1];J.url=this.sliceSerialize($)}function re($){b.call(this,$);const J=this.stack[this.stack.length-1];J.url="mailto:"+this.sliceSerialize($)}function H(){return{type:"blockquote",children:[]}}function Ee(){return{type:"code",lang:null,meta:null,value:""}}function P(){return{type:"inlineCode",value:""}}function ne(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function Se(){return{type:"emphasis",children:[]}}function pe(){return{type:"heading",depth:0,children:[]}}function se(){return{type:"break"}}function be(){return{type:"html",value:""}}function ke(){return{type:"image",title:null,url:"",alt:null}}function ye(){return{type:"link",title:null,url:"",children:[]}}function ct($){return{type:"list",ordered:$.type==="listOrdered",start:null,spread:$._spread,children:[]}}function xt($){return{type:"listItem",spread:$._spread,checked:null,children:[]}}function Ke(){return{type:"paragraph",children:[]}}function ue(){return{type:"strong",children:[]}}function mt(){return{type:"text",value:""}}function qe(){return{type:"thematicBreak"}}}function Nn(e){return{line:e.line,column:e.column,offset:e.offset}}function $p(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?$p(e,r):_k(e,r)}}function _k(e,t){let n;for(n in t)if(Bp.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function id(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+ni({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+ni({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+ni({start:t.start,end:t.end})+") is still open")}function Tk(e){const t=this;t.parser=n;function n(r){return kk(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function Nk(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function Ak(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
24
+ `;break}case-2:{s=t?" ":" ";break}case-1:{if(!t&&i)continue;s=" ";break}default:s=String.fromCharCode(o)}i=o===-2,r.push(s)}return r.join("")}function yk(e){const r={constructs:Np([pk,...(e||{}).extensions||[]]),content:i(OE),defined:[],document:i(DE),flow:i(JS),lazy:{},string:i(nk),text:i(rk)};return r;function i(o){return s;function s(a){return gk(r,o,a)}}}function xk(e){for(;!Op(e););return e}const rd=/[\0\t\n\r]/g;function vk(){let e=1,t="",n=!0,r;return i;function i(o,s,a){const l=[];let c,u,d,f,p;for(o=t+(typeof o=="string"?o.toString():new TextDecoder(s||void 0).decode(o)),d=0,t="",n&&(o.charCodeAt(0)===65279&&d++,n=void 0);d<o.length;){if(rd.lastIndex=d,c=rd.exec(o),f=c&&c.index!==void 0?c.index:o.length,p=o.charCodeAt(f),!c){t=o.slice(d);break}if(p===10&&d===f&&r)l.push(-3),r=void 0;else switch(r&&(l.push(-5),r=void 0),d<f&&(l.push(o.slice(d,f)),e+=f-d),p){case 0:{l.push(65533),e++;break}case 9:{for(u=Math.ceil(e/4)*4,l.push(-2);e++<u;)l.push(-1);break}case 10:{l.push(-4),e=1;break}default:r=!0,e=1}d=f+1}return a&&(r&&l.push(-5),t&&l.push(t),l.push(null)),l}}const wk=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Ek(e){return e.replace(wk,Sk)}function Sk(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const i=n.charCodeAt(1),o=i===120||i===88;return Ap(n.slice(o?2:1),o?16:10)}return Pl(n)||e}const Bp={}.hasOwnProperty;function kk(e,t,n){return typeof t!="string"&&(n=t,t=void 0),Ck(n)(xk(yk(n).document().write(vk()(e,t,!0))))}function Ck(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:o(ye),autolinkProtocol:I,autolinkEmail:I,atxHeading:o(pe),blockQuote:o(H),characterEscape:I,characterReference:I,codeFenced:o(Ee),codeFencedFenceInfo:s,codeFencedFenceMeta:s,codeIndented:o(Ee,s),codeText:o(P,s),codeTextData:I,data:I,codeFlowValue:I,definition:o(ne),definitionDestinationString:s,definitionLabelString:s,definitionTitleString:s,emphasis:o(Se),hardBreakEscape:o(se),hardBreakTrailing:o(se),htmlFlow:o(be,s),htmlFlowData:I,htmlText:o(be,s),htmlTextData:I,image:o(ke),label:s,link:o(ye),listItem:o(xt),listItemValue:f,listOrdered:o(ct,d),listUnordered:o(ct),paragraph:o(Ke),reference:k,referenceString:s,resourceDestinationString:s,resourceTitleString:s,setextHeading:o(pe),strong:o(ue),thematicBreak:o(qe)},exit:{atxHeading:l(),atxHeadingSequence:C,autolink:l(),autolinkEmail:re,autolinkProtocol:Y,blockQuote:l(),characterEscapeValue:b,characterReferenceMarkerHexadecimal:Z,characterReferenceMarkerNumeric:Z,characterReferenceValue:X,characterReference:ie,codeFenced:l(v),codeFencedFence:g,codeFencedFenceInfo:p,codeFencedFenceMeta:m,codeFlowValue:b,codeIndented:l(y),codeText:l(W),codeTextData:b,data:b,definition:l(),definitionDestinationString:_,definitionLabelString:E,definitionTitleString:w,emphasis:l(),hardBreakEscape:l(O),hardBreakTrailing:l(O),htmlFlow:l(L),htmlFlowData:b,htmlText:l(j),htmlTextData:b,image:l(te),label:$,labelText:B,lineEnding:M,link:l(oe),listItem:l(),listOrdered:l(),listUnordered:l(),paragraph:l(),referenceString:K,resourceDestinationString:x,resourceTitleString:z,resource:G,setextHeading:l(A),setextHeadingLineSequence:R,setextHeadingText:T,strong:l(),thematicBreak:l()}};$p(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(V){let J={type:"root",children:[]};const we={stack:[J],tokenStack:[],config:t,enter:a,exit:c,buffer:s,resume:u,data:n},Oe=[];let Fe=-1;for(;++Fe<V.length;)if(V[Fe][1].type==="listOrdered"||V[Fe][1].type==="listUnordered")if(V[Fe][0]==="enter")Oe.push(Fe);else{const At=Oe.pop();Fe=i(V,At,Fe)}for(Fe=-1;++Fe<V.length;){const At=t[V[Fe][0]];Bp.call(At,V[Fe][1].type)&&At[V[Fe][1].type].call(Object.assign({sliceSerialize:V[Fe][2].sliceSerialize},we),V[Fe][1])}if(we.tokenStack.length>0){const At=we.tokenStack[we.tokenStack.length-1];(At[1]||id).call(we,void 0,At[0])}for(J.position={start:Nn(V.length>0?V[0][1].start:{line:1,column:1,offset:0}),end:Nn(V.length>0?V[V.length-2][1].end:{line:1,column:1,offset:0})},Fe=-1;++Fe<t.transforms.length;)J=t.transforms[Fe](J)||J;return J}function i(V,J,we){let Oe=J-1,Fe=-1,At=!1,Qt,Bt,Dt,Wt;for(;++Oe<=we;){const wt=V[Oe];switch(wt[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{wt[0]==="enter"?Fe++:Fe--,Wt=void 0;break}case"lineEndingBlank":{wt[0]==="enter"&&(Qt&&!Wt&&!Fe&&!Dt&&(Dt=Oe),Wt=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:Wt=void 0}if(!Fe&&wt[0]==="enter"&&wt[1].type==="listItemPrefix"||Fe===-1&&wt[0]==="exit"&&(wt[1].type==="listUnordered"||wt[1].type==="listOrdered")){if(Qt){let rn=Oe;for(Bt=void 0;rn--;){const Et=V[rn];if(Et[1].type==="lineEnding"||Et[1].type==="lineEndingBlank"){if(Et[0]==="exit")continue;Bt&&(V[Bt][1].type="lineEndingBlank",At=!0),Et[1].type="lineEnding",Bt=rn}else if(!(Et[1].type==="linePrefix"||Et[1].type==="blockQuotePrefix"||Et[1].type==="blockQuotePrefixWhitespace"||Et[1].type==="blockQuoteMarker"||Et[1].type==="listItemIndent"))break}Dt&&(!Bt||Dt<Bt)&&(Qt._spread=!0),Qt.end=Object.assign({},Bt?V[Bt][1].start:wt[1].end),V.splice(Bt||Oe,0,["exit",Qt,wt[2]]),Oe++,we++}if(wt[1].type==="listItemPrefix"){const rn={type:"listItem",_spread:!1,start:Object.assign({},wt[1].start),end:void 0};Qt=rn,V.splice(Oe,0,["enter",rn,wt[2]]),Oe++,we++,Dt=void 0,Wt=!0}}}return V[J][1]._spread=At,we}function o(V,J){return we;function we(Oe){a.call(this,V(Oe),Oe),J&&J.call(this,Oe)}}function s(){this.stack.push({type:"fragment",children:[]})}function a(V,J,we){this.stack[this.stack.length-1].children.push(V),this.stack.push(V),this.tokenStack.push([J,we||void 0]),V.position={start:Nn(J.start),end:void 0}}function l(V){return J;function J(we){V&&V.call(this,we),c.call(this,we)}}function c(V,J){const we=this.stack.pop(),Oe=this.tokenStack.pop();if(Oe)Oe[0].type!==V.type&&(J?J.call(this,V,Oe[0]):(Oe[1]||id).call(this,V,Oe[0]));else throw new Error("Cannot close `"+V.type+"` ("+ni({start:V.start,end:V.end})+"): it’s not open");we.position.end=Nn(V.end)}function u(){return Ol(this.stack.pop())}function d(){this.data.expectingFirstListItemValue=!0}function f(V){if(this.data.expectingFirstListItemValue){const J=this.stack[this.stack.length-2];J.start=Number.parseInt(this.sliceSerialize(V),10),this.data.expectingFirstListItemValue=void 0}}function p(){const V=this.resume(),J=this.stack[this.stack.length-1];J.lang=V}function m(){const V=this.resume(),J=this.stack[this.stack.length-1];J.meta=V}function g(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function v(){const V=this.resume(),J=this.stack[this.stack.length-1];J.value=V.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function y(){const V=this.resume(),J=this.stack[this.stack.length-1];J.value=V.replace(/(\r?\n|\r)$/g,"")}function E(V){const J=this.resume(),we=this.stack[this.stack.length-1];we.label=J,we.identifier=nn(this.sliceSerialize(V)).toLowerCase()}function w(){const V=this.resume(),J=this.stack[this.stack.length-1];J.title=V}function _(){const V=this.resume(),J=this.stack[this.stack.length-1];J.url=V}function C(V){const J=this.stack[this.stack.length-1];if(!J.depth){const we=this.sliceSerialize(V).length;J.depth=we}}function T(){this.data.setextHeadingSlurpLineEnding=!0}function R(V){const J=this.stack[this.stack.length-1];J.depth=this.sliceSerialize(V).codePointAt(0)===61?1:2}function A(){this.data.setextHeadingSlurpLineEnding=void 0}function I(V){const we=this.stack[this.stack.length-1].children;let Oe=we[we.length-1];(!Oe||Oe.type!=="text")&&(Oe=mt(),Oe.position={start:Nn(V.start),end:void 0},we.push(Oe)),this.stack.push(Oe)}function b(V){const J=this.stack.pop();J.value+=this.sliceSerialize(V),J.position.end=Nn(V.end)}function M(V){const J=this.stack[this.stack.length-1];if(this.data.atHardBreak){const we=J.children[J.children.length-1];we.position.end=Nn(V.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(J.type)&&(I.call(this,V),b.call(this,V))}function O(){this.data.atHardBreak=!0}function L(){const V=this.resume(),J=this.stack[this.stack.length-1];J.value=V}function j(){const V=this.resume(),J=this.stack[this.stack.length-1];J.value=V}function W(){const V=this.resume(),J=this.stack[this.stack.length-1];J.value=V}function oe(){const V=this.stack[this.stack.length-1];if(this.data.inReference){const J=this.data.referenceType||"shortcut";V.type+="Reference",V.referenceType=J,delete V.url,delete V.title}else delete V.identifier,delete V.label;this.data.referenceType=void 0}function te(){const V=this.stack[this.stack.length-1];if(this.data.inReference){const J=this.data.referenceType||"shortcut";V.type+="Reference",V.referenceType=J,delete V.url,delete V.title}else delete V.identifier,delete V.label;this.data.referenceType=void 0}function B(V){const J=this.sliceSerialize(V),we=this.stack[this.stack.length-2];we.label=Ek(J),we.identifier=nn(J).toLowerCase()}function $(){const V=this.stack[this.stack.length-1],J=this.resume(),we=this.stack[this.stack.length-1];if(this.data.inReference=!0,we.type==="link"){const Oe=V.children;we.children=Oe}else we.alt=J}function x(){const V=this.resume(),J=this.stack[this.stack.length-1];J.url=V}function z(){const V=this.resume(),J=this.stack[this.stack.length-1];J.title=V}function G(){this.data.inReference=void 0}function k(){this.data.referenceType="collapsed"}function K(V){const J=this.resume(),we=this.stack[this.stack.length-1];we.label=J,we.identifier=nn(this.sliceSerialize(V)).toLowerCase(),this.data.referenceType="full"}function Z(V){this.data.characterReferenceType=V.type}function X(V){const J=this.sliceSerialize(V),we=this.data.characterReferenceType;let Oe;we?(Oe=Ap(J,we==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):Oe=Pl(J);const Fe=this.stack[this.stack.length-1];Fe.value+=Oe}function ie(V){const J=this.stack.pop();J.position.end=Nn(V.end)}function Y(V){b.call(this,V);const J=this.stack[this.stack.length-1];J.url=this.sliceSerialize(V)}function re(V){b.call(this,V);const J=this.stack[this.stack.length-1];J.url="mailto:"+this.sliceSerialize(V)}function H(){return{type:"blockquote",children:[]}}function Ee(){return{type:"code",lang:null,meta:null,value:""}}function P(){return{type:"inlineCode",value:""}}function ne(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function Se(){return{type:"emphasis",children:[]}}function pe(){return{type:"heading",depth:0,children:[]}}function se(){return{type:"break"}}function be(){return{type:"html",value:""}}function ke(){return{type:"image",title:null,url:"",alt:null}}function ye(){return{type:"link",title:null,url:"",children:[]}}function ct(V){return{type:"list",ordered:V.type==="listOrdered",start:null,spread:V._spread,children:[]}}function xt(V){return{type:"listItem",spread:V._spread,checked:null,children:[]}}function Ke(){return{type:"paragraph",children:[]}}function ue(){return{type:"strong",children:[]}}function mt(){return{type:"text",value:""}}function qe(){return{type:"thematicBreak"}}}function Nn(e){return{line:e.line,column:e.column,offset:e.offset}}function $p(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?$p(e,r):_k(e,r)}}function _k(e,t){let n;for(n in t)if(Bp.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function id(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+ni({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+ni({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+ni({start:t.start,end:t.end})+") is still open")}function Tk(e){const t=this;t.parser=n;function n(r){return kk(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function Nk(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function Ak(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
25
25
  `}]}function Mk(e,t){const n=t.value?t.value+`
26
26
  `:"",r={};t.lang&&(r.className=["language-"+t.lang]);let i={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(i.data={meta:t.meta}),e.patch(t,i),i=e.applyData(t,i),i={type:"element",tagName:"pre",properties:{},children:[i]},e.patch(t,i),i}function Rk(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Ik(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Ok(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),i=jr(r.toLowerCase()),o=e.footnoteOrder.indexOf(r);let s,a=e.footnoteCounts.get(r);a===void 0?(a=0,e.footnoteOrder.push(r),s=e.footnoteOrder.length):s=o+1,a+=1,e.footnoteCounts.set(r,a);const l={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+i,id:n+"fnref-"+i+(a>1?"-"+a:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(s)}]};e.patch(t,l);const c={type:"element",tagName:"sup",properties:{},children:[l]};return e.patch(t,c),e.applyData(t,c)}function Pk(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Dk(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function Vp(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const i=e.all(t),o=i[0];o&&o.type==="text"?o.value="["+o.value:i.unshift({type:"text",value:"["});const s=i[i.length-1];return s&&s.type==="text"?s.value+=r:i.push({type:"text",value:r}),i}function Lk(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return Vp(e,t);const i={src:jr(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(i.title=r.title);const o={type:"element",tagName:"img",properties:i,children:[]};return e.patch(t,o),e.applyData(t,o)}function Fk(e,t){const n={src:jr(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function jk(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function Bk(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return Vp(e,t);const i={href:jr(r.url||"")};r.title!==null&&r.title!==void 0&&(i.title=r.title);const o={type:"element",tagName:"a",properties:i,children:e.all(t)};return e.patch(t,o),e.applyData(t,o)}function $k(e,t){const n={href:jr(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Vk(e,t,n){const r=e.all(t),i=n?zk(n):zp(t),o={},s=[];if(typeof t.checked=="boolean"){const u=r[0];let d;u&&u.type==="element"&&u.tagName==="p"?d=u:(d={type:"element",tagName:"p",properties:{},children:[]},r.unshift(d)),d.children.length>0&&d.children.unshift({type:"text",value:" "}),d.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),o.className=["task-list-item"]}let a=-1;for(;++a<r.length;){const u=r[a];(i||a!==0||u.type!=="element"||u.tagName!=="p")&&s.push({type:"text",value:`
27
27
  `}),u.type==="element"&&u.tagName==="p"&&!i?s.push(...u.children):s.push(u)}const l=r[r.length-1];l&&(i||l.type!=="element"||l.tagName!=="p")&&s.push({type:"text",value:`
28
- `});const c={type:"element",tagName:"li",properties:o,children:s};return e.patch(t,c),e.applyData(t,c)}function zk(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r<n.length;)t=zp(n[r])}return t}function zp(e){const t=e.spread;return t??e.children.length>1}function Uk(e,t){const n={},r=e.all(t);let i=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++i<r.length;){const s=r[i];if(s.type==="element"&&s.tagName==="li"&&s.properties&&Array.isArray(s.properties.className)&&s.properties.className.includes("task-list-item")){n.className=["contains-task-list"];break}}const o={type:"element",tagName:t.ordered?"ol":"ul",properties:n,children:e.wrap(r,!0)};return e.patch(t,o),e.applyData(t,o)}function Hk(e,t){const n={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Wk(e,t){const n={type:"root",children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function Gk(e,t){const n={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Kk(e,t){const n=e.all(t),r=n.shift(),i=[];if(r){const s={type:"element",tagName:"thead",properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],s),i.push(s)}if(n.length>0){const s={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},a=Al(t.children[1]),l=wp(t.children[t.children.length-1]);a&&l&&(s.position={start:a,end:l}),i.push(s)}const o={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(t,o),e.applyData(t,o)}function qk(e,t,n){const r=n?n.children:void 0,o=(r?r.indexOf(t):1)===0?"th":"td",s=n&&n.type==="table"?n.align:void 0,a=s?s.length:t.children.length;let l=-1;const c=[];for(;++l<a;){const d=t.children[l],f={},p=s?s[l]:void 0;p&&(f.align=p);let m={type:"element",tagName:o,properties:f,children:[]};d&&(m.children=e.all(d),e.patch(d,m),m=e.applyData(d,m)),c.push(m)}const u={type:"element",tagName:"tr",properties:{},children:e.wrap(c,!0)};return e.patch(t,u),e.applyData(t,u)}function Yk(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}const od=9,sd=32;function Zk(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),i=0;const o=[];for(;r;)o.push(ad(t.slice(i,r.index),i>0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return o.push(ad(t.slice(i),i>0,!1)),o.join("")}function ad(e,t,n){let r=0,i=e.length;if(t){let o=e.codePointAt(r);for(;o===od||o===sd;)r++,o=e.codePointAt(r)}if(n){let o=e.codePointAt(i-1);for(;o===od||o===sd;)i--,o=e.codePointAt(i-1)}return i>r?e.slice(r,i):""}function Xk(e,t){const n={type:"text",value:Zk(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function Qk(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const Jk={blockquote:Nk,break:Ak,code:Mk,delete:Rk,emphasis:Ik,footnoteReference:Ok,heading:Pk,html:Dk,imageReference:Lk,image:Fk,inlineCode:jk,linkReference:Bk,link:$k,listItem:Vk,list:Uk,paragraph:Hk,root:Wk,strong:Gk,table:Kk,tableCell:Yk,tableRow:qk,text:Xk,thematicBreak:Qk,toml:$i,yaml:$i,definition:$i,footnoteDefinition:$i};function $i(){}const Up=-1,Bo=0,ii=1,vo=2,Ll=3,Fl=4,jl=5,Bl=6,Hp=7,Wp=8,ld=typeof self=="object"?self:globalThis,e1=(e,t)=>{const n=(i,o)=>(e.set(o,i),i),r=i=>{if(e.has(i))return e.get(i);const[o,s]=t[i];switch(o){case Bo:case Up:return n(s,i);case ii:{const a=n([],i);for(const l of s)a.push(r(l));return a}case vo:{const a=n({},i);for(const[l,c]of s)a[r(l)]=r(c);return a}case Ll:return n(new Date(s),i);case Fl:{const{source:a,flags:l}=s;return n(new RegExp(a,l),i)}case jl:{const a=n(new Map,i);for(const[l,c]of s)a.set(r(l),r(c));return a}case Bl:{const a=n(new Set,i);for(const l of s)a.add(r(l));return a}case Hp:{const{name:a,message:l}=s;return n(new ld[a](l),i)}case Wp:return n(BigInt(s),i);case"BigInt":return n(Object(BigInt(s)),i);case"ArrayBuffer":return n(new Uint8Array(s).buffer,s);case"DataView":{const{buffer:a}=new Uint8Array(s);return n(new DataView(a),s)}}return n(new ld[o](s),i)};return r},cd=e=>e1(new Map,e)(0),lr="",{toString:t1}={},{keys:n1}=Object,Gr=e=>{const t=typeof e;if(t!=="object"||!e)return[Bo,t];const n=t1.call(e).slice(8,-1);switch(n){case"Array":return[ii,lr];case"Object":return[vo,lr];case"Date":return[Ll,lr];case"RegExp":return[Fl,lr];case"Map":return[jl,lr];case"Set":return[Bl,lr];case"DataView":return[ii,n]}return n.includes("Array")?[ii,n]:n.includes("Error")?[Hp,n]:[vo,n]},Vi=([e,t])=>e===Bo&&(t==="function"||t==="symbol"),r1=(e,t,n,r)=>{const i=(s,a)=>{const l=r.push(s)-1;return n.set(a,l),l},o=s=>{if(n.has(s))return n.get(s);let[a,l]=Gr(s);switch(a){case Bo:{let u=s;switch(l){case"bigint":a=Wp,u=s.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+l);u=null;break;case"undefined":return i([Up],s)}return i([a,u],s)}case ii:{if(l){let f=s;return l==="DataView"?f=new Uint8Array(s.buffer):l==="ArrayBuffer"&&(f=new Uint8Array(s)),i([l,[...f]],s)}const u=[],d=i([a,u],s);for(const f of s)u.push(o(f));return d}case vo:{if(l)switch(l){case"BigInt":return i([l,s.toString()],s);case"Boolean":case"Number":case"String":return i([l,s.valueOf()],s)}if(t&&"toJSON"in s)return o(s.toJSON());const u=[],d=i([a,u],s);for(const f of n1(s))(e||!Vi(Gr(s[f])))&&u.push([o(f),o(s[f])]);return d}case Ll:return i([a,s.toISOString()],s);case Fl:{const{source:u,flags:d}=s;return i([a,{source:u,flags:d}],s)}case jl:{const u=[],d=i([a,u],s);for(const[f,p]of s)(e||!(Vi(Gr(f))||Vi(Gr(p))))&&u.push([o(f),o(p)]);return d}case Bl:{const u=[],d=i([a,u],s);for(const f of s)(e||!Vi(Gr(f)))&&u.push(o(f));return d}}const{message:c}=s;return i([a,{name:l,message:c}],s)};return o},ud=(e,{json:t,lossy:n}={})=>{const r=[];return r1(!(t||n),!!t,new Map,r)(e),r},wo=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?cd(ud(e,t)):structuredClone(e):(e,t)=>cd(ud(e,t));function i1(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function o1(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function s1(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||i1,r=e.options.footnoteBackLabel||o1,i=e.options.footnoteLabel||"Footnotes",o=e.options.footnoteLabelTagName||"h2",s=e.options.footnoteLabelProperties||{className:["sr-only"]},a=[];let l=-1;for(;++l<e.footnoteOrder.length;){const c=e.footnoteById.get(e.footnoteOrder[l]);if(!c)continue;const u=e.all(c),d=String(c.identifier).toUpperCase(),f=jr(d.toLowerCase());let p=0;const m=[],g=e.footnoteCounts.get(d);for(;g!==void 0&&++p<=g;){m.length>0&&m.push({type:"text",value:" "});let E=typeof n=="string"?n:n(l,p);typeof E=="string"&&(E={type:"text",value:E}),m.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+f+(p>1?"-"+p:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(l,p),className:["data-footnote-backref"]},children:Array.isArray(E)?E:[E]})}const v=u[u.length-1];if(v&&v.type==="element"&&v.tagName==="p"){const E=v.children[v.children.length-1];E&&E.type==="text"?E.value+=" ":v.children.push({type:"text",value:" "}),v.children.push(...m)}else u.push(...m);const y={type:"element",tagName:"li",properties:{id:t+"fn-"+f},children:e.wrap(u,!0)};e.patch(c,y),a.push(y)}if(a.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:o,properties:{...wo(s),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:`
28
+ `});const c={type:"element",tagName:"li",properties:o,children:s};return e.patch(t,c),e.applyData(t,c)}function zk(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r<n.length;)t=zp(n[r])}return t}function zp(e){const t=e.spread;return t??e.children.length>1}function Uk(e,t){const n={},r=e.all(t);let i=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++i<r.length;){const s=r[i];if(s.type==="element"&&s.tagName==="li"&&s.properties&&Array.isArray(s.properties.className)&&s.properties.className.includes("task-list-item")){n.className=["contains-task-list"];break}}const o={type:"element",tagName:t.ordered?"ol":"ul",properties:n,children:e.wrap(r,!0)};return e.patch(t,o),e.applyData(t,o)}function Hk(e,t){const n={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Wk(e,t){const n={type:"root",children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function Gk(e,t){const n={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Kk(e,t){const n=e.all(t),r=n.shift(),i=[];if(r){const s={type:"element",tagName:"thead",properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],s),i.push(s)}if(n.length>0){const s={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},a=Al(t.children[1]),l=wp(t.children[t.children.length-1]);a&&l&&(s.position={start:a,end:l}),i.push(s)}const o={type:"element",tagName:"table",properties:{},children:e.wrap(i,!0)};return e.patch(t,o),e.applyData(t,o)}function qk(e,t,n){const r=n?n.children:void 0,o=(r?r.indexOf(t):1)===0?"th":"td",s=n&&n.type==="table"?n.align:void 0,a=s?s.length:t.children.length;let l=-1;const c=[];for(;++l<a;){const d=t.children[l],f={},p=s?s[l]:void 0;p&&(f.align=p);let m={type:"element",tagName:o,properties:f,children:[]};d&&(m.children=e.all(d),e.patch(d,m),m=e.applyData(d,m)),c.push(m)}const u={type:"element",tagName:"tr",properties:{},children:e.wrap(c,!0)};return e.patch(t,u),e.applyData(t,u)}function Yk(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}const od=9,sd=32;function Zk(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),i=0;const o=[];for(;r;)o.push(ad(t.slice(i,r.index),i>0,!0),r[0]),i=r.index+r[0].length,r=n.exec(t);return o.push(ad(t.slice(i),i>0,!1)),o.join("")}function ad(e,t,n){let r=0,i=e.length;if(t){let o=e.codePointAt(r);for(;o===od||o===sd;)r++,o=e.codePointAt(r)}if(n){let o=e.codePointAt(i-1);for(;o===od||o===sd;)i--,o=e.codePointAt(i-1)}return i>r?e.slice(r,i):""}function Xk(e,t){const n={type:"text",value:Zk(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function Qk(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const Jk={blockquote:Nk,break:Ak,code:Mk,delete:Rk,emphasis:Ik,footnoteReference:Ok,heading:Pk,html:Dk,imageReference:Lk,image:Fk,inlineCode:jk,linkReference:Bk,link:$k,listItem:Vk,list:Uk,paragraph:Hk,root:Wk,strong:Gk,table:Kk,tableCell:Yk,tableRow:qk,text:Xk,thematicBreak:Qk,toml:$i,yaml:$i,definition:$i,footnoteDefinition:$i};function $i(){}const Up=-1,Bo=0,ii=1,vo=2,Ll=3,Fl=4,jl=5,Bl=6,Hp=7,Wp=8,ld=typeof self=="object"?self:globalThis,eC=(e,t)=>{const n=(i,o)=>(e.set(o,i),i),r=i=>{if(e.has(i))return e.get(i);const[o,s]=t[i];switch(o){case Bo:case Up:return n(s,i);case ii:{const a=n([],i);for(const l of s)a.push(r(l));return a}case vo:{const a=n({},i);for(const[l,c]of s)a[r(l)]=r(c);return a}case Ll:return n(new Date(s),i);case Fl:{const{source:a,flags:l}=s;return n(new RegExp(a,l),i)}case jl:{const a=n(new Map,i);for(const[l,c]of s)a.set(r(l),r(c));return a}case Bl:{const a=n(new Set,i);for(const l of s)a.add(r(l));return a}case Hp:{const{name:a,message:l}=s;return n(new ld[a](l),i)}case Wp:return n(BigInt(s),i);case"BigInt":return n(Object(BigInt(s)),i);case"ArrayBuffer":return n(new Uint8Array(s).buffer,s);case"DataView":{const{buffer:a}=new Uint8Array(s);return n(new DataView(a),s)}}return n(new ld[o](s),i)};return r},cd=e=>eC(new Map,e)(0),lr="",{toString:tC}={},{keys:nC}=Object,Gr=e=>{const t=typeof e;if(t!=="object"||!e)return[Bo,t];const n=tC.call(e).slice(8,-1);switch(n){case"Array":return[ii,lr];case"Object":return[vo,lr];case"Date":return[Ll,lr];case"RegExp":return[Fl,lr];case"Map":return[jl,lr];case"Set":return[Bl,lr];case"DataView":return[ii,n]}return n.includes("Array")?[ii,n]:n.includes("Error")?[Hp,n]:[vo,n]},Vi=([e,t])=>e===Bo&&(t==="function"||t==="symbol"),rC=(e,t,n,r)=>{const i=(s,a)=>{const l=r.push(s)-1;return n.set(a,l),l},o=s=>{if(n.has(s))return n.get(s);let[a,l]=Gr(s);switch(a){case Bo:{let u=s;switch(l){case"bigint":a=Wp,u=s.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+l);u=null;break;case"undefined":return i([Up],s)}return i([a,u],s)}case ii:{if(l){let f=s;return l==="DataView"?f=new Uint8Array(s.buffer):l==="ArrayBuffer"&&(f=new Uint8Array(s)),i([l,[...f]],s)}const u=[],d=i([a,u],s);for(const f of s)u.push(o(f));return d}case vo:{if(l)switch(l){case"BigInt":return i([l,s.toString()],s);case"Boolean":case"Number":case"String":return i([l,s.valueOf()],s)}if(t&&"toJSON"in s)return o(s.toJSON());const u=[],d=i([a,u],s);for(const f of nC(s))(e||!Vi(Gr(s[f])))&&u.push([o(f),o(s[f])]);return d}case Ll:return i([a,s.toISOString()],s);case Fl:{const{source:u,flags:d}=s;return i([a,{source:u,flags:d}],s)}case jl:{const u=[],d=i([a,u],s);for(const[f,p]of s)(e||!(Vi(Gr(f))||Vi(Gr(p))))&&u.push([o(f),o(p)]);return d}case Bl:{const u=[],d=i([a,u],s);for(const f of s)(e||!Vi(Gr(f)))&&u.push(o(f));return d}}const{message:c}=s;return i([a,{name:l,message:c}],s)};return o},ud=(e,{json:t,lossy:n}={})=>{const r=[];return rC(!(t||n),!!t,new Map,r)(e),r},wo=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?cd(ud(e,t)):structuredClone(e):(e,t)=>cd(ud(e,t));function iC(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function oC(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function sC(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||iC,r=e.options.footnoteBackLabel||oC,i=e.options.footnoteLabel||"Footnotes",o=e.options.footnoteLabelTagName||"h2",s=e.options.footnoteLabelProperties||{className:["sr-only"]},a=[];let l=-1;for(;++l<e.footnoteOrder.length;){const c=e.footnoteById.get(e.footnoteOrder[l]);if(!c)continue;const u=e.all(c),d=String(c.identifier).toUpperCase(),f=jr(d.toLowerCase());let p=0;const m=[],g=e.footnoteCounts.get(d);for(;g!==void 0&&++p<=g;){m.length>0&&m.push({type:"text",value:" "});let E=typeof n=="string"?n:n(l,p);typeof E=="string"&&(E={type:"text",value:E}),m.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+f+(p>1?"-"+p:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(l,p),className:["data-footnote-backref"]},children:Array.isArray(E)?E:[E]})}const v=u[u.length-1];if(v&&v.type==="element"&&v.tagName==="p"){const E=v.children[v.children.length-1];E&&E.type==="text"?E.value+=" ":v.children.push({type:"text",value:" "}),v.children.push(...m)}else u.push(...m);const y={type:"element",tagName:"li",properties:{id:t+"fn-"+f},children:e.wrap(u,!0)};e.patch(c,y),a.push(y)}if(a.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:o,properties:{...wo(s),id:"footnote-label"},children:[{type:"text",value:i}]},{type:"text",value:`
29
29
  `},{type:"element",tagName:"ol",properties:{},children:e.wrap(a,!0)},{type:"text",value:`
30
- `}]}}const Si=function(e){if(e==null)return u1;if(typeof e=="function")return $o(e);if(typeof e=="object")return Array.isArray(e)?a1(e):l1(e);if(typeof e=="string")return c1(e);throw new Error("Expected function, string, or object as test")};function a1(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=Si(e[n]);return $o(r);function r(...i){let o=-1;for(;++o<t.length;)if(t[o].apply(this,i))return!0;return!1}}function l1(e){const t=e;return $o(n);function n(r){const i=r;let o;for(o in e)if(i[o]!==t[o])return!1;return!0}}function c1(e){return $o(t);function t(n){return n&&n.type===e}}function $o(e){return t;function t(n,r,i){return!!(d1(n)&&e.call(this,n,typeof r=="number"?r:void 0,i||void 0))}}function u1(){return!0}function d1(e){return e!==null&&typeof e=="object"&&"type"in e}const Gp=[],f1=!0,Oa=!1,h1="skip";function Kp(e,t,n,r){let i;typeof t=="function"&&typeof n!="function"?(r=n,n=t):i=t;const o=Si(i),s=r?-1:1;a(e,void 0,[])();function a(l,c,u){const d=l&&typeof l=="object"?l:{};if(typeof d.type=="string"){const p=typeof d.tagName=="string"?d.tagName:typeof d.name=="string"?d.name:void 0;Object.defineProperty(f,"name",{value:"node ("+(l.type+(p?"<"+p+">":""))+")"})}return f;function f(){let p=Gp,m,g,v;if((!t||o(l,c,u[u.length-1]||void 0))&&(p=p1(n(l,u)),p[0]===Oa))return p;if("children"in l&&l.children){const y=l;if(y.children&&p[0]!==h1)for(g=(r?y.children.length:-1)+s,v=u.concat(y);g>-1&&g<y.children.length;){const E=y.children[g];if(m=a(E,g,v)(),m[0]===Oa)return m;g=typeof m[1]=="number"?m[1]:g+s}}return p}}}function p1(e){return Array.isArray(e)?e:typeof e=="number"?[f1,e]:e==null?Gp:[e]}function Vo(e,t,n,r){let i,o,s;typeof t=="function"&&typeof n!="function"?(o=void 0,s=t,i=n):(o=t,s=n,i=r),Kp(e,o,a,i);function a(l,c){const u=c[c.length-1],d=u?u.children.indexOf(l):void 0;return s(l,d,u)}}const Pa={}.hasOwnProperty,g1={};function m1(e,t){const n=t||g1,r=new Map,i=new Map,o=new Map,s={...Jk,...n.handlers},a={all:c,applyData:y1,definitionById:r,footnoteById:i,footnoteCounts:o,footnoteOrder:[],handlers:s,one:l,options:n,patch:b1,wrap:v1};return Vo(e,function(u){if(u.type==="definition"||u.type==="footnoteDefinition"){const d=u.type==="definition"?r:i,f=String(u.identifier).toUpperCase();d.has(f)||d.set(f,u)}}),a;function l(u,d){const f=u.type,p=a.handlers[f];if(Pa.call(a.handlers,f)&&p)return p(a,u,d);if(a.options.passThrough&&a.options.passThrough.includes(f)){if("children"in u){const{children:g,...v}=u,y=wo(v);return y.children=a.all(u),y}return wo(u)}return(a.options.unknownHandler||x1)(a,u,d)}function c(u){const d=[];if("children"in u){const f=u.children;let p=-1;for(;++p<f.length;){const m=a.one(f[p],u);if(m){if(p&&f[p-1].type==="break"&&(!Array.isArray(m)&&m.type==="text"&&(m.value=dd(m.value)),!Array.isArray(m)&&m.type==="element")){const g=m.children[0];g&&g.type==="text"&&(g.value=dd(g.value))}Array.isArray(m)?d.push(...m):d.push(m)}}}return d}}function b1(e,t){e.position&&(t.position=oE(e))}function y1(e,t){let n=t;if(e&&e.data){const r=e.data.hName,i=e.data.hChildren,o=e.data.hProperties;if(typeof r=="string")if(n.type==="element")n.tagName=r;else{const s="children"in n?n.children:[n];n={type:"element",tagName:r,properties:{},children:s}}n.type==="element"&&o&&Object.assign(n.properties,wo(o)),"children"in n&&n.children&&i!==null&&i!==void 0&&(n.children=i)}return n}function x1(e,t){const n=t.data||{},r="value"in t&&!(Pa.call(n,"hProperties")||Pa.call(n,"hChildren"))?{type:"text",value:t.value}:{type:"element",tagName:"div",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function v1(e,t){const n=[];let r=-1;for(t&&n.push({type:"text",value:`
30
+ `}]}}const Si=function(e){if(e==null)return uC;if(typeof e=="function")return $o(e);if(typeof e=="object")return Array.isArray(e)?aC(e):lC(e);if(typeof e=="string")return cC(e);throw new Error("Expected function, string, or object as test")};function aC(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=Si(e[n]);return $o(r);function r(...i){let o=-1;for(;++o<t.length;)if(t[o].apply(this,i))return!0;return!1}}function lC(e){const t=e;return $o(n);function n(r){const i=r;let o;for(o in e)if(i[o]!==t[o])return!1;return!0}}function cC(e){return $o(t);function t(n){return n&&n.type===e}}function $o(e){return t;function t(n,r,i){return!!(dC(n)&&e.call(this,n,typeof r=="number"?r:void 0,i||void 0))}}function uC(){return!0}function dC(e){return e!==null&&typeof e=="object"&&"type"in e}const Gp=[],fC=!0,Oa=!1,hC="skip";function Kp(e,t,n,r){let i;typeof t=="function"&&typeof n!="function"?(r=n,n=t):i=t;const o=Si(i),s=r?-1:1;a(e,void 0,[])();function a(l,c,u){const d=l&&typeof l=="object"?l:{};if(typeof d.type=="string"){const p=typeof d.tagName=="string"?d.tagName:typeof d.name=="string"?d.name:void 0;Object.defineProperty(f,"name",{value:"node ("+(l.type+(p?"<"+p+">":""))+")"})}return f;function f(){let p=Gp,m,g,v;if((!t||o(l,c,u[u.length-1]||void 0))&&(p=pC(n(l,u)),p[0]===Oa))return p;if("children"in l&&l.children){const y=l;if(y.children&&p[0]!==hC)for(g=(r?y.children.length:-1)+s,v=u.concat(y);g>-1&&g<y.children.length;){const E=y.children[g];if(m=a(E,g,v)(),m[0]===Oa)return m;g=typeof m[1]=="number"?m[1]:g+s}}return p}}}function pC(e){return Array.isArray(e)?e:typeof e=="number"?[fC,e]:e==null?Gp:[e]}function Vo(e,t,n,r){let i,o,s;typeof t=="function"&&typeof n!="function"?(o=void 0,s=t,i=n):(o=t,s=n,i=r),Kp(e,o,a,i);function a(l,c){const u=c[c.length-1],d=u?u.children.indexOf(l):void 0;return s(l,d,u)}}const Pa={}.hasOwnProperty,gC={};function mC(e,t){const n=t||gC,r=new Map,i=new Map,o=new Map,s={...Jk,...n.handlers},a={all:c,applyData:yC,definitionById:r,footnoteById:i,footnoteCounts:o,footnoteOrder:[],handlers:s,one:l,options:n,patch:bC,wrap:vC};return Vo(e,function(u){if(u.type==="definition"||u.type==="footnoteDefinition"){const d=u.type==="definition"?r:i,f=String(u.identifier).toUpperCase();d.has(f)||d.set(f,u)}}),a;function l(u,d){const f=u.type,p=a.handlers[f];if(Pa.call(a.handlers,f)&&p)return p(a,u,d);if(a.options.passThrough&&a.options.passThrough.includes(f)){if("children"in u){const{children:g,...v}=u,y=wo(v);return y.children=a.all(u),y}return wo(u)}return(a.options.unknownHandler||xC)(a,u,d)}function c(u){const d=[];if("children"in u){const f=u.children;let p=-1;for(;++p<f.length;){const m=a.one(f[p],u);if(m){if(p&&f[p-1].type==="break"&&(!Array.isArray(m)&&m.type==="text"&&(m.value=dd(m.value)),!Array.isArray(m)&&m.type==="element")){const g=m.children[0];g&&g.type==="text"&&(g.value=dd(g.value))}Array.isArray(m)?d.push(...m):d.push(m)}}}return d}}function bC(e,t){e.position&&(t.position=oE(e))}function yC(e,t){let n=t;if(e&&e.data){const r=e.data.hName,i=e.data.hChildren,o=e.data.hProperties;if(typeof r=="string")if(n.type==="element")n.tagName=r;else{const s="children"in n?n.children:[n];n={type:"element",tagName:r,properties:{},children:s}}n.type==="element"&&o&&Object.assign(n.properties,wo(o)),"children"in n&&n.children&&i!==null&&i!==void 0&&(n.children=i)}return n}function xC(e,t){const n=t.data||{},r="value"in t&&!(Pa.call(n,"hProperties")||Pa.call(n,"hChildren"))?{type:"text",value:t.value}:{type:"element",tagName:"div",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function vC(e,t){const n=[];let r=-1;for(t&&n.push({type:"text",value:`
31
31
  `});++r<e.length;)r&&n.push({type:"text",value:`
32
32
  `}),n.push(e[r]);return t&&e.length>0&&n.push({type:"text",value:`
33
- `}),n}function dd(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function fd(e,t){const n=m1(e,t),r=n.one(e,void 0),i=s1(n),o=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return i&&o.children.push({type:"text",value:`
34
- `},i),o}function w1(e,t){return e&&"run"in e?async function(n,r){const i=fd(n,{file:r,...t});await e.run(i,r)}:function(n,r){return fd(n,{file:r,...e||t})}}function hd(e){if(e)throw e}var Ns,pd;function E1(){if(pd)return Ns;pd=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=function(c){return typeof Array.isArray=="function"?Array.isArray(c):t.call(c)==="[object Array]"},o=function(c){if(!c||t.call(c)!=="[object Object]")return!1;var u=e.call(c,"constructor"),d=c.constructor&&c.constructor.prototype&&e.call(c.constructor.prototype,"isPrototypeOf");if(c.constructor&&!u&&!d)return!1;var f;for(f in c);return typeof f>"u"||e.call(c,f)},s=function(c,u){n&&u.name==="__proto__"?n(c,u.name,{enumerable:!0,configurable:!0,value:u.newValue,writable:!0}):c[u.name]=u.newValue},a=function(c,u){if(u==="__proto__")if(e.call(c,u)){if(r)return r(c,u).value}else return;return c[u]};return Ns=function l(){var c,u,d,f,p,m,g=arguments[0],v=1,y=arguments.length,E=!1;for(typeof g=="boolean"&&(E=g,g=arguments[1]||{},v=2),(g==null||typeof g!="object"&&typeof g!="function")&&(g={});v<y;++v)if(c=arguments[v],c!=null)for(u in c)d=a(g,u),f=a(c,u),g!==f&&(E&&f&&(o(f)||(p=i(f)))?(p?(p=!1,m=d&&i(d)?d:[]):m=d&&o(d)?d:{},s(g,{name:u,newValue:l(E,m,f)})):typeof f<"u"&&s(g,{name:u,newValue:f}));return g},Ns}var S1=E1();const As=Lo(S1);function Da(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function k1(){const e=[],t={run:n,use:r};return t;function n(...i){let o=-1;const s=i.pop();if(typeof s!="function")throw new TypeError("Expected function as last argument, not "+s);a(null,...i);function a(l,...c){const u=e[++o];let d=-1;if(l){s(l);return}for(;++d<i.length;)(c[d]===null||c[d]===void 0)&&(c[d]=i[d]);i=c,u?C1(u,a)(...c):s(null,...c)}}function r(i){if(typeof i!="function")throw new TypeError("Expected `middelware` to be a function, not "+i);return e.push(i),t}}function C1(e,t){let n;return r;function r(...s){const a=e.length>s.length;let l;a&&s.push(i);try{l=e.apply(this,s)}catch(c){const u=c;if(a&&n)throw u;return i(u)}a||(l&&l.then&&typeof l.then=="function"?l.then(o,i):l instanceof Error?i(l):o(l))}function i(s,...a){n||(n=!0,t(s,...a))}function o(s){i(null,s)}}const cn={basename:_1,dirname:T1,extname:N1,join:A1,sep:"/"};function _1(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');ki(e);let n=0,r=-1,i=e.length,o;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(o){n=i+1;break}}else r<0&&(o=!0,r=i+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let s=-1,a=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(o){n=i+1;break}}else s<0&&(o=!0,s=i+1),a>-1&&(e.codePointAt(i)===t.codePointAt(a--)?a<0&&(r=i):(a=-1,r=s));return n===r?r=s:r<0&&(r=e.length),e.slice(n,r)}function T1(e){if(ki(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function N1(e){ki(e);let t=e.length,n=-1,r=0,i=-1,o=0,s;for(;t--;){const a=e.codePointAt(t);if(a===47){if(s){r=t+1;break}continue}n<0&&(s=!0,n=t+1),a===46?i<0?i=t:o!==1&&(o=1):i>-1&&(o=-1)}return i<0||n<0||o===0||o===1&&i===n-1&&i===r+1?"":e.slice(i,n)}function A1(...e){let t=-1,n;for(;++t<e.length;)ki(e[t]),e[t]&&(n=n===void 0?e[t]:n+"/"+e[t]);return n===void 0?".":M1(n)}function M1(e){ki(e);const t=e.codePointAt(0)===47;let n=R1(e,!t);return n.length===0&&!t&&(n="."),n.length>0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function R1(e,t){let n="",r=0,i=-1,o=0,s=-1,a,l;for(;++s<=e.length;){if(s<e.length)a=e.codePointAt(s);else{if(a===47)break;a=47}if(a===47){if(!(i===s-1||o===1))if(i!==s-1&&o===2){if(n.length<2||r!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(l=n.lastIndexOf("/"),l!==n.length-1){l<0?(n="",r=0):(n=n.slice(0,l),r=n.length-1-n.lastIndexOf("/")),i=s,o=0;continue}}else if(n.length>0){n="",r=0,i=s,o=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(i+1,s):n=e.slice(i+1,s),r=s-i-1;i=s,o=0}else a===46&&o>-1?o++:o=-1}return n}function ki(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const I1={cwd:O1};function O1(){return"/"}function La(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function P1(e){if(typeof e=="string")e=new URL(e);else if(!La(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return D1(e)}function D1(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n<t.length;)if(t.codePointAt(n)===37&&t.codePointAt(n+1)===50){const r=t.codePointAt(n+2);if(r===70||r===102){const i=new TypeError("File URL path must not include encoded / characters");throw i.code="ERR_INVALID_FILE_URL_PATH",i}}return decodeURIComponent(t)}const Ms=["history","path","basename","stem","extname","dirname"];class qp{constructor(t){let n;t?La(t)?n={path:t}:typeof t=="string"||L1(t)?n={value:t}:n=t:n={},this.cwd="cwd"in n?"":I1.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let r=-1;for(;++r<Ms.length;){const o=Ms[r];o in n&&n[o]!==void 0&&n[o]!==null&&(this[o]=o==="history"?[...n[o]]:n[o])}let i;for(i in n)Ms.includes(i)||(this[i]=n[i])}get basename(){return typeof this.path=="string"?cn.basename(this.path):void 0}set basename(t){Is(t,"basename"),Rs(t,"basename"),this.path=cn.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?cn.dirname(this.path):void 0}set dirname(t){gd(this.basename,"dirname"),this.path=cn.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?cn.extname(this.path):void 0}set extname(t){if(Rs(t,"extname"),gd(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=cn.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){La(t)&&(t=P1(t)),Is(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?cn.basename(this.path,this.extname):void 0}set stem(t){Is(t,"stem"),Rs(t,"stem"),this.path=cn.join(this.dirname||"",t+(this.extname||""))}fail(t,n,r){const i=this.message(t,n,r);throw i.fatal=!0,i}info(t,n,r){const i=this.message(t,n,r);return i.fatal=void 0,i}message(t,n,r){const i=new Nt(t,n,r);return this.path&&(i.name=this.path+":"+i.name,i.file=this.path),i.fatal=!1,this.messages.push(i),i}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Rs(e,t){if(e&&e.includes(cn.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+cn.sep+"`")}function Is(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function gd(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function L1(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const F1=function(e){const r=this.constructor.prototype,i=r[e],o=function(){return i.apply(o,arguments)};return Object.setPrototypeOf(o,r),o},j1={}.hasOwnProperty;class $l extends F1{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=k1()}copy(){const t=new $l;let n=-1;for(;++n<this.attachers.length;){const r=this.attachers[n];t.use(...r)}return t.data(As(!0,{},this.namespace)),t}data(t,n){return typeof t=="string"?arguments.length===2?(Ds("data",this.frozen),this.namespace[t]=n,this):j1.call(this.namespace,t)&&this.namespace[t]||void 0:t?(Ds("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[n,...r]=this.attachers[this.freezeIndex];if(r[0]===!1)continue;r[0]===!0&&(r[0]=void 0);const i=n.call(t,...r);typeof i=="function"&&this.transformers.use(i)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const n=zi(t),r=this.parser||this.Parser;return Os("parse",r),r(String(n),n)}process(t,n){const r=this;return this.freeze(),Os("process",this.parser||this.Parser),Ps("process",this.compiler||this.Compiler),n?i(void 0,n):new Promise(i);function i(o,s){const a=zi(t),l=r.parse(a);r.run(l,a,function(u,d,f){if(u||!d||!f)return c(u);const p=d,m=r.stringify(p,f);V1(m)?f.value=m:f.result=m,c(u,f)});function c(u,d){u||!d?s(u):o?o(d):n(void 0,d)}}}processSync(t){let n=!1,r;return this.freeze(),Os("processSync",this.parser||this.Parser),Ps("processSync",this.compiler||this.Compiler),this.process(t,i),bd("processSync","process",n),r;function i(o,s){n=!0,hd(o),r=s}}run(t,n,r){md(t),this.freeze();const i=this.transformers;return!r&&typeof n=="function"&&(r=n,n=void 0),r?o(void 0,r):new Promise(o);function o(s,a){const l=zi(n);i.run(t,l,c);function c(u,d,f){const p=d||t;u?a(u):s?s(p):r(void 0,p,f)}}}runSync(t,n){let r=!1,i;return this.run(t,n,o),bd("runSync","run",r),i;function o(s,a){hd(s),i=a,r=!0}}stringify(t,n){this.freeze();const r=zi(n),i=this.compiler||this.Compiler;return Ps("stringify",i),md(t),i(t,r)}use(t,...n){const r=this.attachers,i=this.namespace;if(Ds("use",this.frozen),t!=null)if(typeof t=="function")l(t,n);else if(typeof t=="object")Array.isArray(t)?a(t):s(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function o(c){if(typeof c=="function")l(c,[]);else if(typeof c=="object")if(Array.isArray(c)){const[u,...d]=c;l(u,d)}else s(c);else throw new TypeError("Expected usable value, not `"+c+"`")}function s(c){if(!("plugins"in c)&&!("settings"in c))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");a(c.plugins),c.settings&&(i.settings=As(!0,i.settings,c.settings))}function a(c){let u=-1;if(c!=null)if(Array.isArray(c))for(;++u<c.length;){const d=c[u];o(d)}else throw new TypeError("Expected a list of plugins, not `"+c+"`")}function l(c,u){let d=-1,f=-1;for(;++d<r.length;)if(r[d][0]===c){f=d;break}if(f===-1)r.push([c,...u]);else if(u.length>0){let[p,...m]=u;const g=r[f][1];Da(g)&&Da(p)&&(p=As(!0,g,p)),r[f]=[c,p,...m]}}}}const B1=new $l().freeze();function Os(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Ps(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Ds(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function md(e){if(!Da(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function bd(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function zi(e){return $1(e)?e:new qp(e)}function $1(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function V1(e){return typeof e=="string"||z1(e)}function z1(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const U1="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",yd=[],xd={allowDangerousHtml:!0},H1=/^(https?|ircs?|mailto|xmpp)$/i,W1=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function G1(e){const t=K1(e),n=q1(e);return Y1(t.runSync(t.parse(n),n),e)}function K1(e){const t=e.rehypePlugins||yd,n=e.remarkPlugins||yd,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...xd}:xd;return B1().use(Tk).use(n).use(w1,r).use(t)}function q1(e){const t=e.children||"",n=new qp;return typeof t=="string"&&(n.value=t),n}function Y1(e,t){const n=t.allowedElements,r=t.allowElement,i=t.components,o=t.disallowedElements,s=t.skipHtml,a=t.unwrapDisallowed,l=t.urlTransform||Z1;for(const u of W1)Object.hasOwn(t,u.from)&&(""+u.from+(u.to?"use `"+u.to+"` instead":"remove it")+U1+u.id,void 0);return Vo(e,c),uE(e,{Fragment:h.Fragment,components:i,ignoreInvalidStyle:!0,jsx:h.jsx,jsxs:h.jsxs,passKeys:!0,passNode:!0});function c(u,d,f){if(u.type==="raw"&&f&&typeof d=="number")return s?f.children.splice(d,1):f.children[d]={type:"text",value:u.value},d;if(u.type==="element"){let p;for(p in Cs)if(Object.hasOwn(Cs,p)&&Object.hasOwn(u.properties,p)){const m=u.properties[p],g=Cs[p];(g===null||g.includes(u.tagName))&&(u.properties[p]=l(String(m||""),p,u))}}if(u.type==="element"){let p=n?!n.includes(u.tagName):o?o.includes(u.tagName):!1;if(!p&&r&&typeof d=="number"&&(p=!r(u,d,f)),p&&f&&typeof d=="number")return a&&u.children?f.children.splice(d,1,...u.children):f.children.splice(d,1),d}}}function Z1(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),i=e.indexOf("/");return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||H1.test(e.slice(0,t))?e:""}function vd(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function X1(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function Q1(e,t,n){const i=Si((n||{}).ignore||[]),o=J1(t);let s=-1;for(;++s<o.length;)Kp(e,"text",a);function a(c,u){let d=-1,f;for(;++d<u.length;){const p=u[d],m=f?f.children:void 0;if(i(p,m?m.indexOf(p):void 0,f))return;f=p}if(f)return l(c,u)}function l(c,u){const d=u[u.length-1],f=o[s][0],p=o[s][1];let m=0;const v=d.children.indexOf(c);let y=!1,E=[];f.lastIndex=0;let w=f.exec(c.value);for(;w;){const _=w.index,C={index:w.index,input:w.input,stack:[...u,c]};let T=p(...w,C);if(typeof T=="string"&&(T=T.length>0?{type:"text",value:T}:void 0),T===!1?f.lastIndex=_+1:(m!==_&&E.push({type:"text",value:c.value.slice(m,_)}),Array.isArray(T)?E.push(...T):T&&E.push(T),m=_+w[0].length,y=!0),!f.global)break;w=f.exec(c.value)}return y?(m<c.value.length&&E.push({type:"text",value:c.value.slice(m)}),d.children.splice(v,1,...E)):E=[c],v+E.length}}function J1(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const n=!e[0]||Array.isArray(e[0])?e:[e];let r=-1;for(;++r<n.length;){const i=n[r];t.push([eC(i[0]),tC(i[1])])}return t}function eC(e){return typeof e=="string"?new RegExp(X1(e),"g"):e}function tC(e){return typeof e=="function"?e:function(){return e}}const Ls="phrasing",Fs=["autolink","link","image","label"];function nC(){return{transforms:[cC],enter:{literalAutolink:iC,literalAutolinkEmail:js,literalAutolinkHttp:js,literalAutolinkWww:js},exit:{literalAutolink:lC,literalAutolinkEmail:aC,literalAutolinkHttp:oC,literalAutolinkWww:sC}}}function rC(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Ls,notInConstruct:Fs},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Ls,notInConstruct:Fs},{character:":",before:"[ps]",after:"\\/",inConstruct:Ls,notInConstruct:Fs}]}}function iC(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function js(e){this.config.enter.autolinkProtocol.call(this,e)}function oC(e){this.config.exit.autolinkProtocol.call(this,e)}function sC(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function aC(e){this.config.exit.autolinkEmail.call(this,e)}function lC(e){this.exit(e)}function cC(e){Q1(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,uC],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),dC]],{ignore:["link","linkReference"]})}function uC(e,t,n,r,i){let o="";if(!Yp(i)||(/^w/i.test(t)&&(n=t+n,t="",o="http://"),!fC(n)))return!1;const s=hC(n+r);if(!s[0])return!1;const a={type:"link",title:null,url:o+t+s[0],children:[{type:"text",value:t+s[0]}]};return s[1]?[a,{type:"text",value:s[1]}]:a}function dC(e,t,n,r){return!Yp(r,!0)||/[-\d_]$/.test(n)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function fC(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function hC(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const i=vd(e,"(");let o=vd(e,")");for(;r!==-1&&i>o;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),o++;return[e,n]}function Yp(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Qn(n)||Fo(n))&&(!t||n!==47)}Zp.peek=EC;function pC(){this.buffer()}function gC(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function mC(){this.buffer()}function bC(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function yC(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=nn(this.sliceSerialize(e)).toLowerCase(),n.label=t}function xC(e){this.exit(e)}function vC(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=nn(this.sliceSerialize(e)).toLowerCase(),n.label=t}function wC(e){this.exit(e)}function EC(){return"["}function Zp(e,t,n,r){const i=n.createTracker(r);let o=i.move("[^");const s=n.enter("footnoteReference"),a=n.enter("reference");return o+=i.move(n.safe(n.associationId(e),{after:"]",before:o})),a(),s(),o+=i.move("]"),o}function SC(){return{enter:{gfmFootnoteCallString:pC,gfmFootnoteCall:gC,gfmFootnoteDefinitionLabelString:mC,gfmFootnoteDefinition:bC},exit:{gfmFootnoteCallString:yC,gfmFootnoteCall:xC,gfmFootnoteDefinitionLabelString:vC,gfmFootnoteDefinition:wC}}}function kC(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:Zp},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,i,o,s){const a=o.createTracker(s);let l=a.move("[^");const c=o.enter("footnoteDefinition"),u=o.enter("label");return l+=a.move(o.safe(o.associationId(r),{before:l,after:"]"})),u(),l+=a.move("]:"),r.children&&r.children.length>0&&(a.shift(4),l+=a.move((t?`
35
- `:" ")+o.indentLines(o.containerFlow(r,a.current()),t?Xp:CC))),c(),l}}function CC(e,t,n){return t===0?e:Xp(e,t,n)}function Xp(e,t,n){return(n?"":" ")+e}const _C=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];Qp.peek=RC;function TC(){return{canContainEols:["delete"],enter:{strikethrough:AC},exit:{strikethrough:MC}}}function NC(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:_C}],handlers:{delete:Qp}}}function AC(e){this.enter({type:"delete",children:[]},e)}function MC(e){this.exit(e)}function Qp(e,t,n,r){const i=n.createTracker(r),o=n.enter("strikethrough");let s=i.move("~~");return s+=n.containerPhrasing(e,{...i.current(),before:s,after:"~"}),s+=i.move("~~"),o(),s}function RC(){return"~"}function IC(e){return e.length}function OC(e,t){const n=t||{},r=(n.align||[]).concat(),i=n.stringLength||IC,o=[],s=[],a=[],l=[];let c=0,u=-1;for(;++u<e.length;){const g=[],v=[];let y=-1;for(e[u].length>c&&(c=e[u].length);++y<e[u].length;){const E=PC(e[u][y]);if(n.alignDelimiters!==!1){const w=i(E);v[y]=w,(l[y]===void 0||w>l[y])&&(l[y]=w)}g.push(E)}s[u]=g,a[u]=v}let d=-1;if(typeof r=="object"&&"length"in r)for(;++d<c;)o[d]=wd(r[d]);else{const g=wd(r);for(;++d<c;)o[d]=g}d=-1;const f=[],p=[];for(;++d<c;){const g=o[d];let v="",y="";g===99?(v=":",y=":"):g===108?v=":":g===114&&(y=":");let E=n.alignDelimiters===!1?1:Math.max(1,l[d]-v.length-y.length);const w=v+"-".repeat(E)+y;n.alignDelimiters!==!1&&(E=v.length+E+y.length,E>l[d]&&(l[d]=E),p[d]=E),f[d]=w}s.splice(1,0,f),a.splice(1,0,p),u=-1;const m=[];for(;++u<s.length;){const g=s[u],v=a[u];d=-1;const y=[];for(;++d<c;){const E=g[d]||"";let w="",_="";if(n.alignDelimiters!==!1){const C=l[d]-(v[d]||0),T=o[d];T===114?w=" ".repeat(C):T===99?C%2?(w=" ".repeat(C/2+.5),_=" ".repeat(C/2-.5)):(w=" ".repeat(C/2),_=w):_=" ".repeat(C)}n.delimiterStart!==!1&&!d&&y.push("|"),n.padding!==!1&&!(n.alignDelimiters===!1&&E==="")&&(n.delimiterStart!==!1||d)&&y.push(" "),n.alignDelimiters!==!1&&y.push(w),y.push(E),n.alignDelimiters!==!1&&y.push(_),n.padding!==!1&&y.push(" "),(n.delimiterEnd!==!1||d!==c-1)&&y.push("|")}m.push(n.delimiterEnd===!1?y.join("").replace(/ +$/,""):y.join(""))}return m.join(`
36
- `)}function PC(e){return e==null?"":String(e)}function wd(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function DC(e,t,n,r){const i=n.enter("blockquote"),o=n.createTracker(r);o.move("> "),o.shift(2);const s=n.indentLines(n.containerFlow(e,o.current()),LC);return i(),s}function LC(e,t,n){return">"+(n?"":" ")+e}function FC(e,t){return Ed(e,t.inConstruct,!0)&&!Ed(e,t.notInConstruct,!1)}function Ed(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function Sd(e,t,n,r){let i=-1;for(;++i<n.unsafe.length;)if(n.unsafe[i].character===`
37
- `&&FC(n.stack,n.unsafe[i]))return/[ \t]/.test(r.before)?"":" ";return`\\
38
- `}function jC(e,t){const n=String(e);let r=n.indexOf(t),i=r,o=0,s=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;r!==-1;)r===i?++o>s&&(s=o):o=1,i=r+t.length,r=n.indexOf(t,i);return s}function BC(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function $C(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function VC(e,t,n,r){const i=$C(n),o=e.value||"",s=i==="`"?"GraveAccent":"Tilde";if(BC(e,n)){const d=n.enter("codeIndented"),f=n.indentLines(o,zC);return d(),f}const a=n.createTracker(r),l=i.repeat(Math.max(jC(o,i)+1,3)),c=n.enter("codeFenced");let u=a.move(l);if(e.lang){const d=n.enter(`codeFencedLang${s}`);u+=a.move(n.safe(e.lang,{before:u,after:" ",encode:["`"],...a.current()})),d()}if(e.lang&&e.meta){const d=n.enter(`codeFencedMeta${s}`);u+=a.move(" "),u+=a.move(n.safe(e.meta,{before:u,after:`
33
+ `}),n}function dd(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function fd(e,t){const n=mC(e,t),r=n.one(e,void 0),i=sC(n),o=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return i&&o.children.push({type:"text",value:`
34
+ `},i),o}function wC(e,t){return e&&"run"in e?async function(n,r){const i=fd(n,{file:r,...t});await e.run(i,r)}:function(n,r){return fd(n,{file:r,...e||t})}}function hd(e){if(e)throw e}var Ns,pd;function EC(){if(pd)return Ns;pd=1;var e=Object.prototype.hasOwnProperty,t=Object.prototype.toString,n=Object.defineProperty,r=Object.getOwnPropertyDescriptor,i=function(c){return typeof Array.isArray=="function"?Array.isArray(c):t.call(c)==="[object Array]"},o=function(c){if(!c||t.call(c)!=="[object Object]")return!1;var u=e.call(c,"constructor"),d=c.constructor&&c.constructor.prototype&&e.call(c.constructor.prototype,"isPrototypeOf");if(c.constructor&&!u&&!d)return!1;var f;for(f in c);return typeof f>"u"||e.call(c,f)},s=function(c,u){n&&u.name==="__proto__"?n(c,u.name,{enumerable:!0,configurable:!0,value:u.newValue,writable:!0}):c[u.name]=u.newValue},a=function(c,u){if(u==="__proto__")if(e.call(c,u)){if(r)return r(c,u).value}else return;return c[u]};return Ns=function l(){var c,u,d,f,p,m,g=arguments[0],v=1,y=arguments.length,E=!1;for(typeof g=="boolean"&&(E=g,g=arguments[1]||{},v=2),(g==null||typeof g!="object"&&typeof g!="function")&&(g={});v<y;++v)if(c=arguments[v],c!=null)for(u in c)d=a(g,u),f=a(c,u),g!==f&&(E&&f&&(o(f)||(p=i(f)))?(p?(p=!1,m=d&&i(d)?d:[]):m=d&&o(d)?d:{},s(g,{name:u,newValue:l(E,m,f)})):typeof f<"u"&&s(g,{name:u,newValue:f}));return g},Ns}var SC=EC();const As=Lo(SC);function Da(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function kC(){const e=[],t={run:n,use:r};return t;function n(...i){let o=-1;const s=i.pop();if(typeof s!="function")throw new TypeError("Expected function as last argument, not "+s);a(null,...i);function a(l,...c){const u=e[++o];let d=-1;if(l){s(l);return}for(;++d<i.length;)(c[d]===null||c[d]===void 0)&&(c[d]=i[d]);i=c,u?CC(u,a)(...c):s(null,...c)}}function r(i){if(typeof i!="function")throw new TypeError("Expected `middelware` to be a function, not "+i);return e.push(i),t}}function CC(e,t){let n;return r;function r(...s){const a=e.length>s.length;let l;a&&s.push(i);try{l=e.apply(this,s)}catch(c){const u=c;if(a&&n)throw u;return i(u)}a||(l&&l.then&&typeof l.then=="function"?l.then(o,i):l instanceof Error?i(l):o(l))}function i(s,...a){n||(n=!0,t(s,...a))}function o(s){i(null,s)}}const cn={basename:_C,dirname:TC,extname:NC,join:AC,sep:"/"};function _C(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');ki(e);let n=0,r=-1,i=e.length,o;if(t===void 0||t.length===0||t.length>e.length){for(;i--;)if(e.codePointAt(i)===47){if(o){n=i+1;break}}else r<0&&(o=!0,r=i+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let s=-1,a=t.length-1;for(;i--;)if(e.codePointAt(i)===47){if(o){n=i+1;break}}else s<0&&(o=!0,s=i+1),a>-1&&(e.codePointAt(i)===t.codePointAt(a--)?a<0&&(r=i):(a=-1,r=s));return n===r?r=s:r<0&&(r=e.length),e.slice(n,r)}function TC(e){if(ki(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function NC(e){ki(e);let t=e.length,n=-1,r=0,i=-1,o=0,s;for(;t--;){const a=e.codePointAt(t);if(a===47){if(s){r=t+1;break}continue}n<0&&(s=!0,n=t+1),a===46?i<0?i=t:o!==1&&(o=1):i>-1&&(o=-1)}return i<0||n<0||o===0||o===1&&i===n-1&&i===r+1?"":e.slice(i,n)}function AC(...e){let t=-1,n;for(;++t<e.length;)ki(e[t]),e[t]&&(n=n===void 0?e[t]:n+"/"+e[t]);return n===void 0?".":MC(n)}function MC(e){ki(e);const t=e.codePointAt(0)===47;let n=RC(e,!t);return n.length===0&&!t&&(n="."),n.length>0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function RC(e,t){let n="",r=0,i=-1,o=0,s=-1,a,l;for(;++s<=e.length;){if(s<e.length)a=e.codePointAt(s);else{if(a===47)break;a=47}if(a===47){if(!(i===s-1||o===1))if(i!==s-1&&o===2){if(n.length<2||r!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(l=n.lastIndexOf("/"),l!==n.length-1){l<0?(n="",r=0):(n=n.slice(0,l),r=n.length-1-n.lastIndexOf("/")),i=s,o=0;continue}}else if(n.length>0){n="",r=0,i=s,o=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(i+1,s):n=e.slice(i+1,s),r=s-i-1;i=s,o=0}else a===46&&o>-1?o++:o=-1}return n}function ki(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const IC={cwd:OC};function OC(){return"/"}function La(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function PC(e){if(typeof e=="string")e=new URL(e);else if(!La(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return DC(e)}function DC(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n<t.length;)if(t.codePointAt(n)===37&&t.codePointAt(n+1)===50){const r=t.codePointAt(n+2);if(r===70||r===102){const i=new TypeError("File URL path must not include encoded / characters");throw i.code="ERR_INVALID_FILE_URL_PATH",i}}return decodeURIComponent(t)}const Ms=["history","path","basename","stem","extname","dirname"];class qp{constructor(t){let n;t?La(t)?n={path:t}:typeof t=="string"||LC(t)?n={value:t}:n=t:n={},this.cwd="cwd"in n?"":IC.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let r=-1;for(;++r<Ms.length;){const o=Ms[r];o in n&&n[o]!==void 0&&n[o]!==null&&(this[o]=o==="history"?[...n[o]]:n[o])}let i;for(i in n)Ms.includes(i)||(this[i]=n[i])}get basename(){return typeof this.path=="string"?cn.basename(this.path):void 0}set basename(t){Is(t,"basename"),Rs(t,"basename"),this.path=cn.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?cn.dirname(this.path):void 0}set dirname(t){gd(this.basename,"dirname"),this.path=cn.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?cn.extname(this.path):void 0}set extname(t){if(Rs(t,"extname"),gd(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=cn.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){La(t)&&(t=PC(t)),Is(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?cn.basename(this.path,this.extname):void 0}set stem(t){Is(t,"stem"),Rs(t,"stem"),this.path=cn.join(this.dirname||"",t+(this.extname||""))}fail(t,n,r){const i=this.message(t,n,r);throw i.fatal=!0,i}info(t,n,r){const i=this.message(t,n,r);return i.fatal=void 0,i}message(t,n,r){const i=new Nt(t,n,r);return this.path&&(i.name=this.path+":"+i.name,i.file=this.path),i.fatal=!1,this.messages.push(i),i}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Rs(e,t){if(e&&e.includes(cn.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+cn.sep+"`")}function Is(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function gd(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function LC(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const FC=function(e){const r=this.constructor.prototype,i=r[e],o=function(){return i.apply(o,arguments)};return Object.setPrototypeOf(o,r),o},jC={}.hasOwnProperty;class $l extends FC{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=kC()}copy(){const t=new $l;let n=-1;for(;++n<this.attachers.length;){const r=this.attachers[n];t.use(...r)}return t.data(As(!0,{},this.namespace)),t}data(t,n){return typeof t=="string"?arguments.length===2?(Ds("data",this.frozen),this.namespace[t]=n,this):jC.call(this.namespace,t)&&this.namespace[t]||void 0:t?(Ds("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[n,...r]=this.attachers[this.freezeIndex];if(r[0]===!1)continue;r[0]===!0&&(r[0]=void 0);const i=n.call(t,...r);typeof i=="function"&&this.transformers.use(i)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const n=zi(t),r=this.parser||this.Parser;return Os("parse",r),r(String(n),n)}process(t,n){const r=this;return this.freeze(),Os("process",this.parser||this.Parser),Ps("process",this.compiler||this.Compiler),n?i(void 0,n):new Promise(i);function i(o,s){const a=zi(t),l=r.parse(a);r.run(l,a,function(u,d,f){if(u||!d||!f)return c(u);const p=d,m=r.stringify(p,f);VC(m)?f.value=m:f.result=m,c(u,f)});function c(u,d){u||!d?s(u):o?o(d):n(void 0,d)}}}processSync(t){let n=!1,r;return this.freeze(),Os("processSync",this.parser||this.Parser),Ps("processSync",this.compiler||this.Compiler),this.process(t,i),bd("processSync","process",n),r;function i(o,s){n=!0,hd(o),r=s}}run(t,n,r){md(t),this.freeze();const i=this.transformers;return!r&&typeof n=="function"&&(r=n,n=void 0),r?o(void 0,r):new Promise(o);function o(s,a){const l=zi(n);i.run(t,l,c);function c(u,d,f){const p=d||t;u?a(u):s?s(p):r(void 0,p,f)}}}runSync(t,n){let r=!1,i;return this.run(t,n,o),bd("runSync","run",r),i;function o(s,a){hd(s),i=a,r=!0}}stringify(t,n){this.freeze();const r=zi(n),i=this.compiler||this.Compiler;return Ps("stringify",i),md(t),i(t,r)}use(t,...n){const r=this.attachers,i=this.namespace;if(Ds("use",this.frozen),t!=null)if(typeof t=="function")l(t,n);else if(typeof t=="object")Array.isArray(t)?a(t):s(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function o(c){if(typeof c=="function")l(c,[]);else if(typeof c=="object")if(Array.isArray(c)){const[u,...d]=c;l(u,d)}else s(c);else throw new TypeError("Expected usable value, not `"+c+"`")}function s(c){if(!("plugins"in c)&&!("settings"in c))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");a(c.plugins),c.settings&&(i.settings=As(!0,i.settings,c.settings))}function a(c){let u=-1;if(c!=null)if(Array.isArray(c))for(;++u<c.length;){const d=c[u];o(d)}else throw new TypeError("Expected a list of plugins, not `"+c+"`")}function l(c,u){let d=-1,f=-1;for(;++d<r.length;)if(r[d][0]===c){f=d;break}if(f===-1)r.push([c,...u]);else if(u.length>0){let[p,...m]=u;const g=r[f][1];Da(g)&&Da(p)&&(p=As(!0,g,p)),r[f]=[c,p,...m]}}}}const BC=new $l().freeze();function Os(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function Ps(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function Ds(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function md(e){if(!Da(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function bd(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function zi(e){return $C(e)?e:new qp(e)}function $C(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function VC(e){return typeof e=="string"||zC(e)}function zC(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const UC="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",yd=[],xd={allowDangerousHtml:!0},HC=/^(https?|ircs?|mailto|xmpp)$/i,WC=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function GC(e){const t=KC(e),n=qC(e);return YC(t.runSync(t.parse(n),n),e)}function KC(e){const t=e.rehypePlugins||yd,n=e.remarkPlugins||yd,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...xd}:xd;return BC().use(Tk).use(n).use(wC,r).use(t)}function qC(e){const t=e.children||"",n=new qp;return typeof t=="string"&&(n.value=t),n}function YC(e,t){const n=t.allowedElements,r=t.allowElement,i=t.components,o=t.disallowedElements,s=t.skipHtml,a=t.unwrapDisallowed,l=t.urlTransform||ZC;for(const u of WC)Object.hasOwn(t,u.from)&&(""+u.from+(u.to?"use `"+u.to+"` instead":"remove it")+UC+u.id,void 0);return Vo(e,c),uE(e,{Fragment:h.Fragment,components:i,ignoreInvalidStyle:!0,jsx:h.jsx,jsxs:h.jsxs,passKeys:!0,passNode:!0});function c(u,d,f){if(u.type==="raw"&&f&&typeof d=="number")return s?f.children.splice(d,1):f.children[d]={type:"text",value:u.value},d;if(u.type==="element"){let p;for(p in Cs)if(Object.hasOwn(Cs,p)&&Object.hasOwn(u.properties,p)){const m=u.properties[p],g=Cs[p];(g===null||g.includes(u.tagName))&&(u.properties[p]=l(String(m||""),p,u))}}if(u.type==="element"){let p=n?!n.includes(u.tagName):o?o.includes(u.tagName):!1;if(!p&&r&&typeof d=="number"&&(p=!r(u,d,f)),p&&f&&typeof d=="number")return a&&u.children?f.children.splice(d,1,...u.children):f.children.splice(d,1),d}}}function ZC(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),i=e.indexOf("/");return t===-1||i!==-1&&t>i||n!==-1&&t>n||r!==-1&&t>r||HC.test(e.slice(0,t))?e:""}function vd(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,i=n.indexOf(t);for(;i!==-1;)r++,i=n.indexOf(t,i+t.length);return r}function XC(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function QC(e,t,n){const i=Si((n||{}).ignore||[]),o=JC(t);let s=-1;for(;++s<o.length;)Kp(e,"text",a);function a(c,u){let d=-1,f;for(;++d<u.length;){const p=u[d],m=f?f.children:void 0;if(i(p,m?m.indexOf(p):void 0,f))return;f=p}if(f)return l(c,u)}function l(c,u){const d=u[u.length-1],f=o[s][0],p=o[s][1];let m=0;const v=d.children.indexOf(c);let y=!1,E=[];f.lastIndex=0;let w=f.exec(c.value);for(;w;){const _=w.index,C={index:w.index,input:w.input,stack:[...u,c]};let T=p(...w,C);if(typeof T=="string"&&(T=T.length>0?{type:"text",value:T}:void 0),T===!1?f.lastIndex=_+1:(m!==_&&E.push({type:"text",value:c.value.slice(m,_)}),Array.isArray(T)?E.push(...T):T&&E.push(T),m=_+w[0].length,y=!0),!f.global)break;w=f.exec(c.value)}return y?(m<c.value.length&&E.push({type:"text",value:c.value.slice(m)}),d.children.splice(v,1,...E)):E=[c],v+E.length}}function JC(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const n=!e[0]||Array.isArray(e[0])?e:[e];let r=-1;for(;++r<n.length;){const i=n[r];t.push([e1(i[0]),t1(i[1])])}return t}function e1(e){return typeof e=="string"?new RegExp(XC(e),"g"):e}function t1(e){return typeof e=="function"?e:function(){return e}}const Ls="phrasing",Fs=["autolink","link","image","label"];function n1(){return{transforms:[c1],enter:{literalAutolink:i1,literalAutolinkEmail:js,literalAutolinkHttp:js,literalAutolinkWww:js},exit:{literalAutolink:l1,literalAutolinkEmail:a1,literalAutolinkHttp:o1,literalAutolinkWww:s1}}}function r1(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:Ls,notInConstruct:Fs},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:Ls,notInConstruct:Fs},{character:":",before:"[ps]",after:"\\/",inConstruct:Ls,notInConstruct:Fs}]}}function i1(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function js(e){this.config.enter.autolinkProtocol.call(this,e)}function o1(e){this.config.exit.autolinkProtocol.call(this,e)}function s1(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function a1(e){this.config.exit.autolinkEmail.call(this,e)}function l1(e){this.exit(e)}function c1(e){QC(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,u1],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),d1]],{ignore:["link","linkReference"]})}function u1(e,t,n,r,i){let o="";if(!Yp(i)||(/^w/i.test(t)&&(n=t+n,t="",o="http://"),!f1(n)))return!1;const s=h1(n+r);if(!s[0])return!1;const a={type:"link",title:null,url:o+t+s[0],children:[{type:"text",value:t+s[0]}]};return s[1]?[a,{type:"text",value:s[1]}]:a}function d1(e,t,n,r){return!Yp(r,!0)||/[-\d_]$/.test(n)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function f1(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function h1(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const i=vd(e,"(");let o=vd(e,")");for(;r!==-1&&i>o;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),o++;return[e,n]}function Yp(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Qn(n)||Fo(n))&&(!t||n!==47)}Zp.peek=E1;function p1(){this.buffer()}function g1(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function m1(){this.buffer()}function b1(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function y1(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=nn(this.sliceSerialize(e)).toLowerCase(),n.label=t}function x1(e){this.exit(e)}function v1(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=nn(this.sliceSerialize(e)).toLowerCase(),n.label=t}function w1(e){this.exit(e)}function E1(){return"["}function Zp(e,t,n,r){const i=n.createTracker(r);let o=i.move("[^");const s=n.enter("footnoteReference"),a=n.enter("reference");return o+=i.move(n.safe(n.associationId(e),{after:"]",before:o})),a(),s(),o+=i.move("]"),o}function S1(){return{enter:{gfmFootnoteCallString:p1,gfmFootnoteCall:g1,gfmFootnoteDefinitionLabelString:m1,gfmFootnoteDefinition:b1},exit:{gfmFootnoteCallString:y1,gfmFootnoteCall:x1,gfmFootnoteDefinitionLabelString:v1,gfmFootnoteDefinition:w1}}}function k1(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:Zp},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,i,o,s){const a=o.createTracker(s);let l=a.move("[^");const c=o.enter("footnoteDefinition"),u=o.enter("label");return l+=a.move(o.safe(o.associationId(r),{before:l,after:"]"})),u(),l+=a.move("]:"),r.children&&r.children.length>0&&(a.shift(4),l+=a.move((t?`
35
+ `:" ")+o.indentLines(o.containerFlow(r,a.current()),t?Xp:C1))),c(),l}}function C1(e,t,n){return t===0?e:Xp(e,t,n)}function Xp(e,t,n){return(n?"":" ")+e}const _1=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];Qp.peek=R1;function T1(){return{canContainEols:["delete"],enter:{strikethrough:A1},exit:{strikethrough:M1}}}function N1(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:_1}],handlers:{delete:Qp}}}function A1(e){this.enter({type:"delete",children:[]},e)}function M1(e){this.exit(e)}function Qp(e,t,n,r){const i=n.createTracker(r),o=n.enter("strikethrough");let s=i.move("~~");return s+=n.containerPhrasing(e,{...i.current(),before:s,after:"~"}),s+=i.move("~~"),o(),s}function R1(){return"~"}function I1(e){return e.length}function O1(e,t){const n=t||{},r=(n.align||[]).concat(),i=n.stringLength||I1,o=[],s=[],a=[],l=[];let c=0,u=-1;for(;++u<e.length;){const g=[],v=[];let y=-1;for(e[u].length>c&&(c=e[u].length);++y<e[u].length;){const E=P1(e[u][y]);if(n.alignDelimiters!==!1){const w=i(E);v[y]=w,(l[y]===void 0||w>l[y])&&(l[y]=w)}g.push(E)}s[u]=g,a[u]=v}let d=-1;if(typeof r=="object"&&"length"in r)for(;++d<c;)o[d]=wd(r[d]);else{const g=wd(r);for(;++d<c;)o[d]=g}d=-1;const f=[],p=[];for(;++d<c;){const g=o[d];let v="",y="";g===99?(v=":",y=":"):g===108?v=":":g===114&&(y=":");let E=n.alignDelimiters===!1?1:Math.max(1,l[d]-v.length-y.length);const w=v+"-".repeat(E)+y;n.alignDelimiters!==!1&&(E=v.length+E+y.length,E>l[d]&&(l[d]=E),p[d]=E),f[d]=w}s.splice(1,0,f),a.splice(1,0,p),u=-1;const m=[];for(;++u<s.length;){const g=s[u],v=a[u];d=-1;const y=[];for(;++d<c;){const E=g[d]||"";let w="",_="";if(n.alignDelimiters!==!1){const C=l[d]-(v[d]||0),T=o[d];T===114?w=" ".repeat(C):T===99?C%2?(w=" ".repeat(C/2+.5),_=" ".repeat(C/2-.5)):(w=" ".repeat(C/2),_=w):_=" ".repeat(C)}n.delimiterStart!==!1&&!d&&y.push("|"),n.padding!==!1&&!(n.alignDelimiters===!1&&E==="")&&(n.delimiterStart!==!1||d)&&y.push(" "),n.alignDelimiters!==!1&&y.push(w),y.push(E),n.alignDelimiters!==!1&&y.push(_),n.padding!==!1&&y.push(" "),(n.delimiterEnd!==!1||d!==c-1)&&y.push("|")}m.push(n.delimiterEnd===!1?y.join("").replace(/ +$/,""):y.join(""))}return m.join(`
36
+ `)}function P1(e){return e==null?"":String(e)}function wd(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function D1(e,t,n,r){const i=n.enter("blockquote"),o=n.createTracker(r);o.move("> "),o.shift(2);const s=n.indentLines(n.containerFlow(e,o.current()),L1);return i(),s}function L1(e,t,n){return">"+(n?"":" ")+e}function F1(e,t){return Ed(e,t.inConstruct,!0)&&!Ed(e,t.notInConstruct,!1)}function Ed(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function Sd(e,t,n,r){let i=-1;for(;++i<n.unsafe.length;)if(n.unsafe[i].character===`
37
+ `&&F1(n.stack,n.unsafe[i]))return/[ \t]/.test(r.before)?"":" ";return`\\
38
+ `}function j1(e,t){const n=String(e);let r=n.indexOf(t),i=r,o=0,s=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;r!==-1;)r===i?++o>s&&(s=o):o=1,i=r+t.length,r=n.indexOf(t,i);return s}function B1(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function $1(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function V1(e,t,n,r){const i=$1(n),o=e.value||"",s=i==="`"?"GraveAccent":"Tilde";if(B1(e,n)){const d=n.enter("codeIndented"),f=n.indentLines(o,z1);return d(),f}const a=n.createTracker(r),l=i.repeat(Math.max(j1(o,i)+1,3)),c=n.enter("codeFenced");let u=a.move(l);if(e.lang){const d=n.enter(`codeFencedLang${s}`);u+=a.move(n.safe(e.lang,{before:u,after:" ",encode:["`"],...a.current()})),d()}if(e.lang&&e.meta){const d=n.enter(`codeFencedMeta${s}`);u+=a.move(" "),u+=a.move(n.safe(e.meta,{before:u,after:`
39
39
  `,encode:["`"],...a.current()})),d()}return u+=a.move(`
40
40
  `),o&&(u+=a.move(o+`
41
- `)),u+=a.move(l),c(),u}function zC(e,t,n){return(n?"":" ")+e}function Vl(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function UC(e,t,n,r){const i=Vl(n),o=i==='"'?"Quote":"Apostrophe",s=n.enter("definition");let a=n.enter("label");const l=n.createTracker(r);let c=l.move("[");return c+=l.move(n.safe(n.associationId(e),{before:c,after:"]",...l.current()})),c+=l.move("]: "),a(),!e.url||/[\0- \u007F]/.test(e.url)?(a=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(a=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":`
42
- `,...l.current()}))),a(),e.title&&(a=n.enter(`title${o}`),c+=l.move(" "+i),c+=l.move(n.safe(e.title,{before:c,after:i,...l.current()})),c+=l.move(i),a()),s(),c}function HC(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function gi(e){return"&#x"+e.toString(16).toUpperCase()+";"}function Eo(e,t,n){const r=Ar(e),i=Ar(t);return r===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}Jp.peek=WC;function Jp(e,t,n,r){const i=HC(n),o=n.enter("emphasis"),s=n.createTracker(r),a=s.move(i);let l=s.move(n.containerPhrasing(e,{after:i,before:a,...s.current()}));const c=l.charCodeAt(0),u=Eo(r.before.charCodeAt(r.before.length-1),c,i);u.inside&&(l=gi(c)+l.slice(1));const d=l.charCodeAt(l.length-1),f=Eo(r.after.charCodeAt(0),d,i);f.inside&&(l=l.slice(0,-1)+gi(d));const p=s.move(i);return o(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},a+l+p}function WC(e,t,n){return n.options.emphasis||"*"}function GC(e,t){let n=!1;return Vo(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Oa}),!!((!e.depth||e.depth<3)&&Ol(e)&&(t.options.setext||n))}function KC(e,t,n,r){const i=Math.max(Math.min(6,e.depth||1),1),o=n.createTracker(r);if(GC(e,n)){const u=n.enter("headingSetext"),d=n.enter("phrasing"),f=n.containerPhrasing(e,{...o.current(),before:`
41
+ `)),u+=a.move(l),c(),u}function z1(e,t,n){return(n?"":" ")+e}function Vl(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function U1(e,t,n,r){const i=Vl(n),o=i==='"'?"Quote":"Apostrophe",s=n.enter("definition");let a=n.enter("label");const l=n.createTracker(r);let c=l.move("[");return c+=l.move(n.safe(n.associationId(e),{before:c,after:"]",...l.current()})),c+=l.move("]: "),a(),!e.url||/[\0- \u007F]/.test(e.url)?(a=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(a=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":`
42
+ `,...l.current()}))),a(),e.title&&(a=n.enter(`title${o}`),c+=l.move(" "+i),c+=l.move(n.safe(e.title,{before:c,after:i,...l.current()})),c+=l.move(i),a()),s(),c}function H1(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function gi(e){return"&#x"+e.toString(16).toUpperCase()+";"}function Eo(e,t,n){const r=Ar(e),i=Ar(t);return r===void 0?i===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:i===void 0?{inside:!1,outside:!1}:i===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}Jp.peek=W1;function Jp(e,t,n,r){const i=H1(n),o=n.enter("emphasis"),s=n.createTracker(r),a=s.move(i);let l=s.move(n.containerPhrasing(e,{after:i,before:a,...s.current()}));const c=l.charCodeAt(0),u=Eo(r.before.charCodeAt(r.before.length-1),c,i);u.inside&&(l=gi(c)+l.slice(1));const d=l.charCodeAt(l.length-1),f=Eo(r.after.charCodeAt(0),d,i);f.inside&&(l=l.slice(0,-1)+gi(d));const p=s.move(i);return o(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},a+l+p}function W1(e,t,n){return n.options.emphasis||"*"}function G1(e,t){let n=!1;return Vo(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Oa}),!!((!e.depth||e.depth<3)&&Ol(e)&&(t.options.setext||n))}function K1(e,t,n,r){const i=Math.max(Math.min(6,e.depth||1),1),o=n.createTracker(r);if(G1(e,n)){const u=n.enter("headingSetext"),d=n.enter("phrasing"),f=n.containerPhrasing(e,{...o.current(),before:`
43
43
  `,after:`
44
44
  `});return d(),u(),f+`
45
45
  `+(i===1?"=":"-").repeat(f.length-(Math.max(f.lastIndexOf("\r"),f.lastIndexOf(`
46
46
  `))+1))}const s="#".repeat(i),a=n.enter("headingAtx"),l=n.enter("phrasing");o.move(s+" ");let c=n.containerPhrasing(e,{before:"# ",after:`
47
- `,...o.current()});return/^[\t ]/.test(c)&&(c=gi(c.charCodeAt(0))+c.slice(1)),c=c?s+" "+c:s,n.options.closeAtx&&(c+=" "+s),l(),a(),c}eg.peek=qC;function eg(e){return e.value||""}function qC(){return"<"}tg.peek=YC;function tg(e,t,n,r){const i=Vl(n),o=i==='"'?"Quote":"Apostrophe",s=n.enter("image");let a=n.enter("label");const l=n.createTracker(r);let c=l.move("![");return c+=l.move(n.safe(e.alt,{before:c,after:"]",...l.current()})),c+=l.move("]("),a(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(a=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(a=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":")",...l.current()}))),a(),e.title&&(a=n.enter(`title${o}`),c+=l.move(" "+i),c+=l.move(n.safe(e.title,{before:c,after:i,...l.current()})),c+=l.move(i),a()),c+=l.move(")"),s(),c}function YC(){return"!"}ng.peek=ZC;function ng(e,t,n,r){const i=e.referenceType,o=n.enter("imageReference");let s=n.enter("label");const a=n.createTracker(r);let l=a.move("![");const c=n.safe(e.alt,{before:l,after:"]",...a.current()});l+=a.move(c+"]["),s();const u=n.stack;n.stack=[],s=n.enter("reference");const d=n.safe(n.associationId(e),{before:l,after:"]",...a.current()});return s(),n.stack=u,o(),i==="full"||!c||c!==d?l+=a.move(d+"]"):i==="shortcut"?l=l.slice(0,-1):l+=a.move("]"),l}function ZC(){return"!"}rg.peek=XC;function rg(e,t,n){let r=e.value||"",i="`",o=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++o<n.unsafe.length;){const s=n.unsafe[o],a=n.compilePattern(s);let l;if(s.atBreak)for(;l=a.exec(r);){let c=l.index;r.charCodeAt(c)===10&&r.charCodeAt(c-1)===13&&c--,r=r.slice(0,c)+" "+r.slice(l.index+1)}}return i+r+i}function XC(){return"`"}function ig(e,t){const n=Ol(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}og.peek=QC;function og(e,t,n,r){const i=Vl(n),o=i==='"'?"Quote":"Apostrophe",s=n.createTracker(r);let a,l;if(ig(e,n)){const u=n.stack;n.stack=[],a=n.enter("autolink");let d=s.move("<");return d+=s.move(n.containerPhrasing(e,{before:d,after:">",...s.current()})),d+=s.move(">"),a(),n.stack=u,d}a=n.enter("link"),l=n.enter("label");let c=s.move("[");return c+=s.move(n.containerPhrasing(e,{before:c,after:"](",...s.current()})),c+=s.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),c+=s.move("<"),c+=s.move(n.safe(e.url,{before:c,after:">",...s.current()})),c+=s.move(">")):(l=n.enter("destinationRaw"),c+=s.move(n.safe(e.url,{before:c,after:e.title?" ":")",...s.current()}))),l(),e.title&&(l=n.enter(`title${o}`),c+=s.move(" "+i),c+=s.move(n.safe(e.title,{before:c,after:i,...s.current()})),c+=s.move(i),l()),c+=s.move(")"),a(),c}function QC(e,t,n){return ig(e,n)?"<":"["}sg.peek=JC;function sg(e,t,n,r){const i=e.referenceType,o=n.enter("linkReference");let s=n.enter("label");const a=n.createTracker(r);let l=a.move("[");const c=n.containerPhrasing(e,{before:l,after:"]",...a.current()});l+=a.move(c+"]["),s();const u=n.stack;n.stack=[],s=n.enter("reference");const d=n.safe(n.associationId(e),{before:l,after:"]",...a.current()});return s(),n.stack=u,o(),i==="full"||!c||c!==d?l+=a.move(d+"]"):i==="shortcut"?l=l.slice(0,-1):l+=a.move("]"),l}function JC(){return"["}function zl(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function e_(e){const t=zl(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function t_(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function ag(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function n_(e,t,n,r){const i=n.enter("list"),o=n.bulletCurrent;let s=e.ordered?t_(n):zl(n);const a=e.ordered?s==="."?")":".":e_(n);let l=t&&n.bulletLastUsed?s===n.bulletLastUsed:!1;if(!e.ordered){const u=e.children?e.children[0]:void 0;if((s==="*"||s==="-")&&u&&(!u.children||!u.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(l=!0),ag(n)===s&&u){let d=-1;for(;++d<e.children.length;){const f=e.children[d];if(f&&f.type==="listItem"&&f.children&&f.children[0]&&f.children[0].type==="thematicBreak"){l=!0;break}}}}l&&(s=a),n.bulletCurrent=s;const c=n.containerFlow(e,r);return n.bulletLastUsed=s,n.bulletCurrent=o,i(),c}function r_(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function i_(e,t,n,r){const i=r_(n);let o=n.bulletCurrent||zl(n);t&&t.type==="list"&&t.ordered&&(o=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+o);let s=o.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(s=Math.ceil(s/4)*4);const a=n.createTracker(r);a.move(o+" ".repeat(s-o.length)),a.shift(s);const l=n.enter("listItem"),c=n.indentLines(n.containerFlow(e,a.current()),u);return l(),c;function u(d,f,p){return f?(p?"":" ".repeat(s))+d:(p?o:o+" ".repeat(s-o.length))+d}}function o_(e,t,n,r){const i=n.enter("paragraph"),o=n.enter("phrasing"),s=n.containerPhrasing(e,r);return o(),i(),s}const s_=Si(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function a_(e,t,n,r){return(e.children.some(function(s){return s_(s)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function l_(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}lg.peek=c_;function lg(e,t,n,r){const i=l_(n),o=n.enter("strong"),s=n.createTracker(r),a=s.move(i+i);let l=s.move(n.containerPhrasing(e,{after:i,before:a,...s.current()}));const c=l.charCodeAt(0),u=Eo(r.before.charCodeAt(r.before.length-1),c,i);u.inside&&(l=gi(c)+l.slice(1));const d=l.charCodeAt(l.length-1),f=Eo(r.after.charCodeAt(0),d,i);f.inside&&(l=l.slice(0,-1)+gi(d));const p=s.move(i+i);return o(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},a+l+p}function c_(e,t,n){return n.options.strong||"*"}function u_(e,t,n,r){return n.safe(e.value,r)}function d_(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function f_(e,t,n){const r=(ag(n)+(n.options.ruleSpaces?" ":"")).repeat(d_(n));return n.options.ruleSpaces?r.slice(0,-1):r}const cg={blockquote:DC,break:Sd,code:VC,definition:UC,emphasis:Jp,hardBreak:Sd,heading:KC,html:eg,image:tg,imageReference:ng,inlineCode:rg,link:og,linkReference:sg,list:n_,listItem:i_,paragraph:o_,root:a_,strong:lg,text:u_,thematicBreak:f_};function h_(){return{enter:{table:p_,tableData:kd,tableHeader:kd,tableRow:m_},exit:{codeText:b_,table:g_,tableData:Bs,tableHeader:Bs,tableRow:Bs}}}function p_(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function g_(e){this.exit(e),this.data.inTable=void 0}function m_(e){this.enter({type:"tableRow",children:[]},e)}function Bs(e){this.exit(e)}function kd(e){this.enter({type:"tableCell",children:[]},e)}function b_(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,y_));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function y_(e,t){return t==="|"?t:e}function x_(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,o=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
47
+ `,...o.current()});return/^[\t ]/.test(c)&&(c=gi(c.charCodeAt(0))+c.slice(1)),c=c?s+" "+c:s,n.options.closeAtx&&(c+=" "+s),l(),a(),c}eg.peek=q1;function eg(e){return e.value||""}function q1(){return"<"}tg.peek=Y1;function tg(e,t,n,r){const i=Vl(n),o=i==='"'?"Quote":"Apostrophe",s=n.enter("image");let a=n.enter("label");const l=n.createTracker(r);let c=l.move("![");return c+=l.move(n.safe(e.alt,{before:c,after:"]",...l.current()})),c+=l.move("]("),a(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(a=n.enter("destinationLiteral"),c+=l.move("<"),c+=l.move(n.safe(e.url,{before:c,after:">",...l.current()})),c+=l.move(">")):(a=n.enter("destinationRaw"),c+=l.move(n.safe(e.url,{before:c,after:e.title?" ":")",...l.current()}))),a(),e.title&&(a=n.enter(`title${o}`),c+=l.move(" "+i),c+=l.move(n.safe(e.title,{before:c,after:i,...l.current()})),c+=l.move(i),a()),c+=l.move(")"),s(),c}function Y1(){return"!"}ng.peek=Z1;function ng(e,t,n,r){const i=e.referenceType,o=n.enter("imageReference");let s=n.enter("label");const a=n.createTracker(r);let l=a.move("![");const c=n.safe(e.alt,{before:l,after:"]",...a.current()});l+=a.move(c+"]["),s();const u=n.stack;n.stack=[],s=n.enter("reference");const d=n.safe(n.associationId(e),{before:l,after:"]",...a.current()});return s(),n.stack=u,o(),i==="full"||!c||c!==d?l+=a.move(d+"]"):i==="shortcut"?l=l.slice(0,-1):l+=a.move("]"),l}function Z1(){return"!"}rg.peek=X1;function rg(e,t,n){let r=e.value||"",i="`",o=-1;for(;new RegExp("(^|[^`])"+i+"([^`]|$)").test(r);)i+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++o<n.unsafe.length;){const s=n.unsafe[o],a=n.compilePattern(s);let l;if(s.atBreak)for(;l=a.exec(r);){let c=l.index;r.charCodeAt(c)===10&&r.charCodeAt(c-1)===13&&c--,r=r.slice(0,c)+" "+r.slice(l.index+1)}}return i+r+i}function X1(){return"`"}function ig(e,t){const n=Ol(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}og.peek=Q1;function og(e,t,n,r){const i=Vl(n),o=i==='"'?"Quote":"Apostrophe",s=n.createTracker(r);let a,l;if(ig(e,n)){const u=n.stack;n.stack=[],a=n.enter("autolink");let d=s.move("<");return d+=s.move(n.containerPhrasing(e,{before:d,after:">",...s.current()})),d+=s.move(">"),a(),n.stack=u,d}a=n.enter("link"),l=n.enter("label");let c=s.move("[");return c+=s.move(n.containerPhrasing(e,{before:c,after:"](",...s.current()})),c+=s.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),c+=s.move("<"),c+=s.move(n.safe(e.url,{before:c,after:">",...s.current()})),c+=s.move(">")):(l=n.enter("destinationRaw"),c+=s.move(n.safe(e.url,{before:c,after:e.title?" ":")",...s.current()}))),l(),e.title&&(l=n.enter(`title${o}`),c+=s.move(" "+i),c+=s.move(n.safe(e.title,{before:c,after:i,...s.current()})),c+=s.move(i),l()),c+=s.move(")"),a(),c}function Q1(e,t,n){return ig(e,n)?"<":"["}sg.peek=J1;function sg(e,t,n,r){const i=e.referenceType,o=n.enter("linkReference");let s=n.enter("label");const a=n.createTracker(r);let l=a.move("[");const c=n.containerPhrasing(e,{before:l,after:"]",...a.current()});l+=a.move(c+"]["),s();const u=n.stack;n.stack=[],s=n.enter("reference");const d=n.safe(n.associationId(e),{before:l,after:"]",...a.current()});return s(),n.stack=u,o(),i==="full"||!c||c!==d?l+=a.move(d+"]"):i==="shortcut"?l=l.slice(0,-1):l+=a.move("]"),l}function J1(){return"["}function zl(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function e_(e){const t=zl(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function t_(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function ag(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function n_(e,t,n,r){const i=n.enter("list"),o=n.bulletCurrent;let s=e.ordered?t_(n):zl(n);const a=e.ordered?s==="."?")":".":e_(n);let l=t&&n.bulletLastUsed?s===n.bulletLastUsed:!1;if(!e.ordered){const u=e.children?e.children[0]:void 0;if((s==="*"||s==="-")&&u&&(!u.children||!u.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(l=!0),ag(n)===s&&u){let d=-1;for(;++d<e.children.length;){const f=e.children[d];if(f&&f.type==="listItem"&&f.children&&f.children[0]&&f.children[0].type==="thematicBreak"){l=!0;break}}}}l&&(s=a),n.bulletCurrent=s;const c=n.containerFlow(e,r);return n.bulletLastUsed=s,n.bulletCurrent=o,i(),c}function r_(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function i_(e,t,n,r){const i=r_(n);let o=n.bulletCurrent||zl(n);t&&t.type==="list"&&t.ordered&&(o=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+o);let s=o.length+1;(i==="tab"||i==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(s=Math.ceil(s/4)*4);const a=n.createTracker(r);a.move(o+" ".repeat(s-o.length)),a.shift(s);const l=n.enter("listItem"),c=n.indentLines(n.containerFlow(e,a.current()),u);return l(),c;function u(d,f,p){return f?(p?"":" ".repeat(s))+d:(p?o:o+" ".repeat(s-o.length))+d}}function o_(e,t,n,r){const i=n.enter("paragraph"),o=n.enter("phrasing"),s=n.containerPhrasing(e,r);return o(),i(),s}const s_=Si(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function a_(e,t,n,r){return(e.children.some(function(s){return s_(s)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function l_(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}lg.peek=c_;function lg(e,t,n,r){const i=l_(n),o=n.enter("strong"),s=n.createTracker(r),a=s.move(i+i);let l=s.move(n.containerPhrasing(e,{after:i,before:a,...s.current()}));const c=l.charCodeAt(0),u=Eo(r.before.charCodeAt(r.before.length-1),c,i);u.inside&&(l=gi(c)+l.slice(1));const d=l.charCodeAt(l.length-1),f=Eo(r.after.charCodeAt(0),d,i);f.inside&&(l=l.slice(0,-1)+gi(d));const p=s.move(i+i);return o(),n.attentionEncodeSurroundingInfo={after:f.outside,before:u.outside},a+l+p}function c_(e,t,n){return n.options.strong||"*"}function u_(e,t,n,r){return n.safe(e.value,r)}function d_(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function f_(e,t,n){const r=(ag(n)+(n.options.ruleSpaces?" ":"")).repeat(d_(n));return n.options.ruleSpaces?r.slice(0,-1):r}const cg={blockquote:D1,break:Sd,code:V1,definition:U1,emphasis:Jp,hardBreak:Sd,heading:K1,html:eg,image:tg,imageReference:ng,inlineCode:rg,link:og,linkReference:sg,list:n_,listItem:i_,paragraph:o_,root:a_,strong:lg,text:u_,thematicBreak:f_};function h_(){return{enter:{table:p_,tableData:kd,tableHeader:kd,tableRow:m_},exit:{codeText:b_,table:g_,tableData:Bs,tableHeader:Bs,tableRow:Bs}}}function p_(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function g_(e){this.exit(e),this.data.inTable=void 0}function m_(e){this.enter({type:"tableRow",children:[]},e)}function Bs(e){this.exit(e)}function kd(e){this.enter({type:"tableCell",children:[]},e)}function b_(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,y_));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function y_(e,t){return t==="|"?t:e}function x_(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,i=t.stringLength,o=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
48
48
  `,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:f,table:s,tableCell:l,tableRow:a}};function s(p,m,g,v){return c(u(p,g,v),p.align)}function a(p,m,g,v){const y=d(p,g,v),E=c([y]);return E.slice(0,E.indexOf(`
49
- `))}function l(p,m,g,v){const y=g.enter("tableCell"),E=g.enter("phrasing"),w=g.containerPhrasing(p,{...v,before:o,after:o});return E(),y(),w}function c(p,m){return OC(p,{align:m,alignDelimiters:r,padding:n,stringLength:i})}function u(p,m,g){const v=p.children;let y=-1;const E=[],w=m.enter("table");for(;++y<v.length;)E[y]=d(v[y],m,g);return w(),E}function d(p,m,g){const v=p.children;let y=-1;const E=[],w=m.enter("tableRow");for(;++y<v.length;)E[y]=l(v[y],p,m,g);return w(),E}function f(p,m,g){let v=cg.inlineCode(p,m,g);return g.stack.includes("tableCell")&&(v=v.replace(/\|/g,"\\$&")),v}}function v_(){return{exit:{taskListCheckValueChecked:Cd,taskListCheckValueUnchecked:Cd,paragraph:E_}}}function w_(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:S_}}}function Cd(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function E_(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const i=t.children;let o=-1,s;for(;++o<i.length;){const a=i[o];if(a.type==="paragraph"){s=a;break}}s===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function S_(e,t,n,r){const i=e.children[0],o=typeof e.checked=="boolean"&&i&&i.type==="paragraph",s="["+(e.checked?"x":" ")+"] ",a=n.createTracker(r);o&&a.move(s);let l=cg.listItem(e,t,n,{...r,...a.current()});return o&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,c)),l;function c(u){return u+s}}function k_(){return[nC(),SC(),TC(),h_(),v_()]}function C_(e){return{extensions:[rC(),kC(e),NC(),x_(e),w_()]}}const __={tokenize:I_,partial:!0},ug={tokenize:O_,partial:!0},dg={tokenize:P_,partial:!0},fg={tokenize:D_,partial:!0},T_={tokenize:L_,partial:!0},hg={name:"wwwAutolink",tokenize:M_,previous:gg},pg={name:"protocolAutolink",tokenize:R_,previous:mg},kn={name:"emailAutolink",tokenize:A_,previous:bg},fn={};function N_(){return{text:fn}}let Un=48;for(;Un<123;)fn[Un]=kn,Un++,Un===58?Un=65:Un===91&&(Un=97);fn[43]=kn;fn[45]=kn;fn[46]=kn;fn[95]=kn;fn[72]=[kn,pg];fn[104]=[kn,pg];fn[87]=[kn,hg];fn[119]=[kn,hg];function A_(e,t,n){const r=this;let i,o;return s;function s(d){return!Fa(d)||!bg.call(r,r.previous)||Ul(r.events)?n(d):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),a(d))}function a(d){return Fa(d)?(e.consume(d),a):d===64?(e.consume(d),l):n(d)}function l(d){return d===46?e.check(T_,u,c)(d):d===45||d===95||Tt(d)?(o=!0,e.consume(d),l):u(d)}function c(d){return e.consume(d),i=!0,l}function u(d){return o&&i&&It(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(d)):n(d)}}function M_(e,t,n){const r=this;return i;function i(s){return s!==87&&s!==119||!gg.call(r,r.previous)||Ul(r.events)?n(s):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(__,e.attempt(ug,e.attempt(dg,o),n),n)(s))}function o(s){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(s)}}function R_(e,t,n){const r=this;let i="",o=!1;return s;function s(d){return(d===72||d===104)&&mg.call(r,r.previous)&&!Ul(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),i+=String.fromCodePoint(d),e.consume(d),a):n(d)}function a(d){if(It(d)&&i.length<5)return i+=String.fromCodePoint(d),e.consume(d),a;if(d===58){const f=i.toLowerCase();if(f==="http"||f==="https")return e.consume(d),l}return n(d)}function l(d){return d===47?(e.consume(d),o?c:(o=!0,l)):n(d)}function c(d){return d===null||xo(d)||Xe(d)||Qn(d)||Fo(d)?n(d):e.attempt(ug,e.attempt(dg,u),n)(d)}function u(d){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(d)}}function I_(e,t,n){let r=0;return i;function i(s){return(s===87||s===119)&&r<3?(r++,e.consume(s),i):s===46&&r===3?(e.consume(s),o):n(s)}function o(s){return s===null?n(s):t(s)}}function O_(e,t,n){let r,i,o;return s;function s(c){return c===46||c===95?e.check(fg,l,a)(c):c===null||Xe(c)||Qn(c)||c!==45&&Fo(c)?l(c):(o=!0,e.consume(c),s)}function a(c){return c===95?r=!0:(i=r,r=void 0),e.consume(c),s}function l(c){return i||r||!o?n(c):t(c)}}function P_(e,t){let n=0,r=0;return i;function i(s){return s===40?(n++,e.consume(s),i):s===41&&r<n?o(s):s===33||s===34||s===38||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===60||s===63||s===93||s===95||s===126?e.check(fg,t,o)(s):s===null||Xe(s)||Qn(s)?t(s):(e.consume(s),i)}function o(s){return s===41&&r++,e.consume(s),i}}function D_(e,t,n){return r;function r(a){return a===33||a===34||a===39||a===41||a===42||a===44||a===46||a===58||a===59||a===63||a===95||a===126?(e.consume(a),r):a===38?(e.consume(a),o):a===93?(e.consume(a),i):a===60||a===null||Xe(a)||Qn(a)?t(a):n(a)}function i(a){return a===null||a===40||a===91||Xe(a)||Qn(a)?t(a):r(a)}function o(a){return It(a)?s(a):n(a)}function s(a){return a===59?(e.consume(a),r):It(a)?(e.consume(a),s):n(a)}}function L_(e,t,n){return r;function r(o){return e.consume(o),i}function i(o){return Tt(o)?n(o):t(o)}}function gg(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Xe(e)}function mg(e){return!It(e)}function bg(e){return!(e===47||Fa(e))}function Fa(e){return e===43||e===45||e===46||e===95||Tt(e)}function Ul(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const F_={tokenize:W_,partial:!0};function j_(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:z_,continuation:{tokenize:U_},exit:H_}},text:{91:{name:"gfmFootnoteCall",tokenize:V_},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:B_,resolveTo:$_}}}}function B_(e,t,n){const r=this;let i=r.events.length;const o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s;for(;i--;){const l=r.events[i][1];if(l.type==="labelImage"){s=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return a;function a(l){if(!s||!s._balanced)return n(l);const c=nn(r.sliceSerialize({start:s.end,end:r.now()}));return c.codePointAt(0)!==94||!o.includes(c.slice(1))?n(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function $_(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const o={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},o.start),end:Object.assign({},o.end)},a=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",o,t],["enter",s,t],["exit",s,t],["exit",o,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...a),e}function V_(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o=0,s;return a;function a(d){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),l}function l(d){return d!==94?n(d):(e.enter("gfmFootnoteCallMarker"),e.consume(d),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",c)}function c(d){if(o>999||d===93&&!s||d===null||d===91||Xe(d))return n(d);if(d===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return i.includes(nn(r.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(d)}return Xe(d)||(s=!0),o++,e.consume(d),d===92?u:c}function u(d){return d===91||d===92||d===93?(e.consume(d),o++,c):c(d)}}function z_(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o,s=0,a;return l;function l(m){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),c}function c(m){return m===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(m)}function u(m){if(s>999||m===93&&!a||m===null||m===91||Xe(m))return n(m);if(m===93){e.exit("chunkString");const g=e.exit("gfmFootnoteDefinitionLabelString");return o=nn(r.sliceSerialize(g)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return Xe(m)||(a=!0),s++,e.consume(m),m===92?d:u}function d(m){return m===91||m===92||m===93?(e.consume(m),s++,u):u(m)}function f(m){return m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),i.includes(o)||i.push(o),Le(e,p,"gfmFootnoteDefinitionWhitespace")):n(m)}function p(m){return t(m)}}function U_(e,t,n){return e.check(Ei,t,e.attempt(F_,t,n))}function H_(e){e.exit("gfmFootnoteDefinition")}function W_(e,t,n){const r=this;return Le(e,i,"gfmFootnoteDefinitionIndent",5);function i(o){const s=r.events[r.events.length-1];return s&&s[1].type==="gfmFootnoteDefinitionIndent"&&s[2].sliceSerialize(s[1],!0).length===4?t(o):n(o)}}function G_(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:o,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(s,a){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let c=l;for(;c--;)if(s[c][0]==="exit"&&s[c][1].type==="strikethroughSequenceTemporary"&&s[c][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[c][1].end.offset-s[c][1].start.offset){s[l][1].type="strikethroughSequence",s[c][1].type="strikethroughSequence";const u={type:"strikethrough",start:Object.assign({},s[c][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[c][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",u,a],["enter",s[c][1],a],["exit",s[c][1],a],["enter",d,a]],p=a.parser.constructs.insideSpan.null;p&&Ut(f,f.length,0,jo(p,s.slice(c+1,l),a)),Ut(f,f.length,0,[["exit",d,a],["enter",s[l][1],a],["exit",s[l][1],a],["exit",u,a]]),Ut(s,c-1,l-c+3,f),l=c+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type="data");return s}function o(s,a,l){const c=this.previous,u=this.events;let d=0;return f;function f(m){return c===126&&u[u.length-1][1].type!=="characterEscape"?l(m):(s.enter("strikethroughSequenceTemporary"),p(m))}function p(m){const g=Ar(c);if(m===126)return d>1?l(m):(s.consume(m),d++,p);if(d<2&&!n)return l(m);const v=s.exit("strikethroughSequenceTemporary"),y=Ar(m);return v._open=!y||y===2&&!!g,v._close=!g||g===2&&!!y,a(m)}}}class K_{constructor(){this.map=[]}add(t,n,r){q_(this,t,n,r)}consume(t){if(this.map.sort(function(o,s){return o[0]-s[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const o of i)t.push(o);i=r.pop()}this.map.length=0}}function q_(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i<e.map.length;){if(e.map[i][0]===t){e.map[i][1]+=n,e.map[i][2].push(...r);return}i+=1}e.map.push([t,n,r])}}function Y_(e,t){let n=!1;const r=[];for(;t<e.length;){const i=e[t];if(n){if(i[0]==="enter")i[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(i[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const o=r.length-1;r[o]=r[o]==="left"?"center":"right"}}else if(i[1].type==="tableDelimiterRow")break}else i[0]==="enter"&&i[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function Z_(){return{flow:{null:{name:"table",tokenize:X_,resolveAll:Q_}}}}function X_(e,t,n){const r=this;let i=0,o=0,s;return a;function a(b){let M=r.events.length-1;for(;M>-1;){const j=r.events[M][1].type;if(j==="lineEnding"||j==="linePrefix")M--;else break}const O=M>-1?r.events[M][1].type:null,L=O==="tableHead"||O==="tableRow"?T:l;return L===T&&r.parser.lazy[r.now().line]?n(b):L(b)}function l(b){return e.enter("tableHead"),e.enter("tableRow"),c(b)}function c(b){return b===124||(s=!0,o+=1),u(b)}function u(b){return b===null?n(b):ve(b)?o>1?(o=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),p):n(b):Pe(b)?Le(e,u,"whitespace")(b):(o+=1,s&&(s=!1,i+=1),b===124?(e.enter("tableCellDivider"),e.consume(b),e.exit("tableCellDivider"),s=!0,u):(e.enter("data"),d(b)))}function d(b){return b===null||b===124||Xe(b)?(e.exit("data"),u(b)):(e.consume(b),b===92?f:d)}function f(b){return b===92||b===124?(e.consume(b),d):d(b)}function p(b){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(b):(e.enter("tableDelimiterRow"),s=!1,Pe(b)?Le(e,m,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(b):m(b))}function m(b){return b===45||b===58?v(b):b===124?(s=!0,e.enter("tableCellDivider"),e.consume(b),e.exit("tableCellDivider"),g):C(b)}function g(b){return Pe(b)?Le(e,v,"whitespace")(b):v(b)}function v(b){return b===58?(o+=1,s=!0,e.enter("tableDelimiterMarker"),e.consume(b),e.exit("tableDelimiterMarker"),y):b===45?(o+=1,y(b)):b===null||ve(b)?_(b):C(b)}function y(b){return b===45?(e.enter("tableDelimiterFiller"),E(b)):C(b)}function E(b){return b===45?(e.consume(b),E):b===58?(s=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(b),e.exit("tableDelimiterMarker"),w):(e.exit("tableDelimiterFiller"),w(b))}function w(b){return Pe(b)?Le(e,_,"whitespace")(b):_(b)}function _(b){return b===124?m(b):b===null||ve(b)?!s||i!==o?C(b):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(b)):C(b)}function C(b){return n(b)}function T(b){return e.enter("tableRow"),R(b)}function R(b){return b===124?(e.enter("tableCellDivider"),e.consume(b),e.exit("tableCellDivider"),R):b===null||ve(b)?(e.exit("tableRow"),t(b)):Pe(b)?Le(e,R,"whitespace")(b):(e.enter("data"),A(b))}function A(b){return b===null||b===124||Xe(b)?(e.exit("data"),R(b)):(e.consume(b),b===92?I:A)}function I(b){return b===92||b===124?(e.consume(b),A):A(b)}}function Q_(e,t){let n=-1,r=!0,i=0,o=[0,0,0,0],s=[0,0,0,0],a=!1,l=0,c,u,d;const f=new K_;for(;++n<e.length;){const p=e[n],m=p[1];p[0]==="enter"?m.type==="tableHead"?(a=!1,l!==0&&(_d(f,t,l,c,u),u=void 0,l=0),c={type:"table",start:Object.assign({},m.start),end:Object.assign({},m.end)},f.add(n,0,[["enter",c,t]])):m.type==="tableRow"||m.type==="tableDelimiterRow"?(r=!0,d=void 0,o=[0,0,0,0],s=[0,n+1,0,0],a&&(a=!1,u={type:"tableBody",start:Object.assign({},m.start),end:Object.assign({},m.end)},f.add(n,0,[["enter",u,t]])),i=m.type==="tableDelimiterRow"?2:u?3:1):i&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")?(r=!1,s[2]===0&&(o[1]!==0&&(s[0]=s[1],d=Ui(f,t,o,i,void 0,d),o=[0,0,0,0]),s[2]=n)):m.type==="tableCellDivider"&&(r?r=!1:(o[1]!==0&&(s[0]=s[1],d=Ui(f,t,o,i,void 0,d)),o=s,s=[o[1],n,0,0])):m.type==="tableHead"?(a=!0,l=n):m.type==="tableRow"||m.type==="tableDelimiterRow"?(l=n,o[1]!==0?(s[0]=s[1],d=Ui(f,t,o,i,n,d)):s[1]!==0&&(d=Ui(f,t,s,i,n,d)),i=0):i&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")&&(s[3]=n)}for(l!==0&&_d(f,t,l,c,u),f.consume(t.events),n=-1;++n<t.events.length;){const p=t.events[n];p[0]==="enter"&&p[1].type==="table"&&(p[1]._align=Y_(t.events,n))}return e}function Ui(e,t,n,r,i,o){const s=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",a="tableContent";n[0]!==0&&(o.end=Object.assign({},pr(t.events,n[0])),e.add(n[0],0,[["exit",o,t]]));const l=pr(t.events,n[1]);if(o={type:s,start:Object.assign({},l),end:Object.assign({},l)},e.add(n[1],0,[["enter",o,t]]),n[2]!==0){const c=pr(t.events,n[2]),u=pr(t.events,n[3]),d={type:a,start:Object.assign({},c),end:Object.assign({},u)};if(e.add(n[2],0,[["enter",d,t]]),r!==2){const f=t.events[n[2]],p=t.events[n[3]];if(f[1].end=Object.assign({},p[1].end),f[1].type="chunkText",f[1].contentType="text",n[3]>n[2]+1){const m=n[2]+1,g=n[3]-n[2]-1;e.add(m,g,[])}}e.add(n[3]+1,0,[["exit",d,t]])}return i!==void 0&&(o.end=Object.assign({},pr(t.events,i)),e.add(i,0,[["exit",o,t]]),o=void 0),o}function _d(e,t,n,r,i){const o=[],s=pr(t.events,n);i&&(i.end=Object.assign({},s),o.push(["exit",i,t])),r.end=Object.assign({},s),o.push(["exit",r,t]),e.add(n+1,0,o)}function pr(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const J_={name:"tasklistCheck",tokenize:tT};function eT(){return{text:{91:J_}}}function tT(e,t,n){const r=this;return i;function i(l){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),o)}function o(l){return Xe(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),s):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),s):n(l)}function s(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),a):n(l)}function a(l){return ve(l)?t(l):Pe(l)?e.check({tokenize:nT},t,n)(l):n(l)}}function nT(e,t,n){return Le(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function rT(e){return Np([N_(),j_(),G_(e),Z_(),eT()])}const iT={};function oT(e){const t=this,n=e||iT,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),o=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),s=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(rT(n)),o.push(k_()),s.push(C_(n))}const Td=function(e,t,n){const r=Si(n);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof t=="number"){if(t<0||t===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(t=e.children.indexOf(t),t<0)throw new Error("Expected child node or index");for(;++t<e.children.length;)if(r(e.children[t],t,e))return e.children[t]},tr=function(e){if(e==null)return lT;if(typeof e=="string")return aT(e);if(typeof e=="object")return sT(e);if(typeof e=="function")return Hl(e);throw new Error("Expected function, string, or array as `test`")};function sT(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=tr(e[n]);return Hl(r);function r(...i){let o=-1;for(;++o<t.length;)if(t[o].apply(this,i))return!0;return!1}}function aT(e){return Hl(t);function t(n){return n.tagName===e}}function Hl(e){return t;function t(n,r,i){return!!(cT(n)&&e.call(this,n,typeof r=="number"?r:void 0,i||void 0))}}function lT(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function cT(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const Nd=/\n/g,Ad=/[\t ]+/g,ja=tr("br"),Md=tr(bT),uT=tr("p"),Rd=tr("tr"),dT=tr(["datalist","head","noembed","noframes","noscript","rp","script","style","template","title",mT,yT]),yg=tr(["address","article","aside","blockquote","body","caption","center","dd","dialog","dir","dl","dt","div","figure","figcaption","footer","form,","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","legend","li","listing","main","menu","nav","ol","p","plaintext","pre","section","ul","xmp"]);function fT(e,t){const n=t||{},r="children"in e?e.children:[],i=yg(e),o=wg(e,{whitespace:n.whitespace||"normal"}),s=[];(e.type==="text"||e.type==="comment")&&s.push(...vg(e,{breakBefore:!0,breakAfter:!0}));let a=-1;for(;++a<r.length;)s.push(...xg(r[a],e,{whitespace:o,breakBefore:a?void 0:i,breakAfter:a<r.length-1?ja(r[a+1]):i}));const l=[];let c;for(a=-1;++a<s.length;){const u=s[a];typeof u=="number"?c!==void 0&&u>c&&(c=u):u&&(c!==void 0&&c>-1&&l.push(`
49
+ `))}function l(p,m,g,v){const y=g.enter("tableCell"),E=g.enter("phrasing"),w=g.containerPhrasing(p,{...v,before:o,after:o});return E(),y(),w}function c(p,m){return O1(p,{align:m,alignDelimiters:r,padding:n,stringLength:i})}function u(p,m,g){const v=p.children;let y=-1;const E=[],w=m.enter("table");for(;++y<v.length;)E[y]=d(v[y],m,g);return w(),E}function d(p,m,g){const v=p.children;let y=-1;const E=[],w=m.enter("tableRow");for(;++y<v.length;)E[y]=l(v[y],p,m,g);return w(),E}function f(p,m,g){let v=cg.inlineCode(p,m,g);return g.stack.includes("tableCell")&&(v=v.replace(/\|/g,"\\$&")),v}}function v_(){return{exit:{taskListCheckValueChecked:Cd,taskListCheckValueUnchecked:Cd,paragraph:E_}}}function w_(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:S_}}}function Cd(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function E_(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const i=t.children;let o=-1,s;for(;++o<i.length;){const a=i[o];if(a.type==="paragraph"){s=a;break}}s===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function S_(e,t,n,r){const i=e.children[0],o=typeof e.checked=="boolean"&&i&&i.type==="paragraph",s="["+(e.checked?"x":" ")+"] ",a=n.createTracker(r);o&&a.move(s);let l=cg.listItem(e,t,n,{...r,...a.current()});return o&&(l=l.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,c)),l;function c(u){return u+s}}function k_(){return[n1(),S1(),T1(),h_(),v_()]}function C_(e){return{extensions:[r1(),k1(e),N1(),x_(e),w_()]}}const __={tokenize:I_,partial:!0},ug={tokenize:O_,partial:!0},dg={tokenize:P_,partial:!0},fg={tokenize:D_,partial:!0},T_={tokenize:L_,partial:!0},hg={name:"wwwAutolink",tokenize:M_,previous:gg},pg={name:"protocolAutolink",tokenize:R_,previous:mg},kn={name:"emailAutolink",tokenize:A_,previous:bg},fn={};function N_(){return{text:fn}}let Un=48;for(;Un<123;)fn[Un]=kn,Un++,Un===58?Un=65:Un===91&&(Un=97);fn[43]=kn;fn[45]=kn;fn[46]=kn;fn[95]=kn;fn[72]=[kn,pg];fn[104]=[kn,pg];fn[87]=[kn,hg];fn[119]=[kn,hg];function A_(e,t,n){const r=this;let i,o;return s;function s(d){return!Fa(d)||!bg.call(r,r.previous)||Ul(r.events)?n(d):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),a(d))}function a(d){return Fa(d)?(e.consume(d),a):d===64?(e.consume(d),l):n(d)}function l(d){return d===46?e.check(T_,u,c)(d):d===45||d===95||Tt(d)?(o=!0,e.consume(d),l):u(d)}function c(d){return e.consume(d),i=!0,l}function u(d){return o&&i&&It(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(d)):n(d)}}function M_(e,t,n){const r=this;return i;function i(s){return s!==87&&s!==119||!gg.call(r,r.previous)||Ul(r.events)?n(s):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(__,e.attempt(ug,e.attempt(dg,o),n),n)(s))}function o(s){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(s)}}function R_(e,t,n){const r=this;let i="",o=!1;return s;function s(d){return(d===72||d===104)&&mg.call(r,r.previous)&&!Ul(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),i+=String.fromCodePoint(d),e.consume(d),a):n(d)}function a(d){if(It(d)&&i.length<5)return i+=String.fromCodePoint(d),e.consume(d),a;if(d===58){const f=i.toLowerCase();if(f==="http"||f==="https")return e.consume(d),l}return n(d)}function l(d){return d===47?(e.consume(d),o?c:(o=!0,l)):n(d)}function c(d){return d===null||xo(d)||Xe(d)||Qn(d)||Fo(d)?n(d):e.attempt(ug,e.attempt(dg,u),n)(d)}function u(d){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(d)}}function I_(e,t,n){let r=0;return i;function i(s){return(s===87||s===119)&&r<3?(r++,e.consume(s),i):s===46&&r===3?(e.consume(s),o):n(s)}function o(s){return s===null?n(s):t(s)}}function O_(e,t,n){let r,i,o;return s;function s(c){return c===46||c===95?e.check(fg,l,a)(c):c===null||Xe(c)||Qn(c)||c!==45&&Fo(c)?l(c):(o=!0,e.consume(c),s)}function a(c){return c===95?r=!0:(i=r,r=void 0),e.consume(c),s}function l(c){return i||r||!o?n(c):t(c)}}function P_(e,t){let n=0,r=0;return i;function i(s){return s===40?(n++,e.consume(s),i):s===41&&r<n?o(s):s===33||s===34||s===38||s===39||s===41||s===42||s===44||s===46||s===58||s===59||s===60||s===63||s===93||s===95||s===126?e.check(fg,t,o)(s):s===null||Xe(s)||Qn(s)?t(s):(e.consume(s),i)}function o(s){return s===41&&r++,e.consume(s),i}}function D_(e,t,n){return r;function r(a){return a===33||a===34||a===39||a===41||a===42||a===44||a===46||a===58||a===59||a===63||a===95||a===126?(e.consume(a),r):a===38?(e.consume(a),o):a===93?(e.consume(a),i):a===60||a===null||Xe(a)||Qn(a)?t(a):n(a)}function i(a){return a===null||a===40||a===91||Xe(a)||Qn(a)?t(a):r(a)}function o(a){return It(a)?s(a):n(a)}function s(a){return a===59?(e.consume(a),r):It(a)?(e.consume(a),s):n(a)}}function L_(e,t,n){return r;function r(o){return e.consume(o),i}function i(o){return Tt(o)?n(o):t(o)}}function gg(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||Xe(e)}function mg(e){return!It(e)}function bg(e){return!(e===47||Fa(e))}function Fa(e){return e===43||e===45||e===46||e===95||Tt(e)}function Ul(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const F_={tokenize:W_,partial:!0};function j_(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:z_,continuation:{tokenize:U_},exit:H_}},text:{91:{name:"gfmFootnoteCall",tokenize:V_},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:B_,resolveTo:$_}}}}function B_(e,t,n){const r=this;let i=r.events.length;const o=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s;for(;i--;){const l=r.events[i][1];if(l.type==="labelImage"){s=l;break}if(l.type==="gfmFootnoteCall"||l.type==="labelLink"||l.type==="label"||l.type==="image"||l.type==="link")break}return a;function a(l){if(!s||!s._balanced)return n(l);const c=nn(r.sliceSerialize({start:s.end,end:r.now()}));return c.codePointAt(0)!==94||!o.includes(c.slice(1))?n(l):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(l),e.exit("gfmFootnoteCallLabelMarker"),t(l))}}function $_(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},i={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};i.end.column++,i.end.offset++,i.end._bufferIndex++;const o={type:"gfmFootnoteCallString",start:Object.assign({},i.end),end:Object.assign({},e[e.length-1][1].start)},s={type:"chunkString",contentType:"string",start:Object.assign({},o.start),end:Object.assign({},o.end)},a=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",i,t],["exit",i,t],["enter",o,t],["enter",s,t],["exit",s,t],["exit",o,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...a),e}function V_(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o=0,s;return a;function a(d){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),l}function l(d){return d!==94?n(d):(e.enter("gfmFootnoteCallMarker"),e.consume(d),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",c)}function c(d){if(o>999||d===93&&!s||d===null||d===91||Xe(d))return n(d);if(d===93){e.exit("chunkString");const f=e.exit("gfmFootnoteCallString");return i.includes(nn(r.sliceSerialize(f)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(d),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(d)}return Xe(d)||(s=!0),o++,e.consume(d),d===92?u:c}function u(d){return d===91||d===92||d===93?(e.consume(d),o++,c):c(d)}}function z_(e,t,n){const r=this,i=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o,s=0,a;return l;function l(m){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),c}function c(m){return m===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",u):n(m)}function u(m){if(s>999||m===93&&!a||m===null||m===91||Xe(m))return n(m);if(m===93){e.exit("chunkString");const g=e.exit("gfmFootnoteDefinitionLabelString");return o=nn(r.sliceSerialize(g)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(m),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),f}return Xe(m)||(a=!0),s++,e.consume(m),m===92?d:u}function d(m){return m===91||m===92||m===93?(e.consume(m),s++,u):u(m)}function f(m){return m===58?(e.enter("definitionMarker"),e.consume(m),e.exit("definitionMarker"),i.includes(o)||i.push(o),Le(e,p,"gfmFootnoteDefinitionWhitespace")):n(m)}function p(m){return t(m)}}function U_(e,t,n){return e.check(Ei,t,e.attempt(F_,t,n))}function H_(e){e.exit("gfmFootnoteDefinition")}function W_(e,t,n){const r=this;return Le(e,i,"gfmFootnoteDefinitionIndent",5);function i(o){const s=r.events[r.events.length-1];return s&&s[1].type==="gfmFootnoteDefinitionIndent"&&s[2].sliceSerialize(s[1],!0).length===4?t(o):n(o)}}function G_(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:o,resolveAll:i};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function i(s,a){let l=-1;for(;++l<s.length;)if(s[l][0]==="enter"&&s[l][1].type==="strikethroughSequenceTemporary"&&s[l][1]._close){let c=l;for(;c--;)if(s[c][0]==="exit"&&s[c][1].type==="strikethroughSequenceTemporary"&&s[c][1]._open&&s[l][1].end.offset-s[l][1].start.offset===s[c][1].end.offset-s[c][1].start.offset){s[l][1].type="strikethroughSequence",s[c][1].type="strikethroughSequence";const u={type:"strikethrough",start:Object.assign({},s[c][1].start),end:Object.assign({},s[l][1].end)},d={type:"strikethroughText",start:Object.assign({},s[c][1].end),end:Object.assign({},s[l][1].start)},f=[["enter",u,a],["enter",s[c][1],a],["exit",s[c][1],a],["enter",d,a]],p=a.parser.constructs.insideSpan.null;p&&Ut(f,f.length,0,jo(p,s.slice(c+1,l),a)),Ut(f,f.length,0,[["exit",d,a],["enter",s[l][1],a],["exit",s[l][1],a],["exit",u,a]]),Ut(s,c-1,l-c+3,f),l=c+f.length-2;break}}for(l=-1;++l<s.length;)s[l][1].type==="strikethroughSequenceTemporary"&&(s[l][1].type="data");return s}function o(s,a,l){const c=this.previous,u=this.events;let d=0;return f;function f(m){return c===126&&u[u.length-1][1].type!=="characterEscape"?l(m):(s.enter("strikethroughSequenceTemporary"),p(m))}function p(m){const g=Ar(c);if(m===126)return d>1?l(m):(s.consume(m),d++,p);if(d<2&&!n)return l(m);const v=s.exit("strikethroughSequenceTemporary"),y=Ar(m);return v._open=!y||y===2&&!!g,v._close=!g||g===2&&!!y,a(m)}}}class K_{constructor(){this.map=[]}add(t,n,r){q_(this,t,n,r)}consume(t){if(this.map.sort(function(o,s){return o[0]-s[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let i=r.pop();for(;i;){for(const o of i)t.push(o);i=r.pop()}this.map.length=0}}function q_(e,t,n,r){let i=0;if(!(n===0&&r.length===0)){for(;i<e.map.length;){if(e.map[i][0]===t){e.map[i][1]+=n,e.map[i][2].push(...r);return}i+=1}e.map.push([t,n,r])}}function Y_(e,t){let n=!1;const r=[];for(;t<e.length;){const i=e[t];if(n){if(i[0]==="enter")i[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(i[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const o=r.length-1;r[o]=r[o]==="left"?"center":"right"}}else if(i[1].type==="tableDelimiterRow")break}else i[0]==="enter"&&i[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function Z_(){return{flow:{null:{name:"table",tokenize:X_,resolveAll:Q_}}}}function X_(e,t,n){const r=this;let i=0,o=0,s;return a;function a(b){let M=r.events.length-1;for(;M>-1;){const j=r.events[M][1].type;if(j==="lineEnding"||j==="linePrefix")M--;else break}const O=M>-1?r.events[M][1].type:null,L=O==="tableHead"||O==="tableRow"?T:l;return L===T&&r.parser.lazy[r.now().line]?n(b):L(b)}function l(b){return e.enter("tableHead"),e.enter("tableRow"),c(b)}function c(b){return b===124||(s=!0,o+=1),u(b)}function u(b){return b===null?n(b):ve(b)?o>1?(o=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),p):n(b):Pe(b)?Le(e,u,"whitespace")(b):(o+=1,s&&(s=!1,i+=1),b===124?(e.enter("tableCellDivider"),e.consume(b),e.exit("tableCellDivider"),s=!0,u):(e.enter("data"),d(b)))}function d(b){return b===null||b===124||Xe(b)?(e.exit("data"),u(b)):(e.consume(b),b===92?f:d)}function f(b){return b===92||b===124?(e.consume(b),d):d(b)}function p(b){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(b):(e.enter("tableDelimiterRow"),s=!1,Pe(b)?Le(e,m,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(b):m(b))}function m(b){return b===45||b===58?v(b):b===124?(s=!0,e.enter("tableCellDivider"),e.consume(b),e.exit("tableCellDivider"),g):C(b)}function g(b){return Pe(b)?Le(e,v,"whitespace")(b):v(b)}function v(b){return b===58?(o+=1,s=!0,e.enter("tableDelimiterMarker"),e.consume(b),e.exit("tableDelimiterMarker"),y):b===45?(o+=1,y(b)):b===null||ve(b)?_(b):C(b)}function y(b){return b===45?(e.enter("tableDelimiterFiller"),E(b)):C(b)}function E(b){return b===45?(e.consume(b),E):b===58?(s=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(b),e.exit("tableDelimiterMarker"),w):(e.exit("tableDelimiterFiller"),w(b))}function w(b){return Pe(b)?Le(e,_,"whitespace")(b):_(b)}function _(b){return b===124?m(b):b===null||ve(b)?!s||i!==o?C(b):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(b)):C(b)}function C(b){return n(b)}function T(b){return e.enter("tableRow"),R(b)}function R(b){return b===124?(e.enter("tableCellDivider"),e.consume(b),e.exit("tableCellDivider"),R):b===null||ve(b)?(e.exit("tableRow"),t(b)):Pe(b)?Le(e,R,"whitespace")(b):(e.enter("data"),A(b))}function A(b){return b===null||b===124||Xe(b)?(e.exit("data"),R(b)):(e.consume(b),b===92?I:A)}function I(b){return b===92||b===124?(e.consume(b),A):A(b)}}function Q_(e,t){let n=-1,r=!0,i=0,o=[0,0,0,0],s=[0,0,0,0],a=!1,l=0,c,u,d;const f=new K_;for(;++n<e.length;){const p=e[n],m=p[1];p[0]==="enter"?m.type==="tableHead"?(a=!1,l!==0&&(_d(f,t,l,c,u),u=void 0,l=0),c={type:"table",start:Object.assign({},m.start),end:Object.assign({},m.end)},f.add(n,0,[["enter",c,t]])):m.type==="tableRow"||m.type==="tableDelimiterRow"?(r=!0,d=void 0,o=[0,0,0,0],s=[0,n+1,0,0],a&&(a=!1,u={type:"tableBody",start:Object.assign({},m.start),end:Object.assign({},m.end)},f.add(n,0,[["enter",u,t]])),i=m.type==="tableDelimiterRow"?2:u?3:1):i&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")?(r=!1,s[2]===0&&(o[1]!==0&&(s[0]=s[1],d=Ui(f,t,o,i,void 0,d),o=[0,0,0,0]),s[2]=n)):m.type==="tableCellDivider"&&(r?r=!1:(o[1]!==0&&(s[0]=s[1],d=Ui(f,t,o,i,void 0,d)),o=s,s=[o[1],n,0,0])):m.type==="tableHead"?(a=!0,l=n):m.type==="tableRow"||m.type==="tableDelimiterRow"?(l=n,o[1]!==0?(s[0]=s[1],d=Ui(f,t,o,i,n,d)):s[1]!==0&&(d=Ui(f,t,s,i,n,d)),i=0):i&&(m.type==="data"||m.type==="tableDelimiterMarker"||m.type==="tableDelimiterFiller")&&(s[3]=n)}for(l!==0&&_d(f,t,l,c,u),f.consume(t.events),n=-1;++n<t.events.length;){const p=t.events[n];p[0]==="enter"&&p[1].type==="table"&&(p[1]._align=Y_(t.events,n))}return e}function Ui(e,t,n,r,i,o){const s=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",a="tableContent";n[0]!==0&&(o.end=Object.assign({},pr(t.events,n[0])),e.add(n[0],0,[["exit",o,t]]));const l=pr(t.events,n[1]);if(o={type:s,start:Object.assign({},l),end:Object.assign({},l)},e.add(n[1],0,[["enter",o,t]]),n[2]!==0){const c=pr(t.events,n[2]),u=pr(t.events,n[3]),d={type:a,start:Object.assign({},c),end:Object.assign({},u)};if(e.add(n[2],0,[["enter",d,t]]),r!==2){const f=t.events[n[2]],p=t.events[n[3]];if(f[1].end=Object.assign({},p[1].end),f[1].type="chunkText",f[1].contentType="text",n[3]>n[2]+1){const m=n[2]+1,g=n[3]-n[2]-1;e.add(m,g,[])}}e.add(n[3]+1,0,[["exit",d,t]])}return i!==void 0&&(o.end=Object.assign({},pr(t.events,i)),e.add(i,0,[["exit",o,t]]),o=void 0),o}function _d(e,t,n,r,i){const o=[],s=pr(t.events,n);i&&(i.end=Object.assign({},s),o.push(["exit",i,t])),r.end=Object.assign({},s),o.push(["exit",r,t]),e.add(n+1,0,o)}function pr(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const J_={name:"tasklistCheck",tokenize:tT};function eT(){return{text:{91:J_}}}function tT(e,t,n){const r=this;return i;function i(l){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(l):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),o)}function o(l){return Xe(l)?(e.enter("taskListCheckValueUnchecked"),e.consume(l),e.exit("taskListCheckValueUnchecked"),s):l===88||l===120?(e.enter("taskListCheckValueChecked"),e.consume(l),e.exit("taskListCheckValueChecked"),s):n(l)}function s(l){return l===93?(e.enter("taskListCheckMarker"),e.consume(l),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),a):n(l)}function a(l){return ve(l)?t(l):Pe(l)?e.check({tokenize:nT},t,n)(l):n(l)}}function nT(e,t,n){return Le(e,r,"whitespace");function r(i){return i===null?n(i):t(i)}}function rT(e){return Np([N_(),j_(),G_(e),Z_(),eT()])}const iT={};function oT(e){const t=this,n=e||iT,r=t.data(),i=r.micromarkExtensions||(r.micromarkExtensions=[]),o=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),s=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);i.push(rT(n)),o.push(k_()),s.push(C_(n))}const Td=function(e,t,n){const r=Si(n);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof t=="number"){if(t<0||t===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(t=e.children.indexOf(t),t<0)throw new Error("Expected child node or index");for(;++t<e.children.length;)if(r(e.children[t],t,e))return e.children[t]},tr=function(e){if(e==null)return lT;if(typeof e=="string")return aT(e);if(typeof e=="object")return sT(e);if(typeof e=="function")return Hl(e);throw new Error("Expected function, string, or array as `test`")};function sT(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=tr(e[n]);return Hl(r);function r(...i){let o=-1;for(;++o<t.length;)if(t[o].apply(this,i))return!0;return!1}}function aT(e){return Hl(t);function t(n){return n.tagName===e}}function Hl(e){return t;function t(n,r,i){return!!(cT(n)&&e.call(this,n,typeof r=="number"?r:void 0,i||void 0))}}function lT(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function cT(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const Nd=/\n/g,Ad=/[\t ]+/g,ja=tr("br"),Md=tr(bT),uT=tr("p"),Rd=tr("tr"),dT=tr(["datalist","head","noembed","noframes","noscript","rp","script","style","template","title",mT,yT]),yg=tr(["address","article","aside","blockquote","body","caption","center","dd","dialog","dir","dl","dt","div","figure","figcaption","footer","form,","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","legend","li","listing","main","menu","nav","ol","p","plaintext","pre","section","ul","xmp"]);function fT(e,t){const n=t||{},r="children"in e?e.children:[],i=yg(e),o=wg(e,{whitespace:n.whitespace||"normal"}),s=[];(e.type==="text"||e.type==="comment")&&s.push(...vg(e,{breakBefore:!0,breakAfter:!0}));let a=-1;for(;++a<r.length;)s.push(...xg(r[a],e,{whitespace:o,breakBefore:a?void 0:i,breakAfter:a<r.length-1?ja(r[a+1]):i}));const l=[];let c;for(a=-1;++a<s.length;){const u=s[a];typeof u=="number"?c!==void 0&&u>c&&(c=u):u&&(c!==void 0&&c>-1&&l.push(`
50
50
  `.repeat(c)||" "),c=-1,l.push(u))}return l.join("")}function xg(e,t,n){return e.type==="element"?hT(e,t,n):e.type==="text"?n.whitespace==="normal"?vg(e,n):pT(e):[]}function hT(e,t,n){const r=wg(e,n),i=e.children||[];let o=-1,s=[];if(dT(e))return s;let a,l;for(ja(e)||Rd(e)&&Td(t,e,Rd)?l=`
51
- `:uT(e)?(a=2,l=2):yg(e)&&(a=1,l=1);++o<i.length;)s=s.concat(xg(i[o],e,{whitespace:r,breakBefore:o?void 0:a,breakAfter:o<i.length-1?ja(i[o+1]):l}));return Md(e)&&Td(t,e,Md)&&s.push(" "),a&&s.unshift(a),l&&s.push(l),s}function vg(e,t){const n=String(e.value),r=[],i=[];let o=0;for(;o<=n.length;){Nd.lastIndex=o;const l=Nd.exec(n),c=l&&"index"in l?l.index:n.length;r.push(gT(n.slice(o,c).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,""),o===0?t.breakBefore:!0,c===n.length?t.breakAfter:!0)),o=c+1}let s=-1,a;for(;++s<r.length;)r[s].charCodeAt(r[s].length-1)===8203||s<r.length-1&&r[s+1].charCodeAt(0)===8203?(i.push(r[s]),a=void 0):r[s]?(typeof a=="number"&&i.push(a),i.push(r[s]),a=0):(s===0||s===r.length-1)&&i.push(0);return i}function pT(e){return[String(e.value)]}function gT(e,t,n){const r=[];let i=0,o;for(;i<e.length;){Ad.lastIndex=i;const s=Ad.exec(e);o=s?s.index:e.length,!i&&!o&&s&&!t&&r.push(""),i!==o&&r.push(e.slice(i,o)),i=s?o+s[0].length:o}return i!==o&&!n&&r.push(""),r.join(" ")}function wg(e,t){if(e.type==="element"){const n=e.properties||{};switch(e.tagName){case"listing":case"plaintext":case"xmp":return"pre";case"nobr":return"nowrap";case"pre":return n.wrap?"pre-wrap":"pre";case"td":case"th":return n.noWrap?"nowrap":t.whitespace;case"textarea":return"pre-wrap"}}return t.whitespace}function mT(e){return!!(e.properties||{}).hidden}function bT(e){return e.tagName==="td"||e.tagName==="th"}function yT(e){return e.tagName==="dialog"&&!(e.properties||{}).open}function xT(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="(?!struct)("+r+"|"+t.optional(i)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},c={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},u={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(c,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},f={className:"title",begin:t.optional(i)+e.IDENT_RE,relevance:0},p=t.optional(i)+e.IDENT_RE+"\\s*\\(",m=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],g=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],v=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],y=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],_={type:g,keyword:m,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:v},C={className:"function.dispatch",relevance:0,keywords:{_hint:y},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},T=[C,d,a,n,e.C_BLOCK_COMMENT_MODE,u,c],R={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:T.concat([{begin:/\(/,end:/\)/,keywords:_,contains:T.concat(["self"]),relevance:0}]),relevance:0},A={className:"function",begin:"("+s+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:_,relevance:0},{begin:p,returnBegin:!0,contains:[f],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[c,u]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,c,u,a,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,c,u,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,d]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:_,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(R,A,C,T,[d,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:_,contains:["self",a]},{begin:e.IDENT_RE+"::",keywords:_},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function vT(e){const t={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},n=xT(e),r=n.keywords;return r.type=[...r.type,...t.type],r.literal=[...r.literal,...t.literal],r.built_in=[...r.built_in,...t.built_in],r._hints=t._hints,n.name="Arduino",n.aliases=["ino"],n.supersetOf="cpp",n}function wT(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const i={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},o=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,i]};i.contains.push(a);const l={match:/\\"/},c={className:"string",begin:/'/,end:/'/},u={match:/\\'/},d={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},f=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=e.SHEBANG({binary:`(${f.join("|")})`,relevance:10}),m={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},g=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],v=["true","false"],y={match:/(\/[a-z._-]+)+/},E=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],w=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],_=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],C=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:g,literal:v,built_in:[...E,...w,"set","shopt",..._,...C]},contains:[p,e.SHEBANG(),m,d,o,s,y,a,l,c,u,n]}}function ET(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="("+r+"|"+t.optional(i)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},c={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},u={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(c,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},f={className:"title",begin:t.optional(i)+e.IDENT_RE,relevance:0},p=t.optional(i)+e.IDENT_RE+"\\s*\\(",v={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},y=[d,a,n,e.C_BLOCK_COMMENT_MODE,u,c],E={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:v,contains:y.concat([{begin:/\(/,end:/\)/,keywords:v,contains:y.concat(["self"]),relevance:0}]),relevance:0},w={begin:"("+s+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:v,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:v,relevance:0},{begin:p,returnBegin:!0,contains:[e.inherit(f,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:v,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,c,u,a,{begin:/\(/,end:/\)/,keywords:v,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,c,u,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,d]};return{name:"C",aliases:["h"],keywords:v,disableAutodetect:!0,illegal:"</",contains:[].concat(E,w,y,[d,{begin:e.IDENT_RE+"::",keywords:v},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:d,strings:c,keywords:v}}}function ST(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="(?!struct)("+r+"|"+t.optional(i)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},c={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},u={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(c,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},f={className:"title",begin:t.optional(i)+e.IDENT_RE,relevance:0},p=t.optional(i)+e.IDENT_RE+"\\s*\\(",m=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],g=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],v=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],y=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],_={type:g,keyword:m,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:v},C={className:"function.dispatch",relevance:0,keywords:{_hint:y},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},T=[C,d,a,n,e.C_BLOCK_COMMENT_MODE,u,c],R={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:T.concat([{begin:/\(/,end:/\)/,keywords:_,contains:T.concat(["self"]),relevance:0}]),relevance:0},A={className:"function",begin:"("+s+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:_,relevance:0},{begin:p,returnBegin:!0,contains:[f],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[c,u]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,c,u,a,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,c,u,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,d]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:_,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(R,A,C,T,[d,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:_,contains:["self",a]},{begin:e.IDENT_RE+"::",keywords:_},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function kT(e){const t=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],n=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],r=["default","false","null","true"],i=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],o=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],s={keyword:i.concat(o),built_in:t,literal:r},a=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},u={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},d=e.inherit(u,{illegal:/\n/}),f={className:"subst",begin:/\{/,end:/\}/,keywords:s},p=e.inherit(f,{illegal:/\n/}),m={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,p]},g={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},f]},v=e.inherit(g,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]});f.contains=[g,m,u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,l,e.C_BLOCK_COMMENT_MODE],p.contains=[v,m,d,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,l,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const y={variants:[c,g,m,u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},w=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",_={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},y,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+w+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:n.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,E],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[y,l,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},_]}}const CT=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),_T=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],TT=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],NT=[..._T,...TT],AT=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),MT=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),RT=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),IT=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function OT(e){const t=e.regex,n=CT(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},i="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+MT.join("|")+")"},{begin:":(:)?("+RT.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+IT.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:i,attribute:AT.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+NT.join("|")+")\\b"}]}}function PT(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function DT(e){const o={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:o,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:o,illegal:/["']/}]}]}}function LT(e){const t=e.regex,n=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:t.concat(n,t.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}function FT(e){const t=e.regex,n={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},r=e.COMMENT();r.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const i={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[r,o,i,s,n,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,c=/"(\\"|[^"])*"/,u=/'[^']*'/,d=t.either(l,c,u),f=t.concat(d,"(\\s*\\.\\s*",d,")*",t.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[r,{className:"section",begin:/\[+/,end:/\]+/},{begin:f,className:"attr",starts:{end:/$/,contains:[r,a,o,i,s,n]}}]}}var gr="[0-9](_*[0-9])*",Hi=`\\.(${gr})`,Wi="[0-9a-fA-F](_*[0-9a-fA-F])*",Id={className:"number",variants:[{begin:`(\\b(${gr})((${Hi})|\\.)?|(${Hi}))[eE][+-]?(${gr})[fFdD]?\\b`},{begin:`\\b(${gr})((${Hi})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Hi})[fFdD]?\\b`},{begin:`\\b(${gr})[fFdD]\\b`},{begin:`\\b0[xX]((${Wi})\\.?|(${Wi})?\\.(${Wi}))[pP][+-]?(${gr})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Wi})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Eg(e,t,n){return n===-1?"":e.replace(t,r=>Eg(e,t,n-1))}function jT(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+Eg("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),l={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},c={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},u={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+r+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[c,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,Id,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},Id,c]}}const Od="[A-Za-z$_][0-9A-Za-z$_]*",BT=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],$T=["true","false","null","undefined","NaN","Infinity"],Sg=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],kg=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Cg=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],VT=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],zT=[].concat(Cg,Sg,kg);function UT(e){const t=e.regex,n=(B,{after:V})=>{const x="</"+B[0].slice(1);return B.input.indexOf(x,V)!==-1},r=Od,i={begin:"<>",end:"</>"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(B,V)=>{const x=B[0].length+B.index,z=B.input[x];if(z==="<"||z===","){V.ignoreMatch();return}z===">"&&(n(B,{after:x})||V.ignoreMatch());let G;const k=B.input.substring(x);if(G=k.match(/^\s*=/)){V.ignoreMatch();return}if((G=k.match(/^\s+extends\s+/))&&G.index===0){V.ignoreMatch();return}}},a={$pattern:Od,keyword:BT,literal:$T,built_in:zT,"variable.language":VT},l="[0-9](_?[0-9])*",c=`\\.(${l})`,u="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",d={className:"number",variants:[{begin:`(\\b(${u})((${c})|\\.)?|(${c}))[eE][+-]?(${l})\\b`},{begin:`\\b(${u})\\b((${c})\\b|\\.)?|(${c})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},m={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},g={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},v={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},E={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,{match:/\$\d+/},d];f.contains=w.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(w)});const _=[].concat(E,f.contains),C=_.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(_)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C},R={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},A={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Sg,...kg]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},b={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},M={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function O(B){return t.concat("(?!",B.join("|"),")")}const L={match:t.concat(/\b/,O([...Cg,"super","import"].map(B=>`${B}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},j={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},W={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},oe="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",te={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(oe)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:C,CLASS_REFERENCE:A},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,E,{match:/\$\d+/},d,A,{scope:"attr",match:r+t.lookahead(":"),relevance:0},te,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[E,e.REGEXP_MODE,{className:"function",begin:oe,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},b,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},j,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},L,M,R,W,{match:/\$[(.]/}]}}function HT(e){const t={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},r=["true","false","null"],i={scope:"literal",beginKeywords:r.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:r},contains:[t,n,e.QUOTE_STRING_MODE,i,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var mr="[0-9](_*[0-9])*",Gi=`\\.(${mr})`,Ki="[0-9a-fA-F](_*[0-9a-fA-F])*",WT={className:"number",variants:[{begin:`(\\b(${mr})((${Gi})|\\.)?|(${Gi}))[eE][+-]?(${mr})[fFdD]?\\b`},{begin:`\\b(${mr})((${Gi})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Gi})[fFdD]?\\b`},{begin:`\\b(${mr})[fFdD]\\b`},{begin:`\\b0[xX]((${Ki})\\.?|(${Ki})?\\.(${Ki}))[pP][+-]?(${mr})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Ki})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function GT(e){const t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},r={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},i={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,i]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,o,i]}]};i.contains.push(s);const a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(s,{className:"string"}),"self"]}]},c=WT,u=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),d={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},f=d;return f.variants[1].contains=[d],d.variants[1].contains=[f],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,u,n,r,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[d,e.C_LINE_COMMENT_MODE,u],relevance:0},e.C_LINE_COMMENT_MODE,u,a,l,s,e.C_NUMBER_MODE]},u]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
51
+ `:uT(e)?(a=2,l=2):yg(e)&&(a=1,l=1);++o<i.length;)s=s.concat(xg(i[o],e,{whitespace:r,breakBefore:o?void 0:a,breakAfter:o<i.length-1?ja(i[o+1]):l}));return Md(e)&&Td(t,e,Md)&&s.push(" "),a&&s.unshift(a),l&&s.push(l),s}function vg(e,t){const n=String(e.value),r=[],i=[];let o=0;for(;o<=n.length;){Nd.lastIndex=o;const l=Nd.exec(n),c=l&&"index"in l?l.index:n.length;r.push(gT(n.slice(o,c).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,""),o===0?t.breakBefore:!0,c===n.length?t.breakAfter:!0)),o=c+1}let s=-1,a;for(;++s<r.length;)r[s].charCodeAt(r[s].length-1)===8203||s<r.length-1&&r[s+1].charCodeAt(0)===8203?(i.push(r[s]),a=void 0):r[s]?(typeof a=="number"&&i.push(a),i.push(r[s]),a=0):(s===0||s===r.length-1)&&i.push(0);return i}function pT(e){return[String(e.value)]}function gT(e,t,n){const r=[];let i=0,o;for(;i<e.length;){Ad.lastIndex=i;const s=Ad.exec(e);o=s?s.index:e.length,!i&&!o&&s&&!t&&r.push(""),i!==o&&r.push(e.slice(i,o)),i=s?o+s[0].length:o}return i!==o&&!n&&r.push(""),r.join(" ")}function wg(e,t){if(e.type==="element"){const n=e.properties||{};switch(e.tagName){case"listing":case"plaintext":case"xmp":return"pre";case"nobr":return"nowrap";case"pre":return n.wrap?"pre-wrap":"pre";case"td":case"th":return n.noWrap?"nowrap":t.whitespace;case"textarea":return"pre-wrap"}}return t.whitespace}function mT(e){return!!(e.properties||{}).hidden}function bT(e){return e.tagName==="td"||e.tagName==="th"}function yT(e){return e.tagName==="dialog"&&!(e.properties||{}).open}function xT(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="(?!struct)("+r+"|"+t.optional(i)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},c={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},u={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(c,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},f={className:"title",begin:t.optional(i)+e.IDENT_RE,relevance:0},p=t.optional(i)+e.IDENT_RE+"\\s*\\(",m=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],g=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],v=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],y=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],_={type:g,keyword:m,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:v},C={className:"function.dispatch",relevance:0,keywords:{_hint:y},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},T=[C,d,a,n,e.C_BLOCK_COMMENT_MODE,u,c],R={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:T.concat([{begin:/\(/,end:/\)/,keywords:_,contains:T.concat(["self"]),relevance:0}]),relevance:0},A={className:"function",begin:"("+s+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:_,relevance:0},{begin:p,returnBegin:!0,contains:[f],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[c,u]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,c,u,a,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,c,u,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,d]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:_,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(R,A,C,T,[d,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:_,contains:["self",a]},{begin:e.IDENT_RE+"::",keywords:_},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function vT(e){const t={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},n=xT(e),r=n.keywords;return r.type=[...r.type,...t.type],r.literal=[...r.literal,...t.literal],r.built_in=[...r.built_in,...t.built_in],r._hints=t._hints,n.name="Arduino",n.aliases=["ino"],n.supersetOf="cpp",n}function wT(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const i={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},o=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),s={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},a={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,i]};i.contains.push(a);const l={match:/\\"/},c={className:"string",begin:/'/,end:/'/},u={match:/\\'/},d={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},f=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=e.SHEBANG({binary:`(${f.join("|")})`,relevance:10}),m={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},g=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],v=["true","false"],y={match:/(\/[a-z._-]+)+/},E=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],w=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],_=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],C=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:g,literal:v,built_in:[...E,...w,"set","shopt",..._,...C]},contains:[p,e.SHEBANG(),m,d,o,s,y,a,l,c,u,n]}}function ET(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="("+r+"|"+t.optional(i)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},c={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},u={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(c,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},f={className:"title",begin:t.optional(i)+e.IDENT_RE,relevance:0},p=t.optional(i)+e.IDENT_RE+"\\s*\\(",v={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},y=[d,a,n,e.C_BLOCK_COMMENT_MODE,u,c],E={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:v,contains:y.concat([{begin:/\(/,end:/\)/,keywords:v,contains:y.concat(["self"]),relevance:0}]),relevance:0},w={begin:"("+s+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:v,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:v,relevance:0},{begin:p,returnBegin:!0,contains:[e.inherit(f,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:v,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,c,u,a,{begin:/\(/,end:/\)/,keywords:v,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,c,u,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,d]};return{name:"C",aliases:["h"],keywords:v,disableAutodetect:!0,illegal:"</",contains:[].concat(E,w,y,[d,{begin:e.IDENT_RE+"::",keywords:v},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:d,strings:c,keywords:v}}}function ST(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",i="[a-zA-Z_]\\w*::",s="(?!struct)("+r+"|"+t.optional(i)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",a={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},c={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},u={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},d={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(c,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},f={className:"title",begin:t.optional(i)+e.IDENT_RE,relevance:0},p=t.optional(i)+e.IDENT_RE+"\\s*\\(",m=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],g=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],v=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],y=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],_={type:g,keyword:m,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:v},C={className:"function.dispatch",relevance:0,keywords:{_hint:y},begin:t.concat(/\b/,/(?!decltype)/,/(?!if)/,/(?!for)/,/(?!switch)/,/(?!while)/,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},T=[C,d,a,n,e.C_BLOCK_COMMENT_MODE,u,c],R={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:_,contains:T.concat([{begin:/\(/,end:/\)/,keywords:_,contains:T.concat(["self"]),relevance:0}]),relevance:0},A={className:"function",begin:"("+s+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:_,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:_,relevance:0},{begin:p,returnBegin:!0,contains:[f],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[c,u]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,c,u,a,{begin:/\(/,end:/\)/,keywords:_,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,c,u,a]}]},a,n,e.C_BLOCK_COMMENT_MODE,d]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:_,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(R,A,C,T,[d,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:_,contains:["self",a]},{begin:e.IDENT_RE+"::",keywords:_},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function kT(e){const t=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],n=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],r=["default","false","null","true"],i=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],o=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],s={keyword:i.concat(o),built_in:t,literal:r},a=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),l={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],relevance:0},c={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},u={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},d=e.inherit(u,{illegal:/\n/}),f={className:"subst",begin:/\{/,end:/\}/,keywords:s},p=e.inherit(f,{illegal:/\n/}),m={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,p]},g={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},f]},v=e.inherit(g,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]});f.contains=[g,m,u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,l,e.C_BLOCK_COMMENT_MODE],p.contains=[v,m,d,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,l,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const y={variants:[c,g,m,u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},E={begin:"<",end:">",contains:[{beginKeywords:"in out"},a]},w=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",_={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:s,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},y,l,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[a,E,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+w+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:s,contains:[{beginKeywords:n.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,E],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:s,relevance:0,contains:[y,l,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},_]}}const CT=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),_T=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],TT=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],NT=[..._T,...TT],AT=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),MT=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),RT=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),IT=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function OT(e){const t=e.regex,n=CT(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},i="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",a=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+MT.join("|")+")"},{begin:":(:)?("+RT.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+IT.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,...a,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...a,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:i,attribute:AT.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...a,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+NT.join("|")+")\\b"}]}}function PT(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function DT(e){const o={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:o,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:o,illegal:/["']/}]}]}}function LT(e){const t=e.regex,n=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:t.concat(n,t.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}function FT(e){const t=e.regex,n={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},r=e.COMMENT();r.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const i={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},o={className:"literal",begin:/\bon|off|true|false|yes|no\b/},s={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},a={begin:/\[/,end:/\]/,contains:[r,o,i,s,n,"self"],relevance:0},l=/[A-Za-z0-9_-]+/,c=/"(\\"|[^"])*"/,u=/'[^']*'/,d=t.either(l,c,u),f=t.concat(d,"(\\s*\\.\\s*",d,")*",t.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[r,{className:"section",begin:/\[+/,end:/\]+/},{begin:f,className:"attr",starts:{end:/$/,contains:[r,a,o,i,s,n]}}]}}var gr="[0-9](_*[0-9])*",Hi=`\\.(${gr})`,Wi="[0-9a-fA-F](_*[0-9a-fA-F])*",Id={className:"number",variants:[{begin:`(\\b(${gr})((${Hi})|\\.)?|(${Hi}))[eE][+-]?(${gr})[fFdD]?\\b`},{begin:`\\b(${gr})((${Hi})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Hi})[fFdD]?\\b`},{begin:`\\b(${gr})[fFdD]\\b`},{begin:`\\b0[xX]((${Wi})\\.?|(${Wi})?\\.(${Wi}))[pP][+-]?(${gr})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Wi})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function Eg(e,t,n){return n===-1?"":e.replace(t,r=>Eg(e,t,n-1))}function jT(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+Eg("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),l={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},c={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},u={className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:l,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+r+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:l,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:l,relevance:0,contains:[c,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,Id,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},Id,c]}}const Od="[A-Za-z$_][0-9A-Za-z$_]*",BT=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],$T=["true","false","null","undefined","NaN","Infinity"],Sg=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],kg=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Cg=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],VT=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],zT=[].concat(Cg,Sg,kg);function UT(e){const t=e.regex,n=(B,{after:$})=>{const x="</"+B[0].slice(1);return B.input.indexOf(x,$)!==-1},r=Od,i={begin:"<>",end:"</>"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(B,$)=>{const x=B[0].length+B.index,z=B.input[x];if(z==="<"||z===","){$.ignoreMatch();return}z===">"&&(n(B,{after:x})||$.ignoreMatch());let G;const k=B.input.substring(x);if(G=k.match(/^\s*=/)){$.ignoreMatch();return}if((G=k.match(/^\s+extends\s+/))&&G.index===0){$.ignoreMatch();return}}},a={$pattern:Od,keyword:BT,literal:$T,built_in:zT,"variable.language":VT},l="[0-9](_?[0-9])*",c=`\\.(${l})`,u="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",d={className:"number",variants:[{begin:`(\\b(${u})((${c})|\\.)?|(${c}))[eE][+-]?(${l})\\b`},{begin:`\\b(${u})\\b((${c})\\b|\\.)?|(${c})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},m={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},g={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},v={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},E={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,{match:/\$\d+/},d];f.contains=w.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(w)});const _=[].concat(E,f.contains),C=_.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(_)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C},R={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},A={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Sg,...kg]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},b={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},M={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function O(B){return t.concat("(?!",B.join("|"),")")}const L={match:t.concat(/\b/,O([...Cg,"super","import"].map(B=>`${B}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},j={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},W={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},oe="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",te={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(oe)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:C,CLASS_REFERENCE:A},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,E,{match:/\$\d+/},d,A,{scope:"attr",match:r+t.lookahead(":"),relevance:0},te,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[E,e.REGEXP_MODE,{className:"function",begin:oe,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},b,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},j,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},L,M,R,W,{match:/\$[(.]/}]}}function HT(e){const t={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},r=["true","false","null"],i={scope:"literal",beginKeywords:r.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:r},contains:[t,n,e.QUOTE_STRING_MODE,i,e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var mr="[0-9](_*[0-9])*",Gi=`\\.(${mr})`,Ki="[0-9a-fA-F](_*[0-9a-fA-F])*",WT={className:"number",variants:[{begin:`(\\b(${mr})((${Gi})|\\.)?|(${Gi}))[eE][+-]?(${mr})[fFdD]?\\b`},{begin:`\\b(${mr})((${Gi})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${Gi})[fFdD]?\\b`},{begin:`\\b(${mr})[fFdD]\\b`},{begin:`\\b0[xX]((${Ki})\\.?|(${Ki})?\\.(${Ki}))[pP][+-]?(${mr})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${Ki})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function GT(e){const t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},r={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},i={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},o={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},s={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[o,i]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,o,i]}]};i.contains.push(s);const a={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},l={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(s,{className:"string"}),"self"]}]},c=WT,u=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),d={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},f=d;return f.variants[1].contains=[d],d.variants[1].contains=[f],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,u,n,r,a,l,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[d,e.C_LINE_COMMENT_MODE,u],relevance:0},e.C_LINE_COMMENT_MODE,u,a,l,s,e.C_NUMBER_MODE]},u]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},a,l]},s,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
52
52
  `},c]}}const KT=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),qT=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],YT=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],ZT=[...qT,...YT],XT=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),_g=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Tg=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),QT=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),JT=_g.concat(Tg).sort().reverse();function eN(e){const t=KT(e),n=JT,r="and or not only",i="[\\w-]+",o="("+i+"|@\\{"+i+"\\})",s=[],a=[],l=function(w){return{className:"string",begin:"~?"+w+".*?"+w}},c=function(w,_,C){return{className:w,begin:_,relevance:C}},u={$pattern:/[a-z-]+/,keyword:r,attribute:XT.join(" ")},d={begin:"\\(",end:"\\)",contains:a,keywords:u,relevance:0};a.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,l("'"),l('"'),t.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},t.HEXCOLOR,d,c("variable","@@?"+i,10),c("variable","@\\{"+i+"\\}"),c("built_in","~?`[^`]*?`"),{className:"attribute",begin:i+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},t.IMPORTANT,{beginKeywords:"and not"},t.FUNCTION_DISPATCH);const f=a.concat({begin:/\{/,end:/\}/,contains:s}),p={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(a)},m={begin:o+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+QT.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:a}}]},g={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:u,returnEnd:!0,contains:a,relevance:0}},v={className:"variable",variants:[{begin:"@"+i+"\\s*:",relevance:15},{begin:"@"+i}],starts:{end:"[;}]",returnEnd:!0,contains:f}},y={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:o,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,p,c("keyword","all\\b"),c("variable","@\\{"+i+"\\}"),{begin:"\\b("+ZT.join("|")+")\\b",className:"selector-tag"},t.CSS_NUMBER_MODE,c("selector-tag",o,0),c("selector-id","#"+o),c("selector-class","\\."+o,0),c("selector-tag","&",0),t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+_g.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+Tg.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:f},{begin:"!important"},t.FUNCTION_DISPATCH]},E={begin:i+`:(:)?(${n.join("|")})`,returnBegin:!0,contains:[y]};return s.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,g,v,E,m,y,p,t.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:s}}function tN(e){const t="\\[=*\\[",n="\\]=*\\]",r={begin:t,end:n,contains:["self"]},i=[e.COMMENT("--(?!"+t+")","$"),e.COMMENT("--"+t,n,{contains:[r],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:i.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:i}].concat(i)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[r],relevance:5}])}}function nN(e){const t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t]},r={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[t,n]},i={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},o={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},s={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[t]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[e.HASH_COMMENT_MODE,t,n,r,i,o,s]}}function rN(e){const t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},r={begin:"^[-\\*]{3,}",end:"$"},i={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},a=/[A-Za-z][A-Za-z0-9+.-]*/,l={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,a,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},c={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},u={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},d=e.inherit(c,{contains:[]}),f=e.inherit(u,{contains:[]});c.contains.push(f),u.contains.push(d);let p=[n,l];return[c,u,d,f].forEach(y=>{y.contains=y.contains.concat(p)}),p=p.concat(c,u),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:p},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:p}]}]},n,o,c,u,{className:"quote",begin:"^>\\s+",contains:p,end:"$"},i,r,l,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function iN(e){const t={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},n=/[a-zA-Z@][a-zA-Z0-9_]*/,a={"variable.language":["this","super"],$pattern:n,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},l={$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:a,illegal:"</",contains:[t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+l.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:l,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function oN(e){const t=e.regex,n=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],r=/[dualxmsipngr]{0,12}/,i={$pattern:/[\w.]+/,keyword:n.join(" ")},o={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:i},s={begin:/->\{/,end:/\}/},a={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},l={scope:"variable",variants:[{begin:/\$\d/},{begin:t.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[a]},c={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},u=[e.BACKSLASH_ESCAPE,o,l],d=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],f=(g,v,y="\\1")=>{const E=y==="\\1"?y:t.concat(y,v);return t.concat(t.concat("(?:",g,")"),v,/(?:\\.|[^\\\/])*?/,E,/(?:\\.|[^\\\/])*?/,y,r)},p=(g,v,y)=>t.concat(t.concat("(?:",g,")"),v,/(?:\\.|[^\\\/])*?/,y,r),m=[l,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),s,{className:"string",contains:u,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},c,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:f("s|tr|y",t.either(...d,{capture:!0}))},{begin:f("s|tr|y","\\(","\\)")},{begin:f("s|tr|y","\\[","\\]")},{begin:f("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:p("(?:m|qr)?",/\//,/\//)},{begin:p("m|qr",t.either(...d,{capture:!0}),/\1/)},{begin:p("m|qr",/\(/,/\)/)},{begin:p("m|qr",/\[/,/\]/)},{begin:p("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,a]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,a,c]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return o.contains=m,s.contains=m,{name:"Perl",aliases:["pl","pm"],keywords:i,contains:m}}function sN(e){const t=e.regex,n=/(?![A-Za-z0-9])(?![$])/,r=t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,n),i=t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,n),o=t.concat(/[A-Z]+/,n),s={scope:"variable",match:"\\$+"+r},a={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},l={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},c=e.inherit(e.APOS_STRING_MODE,{illegal:null}),u=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(l)}),d={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(l),"on:begin":(j,W)=>{W.data._beginMatch=j[1]||j[2]},"on:end":(j,W)=>{W.data._beginMatch!==j[1]&&W.ignoreMatch()}},f=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),p=`[
53
- ]`,m={scope:"string",variants:[u,c,d,f]},g={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},v=["false","null","true"],y=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],E=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],_={keyword:y,literal:(j=>{const W=[];return j.forEach(oe=>{W.push(oe),oe.toLowerCase()===oe?W.push(oe.toUpperCase()):W.push(oe.toLowerCase())}),W})(v),built_in:E},C=j=>j.map(W=>W.replace(/\|\d+$/,"")),T={variants:[{match:[/new/,t.concat(p,"+"),t.concat("(?!",C(E).join("\\b|"),"\\b)"),i],scope:{1:"keyword",4:"title.class"}}]},R=t.concat(r,"\\b(?!\\()"),A={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),R],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[i,t.concat(/::/,t.lookahead(/(?!class\b)/)),R],scope:{1:"title.class",3:"variable.constant"}},{match:[i,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[i,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},I={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},b={relevance:0,begin:/\(/,end:/\)/,keywords:_,contains:[I,s,A,e.C_BLOCK_COMMENT_MODE,m,g,T]},M={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",C(y).join("\\b|"),"|",C(E).join("\\b|"),"\\b)"),r,t.concat(p,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[b]};b.contains.push(M);const O=[I,A,e.C_BLOCK_COMMENT_MODE,m,g,T],L={begin:t.concat(/#\[\s*\\?/,t.either(i,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:v,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:v,keyword:["new","array"]},contains:["self",...O]},...O,{scope:"meta",variants:[{match:i},{match:o}]}]};return{case_insensitive:!1,keywords:_,contains:[L,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,M,A,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},T,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:_,contains:["self",L,s,A,e.C_BLOCK_COMMENT_MODE,m,g]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},m,g]}}function aN(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function lN(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function cN(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},c={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},u={begin:/\{\{/,relevance:0},d={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,l,u,c]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,l,u,c]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,u,c]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,u,c]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",p=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,m=`\\b|${r.join("|")}`,g={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${p}))[eE][+-]?(${f})[jJ]?(?=${m})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${m})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${m})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${m})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${m})`},{begin:`\\b(${f})[jJ](?=${m})`}]},v={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},y={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,g,d,e.HASH_COMMENT_MODE]}]};return c.contains=[d,g,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,g,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},d,v,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[y]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[g,y,d]}]}}function uN(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function dN(e){const t=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,r=t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),i=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=t.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:n,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[i,r]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,r]},{scope:{1:"punctuation",2:"number"},match:[o,r]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,r]}]},{scope:{3:"operator"},match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:i},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function fN(e){const t=e.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",r=t.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=t.concat(r,/(::\w+)*/),s={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},c=[e.COMMENT("#","$",{contains:[a]}),e.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],u={className:"subst",begin:/#\{/,end:/\}/,keywords:s},d={className:"string",contains:[e.BACKSLASH_ESCAPE,u],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:t.concat(/<<[-~]?'?/,t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,u]})]}]},f="[1-9](_?[0-9])*|0",p="[0-9](_?[0-9])*",m={className:"number",relevance:0,variants:[{begin:`\\b(${f})(\\.(${p}))?([eE][+-]?(${p})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},g={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},T=[d,{variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{match:[/\b(class|module)\s+/,i]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,i],scope:{2:"title.class"},keywords:s},{relevance:0,match:[i,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:r,scope:"title.class"},{match:[/def/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[g]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[d,{begin:n}],relevance:0},m,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,u],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(l,c),relevance:0}].concat(l,c);u.contains=T,g.contains=T;const b=[{begin:/^\s*=>/,starts:{end:"$",contains:T}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:T}}];return c.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(b).concat(c).concat(T)}}function hN(e){const t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),i=t.concat(n,e.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,i,t.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],l=["true","false","Some","None","Ok","Err"],c=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],u=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:u,keyword:a,literal:l,built_in:c},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+s},{begin:"\\b0o([0-7_]+)"+s},{begin:"\\b0x([A-Fa-f0-9_]+)"+s},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+s}],relevance:0},{begin:[/fn/,/\s+/,r],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,r],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,r,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:e.IDENT_RE+"::",keywords:{keyword:"Self",built_in:c,type:u}},{className:"punctuation",begin:"->"},o]}}const pN=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),gN=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],mN=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],bN=[...gN,...mN],yN=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),xN=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),vN=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),wN=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function EN(e){const t=pN(e),n=vN,r=xN,i="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+bN.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+r.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+n.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[t.CSS_NUMBER_MODE]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+wN.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[t.BLOCK_COMMENT,a,t.HEXCOLOR,t.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT,t.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:i,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:yN.join(" ")},contains:[{begin:i,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,t.CSS_NUMBER_MODE]},t.FUNCTION_DISPATCH]}}function SN(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function kN(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],l=["add","asc","collation","desc","final","first","last","view"],c=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],u=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],d=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],f=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],p=u,m=[...c,...l].filter(C=>!u.includes(C)),g={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},v={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},y={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function E(C){return t.concat(/\b/,t.either(...C.map(T=>T.replace(/\s+/,"\\s+"))),/\b/)}const w={scope:"keyword",match:E(f),relevance:0};function _(C,{exceptions:T,when:R}={}){const A=R;return T=T||[],C.map(I=>I.match(/\|\d+$/)||T.includes(I)?I:A(I)?`${I}|0`:I)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:_(m,{when:C=>C.length<3}),literal:o,type:a,built_in:d},contains:[{scope:"type",match:E(s)},w,y,g,r,i,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,v]}}function Ng(e){return e?typeof e=="string"?e:e.source:null}function Kr(e){return Ge("(?=",e,")")}function Ge(...e){return e.map(n=>Ng(n)).join("")}function CN(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function Mt(...e){return"("+(CN(e).capture?"":"?:")+e.map(r=>Ng(r)).join("|")+")"}const Wl=e=>Ge(/\b/,e,/\w$/.test(e)?/\b/:/\B/),_N=["Protocol","Type"].map(Wl),Pd=["init","self"].map(Wl),TN=["Any","Self"],$s=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],Dd=["false","nil","true"],NN=["assignment","associativity","higherThan","left","lowerThan","none","right"],AN=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],Ld=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Ag=Mt(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Mg=Mt(Ag,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),Vs=Ge(Ag,Mg,"*"),Rg=Mt(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),So=Mt(Rg,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),ln=Ge(Rg,So,"*"),qi=Ge(/[A-Z]/,So,"*"),MN=["attached","autoclosure",Ge(/convention\(/,Mt("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",Ge(/objc\(/,ln,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],RN=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function IN(e){const t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),r=[e.C_LINE_COMMENT_MODE,n],i={match:[/\./,Mt(..._N,...Pd)],className:{2:"keyword"}},o={match:Ge(/\./,Mt(...$s)),relevance:0},s=$s.filter(se=>typeof se=="string").concat(["_|0"]),a=$s.filter(se=>typeof se!="string").concat(TN).map(Wl),l={variants:[{className:"keyword",match:Mt(...a,...Pd)}]},c={$pattern:Mt(/\b\w+/,/#\w+/),keyword:s.concat(AN),literal:Dd},u=[i,o,l],d={match:Ge(/\./,Mt(...Ld)),relevance:0},f={className:"built_in",match:Ge(/\b/,Mt(...Ld),/(?=\()/)},p=[d,f],m={match:/->/,relevance:0},g={className:"operator",relevance:0,variants:[{match:Vs},{match:`\\.(\\.|${Mg})+`}]},v=[m,g],y="([0-9]_*)+",E="([0-9a-fA-F]_*)+",w={className:"number",relevance:0,variants:[{match:`\\b(${y})(\\.(${y}))?([eE][+-]?(${y}))?\\b`},{match:`\\b0x(${E})(\\.(${E}))?([pP][+-]?(${y}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},_=(se="")=>({className:"subst",variants:[{match:Ge(/\\/,se,/[0\\tnr"']/)},{match:Ge(/\\/,se,/u\{[0-9a-fA-F]{1,8}\}/)}]}),C=(se="")=>({className:"subst",match:Ge(/\\/,se,/[\t ]*(?:[\r\n]|\r\n)/)}),T=(se="")=>({className:"subst",label:"interpol",begin:Ge(/\\/,se,/\(/),end:/\)/}),R=(se="")=>({begin:Ge(se,/"""/),end:Ge(/"""/,se),contains:[_(se),C(se),T(se)]}),A=(se="")=>({begin:Ge(se,/"/),end:Ge(/"/,se),contains:[_(se),T(se)]}),I={className:"string",variants:[R(),R("#"),R("##"),R("###"),A(),A("#"),A("##"),A("###")]},b=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],M={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:b},O=se=>{const be=Ge(se,/\//),ke=Ge(/\//,se);return{begin:be,end:ke,contains:[...b,{scope:"comment",begin:`#(?!.*${ke})`,end:/$/}]}},L={scope:"regexp",variants:[O("###"),O("##"),O("#"),M]},j={match:Ge(/`/,ln,/`/)},W={className:"variable",match:/\$\d+/},oe={className:"variable",match:`\\$${So}+`},te=[j,W,oe],B={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:RN,contains:[...v,w,I]}]}},V={scope:"keyword",match:Ge(/@/,Mt(...MN),Kr(Mt(/\(/,/\s+/)))},x={scope:"meta",match:Ge(/@/,ln)},z=[B,V,x],G={match:Kr(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:Ge(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,So,"+")},{className:"type",match:qi,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:Ge(/\s+&\s+/,Kr(qi)),relevance:0}]},k={begin:/</,end:/>/,keywords:c,contains:[...r,...u,...z,m,G]};G.contains.push(k);const K={match:Ge(ln,/\s*:/),keywords:"_|0",relevance:0},Z={begin:/\(/,end:/\)/,relevance:0,keywords:c,contains:["self",K,...r,L,...u,...p,...v,w,I,...te,...z,G]},X={begin:/</,end:/>/,keywords:"repeat each",contains:[...r,G]},ie={begin:Mt(Kr(Ge(ln,/\s*:/)),Kr(Ge(ln,/\s+/,ln,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:ln}]},Y={begin:/\(/,end:/\)/,keywords:c,contains:[ie,...r,...u,...v,w,I,...z,G,Z],endsParent:!0,illegal:/["']/},re={match:[/(func|macro)/,/\s+/,Mt(j.match,ln,Vs)],className:{1:"keyword",3:"title.function"},contains:[X,Y,t],illegal:[/\[/,/%/]},H={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[X,Y,t],illegal:/\[|%/},Ee={match:[/operator/,/\s+/,Vs],className:{1:"keyword",3:"title"}},P={begin:[/precedencegroup/,/\s+/,qi],className:{1:"keyword",3:"title"},contains:[G],keywords:[...NN,...Dd],end:/}/},ne={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Se={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},pe={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,ln,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:c,contains:[X,...u,{begin:/:/,end:/\{/,keywords:c,contains:[{scope:"title.class.inherited",match:qi},...u],relevance:0}]};for(const se of I.variants){const be=se.contains.find(ye=>ye.label==="interpol");be.keywords=c;const ke=[...u,...p,...v,w,I,...te];be.contains=[...ke,{begin:/\(/,end:/\)/,contains:["self",...ke]}]}return{name:"Swift",keywords:c,contains:[...r,re,H,ne,Se,pe,Ee,P,{beginKeywords:"import",end:/$/,contains:[...r],relevance:0},L,...u,...p,...v,w,I,...te,...z,G,Z]}}const ko="[A-Za-z$_][0-9A-Za-z$_]*",Ig=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Og=["true","false","null","undefined","NaN","Infinity"],Pg=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Dg=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Lg=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Fg=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],jg=[].concat(Lg,Pg,Dg);function ON(e){const t=e.regex,n=(B,{after:V})=>{const x="</"+B[0].slice(1);return B.input.indexOf(x,V)!==-1},r=ko,i={begin:"<>",end:"</>"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(B,V)=>{const x=B[0].length+B.index,z=B.input[x];if(z==="<"||z===","){V.ignoreMatch();return}z===">"&&(n(B,{after:x})||V.ignoreMatch());let G;const k=B.input.substring(x);if(G=k.match(/^\s*=/)){V.ignoreMatch();return}if((G=k.match(/^\s+extends\s+/))&&G.index===0){V.ignoreMatch();return}}},a={$pattern:ko,keyword:Ig,literal:Og,built_in:jg,"variable.language":Fg},l="[0-9](_?[0-9])*",c=`\\.(${l})`,u="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",d={className:"number",variants:[{begin:`(\\b(${u})((${c})|\\.)?|(${c}))[eE][+-]?(${l})\\b`},{begin:`\\b(${u})\\b((${c})\\b|\\.)?|(${c})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},m={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},g={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},v={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},E={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,{match:/\$\d+/},d];f.contains=w.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(w)});const _=[].concat(E,f.contains),C=_.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(_)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C},R={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},A={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Pg,...Dg]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},b={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},M={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function O(B){return t.concat("(?!",B.join("|"),")")}const L={match:t.concat(/\b/,O([...Lg,"super","import"].map(B=>`${B}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},j={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},W={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},oe="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",te={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(oe)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:C,CLASS_REFERENCE:A},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,E,{match:/\$\d+/},d,A,{scope:"attr",match:r+t.lookahead(":"),relevance:0},te,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[E,e.REGEXP_MODE,{className:"function",begin:oe,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},b,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},j,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},L,M,R,W,{match:/\$[(.]/}]}}function PN(e){const t=e.regex,n=ON(e),r=ko,i=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:i},contains:[n.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],c={$pattern:ko,keyword:Ig.concat(l),literal:Og,built_in:jg.concat(i),"variable.language":Fg},u={className:"meta",begin:"@"+r},d=(g,v,y)=>{const E=g.contains.findIndex(w=>w.label===v);if(E===-1)throw new Error("can not find mode to replace");g.contains.splice(E,1,y)};Object.assign(n.keywords,c),n.exports.PARAMS_CONTAINS.push(u);const f=n.contains.find(g=>g.scope==="attr"),p=Object.assign({},f,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,f,p]),n.contains=n.contains.concat([u,o,s,p]),d(n,"shebang",e.SHEBANG()),d(n,"use_strict",a);const m=n.contains.find(g=>g.label==="func.def");return m.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function DN(e){const t=e.regex,n={className:"string",begin:/"(""|[^/n])"C\b/},r={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},i=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:t.concat(/# */,t.either(o,i),/ *#/)},{begin:t.concat(/# */,a,/ *#/)},{begin:t.concat(/# */,s,/ *#/)},{begin:t.concat(/# */,t.either(o,i),/ +/,t.either(s,a),/ *#/)}]},c={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},u={className:"label",begin:/^\w+:/},d=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),f=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[n,r,l,c,u,d,f,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[f]}]}}function LN(e){e.regex;const t=e.COMMENT(/\(;/,/;\)/);t.contains.push("self");const n=e.COMMENT(/;;/,/$/),r=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],i={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},c={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:r},contains:[n,t,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,i,e.QUOTE_STRING_MODE,l,c,a]}}function FN(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,i={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=e.inherit(o,{begin:/\(/,end:/\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:"string"}),l=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),c={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[i]},{begin:/'/,end:/'/,contains:[i]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[o,s,l,a]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},i,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[c],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[c],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:c}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function jN(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},i={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,i]},a=e.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),f={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},m={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},v=[r,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},f,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},m,g,o,s],y=[...v];return y.pop(),y.push(a),p.contains=y,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:v}}const BN={arduino:vT,bash:wT,c:ET,cpp:ST,csharp:kT,css:OT,diff:PT,go:DT,graphql:LT,ini:FT,java:jT,javascript:UT,json:HT,kotlin:GT,less:eN,lua:tN,makefile:nN,markdown:rN,objectivec:iN,perl:oN,php:sN,"php-template":aN,plaintext:lN,python:cN,"python-repl":uN,r:dN,ruby:fN,rust:hN,scss:EN,shell:SN,sql:kN,swift:IN,typescript:PN,vbnet:DN,wasm:LN,xml:FN,yaml:jN};var zs,Fd;function $N(){if(Fd)return zs;Fd=1;function e(S){return S instanceof Map?S.clear=S.delete=S.set=function(){throw new Error("map is read-only")}:S instanceof Set&&(S.add=S.clear=S.delete=function(){throw new Error("set is read-only")}),Object.freeze(S),Object.getOwnPropertyNames(S).forEach(F=>{const q=S[F],ce=typeof q;(ce==="object"||ce==="function")&&!Object.isFrozen(q)&&e(q)}),S}class t{constructor(F){F.data===void 0&&(F.data={}),this.data=F.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(S){return S.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function r(S,...F){const q=Object.create(null);for(const ce in S)q[ce]=S[ce];return F.forEach(function(ce){for(const Qe in ce)q[Qe]=ce[Qe]}),q}const i="</span>",o=S=>!!S.scope,s=(S,{prefix:F})=>{if(S.startsWith("language:"))return S.replace("language:","language-");if(S.includes(".")){const q=S.split(".");return[`${F}${q.shift()}`,...q.map((ce,Qe)=>`${ce}${"_".repeat(Qe+1)}`)].join(" ")}return`${F}${S}`};class a{constructor(F,q){this.buffer="",this.classPrefix=q.classPrefix,F.walk(this)}addText(F){this.buffer+=n(F)}openNode(F){if(!o(F))return;const q=s(F.scope,{prefix:this.classPrefix});this.span(q)}closeNode(F){o(F)&&(this.buffer+=i)}value(){return this.buffer}span(F){this.buffer+=`<span class="${F}">`}}const l=(S={})=>{const F={children:[]};return Object.assign(F,S),F};class c{constructor(){this.rootNode=l(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(F){this.top.children.push(F)}openNode(F){const q=l({scope:F});this.add(q),this.stack.push(q)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(F){return this.constructor._walk(F,this.rootNode)}static _walk(F,q){return typeof q=="string"?F.addText(q):q.children&&(F.openNode(q),q.children.forEach(ce=>this._walk(F,ce)),F.closeNode(q)),F}static _collapse(F){typeof F!="string"&&F.children&&(F.children.every(q=>typeof q=="string")?F.children=[F.children.join("")]:F.children.forEach(q=>{c._collapse(q)}))}}class u extends c{constructor(F){super(),this.options=F}addText(F){F!==""&&this.add(F)}startScope(F){this.openNode(F)}endScope(){this.closeNode()}__addSublanguage(F,q){const ce=F.root;q&&(ce.scope=`language:${q}`),this.add(ce)}toHTML(){return new a(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function d(S){return S?typeof S=="string"?S:S.source:null}function f(S){return g("(?=",S,")")}function p(S){return g("(?:",S,")*")}function m(S){return g("(?:",S,")?")}function g(...S){return S.map(q=>d(q)).join("")}function v(S){const F=S[S.length-1];return typeof F=="object"&&F.constructor===Object?(S.splice(S.length-1,1),F):{}}function y(...S){return"("+(v(S).capture?"":"?:")+S.map(ce=>d(ce)).join("|")+")"}function E(S){return new RegExp(S.toString()+"|").exec("").length-1}function w(S,F){const q=S&&S.exec(F);return q&&q.index===0}const _=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function C(S,{joinWith:F}){let q=0;return S.map(ce=>{q+=1;const Qe=q;let ut=d(ce),ge="";for(;ut.length>0;){const de=_.exec(ut);if(!de){ge+=ut;break}ge+=ut.substring(0,de.index),ut=ut.substring(de.index+de[0].length),de[0][0]==="\\"&&de[1]?ge+="\\"+String(Number(de[1])+Qe):(ge+=de[0],de[0]==="("&&q++)}return ge}).map(ce=>`(${ce})`).join(F)}const T=/\b\B/,R="[a-zA-Z]\\w*",A="[a-zA-Z_]\\w*",I="\\b\\d+(\\.\\d+)?",b="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",M="\\b(0b[01]+)",O="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",L=(S={})=>{const F=/^#![ ]*\//;return S.binary&&(S.begin=g(F,/.*\b/,S.binary,/\b.*/)),r({scope:"meta",begin:F,end:/$/,relevance:0,"on:begin":(q,ce)=>{q.index!==0&&ce.ignoreMatch()}},S)},j={begin:"\\\\[\\s\\S]",relevance:0},W={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[j]},oe={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[j]},te={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},B=function(S,F,q={}){const ce=r({scope:"comment",begin:S,end:F,contains:[]},q);ce.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const Qe=y("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return ce.contains.push({begin:g(/[ ]+/,"(",Qe,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),ce},V=B("//","$"),x=B("/\\*","\\*/"),z=B("#","$"),G={scope:"number",begin:I,relevance:0},k={scope:"number",begin:b,relevance:0},K={scope:"number",begin:M,relevance:0},Z={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[j,{begin:/\[/,end:/\]/,relevance:0,contains:[j]}]},X={scope:"title",begin:R,relevance:0},ie={scope:"title",begin:A,relevance:0},Y={begin:"\\.\\s*"+A,relevance:0};var H=Object.freeze({__proto__:null,APOS_STRING_MODE:W,BACKSLASH_ESCAPE:j,BINARY_NUMBER_MODE:K,BINARY_NUMBER_RE:M,COMMENT:B,C_BLOCK_COMMENT_MODE:x,C_LINE_COMMENT_MODE:V,C_NUMBER_MODE:k,C_NUMBER_RE:b,END_SAME_AS_BEGIN:function(S){return Object.assign(S,{"on:begin":(F,q)=>{q.data._beginMatch=F[1]},"on:end":(F,q)=>{q.data._beginMatch!==F[1]&&q.ignoreMatch()}})},HASH_COMMENT_MODE:z,IDENT_RE:R,MATCH_NOTHING_RE:T,METHOD_GUARD:Y,NUMBER_MODE:G,NUMBER_RE:I,PHRASAL_WORDS_MODE:te,QUOTE_STRING_MODE:oe,REGEXP_MODE:Z,RE_STARTERS_RE:O,SHEBANG:L,TITLE_MODE:X,UNDERSCORE_IDENT_RE:A,UNDERSCORE_TITLE_MODE:ie});function Ee(S,F){S.input[S.index-1]==="."&&F.ignoreMatch()}function P(S,F){S.className!==void 0&&(S.scope=S.className,delete S.className)}function ne(S,F){F&&S.beginKeywords&&(S.begin="\\b("+S.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",S.__beforeBegin=Ee,S.keywords=S.keywords||S.beginKeywords,delete S.beginKeywords,S.relevance===void 0&&(S.relevance=0))}function Se(S,F){Array.isArray(S.illegal)&&(S.illegal=y(...S.illegal))}function pe(S,F){if(S.match){if(S.begin||S.end)throw new Error("begin & end are not supported with match");S.begin=S.match,delete S.match}}function se(S,F){S.relevance===void 0&&(S.relevance=1)}const be=(S,F)=>{if(!S.beforeMatch)return;if(S.starts)throw new Error("beforeMatch cannot be used with starts");const q=Object.assign({},S);Object.keys(S).forEach(ce=>{delete S[ce]}),S.keywords=q.keywords,S.begin=g(q.beforeMatch,f(q.begin)),S.starts={relevance:0,contains:[Object.assign(q,{endsParent:!0})]},S.relevance=0,delete q.beforeMatch},ke=["of","and","for","in","not","or","if","then","parent","list","value"],ye="keyword";function ct(S,F,q=ye){const ce=Object.create(null);return typeof S=="string"?Qe(q,S.split(" ")):Array.isArray(S)?Qe(q,S):Object.keys(S).forEach(function(ut){Object.assign(ce,ct(S[ut],F,ut))}),ce;function Qe(ut,ge){F&&(ge=ge.map(de=>de.toLowerCase())),ge.forEach(function(de){const Te=de.split("|");ce[Te[0]]=[ut,xt(Te[0],Te[1])]})}}function xt(S,F){return F?Number(F):Ke(S)?0:1}function Ke(S){return ke.includes(S.toLowerCase())}const ue={},mt=S=>{console.error(S)},qe=(S,...F)=>{console.log(`WARN: ${S}`,...F)},$=(S,F)=>{ue[`${S}/${F}`]||(console.log(`Deprecated as of ${S}. ${F}`),ue[`${S}/${F}`]=!0)},J=new Error;function we(S,F,{key:q}){let ce=0;const Qe=S[q],ut={},ge={};for(let de=1;de<=F.length;de++)ge[de+ce]=Qe[de],ut[de+ce]=!0,ce+=E(F[de-1]);S[q]=ge,S[q]._emit=ut,S[q]._multi=!0}function Oe(S){if(Array.isArray(S.begin)){if(S.skip||S.excludeBegin||S.returnBegin)throw mt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),J;if(typeof S.beginScope!="object"||S.beginScope===null)throw mt("beginScope must be object"),J;we(S,S.begin,{key:"beginScope"}),S.begin=C(S.begin,{joinWith:""})}}function Fe(S){if(Array.isArray(S.end)){if(S.skip||S.excludeEnd||S.returnEnd)throw mt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),J;if(typeof S.endScope!="object"||S.endScope===null)throw mt("endScope must be object"),J;we(S,S.end,{key:"endScope"}),S.end=C(S.end,{joinWith:""})}}function At(S){S.scope&&typeof S.scope=="object"&&S.scope!==null&&(S.beginScope=S.scope,delete S.scope)}function Qt(S){At(S),typeof S.beginScope=="string"&&(S.beginScope={_wrap:S.beginScope}),typeof S.endScope=="string"&&(S.endScope={_wrap:S.endScope}),Oe(S),Fe(S)}function Bt(S){function F(ge,de){return new RegExp(d(ge),"m"+(S.case_insensitive?"i":"")+(S.unicodeRegex?"u":"")+(de?"g":""))}class q{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(de,Te){Te.position=this.position++,this.matchIndexes[this.matchAt]=Te,this.regexes.push([Te,de]),this.matchAt+=E(de)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const de=this.regexes.map(Te=>Te[1]);this.matcherRe=F(C(de,{joinWith:"|"}),!0),this.lastIndex=0}exec(de){this.matcherRe.lastIndex=this.lastIndex;const Te=this.matcherRe.exec(de);if(!Te)return null;const vt=Te.findIndex(($r,es)=>es>0&&$r!==void 0),ht=this.matchIndexes[vt];return Te.splice(0,vt),Object.assign(Te,ht)}}class ce{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(de){if(this.multiRegexes[de])return this.multiRegexes[de];const Te=new q;return this.rules.slice(de).forEach(([vt,ht])=>Te.addRule(vt,ht)),Te.compile(),this.multiRegexes[de]=Te,Te}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(de,Te){this.rules.push([de,Te]),Te.type==="begin"&&this.count++}exec(de){const Te=this.getMatcher(this.regexIndex);Te.lastIndex=this.lastIndex;let vt=Te.exec(de);if(this.resumingScanAtSamePosition()&&!(vt&&vt.index===this.lastIndex)){const ht=this.getMatcher(0);ht.lastIndex=this.lastIndex+1,vt=ht.exec(de)}return vt&&(this.regexIndex+=vt.position+1,this.regexIndex===this.count&&this.considerAll()),vt}}function Qe(ge){const de=new ce;return ge.contains.forEach(Te=>de.addRule(Te.begin,{rule:Te,type:"begin"})),ge.terminatorEnd&&de.addRule(ge.terminatorEnd,{type:"end"}),ge.illegal&&de.addRule(ge.illegal,{type:"illegal"}),de}function ut(ge,de){const Te=ge;if(ge.isCompiled)return Te;[P,pe,Qt,be].forEach(ht=>ht(ge,de)),S.compilerExtensions.forEach(ht=>ht(ge,de)),ge.__beforeBegin=null,[ne,Se,se].forEach(ht=>ht(ge,de)),ge.isCompiled=!0;let vt=null;return typeof ge.keywords=="object"&&ge.keywords.$pattern&&(ge.keywords=Object.assign({},ge.keywords),vt=ge.keywords.$pattern,delete ge.keywords.$pattern),vt=vt||/\w+/,ge.keywords&&(ge.keywords=ct(ge.keywords,S.case_insensitive)),Te.keywordPatternRe=F(vt,!0),de&&(ge.begin||(ge.begin=/\B|\b/),Te.beginRe=F(Te.begin),!ge.end&&!ge.endsWithParent&&(ge.end=/\B|\b/),ge.end&&(Te.endRe=F(Te.end)),Te.terminatorEnd=d(Te.end)||"",ge.endsWithParent&&de.terminatorEnd&&(Te.terminatorEnd+=(ge.end?"|":"")+de.terminatorEnd)),ge.illegal&&(Te.illegalRe=F(ge.illegal)),ge.contains||(ge.contains=[]),ge.contains=[].concat(...ge.contains.map(function(ht){return Wt(ht==="self"?ge:ht)})),ge.contains.forEach(function(ht){ut(ht,Te)}),ge.starts&&ut(ge.starts,de),Te.matcher=Qe(Te),Te}if(S.compilerExtensions||(S.compilerExtensions=[]),S.contains&&S.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return S.classNameAliases=r(S.classNameAliases||{}),ut(S)}function Dt(S){return S?S.endsWithParent||Dt(S.starts):!1}function Wt(S){return S.variants&&!S.cachedVariants&&(S.cachedVariants=S.variants.map(function(F){return r(S,{variants:null},F)})),S.cachedVariants?S.cachedVariants:Dt(S)?r(S,{starts:S.starts?r(S.starts):null}):Object.isFrozen(S)?r(S):S}var wt="11.11.1";class rn extends Error{constructor(F,q){super(F),this.name="HTMLInjectionError",this.html=q}}const Et=n,rr=r,ir=Symbol("nomatch"),Br=7,Bn=function(S){const F=Object.create(null),q=Object.create(null),ce=[];let Qe=!0;const ut="Could not find the language '{}', did you forget to load/include a language module?",ge={disableAutodetect:!0,name:"Plain text",contains:[]};let de={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:u};function Te(ee){return de.noHighlightRe.test(ee)}function vt(ee){let xe=ee.className+" ";xe+=ee.parentNode?ee.parentNode.className:"";const De=de.languageDetectRe.exec(xe);if(De){const Je=Cn(De[1]);return Je||(qe(ut.replace("{}",De[1])),qe("Falling back to no-highlight mode for this block.",ee)),Je?De[1]:"no-highlight"}return xe.split(/\s+/).find(Je=>Te(Je)||Cn(Je))}function ht(ee,xe,De){let Je="",bt="";typeof xe=="object"?(Je=ee,De=xe.ignoreIllegals,bt=xe.language):($("10.7.0","highlight(lang, code, ...args) has been deprecated."),$("10.7.0",`Please use highlight(code, options) instead.
53
+ ]`,m={scope:"string",variants:[u,c,d,f]},g={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},v=["false","null","true"],y=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],E=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],_={keyword:y,literal:(j=>{const W=[];return j.forEach(oe=>{W.push(oe),oe.toLowerCase()===oe?W.push(oe.toUpperCase()):W.push(oe.toLowerCase())}),W})(v),built_in:E},C=j=>j.map(W=>W.replace(/\|\d+$/,"")),T={variants:[{match:[/new/,t.concat(p,"+"),t.concat("(?!",C(E).join("\\b|"),"\\b)"),i],scope:{1:"keyword",4:"title.class"}}]},R=t.concat(r,"\\b(?!\\()"),A={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),R],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[i,t.concat(/::/,t.lookahead(/(?!class\b)/)),R],scope:{1:"title.class",3:"variable.constant"}},{match:[i,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[i,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},I={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},b={relevance:0,begin:/\(/,end:/\)/,keywords:_,contains:[I,s,A,e.C_BLOCK_COMMENT_MODE,m,g,T]},M={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",C(y).join("\\b|"),"|",C(E).join("\\b|"),"\\b)"),r,t.concat(p,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[b]};b.contains.push(M);const O=[I,A,e.C_BLOCK_COMMENT_MODE,m,g,T],L={begin:t.concat(/#\[\s*\\?/,t.either(i,o)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:v,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:v,keyword:["new","array"]},contains:["self",...O]},...O,{scope:"meta",variants:[{match:i},{match:o}]}]};return{case_insensitive:!1,keywords:_,contains:[L,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},a,{scope:"variable.language",match:/\$this\b/},s,M,A,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},T,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:_,contains:["self",L,s,A,e.C_BLOCK_COMMENT_MODE,m,g]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},m,g]}}function aN(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function lN(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function cN(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],a={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},l={className:"meta",begin:/^(>>>|\.\.\.) /},c={className:"subst",begin:/\{/,end:/\}/,keywords:a,illegal:/#/},u={begin:/\{\{/,relevance:0},d={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,l],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,l,u,c]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,l,u,c]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,u,c]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,u,c]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},f="[0-9](_?[0-9])*",p=`(\\b(${f}))?\\.(${f})|\\b(${f})\\.`,m=`\\b|${r.join("|")}`,g={className:"number",relevance:0,variants:[{begin:`(\\b(${f})|(${p}))[eE][+-]?(${f})[jJ]?(?=${m})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${m})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${m})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${m})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${m})`},{begin:`\\b(${f})[jJ](?=${m})`}]},v={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:a,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},y={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:["self",l,g,d,e.HASH_COMMENT_MODE]}]};return c.contains=[d,g,l],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:a,illegal:/(<\/|\?)|=>/,contains:[l,g,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},d,v,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[y]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[g,y,d]}]}}function uN(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function dN(e){const t=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,r=t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),i=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,o=t.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:n,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[i,r]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,r]},{scope:{1:"punctuation",2:"number"},match:[o,r]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,r]}]},{scope:{3:"operator"},match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:i},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:o},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function fN(e){const t=e.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",r=t.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),i=t.concat(r,/(::\w+)*/),s={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},a={className:"doctag",begin:"@[A-Za-z]+"},l={begin:"#<",end:">"},c=[e.COMMENT("#","$",{contains:[a]}),e.COMMENT("^=begin","^=end",{contains:[a],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],u={className:"subst",begin:/#\{/,end:/\}/,keywords:s},d={className:"string",contains:[e.BACKSLASH_ESCAPE,u],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:t.concat(/<<[-~]?'?/,t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,u]})]}]},f="[1-9](_?[0-9])*|0",p="[0-9](_?[0-9])*",m={className:"number",relevance:0,variants:[{begin:`\\b(${f})(\\.(${p}))?([eE][+-]?(${p})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},g={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:s}]},T=[d,{variants:[{match:[/class\s+/,i,/\s+<\s+/,i]},{match:[/\b(class|module)\s+/,i]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:s},{match:[/(include|extend)\s+/,i],scope:{2:"title.class"},keywords:s},{relevance:0,match:[i,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:r,scope:"title.class"},{match:[/def/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[g]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[d,{begin:n}],relevance:0},m,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:s},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,u],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(l,c),relevance:0}].concat(l,c);u.contains=T,g.contains=T;const b=[{begin:/^\s*=>/,starts:{end:"$",contains:T}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:s,contains:T}}];return c.unshift(l),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(b).concat(c).concat(T)}}function hN(e){const t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),i=t.concat(n,e.IDENT_RE),o={className:"title.function.invoke",relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,i,t.lookahead(/\s*\(/))},s="([ui](8|16|32|64|128|size)|f(32|64))?",a=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],l=["true","false","Some","None","Ok","Err"],c=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],u=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:u,keyword:a,literal:l,built_in:c},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+s},{begin:"\\b0o([0-7_]+)"+s},{begin:"\\b0x([A-Fa-f0-9_]+)"+s},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+s}],relevance:0},{begin:[/fn/,/\s+/,r],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,r],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,r,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:e.IDENT_RE+"::",keywords:{keyword:"Self",built_in:c,type:u}},{className:"punctuation",begin:"->"},o]}}const pN=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),gN=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],mN=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],bN=[...gN,...mN],yN=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),xN=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),vN=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),wN=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function EN(e){const t=pN(e),n=vN,r=xN,i="@[a-z-]+",o="and or not only",a={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+bN.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+r.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+n.join("|")+")"},a,{begin:/\(/,end:/\)/,contains:[t.CSS_NUMBER_MODE]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+wN.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[t.BLOCK_COMMENT,a,t.HEXCOLOR,t.CSS_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT,t.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:i,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:o,attribute:yN.join(" ")},contains:[{begin:i,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},a,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,t.CSS_NUMBER_MODE]},t.FUNCTION_DISPATCH]}}function SN(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function kN(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],a=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],l=["add","asc","collation","desc","final","first","last","view"],c=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],u=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],d=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],f=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],p=u,m=[...c,...l].filter(C=>!u.includes(C)),g={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},v={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},y={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function E(C){return t.concat(/\b/,t.either(...C.map(T=>T.replace(/\s+/,"\\s+"))),/\b/)}const w={scope:"keyword",match:E(f),relevance:0};function _(C,{exceptions:T,when:R}={}){const A=R;return T=T||[],C.map(I=>I.match(/\|\d+$/)||T.includes(I)?I:A(I)?`${I}|0`:I)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:_(m,{when:C=>C.length<3}),literal:o,type:a,built_in:d},contains:[{scope:"type",match:E(s)},w,y,g,r,i,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,v]}}function Ng(e){return e?typeof e=="string"?e:e.source:null}function Kr(e){return Ge("(?=",e,")")}function Ge(...e){return e.map(n=>Ng(n)).join("")}function CN(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function Mt(...e){return"("+(CN(e).capture?"":"?:")+e.map(r=>Ng(r)).join("|")+")"}const Wl=e=>Ge(/\b/,e,/\w$/.test(e)?/\b/:/\B/),_N=["Protocol","Type"].map(Wl),Pd=["init","self"].map(Wl),TN=["Any","Self"],$s=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],Dd=["false","nil","true"],NN=["assignment","associativity","higherThan","left","lowerThan","none","right"],AN=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],Ld=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],Ag=Mt(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),Mg=Mt(Ag,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),Vs=Ge(Ag,Mg,"*"),Rg=Mt(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),So=Mt(Rg,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),ln=Ge(Rg,So,"*"),qi=Ge(/[A-Z]/,So,"*"),MN=["attached","autoclosure",Ge(/convention\(/,Mt("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",Ge(/objc\(/,ln,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],RN=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function IN(e){const t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),r=[e.C_LINE_COMMENT_MODE,n],i={match:[/\./,Mt(..._N,...Pd)],className:{2:"keyword"}},o={match:Ge(/\./,Mt(...$s)),relevance:0},s=$s.filter(se=>typeof se=="string").concat(["_|0"]),a=$s.filter(se=>typeof se!="string").concat(TN).map(Wl),l={variants:[{className:"keyword",match:Mt(...a,...Pd)}]},c={$pattern:Mt(/\b\w+/,/#\w+/),keyword:s.concat(AN),literal:Dd},u=[i,o,l],d={match:Ge(/\./,Mt(...Ld)),relevance:0},f={className:"built_in",match:Ge(/\b/,Mt(...Ld),/(?=\()/)},p=[d,f],m={match:/->/,relevance:0},g={className:"operator",relevance:0,variants:[{match:Vs},{match:`\\.(\\.|${Mg})+`}]},v=[m,g],y="([0-9]_*)+",E="([0-9a-fA-F]_*)+",w={className:"number",relevance:0,variants:[{match:`\\b(${y})(\\.(${y}))?([eE][+-]?(${y}))?\\b`},{match:`\\b0x(${E})(\\.(${E}))?([pP][+-]?(${y}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},_=(se="")=>({className:"subst",variants:[{match:Ge(/\\/,se,/[0\\tnr"']/)},{match:Ge(/\\/,se,/u\{[0-9a-fA-F]{1,8}\}/)}]}),C=(se="")=>({className:"subst",match:Ge(/\\/,se,/[\t ]*(?:[\r\n]|\r\n)/)}),T=(se="")=>({className:"subst",label:"interpol",begin:Ge(/\\/,se,/\(/),end:/\)/}),R=(se="")=>({begin:Ge(se,/"""/),end:Ge(/"""/,se),contains:[_(se),C(se),T(se)]}),A=(se="")=>({begin:Ge(se,/"/),end:Ge(/"/,se),contains:[_(se),T(se)]}),I={className:"string",variants:[R(),R("#"),R("##"),R("###"),A(),A("#"),A("##"),A("###")]},b=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],M={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:b},O=se=>{const be=Ge(se,/\//),ke=Ge(/\//,se);return{begin:be,end:ke,contains:[...b,{scope:"comment",begin:`#(?!.*${ke})`,end:/$/}]}},L={scope:"regexp",variants:[O("###"),O("##"),O("#"),M]},j={match:Ge(/`/,ln,/`/)},W={className:"variable",match:/\$\d+/},oe={className:"variable",match:`\\$${So}+`},te=[j,W,oe],B={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:RN,contains:[...v,w,I]}]}},$={scope:"keyword",match:Ge(/@/,Mt(...MN),Kr(Mt(/\(/,/\s+/)))},x={scope:"meta",match:Ge(/@/,ln)},z=[B,$,x],G={match:Kr(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:Ge(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,So,"+")},{className:"type",match:qi,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:Ge(/\s+&\s+/,Kr(qi)),relevance:0}]},k={begin:/</,end:/>/,keywords:c,contains:[...r,...u,...z,m,G]};G.contains.push(k);const K={match:Ge(ln,/\s*:/),keywords:"_|0",relevance:0},Z={begin:/\(/,end:/\)/,relevance:0,keywords:c,contains:["self",K,...r,L,...u,...p,...v,w,I,...te,...z,G]},X={begin:/</,end:/>/,keywords:"repeat each",contains:[...r,G]},ie={begin:Mt(Kr(Ge(ln,/\s*:/)),Kr(Ge(ln,/\s+/,ln,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:ln}]},Y={begin:/\(/,end:/\)/,keywords:c,contains:[ie,...r,...u,...v,w,I,...z,G,Z],endsParent:!0,illegal:/["']/},re={match:[/(func|macro)/,/\s+/,Mt(j.match,ln,Vs)],className:{1:"keyword",3:"title.function"},contains:[X,Y,t],illegal:[/\[/,/%/]},H={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[X,Y,t],illegal:/\[|%/},Ee={match:[/operator/,/\s+/,Vs],className:{1:"keyword",3:"title"}},P={begin:[/precedencegroup/,/\s+/,qi],className:{1:"keyword",3:"title"},contains:[G],keywords:[...NN,...Dd],end:/}/},ne={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},Se={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},pe={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,ln,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:c,contains:[X,...u,{begin:/:/,end:/\{/,keywords:c,contains:[{scope:"title.class.inherited",match:qi},...u],relevance:0}]};for(const se of I.variants){const be=se.contains.find(ye=>ye.label==="interpol");be.keywords=c;const ke=[...u,...p,...v,w,I,...te];be.contains=[...ke,{begin:/\(/,end:/\)/,contains:["self",...ke]}]}return{name:"Swift",keywords:c,contains:[...r,re,H,ne,Se,pe,Ee,P,{beginKeywords:"import",end:/$/,contains:[...r],relevance:0},L,...u,...p,...v,w,I,...te,...z,G,Z]}}const ko="[A-Za-z$_][0-9A-Za-z$_]*",Ig=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Og=["true","false","null","undefined","NaN","Infinity"],Pg=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Dg=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Lg=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Fg=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],jg=[].concat(Lg,Pg,Dg);function ON(e){const t=e.regex,n=(B,{after:$})=>{const x="</"+B[0].slice(1);return B.input.indexOf(x,$)!==-1},r=ko,i={begin:"<>",end:"</>"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(B,$)=>{const x=B[0].length+B.index,z=B.input[x];if(z==="<"||z===","){$.ignoreMatch();return}z===">"&&(n(B,{after:x})||$.ignoreMatch());let G;const k=B.input.substring(x);if(G=k.match(/^\s*=/)){$.ignoreMatch();return}if((G=k.match(/^\s+extends\s+/))&&G.index===0){$.ignoreMatch();return}}},a={$pattern:ko,keyword:Ig,literal:Og,built_in:jg,"variable.language":Fg},l="[0-9](_?[0-9])*",c=`\\.(${l})`,u="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",d={className:"number",variants:[{begin:`(\\b(${u})((${c})|\\.)?|(${c}))[eE][+-]?(${l})\\b`},{begin:`\\b(${u})\\b((${c})\\b|\\.)?|(${c})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},f={className:"subst",begin:"\\$\\{",end:"\\}",keywords:a,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"xml"}},m={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"css"}},g={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,f],subLanguage:"graphql"}},v={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,f]},E={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,{match:/\$\d+/},d];f.contains=w.concat({begin:/\{/,end:/\}/,keywords:a,contains:["self"].concat(w)});const _=[].concat(E,f.contains),C=_.concat([{begin:/(\s*)\(/,end:/\)/,keywords:a,contains:["self"].concat(_)}]),T={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C},R={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},A={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Pg,...Dg]}},I={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},b={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[T],illegal:/%/},M={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function O(B){return t.concat("(?!",B.join("|"),")")}const L={match:t.concat(/\b/,O([...Lg,"super","import"].map(B=>`${B}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},j={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},W={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},T]},oe="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",te={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(oe)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[T]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:a,exports:{PARAMS_CONTAINS:C,CLASS_REFERENCE:A},illegal:/#(?![$_A-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),I,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,m,g,v,E,{match:/\$\d+/},d,A,{scope:"attr",match:r+t.lookahead(":"),relevance:0},te,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[E,e.REGEXP_MODE,{className:"function",begin:oe,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:a,contains:C}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},b,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[T,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},j,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[T]},L,M,R,W,{match:/\$[(.]/}]}}function PN(e){const t=e.regex,n=ON(e),r=ko,i=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:i},contains:[n.exports.CLASS_REFERENCE]},a={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},l=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],c={$pattern:ko,keyword:Ig.concat(l),literal:Og,built_in:jg.concat(i),"variable.language":Fg},u={className:"meta",begin:"@"+r},d=(g,v,y)=>{const E=g.contains.findIndex(w=>w.label===v);if(E===-1)throw new Error("can not find mode to replace");g.contains.splice(E,1,y)};Object.assign(n.keywords,c),n.exports.PARAMS_CONTAINS.push(u);const f=n.contains.find(g=>g.scope==="attr"),p=Object.assign({},f,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,f,p]),n.contains=n.contains.concat([u,o,s,p]),d(n,"shebang",e.SHEBANG()),d(n,"use_strict",a);const m=n.contains.find(g=>g.label==="func.def");return m.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function DN(e){const t=e.regex,n={className:"string",begin:/"(""|[^/n])"C\b/},r={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},i=/\d{1,2}\/\d{1,2}\/\d{4}/,o=/\d{4}-\d{1,2}-\d{1,2}/,s=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,a=/\d{1,2}(:\d{1,2}){1,2}/,l={className:"literal",variants:[{begin:t.concat(/# */,t.either(o,i),/ *#/)},{begin:t.concat(/# */,a,/ *#/)},{begin:t.concat(/# */,s,/ *#/)},{begin:t.concat(/# */,t.either(o,i),/ +/,t.either(s,a),/ *#/)}]},c={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},u={className:"label",begin:/^\w+:/},d=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),f=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[n,r,l,c,u,d,f,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[f]}]}}function LN(e){e.regex;const t=e.COMMENT(/\(;/,/;\)/);t.contains.push("self");const n=e.COMMENT(/;;/,/$/),r=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],i={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},o={className:"variable",begin:/\$[\w_]+/},s={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},a={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},l={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},c={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:r},contains:[n,t,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},o,s,i,e.QUOTE_STRING_MODE,l,c,a]}}function FN(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,i={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=e.inherit(o,{begin:/\(/,end:/\)/}),a=e.inherit(e.APOS_STRING_MODE,{className:"string"}),l=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),c={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[i]},{begin:/'/,end:/'/,contains:[i]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[o,l,a,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[o,s,l,a]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},i,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[l]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[c],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[c],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:c}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function jN(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},i={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},s={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,i]},a=e.inherit(s,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),f={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},m={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},v=[r,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},f,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},m,g,o,s],y=[...v];return y.pop(),y.push(a),p.contains=y,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:v}}const BN={arduino:vT,bash:wT,c:ET,cpp:ST,csharp:kT,css:OT,diff:PT,go:DT,graphql:LT,ini:FT,java:jT,javascript:UT,json:HT,kotlin:GT,less:eN,lua:tN,makefile:nN,markdown:rN,objectivec:iN,perl:oN,php:sN,"php-template":aN,plaintext:lN,python:cN,"python-repl":uN,r:dN,ruby:fN,rust:hN,scss:EN,shell:SN,sql:kN,swift:IN,typescript:PN,vbnet:DN,wasm:LN,xml:FN,yaml:jN};var zs,Fd;function $N(){if(Fd)return zs;Fd=1;function e(S){return S instanceof Map?S.clear=S.delete=S.set=function(){throw new Error("map is read-only")}:S instanceof Set&&(S.add=S.clear=S.delete=function(){throw new Error("set is read-only")}),Object.freeze(S),Object.getOwnPropertyNames(S).forEach(F=>{const q=S[F],ce=typeof q;(ce==="object"||ce==="function")&&!Object.isFrozen(q)&&e(q)}),S}class t{constructor(F){F.data===void 0&&(F.data={}),this.data=F.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function n(S){return S.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;")}function r(S,...F){const q=Object.create(null);for(const ce in S)q[ce]=S[ce];return F.forEach(function(ce){for(const Qe in ce)q[Qe]=ce[Qe]}),q}const i="</span>",o=S=>!!S.scope,s=(S,{prefix:F})=>{if(S.startsWith("language:"))return S.replace("language:","language-");if(S.includes(".")){const q=S.split(".");return[`${F}${q.shift()}`,...q.map((ce,Qe)=>`${ce}${"_".repeat(Qe+1)}`)].join(" ")}return`${F}${S}`};class a{constructor(F,q){this.buffer="",this.classPrefix=q.classPrefix,F.walk(this)}addText(F){this.buffer+=n(F)}openNode(F){if(!o(F))return;const q=s(F.scope,{prefix:this.classPrefix});this.span(q)}closeNode(F){o(F)&&(this.buffer+=i)}value(){return this.buffer}span(F){this.buffer+=`<span class="${F}">`}}const l=(S={})=>{const F={children:[]};return Object.assign(F,S),F};class c{constructor(){this.rootNode=l(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(F){this.top.children.push(F)}openNode(F){const q=l({scope:F});this.add(q),this.stack.push(q)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(F){return this.constructor._walk(F,this.rootNode)}static _walk(F,q){return typeof q=="string"?F.addText(q):q.children&&(F.openNode(q),q.children.forEach(ce=>this._walk(F,ce)),F.closeNode(q)),F}static _collapse(F){typeof F!="string"&&F.children&&(F.children.every(q=>typeof q=="string")?F.children=[F.children.join("")]:F.children.forEach(q=>{c._collapse(q)}))}}class u extends c{constructor(F){super(),this.options=F}addText(F){F!==""&&this.add(F)}startScope(F){this.openNode(F)}endScope(){this.closeNode()}__addSublanguage(F,q){const ce=F.root;q&&(ce.scope=`language:${q}`),this.add(ce)}toHTML(){return new a(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function d(S){return S?typeof S=="string"?S:S.source:null}function f(S){return g("(?=",S,")")}function p(S){return g("(?:",S,")*")}function m(S){return g("(?:",S,")?")}function g(...S){return S.map(q=>d(q)).join("")}function v(S){const F=S[S.length-1];return typeof F=="object"&&F.constructor===Object?(S.splice(S.length-1,1),F):{}}function y(...S){return"("+(v(S).capture?"":"?:")+S.map(ce=>d(ce)).join("|")+")"}function E(S){return new RegExp(S.toString()+"|").exec("").length-1}function w(S,F){const q=S&&S.exec(F);return q&&q.index===0}const _=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function C(S,{joinWith:F}){let q=0;return S.map(ce=>{q+=1;const Qe=q;let ut=d(ce),ge="";for(;ut.length>0;){const de=_.exec(ut);if(!de){ge+=ut;break}ge+=ut.substring(0,de.index),ut=ut.substring(de.index+de[0].length),de[0][0]==="\\"&&de[1]?ge+="\\"+String(Number(de[1])+Qe):(ge+=de[0],de[0]==="("&&q++)}return ge}).map(ce=>`(${ce})`).join(F)}const T=/\b\B/,R="[a-zA-Z]\\w*",A="[a-zA-Z_]\\w*",I="\\b\\d+(\\.\\d+)?",b="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",M="\\b(0b[01]+)",O="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",L=(S={})=>{const F=/^#![ ]*\//;return S.binary&&(S.begin=g(F,/.*\b/,S.binary,/\b.*/)),r({scope:"meta",begin:F,end:/$/,relevance:0,"on:begin":(q,ce)=>{q.index!==0&&ce.ignoreMatch()}},S)},j={begin:"\\\\[\\s\\S]",relevance:0},W={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[j]},oe={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[j]},te={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},B=function(S,F,q={}){const ce=r({scope:"comment",begin:S,end:F,contains:[]},q);ce.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const Qe=y("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return ce.contains.push({begin:g(/[ ]+/,"(",Qe,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),ce},$=B("//","$"),x=B("/\\*","\\*/"),z=B("#","$"),G={scope:"number",begin:I,relevance:0},k={scope:"number",begin:b,relevance:0},K={scope:"number",begin:M,relevance:0},Z={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[j,{begin:/\[/,end:/\]/,relevance:0,contains:[j]}]},X={scope:"title",begin:R,relevance:0},ie={scope:"title",begin:A,relevance:0},Y={begin:"\\.\\s*"+A,relevance:0};var H=Object.freeze({__proto__:null,APOS_STRING_MODE:W,BACKSLASH_ESCAPE:j,BINARY_NUMBER_MODE:K,BINARY_NUMBER_RE:M,COMMENT:B,C_BLOCK_COMMENT_MODE:x,C_LINE_COMMENT_MODE:$,C_NUMBER_MODE:k,C_NUMBER_RE:b,END_SAME_AS_BEGIN:function(S){return Object.assign(S,{"on:begin":(F,q)=>{q.data._beginMatch=F[1]},"on:end":(F,q)=>{q.data._beginMatch!==F[1]&&q.ignoreMatch()}})},HASH_COMMENT_MODE:z,IDENT_RE:R,MATCH_NOTHING_RE:T,METHOD_GUARD:Y,NUMBER_MODE:G,NUMBER_RE:I,PHRASAL_WORDS_MODE:te,QUOTE_STRING_MODE:oe,REGEXP_MODE:Z,RE_STARTERS_RE:O,SHEBANG:L,TITLE_MODE:X,UNDERSCORE_IDENT_RE:A,UNDERSCORE_TITLE_MODE:ie});function Ee(S,F){S.input[S.index-1]==="."&&F.ignoreMatch()}function P(S,F){S.className!==void 0&&(S.scope=S.className,delete S.className)}function ne(S,F){F&&S.beginKeywords&&(S.begin="\\b("+S.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",S.__beforeBegin=Ee,S.keywords=S.keywords||S.beginKeywords,delete S.beginKeywords,S.relevance===void 0&&(S.relevance=0))}function Se(S,F){Array.isArray(S.illegal)&&(S.illegal=y(...S.illegal))}function pe(S,F){if(S.match){if(S.begin||S.end)throw new Error("begin & end are not supported with match");S.begin=S.match,delete S.match}}function se(S,F){S.relevance===void 0&&(S.relevance=1)}const be=(S,F)=>{if(!S.beforeMatch)return;if(S.starts)throw new Error("beforeMatch cannot be used with starts");const q=Object.assign({},S);Object.keys(S).forEach(ce=>{delete S[ce]}),S.keywords=q.keywords,S.begin=g(q.beforeMatch,f(q.begin)),S.starts={relevance:0,contains:[Object.assign(q,{endsParent:!0})]},S.relevance=0,delete q.beforeMatch},ke=["of","and","for","in","not","or","if","then","parent","list","value"],ye="keyword";function ct(S,F,q=ye){const ce=Object.create(null);return typeof S=="string"?Qe(q,S.split(" ")):Array.isArray(S)?Qe(q,S):Object.keys(S).forEach(function(ut){Object.assign(ce,ct(S[ut],F,ut))}),ce;function Qe(ut,ge){F&&(ge=ge.map(de=>de.toLowerCase())),ge.forEach(function(de){const Te=de.split("|");ce[Te[0]]=[ut,xt(Te[0],Te[1])]})}}function xt(S,F){return F?Number(F):Ke(S)?0:1}function Ke(S){return ke.includes(S.toLowerCase())}const ue={},mt=S=>{console.error(S)},qe=(S,...F)=>{console.log(`WARN: ${S}`,...F)},V=(S,F)=>{ue[`${S}/${F}`]||(console.log(`Deprecated as of ${S}. ${F}`),ue[`${S}/${F}`]=!0)},J=new Error;function we(S,F,{key:q}){let ce=0;const Qe=S[q],ut={},ge={};for(let de=1;de<=F.length;de++)ge[de+ce]=Qe[de],ut[de+ce]=!0,ce+=E(F[de-1]);S[q]=ge,S[q]._emit=ut,S[q]._multi=!0}function Oe(S){if(Array.isArray(S.begin)){if(S.skip||S.excludeBegin||S.returnBegin)throw mt("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),J;if(typeof S.beginScope!="object"||S.beginScope===null)throw mt("beginScope must be object"),J;we(S,S.begin,{key:"beginScope"}),S.begin=C(S.begin,{joinWith:""})}}function Fe(S){if(Array.isArray(S.end)){if(S.skip||S.excludeEnd||S.returnEnd)throw mt("skip, excludeEnd, returnEnd not compatible with endScope: {}"),J;if(typeof S.endScope!="object"||S.endScope===null)throw mt("endScope must be object"),J;we(S,S.end,{key:"endScope"}),S.end=C(S.end,{joinWith:""})}}function At(S){S.scope&&typeof S.scope=="object"&&S.scope!==null&&(S.beginScope=S.scope,delete S.scope)}function Qt(S){At(S),typeof S.beginScope=="string"&&(S.beginScope={_wrap:S.beginScope}),typeof S.endScope=="string"&&(S.endScope={_wrap:S.endScope}),Oe(S),Fe(S)}function Bt(S){function F(ge,de){return new RegExp(d(ge),"m"+(S.case_insensitive?"i":"")+(S.unicodeRegex?"u":"")+(de?"g":""))}class q{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(de,Te){Te.position=this.position++,this.matchIndexes[this.matchAt]=Te,this.regexes.push([Te,de]),this.matchAt+=E(de)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const de=this.regexes.map(Te=>Te[1]);this.matcherRe=F(C(de,{joinWith:"|"}),!0),this.lastIndex=0}exec(de){this.matcherRe.lastIndex=this.lastIndex;const Te=this.matcherRe.exec(de);if(!Te)return null;const vt=Te.findIndex(($r,es)=>es>0&&$r!==void 0),ht=this.matchIndexes[vt];return Te.splice(0,vt),Object.assign(Te,ht)}}class ce{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(de){if(this.multiRegexes[de])return this.multiRegexes[de];const Te=new q;return this.rules.slice(de).forEach(([vt,ht])=>Te.addRule(vt,ht)),Te.compile(),this.multiRegexes[de]=Te,Te}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(de,Te){this.rules.push([de,Te]),Te.type==="begin"&&this.count++}exec(de){const Te=this.getMatcher(this.regexIndex);Te.lastIndex=this.lastIndex;let vt=Te.exec(de);if(this.resumingScanAtSamePosition()&&!(vt&&vt.index===this.lastIndex)){const ht=this.getMatcher(0);ht.lastIndex=this.lastIndex+1,vt=ht.exec(de)}return vt&&(this.regexIndex+=vt.position+1,this.regexIndex===this.count&&this.considerAll()),vt}}function Qe(ge){const de=new ce;return ge.contains.forEach(Te=>de.addRule(Te.begin,{rule:Te,type:"begin"})),ge.terminatorEnd&&de.addRule(ge.terminatorEnd,{type:"end"}),ge.illegal&&de.addRule(ge.illegal,{type:"illegal"}),de}function ut(ge,de){const Te=ge;if(ge.isCompiled)return Te;[P,pe,Qt,be].forEach(ht=>ht(ge,de)),S.compilerExtensions.forEach(ht=>ht(ge,de)),ge.__beforeBegin=null,[ne,Se,se].forEach(ht=>ht(ge,de)),ge.isCompiled=!0;let vt=null;return typeof ge.keywords=="object"&&ge.keywords.$pattern&&(ge.keywords=Object.assign({},ge.keywords),vt=ge.keywords.$pattern,delete ge.keywords.$pattern),vt=vt||/\w+/,ge.keywords&&(ge.keywords=ct(ge.keywords,S.case_insensitive)),Te.keywordPatternRe=F(vt,!0),de&&(ge.begin||(ge.begin=/\B|\b/),Te.beginRe=F(Te.begin),!ge.end&&!ge.endsWithParent&&(ge.end=/\B|\b/),ge.end&&(Te.endRe=F(Te.end)),Te.terminatorEnd=d(Te.end)||"",ge.endsWithParent&&de.terminatorEnd&&(Te.terminatorEnd+=(ge.end?"|":"")+de.terminatorEnd)),ge.illegal&&(Te.illegalRe=F(ge.illegal)),ge.contains||(ge.contains=[]),ge.contains=[].concat(...ge.contains.map(function(ht){return Wt(ht==="self"?ge:ht)})),ge.contains.forEach(function(ht){ut(ht,Te)}),ge.starts&&ut(ge.starts,de),Te.matcher=Qe(Te),Te}if(S.compilerExtensions||(S.compilerExtensions=[]),S.contains&&S.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return S.classNameAliases=r(S.classNameAliases||{}),ut(S)}function Dt(S){return S?S.endsWithParent||Dt(S.starts):!1}function Wt(S){return S.variants&&!S.cachedVariants&&(S.cachedVariants=S.variants.map(function(F){return r(S,{variants:null},F)})),S.cachedVariants?S.cachedVariants:Dt(S)?r(S,{starts:S.starts?r(S.starts):null}):Object.isFrozen(S)?r(S):S}var wt="11.11.1";class rn extends Error{constructor(F,q){super(F),this.name="HTMLInjectionError",this.html=q}}const Et=n,rr=r,ir=Symbol("nomatch"),Br=7,Bn=function(S){const F=Object.create(null),q=Object.create(null),ce=[];let Qe=!0;const ut="Could not find the language '{}', did you forget to load/include a language module?",ge={disableAutodetect:!0,name:"Plain text",contains:[]};let de={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:u};function Te(ee){return de.noHighlightRe.test(ee)}function vt(ee){let xe=ee.className+" ";xe+=ee.parentNode?ee.parentNode.className:"";const De=de.languageDetectRe.exec(xe);if(De){const Je=Cn(De[1]);return Je||(qe(ut.replace("{}",De[1])),qe("Falling back to no-highlight mode for this block.",ee)),Je?De[1]:"no-highlight"}return xe.split(/\s+/).find(Je=>Te(Je)||Cn(Je))}function ht(ee,xe,De){let Je="",bt="";typeof xe=="object"?(Je=ee,De=xe.ignoreIllegals,bt=xe.language):(V("10.7.0","highlight(lang, code, ...args) has been deprecated."),V("10.7.0",`Please use highlight(code, options) instead.
54
54
  https://github.com/highlightjs/highlight.js/issues/2277`),bt=ee,Je=xe),De===void 0&&(De=!0);const Jt={code:Je,language:bt};Mi("before:highlight",Jt);const _n=Jt.result?Jt.result:$r(Jt.language,Jt.code,De);return _n.code=Jt.code,Mi("after:highlight",_n),_n}function $r(ee,xe,De,Je){const bt=Object.create(null);function Jt(ae,me){return ae.keywords[me]}function _n(){if(!Ne.keywords){St.addText(et);return}let ae=0;Ne.keywordPatternRe.lastIndex=0;let me=Ne.keywordPatternRe.exec(et),Re="";for(;me;){Re+=et.substring(ae,me.index);const ze=sn.case_insensitive?me[0].toLowerCase():me[0],Ct=Jt(Ne,ze);if(Ct){const[gn,Gm]=Ct;if(St.addText(Re),Re="",bt[ze]=(bt[ze]||0)+1,bt[ze]<=Br&&(Oi+=Gm),gn.startsWith("_"))Re+=me[0];else{const Km=sn.classNameAliases[gn]||gn;on(me[0],Km)}}else Re+=me[0];ae=Ne.keywordPatternRe.lastIndex,me=Ne.keywordPatternRe.exec(et)}Re+=et.substring(ae),St.addText(Re)}function Ri(){if(et==="")return;let ae=null;if(typeof Ne.subLanguage=="string"){if(!F[Ne.subLanguage]){St.addText(et);return}ae=$r(Ne.subLanguage,et,!0,mc[Ne.subLanguage]),mc[Ne.subLanguage]=ae._top}else ae=ts(et,Ne.subLanguage.length?Ne.subLanguage:null);Ne.relevance>0&&(Oi+=ae.relevance),St.__addSublanguage(ae._emitter,ae.language)}function $t(){Ne.subLanguage!=null?Ri():_n(),et=""}function on(ae,me){ae!==""&&(St.startScope(me),St.addText(ae),St.endScope())}function fc(ae,me){let Re=1;const ze=me.length-1;for(;Re<=ze;){if(!ae._emit[Re]){Re++;continue}const Ct=sn.classNameAliases[ae[Re]]||ae[Re],gn=me[Re];Ct?on(gn,Ct):(et=gn,_n(),et=""),Re++}}function hc(ae,me){return ae.scope&&typeof ae.scope=="string"&&St.openNode(sn.classNameAliases[ae.scope]||ae.scope),ae.beginScope&&(ae.beginScope._wrap?(on(et,sn.classNameAliases[ae.beginScope._wrap]||ae.beginScope._wrap),et=""):ae.beginScope._multi&&(fc(ae.beginScope,me),et="")),Ne=Object.create(ae,{parent:{value:Ne}}),Ne}function pc(ae,me,Re){let ze=w(ae.endRe,Re);if(ze){if(ae["on:end"]){const Ct=new t(ae);ae["on:end"](me,Ct),Ct.isMatchIgnored&&(ze=!1)}if(ze){for(;ae.endsParent&&ae.parent;)ae=ae.parent;return ae}}if(ae.endsWithParent)return pc(ae.parent,me,Re)}function Vm(ae){return Ne.matcher.regexIndex===0?(et+=ae[0],1):(os=!0,0)}function zm(ae){const me=ae[0],Re=ae.rule,ze=new t(Re),Ct=[Re.__beforeBegin,Re["on:begin"]];for(const gn of Ct)if(gn&&(gn(ae,ze),ze.isMatchIgnored))return Vm(me);return Re.skip?et+=me:(Re.excludeBegin&&(et+=me),$t(),!Re.returnBegin&&!Re.excludeBegin&&(et=me)),hc(Re,ae),Re.returnBegin?0:me.length}function Um(ae){const me=ae[0],Re=xe.substring(ae.index),ze=pc(Ne,ae,Re);if(!ze)return ir;const Ct=Ne;Ne.endScope&&Ne.endScope._wrap?($t(),on(me,Ne.endScope._wrap)):Ne.endScope&&Ne.endScope._multi?($t(),fc(Ne.endScope,ae)):Ct.skip?et+=me:(Ct.returnEnd||Ct.excludeEnd||(et+=me),$t(),Ct.excludeEnd&&(et=me));do Ne.scope&&St.closeNode(),!Ne.skip&&!Ne.subLanguage&&(Oi+=Ne.relevance),Ne=Ne.parent;while(Ne!==ze.parent);return ze.starts&&hc(ze.starts,ae),Ct.returnEnd?0:me.length}function Hm(){const ae=[];for(let me=Ne;me!==sn;me=me.parent)me.scope&&ae.unshift(me.scope);ae.forEach(me=>St.openNode(me))}let Ii={};function gc(ae,me){const Re=me&&me[0];if(et+=ae,Re==null)return $t(),0;if(Ii.type==="begin"&&me.type==="end"&&Ii.index===me.index&&Re===""){if(et+=xe.slice(me.index,me.index+1),!Qe){const ze=new Error(`0 width match regex (${ee})`);throw ze.languageName=ee,ze.badRule=Ii.rule,ze}return 1}if(Ii=me,me.type==="begin")return zm(me);if(me.type==="illegal"&&!De){const ze=new Error('Illegal lexeme "'+Re+'" for mode "'+(Ne.scope||"<unnamed>")+'"');throw ze.mode=Ne,ze}else if(me.type==="end"){const ze=Um(me);if(ze!==ir)return ze}if(me.type==="illegal"&&Re==="")return et+=`
55
- `,1;if(is>1e5&&is>me.index*3)throw new Error("potential infinite loop, way more iterations than matches");return et+=Re,Re.length}const sn=Cn(ee);if(!sn)throw mt(ut.replace("{}",ee)),new Error('Unknown language: "'+ee+'"');const Wm=Bt(sn);let rs="",Ne=Je||Wm;const mc={},St=new de.__emitter(de);Hm();let et="",Oi=0,$n=0,is=0,os=!1;try{if(sn.__emitTokens)sn.__emitTokens(xe,St);else{for(Ne.matcher.considerAll();;){is++,os?os=!1:Ne.matcher.considerAll(),Ne.matcher.lastIndex=$n;const ae=Ne.matcher.exec(xe);if(!ae)break;const me=xe.substring($n,ae.index),Re=gc(me,ae);$n=ae.index+Re}gc(xe.substring($n))}return St.finalize(),rs=St.toHTML(),{language:ee,value:rs,relevance:Oi,illegal:!1,_emitter:St,_top:Ne}}catch(ae){if(ae.message&&ae.message.includes("Illegal"))return{language:ee,value:Et(xe),illegal:!0,relevance:0,_illegalBy:{message:ae.message,index:$n,context:xe.slice($n-100,$n+100),mode:ae.mode,resultSoFar:rs},_emitter:St};if(Qe)return{language:ee,value:Et(xe),illegal:!1,relevance:0,errorRaised:ae,_emitter:St,_top:Ne};throw ae}}function es(ee){const xe={value:Et(ee),illegal:!1,relevance:0,_top:ge,_emitter:new de.__emitter(de)};return xe._emitter.addText(ee),xe}function ts(ee,xe){xe=xe||de.languages||Object.keys(F);const De=es(ee),Je=xe.filter(Cn).filter(dc).map($t=>$r($t,ee,!1));Je.unshift(De);const bt=Je.sort(($t,on)=>{if($t.relevance!==on.relevance)return on.relevance-$t.relevance;if($t.language&&on.language){if(Cn($t.language).supersetOf===on.language)return 1;if(Cn(on.language).supersetOf===$t.language)return-1}return 0}),[Jt,_n]=bt,Ri=Jt;return Ri.secondBest=_n,Ri}function Mm(ee,xe,De){const Je=xe&&q[xe]||De;ee.classList.add("hljs"),ee.classList.add(`language-${Je}`)}function ns(ee){let xe=null;const De=vt(ee);if(Te(De))return;if(Mi("before:highlightElement",{el:ee,language:De}),ee.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",ee);return}if(ee.children.length>0&&(de.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(ee)),de.throwUnescapedHTML))throw new rn("One of your code blocks includes unescaped HTML.",ee.innerHTML);xe=ee;const Je=xe.textContent,bt=De?ht(Je,{language:De,ignoreIllegals:!0}):ts(Je);ee.innerHTML=bt.value,ee.dataset.highlighted="yes",Mm(ee,De,bt.language),ee.result={language:bt.language,re:bt.relevance,relevance:bt.relevance},bt.secondBest&&(ee.secondBest={language:bt.secondBest.language,relevance:bt.secondBest.relevance}),Mi("after:highlightElement",{el:ee,result:bt,text:Je})}function Rm(ee){de=rr(de,ee)}const Im=()=>{Ai(),$("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Om(){Ai(),$("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let cc=!1;function Ai(){function ee(){Ai()}if(document.readyState==="loading"){cc||window.addEventListener("DOMContentLoaded",ee,!1),cc=!0;return}document.querySelectorAll(de.cssSelector).forEach(ns)}function Pm(ee,xe){let De=null;try{De=xe(S)}catch(Je){if(mt("Language definition for '{}' could not be registered.".replace("{}",ee)),Qe)mt(Je);else throw Je;De=ge}De.name||(De.name=ee),F[ee]=De,De.rawDefinition=xe.bind(null,S),De.aliases&&uc(De.aliases,{languageName:ee})}function Dm(ee){delete F[ee];for(const xe of Object.keys(q))q[xe]===ee&&delete q[xe]}function Lm(){return Object.keys(F)}function Cn(ee){return ee=(ee||"").toLowerCase(),F[ee]||F[q[ee]]}function uc(ee,{languageName:xe}){typeof ee=="string"&&(ee=[ee]),ee.forEach(De=>{q[De.toLowerCase()]=xe})}function dc(ee){const xe=Cn(ee);return xe&&!xe.disableAutodetect}function Fm(ee){ee["before:highlightBlock"]&&!ee["before:highlightElement"]&&(ee["before:highlightElement"]=xe=>{ee["before:highlightBlock"](Object.assign({block:xe.el},xe))}),ee["after:highlightBlock"]&&!ee["after:highlightElement"]&&(ee["after:highlightElement"]=xe=>{ee["after:highlightBlock"](Object.assign({block:xe.el},xe))})}function jm(ee){Fm(ee),ce.push(ee)}function Bm(ee){const xe=ce.indexOf(ee);xe!==-1&&ce.splice(xe,1)}function Mi(ee,xe){const De=ee;ce.forEach(function(Je){Je[De]&&Je[De](xe)})}function $m(ee){return $("10.7.0","highlightBlock will be removed entirely in v12.0"),$("10.7.0","Please use highlightElement now."),ns(ee)}Object.assign(S,{highlight:ht,highlightAuto:ts,highlightAll:Ai,highlightElement:ns,highlightBlock:$m,configure:Rm,initHighlighting:Im,initHighlightingOnLoad:Om,registerLanguage:Pm,unregisterLanguage:Dm,listLanguages:Lm,getLanguage:Cn,registerAliases:uc,autoDetection:dc,inherit:rr,addPlugin:jm,removePlugin:Bm}),S.debugMode=function(){Qe=!1},S.safeMode=function(){Qe=!0},S.versionString=wt,S.regex={concat:g,lookahead:f,either:y,optional:m,anyNumberOfTimes:p};for(const ee in H)typeof H[ee]=="object"&&e(H[ee]);return Object.assign(S,H),S},pn=Bn({});return pn.newInstance=()=>Bn({}),zs=pn,pn.HighlightJS=pn,pn.default=pn,zs}var VN=$N();const zN=Lo(VN),jd={},UN="hljs-";function HN(e){const t=zN.newInstance();return e&&o(e),{highlight:n,highlightAuto:r,listLanguages:i,register:o,registerAlias:s,registered:a};function n(l,c,u){const d=u||jd,f=typeof d.prefix=="string"?d.prefix:UN;if(!t.getLanguage(l))throw new Error("Unknown language: `"+l+"` is not registered");t.configure({__emitter:WN,classPrefix:f});const p=t.highlight(c,{ignoreIllegals:!0,language:l});if(p.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:p.errorRaised});const m=p._emitter.root,g=m.data;return g.language=p.language,g.relevance=p.relevance,m}function r(l,c){const d=(c||jd).subset||i();let f=-1,p=0,m;for(;++f<d.length;){const g=d[f];if(!t.getLanguage(g))continue;const v=n(g,l,c);v.data&&v.data.relevance!==void 0&&v.data.relevance>p&&(p=v.data.relevance,m=v)}return m||{type:"root",children:[],data:{language:void 0,relevance:p}}}function i(){return t.listLanguages()}function o(l,c){if(typeof l=="string")t.registerLanguage(l,c);else{let u;for(u in l)Object.hasOwn(l,u)&&t.registerLanguage(u,l[u])}}function s(l,c){if(typeof l=="string")t.registerAliases(typeof c=="string"?c:[...c],{languageName:l});else{let u;for(u in l)if(Object.hasOwn(l,u)){const d=l[u];t.registerAliases(typeof d=="string"?d:[...d],{languageName:u})}}}function a(l){return!!t.getLanguage(l)}}class WN{constructor(t){this.options=t,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(t){if(t==="")return;const n=this.stack[this.stack.length-1],r=n.children[n.children.length-1];r&&r.type==="text"?r.value+=t:n.children.push({type:"text",value:t})}startScope(t){this.openNode(String(t))}endScope(){this.closeNode()}__addSublanguage(t,n){const r=this.stack[this.stack.length-1],i=t.root.children;n?r.children.push({type:"element",tagName:"span",properties:{className:[n]},children:i}):r.children.push(...i)}openNode(t){const n=this,r=t.split(".").map(function(s,a){return a?s+"_".repeat(a):n.options.classPrefix+s}),i=this.stack[this.stack.length-1],o={type:"element",tagName:"span",properties:{className:r},children:[]};i.children.push(o),this.stack.push(o)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const GN={};function KN(e){const t=e||GN,n=t.aliases,r=t.detect||!1,i=t.languages||BN,o=t.plainText,s=t.prefix,a=t.subset;let l="hljs";const c=HN(i);if(n&&c.registerAlias(n),s){const u=s.indexOf("-");l=u===-1?s:s.slice(0,u)}return function(u,d){Vo(u,"element",function(f,p,m){if(f.tagName!=="code"||!m||m.type!=="element"||m.tagName!=="pre")return;const g=qN(f);if(g===!1||!g&&!r||g&&o&&o.includes(g))return;Array.isArray(f.properties.className)||(f.properties.className=[]),f.properties.className.includes(l)||f.properties.className.unshift(l);const v=fT(f,{whitespace:"pre"});let y;try{y=g?c.highlight(g,v,{prefix:s}):c.highlightAuto(v,{prefix:s,subset:a})}catch(E){const w=E;if(g&&/Unknown language/.test(w.message)){d.message("Cannot highlight as `"+g+"`, it’s not registered",{ancestors:[m,f],cause:w,place:f.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw w}!g&&y.data&&y.data.language&&f.properties.className.push("language-"+y.data.language),y.children.length>0&&(f.children=y.children)})}}function qN(e){const t=e.properties.className;let n=-1;if(!Array.isArray(t))return;let r;for(;++n<t.length;){const i=String(t[n]);if(i==="no-highlight"||i==="nohighlight")return!1;!r&&i.slice(0,5)==="lang-"&&(r=i.slice(5)),!r&&i.slice(0,9)==="language-"&&(r=i.slice(9))}return r}function YN({message:e,theme:t,isOwn:n,isStreaming:r=!1}){var c,u;const i=Pt(t),o=e.sender.name?e.sender.name.split(" ").map(d=>d[0]).join("").toUpperCase().slice(0,2):"U",s=D.useMemo(()=>{var d,f;return((d=e==null?void 0:e.metadata)==null?void 0:d.format)==="markdown"||((f=e==null?void 0:e.metadata)==null?void 0:f.markdown)===!0||Pw(e.content)},[e.content,e.metadata]),a=D.useMemo(()=>s?Dw(e.content):e.content,[e.content,s]),l=D.useMemo(()=>Iw(t),[t]);return h.jsx("div",{className:`flex w-full ${n?"justify-end":"justify-start"} mb-4 px-1`,children:h.jsxs("div",{className:`relative group ${n?"flex-row-reverse":"flex-row"} flex items-end gap-3 max-w-[85%] min-w-0`,children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${n?t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to-gray-700":t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:o}),h.jsxs("div",{className:`
55
+ `,1;if(is>1e5&&is>me.index*3)throw new Error("potential infinite loop, way more iterations than matches");return et+=Re,Re.length}const sn=Cn(ee);if(!sn)throw mt(ut.replace("{}",ee)),new Error('Unknown language: "'+ee+'"');const Wm=Bt(sn);let rs="",Ne=Je||Wm;const mc={},St=new de.__emitter(de);Hm();let et="",Oi=0,$n=0,is=0,os=!1;try{if(sn.__emitTokens)sn.__emitTokens(xe,St);else{for(Ne.matcher.considerAll();;){is++,os?os=!1:Ne.matcher.considerAll(),Ne.matcher.lastIndex=$n;const ae=Ne.matcher.exec(xe);if(!ae)break;const me=xe.substring($n,ae.index),Re=gc(me,ae);$n=ae.index+Re}gc(xe.substring($n))}return St.finalize(),rs=St.toHTML(),{language:ee,value:rs,relevance:Oi,illegal:!1,_emitter:St,_top:Ne}}catch(ae){if(ae.message&&ae.message.includes("Illegal"))return{language:ee,value:Et(xe),illegal:!0,relevance:0,_illegalBy:{message:ae.message,index:$n,context:xe.slice($n-100,$n+100),mode:ae.mode,resultSoFar:rs},_emitter:St};if(Qe)return{language:ee,value:Et(xe),illegal:!1,relevance:0,errorRaised:ae,_emitter:St,_top:Ne};throw ae}}function es(ee){const xe={value:Et(ee),illegal:!1,relevance:0,_top:ge,_emitter:new de.__emitter(de)};return xe._emitter.addText(ee),xe}function ts(ee,xe){xe=xe||de.languages||Object.keys(F);const De=es(ee),Je=xe.filter(Cn).filter(dc).map($t=>$r($t,ee,!1));Je.unshift(De);const bt=Je.sort(($t,on)=>{if($t.relevance!==on.relevance)return on.relevance-$t.relevance;if($t.language&&on.language){if(Cn($t.language).supersetOf===on.language)return 1;if(Cn(on.language).supersetOf===$t.language)return-1}return 0}),[Jt,_n]=bt,Ri=Jt;return Ri.secondBest=_n,Ri}function Mm(ee,xe,De){const Je=xe&&q[xe]||De;ee.classList.add("hljs"),ee.classList.add(`language-${Je}`)}function ns(ee){let xe=null;const De=vt(ee);if(Te(De))return;if(Mi("before:highlightElement",{el:ee,language:De}),ee.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",ee);return}if(ee.children.length>0&&(de.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(ee)),de.throwUnescapedHTML))throw new rn("One of your code blocks includes unescaped HTML.",ee.innerHTML);xe=ee;const Je=xe.textContent,bt=De?ht(Je,{language:De,ignoreIllegals:!0}):ts(Je);ee.innerHTML=bt.value,ee.dataset.highlighted="yes",Mm(ee,De,bt.language),ee.result={language:bt.language,re:bt.relevance,relevance:bt.relevance},bt.secondBest&&(ee.secondBest={language:bt.secondBest.language,relevance:bt.secondBest.relevance}),Mi("after:highlightElement",{el:ee,result:bt,text:Je})}function Rm(ee){de=rr(de,ee)}const Im=()=>{Ai(),V("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function Om(){Ai(),V("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let cc=!1;function Ai(){function ee(){Ai()}if(document.readyState==="loading"){cc||window.addEventListener("DOMContentLoaded",ee,!1),cc=!0;return}document.querySelectorAll(de.cssSelector).forEach(ns)}function Pm(ee,xe){let De=null;try{De=xe(S)}catch(Je){if(mt("Language definition for '{}' could not be registered.".replace("{}",ee)),Qe)mt(Je);else throw Je;De=ge}De.name||(De.name=ee),F[ee]=De,De.rawDefinition=xe.bind(null,S),De.aliases&&uc(De.aliases,{languageName:ee})}function Dm(ee){delete F[ee];for(const xe of Object.keys(q))q[xe]===ee&&delete q[xe]}function Lm(){return Object.keys(F)}function Cn(ee){return ee=(ee||"").toLowerCase(),F[ee]||F[q[ee]]}function uc(ee,{languageName:xe}){typeof ee=="string"&&(ee=[ee]),ee.forEach(De=>{q[De.toLowerCase()]=xe})}function dc(ee){const xe=Cn(ee);return xe&&!xe.disableAutodetect}function Fm(ee){ee["before:highlightBlock"]&&!ee["before:highlightElement"]&&(ee["before:highlightElement"]=xe=>{ee["before:highlightBlock"](Object.assign({block:xe.el},xe))}),ee["after:highlightBlock"]&&!ee["after:highlightElement"]&&(ee["after:highlightElement"]=xe=>{ee["after:highlightBlock"](Object.assign({block:xe.el},xe))})}function jm(ee){Fm(ee),ce.push(ee)}function Bm(ee){const xe=ce.indexOf(ee);xe!==-1&&ce.splice(xe,1)}function Mi(ee,xe){const De=ee;ce.forEach(function(Je){Je[De]&&Je[De](xe)})}function $m(ee){return V("10.7.0","highlightBlock will be removed entirely in v12.0"),V("10.7.0","Please use highlightElement now."),ns(ee)}Object.assign(S,{highlight:ht,highlightAuto:ts,highlightAll:Ai,highlightElement:ns,highlightBlock:$m,configure:Rm,initHighlighting:Im,initHighlightingOnLoad:Om,registerLanguage:Pm,unregisterLanguage:Dm,listLanguages:Lm,getLanguage:Cn,registerAliases:uc,autoDetection:dc,inherit:rr,addPlugin:jm,removePlugin:Bm}),S.debugMode=function(){Qe=!1},S.safeMode=function(){Qe=!0},S.versionString=wt,S.regex={concat:g,lookahead:f,either:y,optional:m,anyNumberOfTimes:p};for(const ee in H)typeof H[ee]=="object"&&e(H[ee]);return Object.assign(S,H),S},pn=Bn({});return pn.newInstance=()=>Bn({}),zs=pn,pn.HighlightJS=pn,pn.default=pn,zs}var VN=$N();const zN=Lo(VN),jd={},UN="hljs-";function HN(e){const t=zN.newInstance();return e&&o(e),{highlight:n,highlightAuto:r,listLanguages:i,register:o,registerAlias:s,registered:a};function n(l,c,u){const d=u||jd,f=typeof d.prefix=="string"?d.prefix:UN;if(!t.getLanguage(l))throw new Error("Unknown language: `"+l+"` is not registered");t.configure({__emitter:WN,classPrefix:f});const p=t.highlight(c,{ignoreIllegals:!0,language:l});if(p.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:p.errorRaised});const m=p._emitter.root,g=m.data;return g.language=p.language,g.relevance=p.relevance,m}function r(l,c){const d=(c||jd).subset||i();let f=-1,p=0,m;for(;++f<d.length;){const g=d[f];if(!t.getLanguage(g))continue;const v=n(g,l,c);v.data&&v.data.relevance!==void 0&&v.data.relevance>p&&(p=v.data.relevance,m=v)}return m||{type:"root",children:[],data:{language:void 0,relevance:p}}}function i(){return t.listLanguages()}function o(l,c){if(typeof l=="string")t.registerLanguage(l,c);else{let u;for(u in l)Object.hasOwn(l,u)&&t.registerLanguage(u,l[u])}}function s(l,c){if(typeof l=="string")t.registerAliases(typeof c=="string"?c:[...c],{languageName:l});else{let u;for(u in l)if(Object.hasOwn(l,u)){const d=l[u];t.registerAliases(typeof d=="string"?d:[...d],{languageName:u})}}}function a(l){return!!t.getLanguage(l)}}class WN{constructor(t){this.options=t,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(t){if(t==="")return;const n=this.stack[this.stack.length-1],r=n.children[n.children.length-1];r&&r.type==="text"?r.value+=t:n.children.push({type:"text",value:t})}startScope(t){this.openNode(String(t))}endScope(){this.closeNode()}__addSublanguage(t,n){const r=this.stack[this.stack.length-1],i=t.root.children;n?r.children.push({type:"element",tagName:"span",properties:{className:[n]},children:i}):r.children.push(...i)}openNode(t){const n=this,r=t.split(".").map(function(s,a){return a?s+"_".repeat(a):n.options.classPrefix+s}),i=this.stack[this.stack.length-1],o={type:"element",tagName:"span",properties:{className:r},children:[]};i.children.push(o),this.stack.push(o)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const GN={};function KN(e){const t=e||GN,n=t.aliases,r=t.detect||!1,i=t.languages||BN,o=t.plainText,s=t.prefix,a=t.subset;let l="hljs";const c=HN(i);if(n&&c.registerAlias(n),s){const u=s.indexOf("-");l=u===-1?s:s.slice(0,u)}return function(u,d){Vo(u,"element",function(f,p,m){if(f.tagName!=="code"||!m||m.type!=="element"||m.tagName!=="pre")return;const g=qN(f);if(g===!1||!g&&!r||g&&o&&o.includes(g))return;Array.isArray(f.properties.className)||(f.properties.className=[]),f.properties.className.includes(l)||f.properties.className.unshift(l);const v=fT(f,{whitespace:"pre"});let y;try{y=g?c.highlight(g,v,{prefix:s}):c.highlightAuto(v,{prefix:s,subset:a})}catch(E){const w=E;if(g&&/Unknown language/.test(w.message)){d.message("Cannot highlight as `"+g+"`, it’s not registered",{ancestors:[m,f],cause:w,place:f.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw w}!g&&y.data&&y.data.language&&f.properties.className.push("language-"+y.data.language),y.children.length>0&&(f.children=y.children)})}}function qN(e){const t=e.properties.className;let n=-1;if(!Array.isArray(t))return;let r;for(;++n<t.length;){const i=String(t[n]);if(i==="no-highlight"||i==="nohighlight")return!1;!r&&i.slice(0,5)==="lang-"&&(r=i.slice(5)),!r&&i.slice(0,9)==="language-"&&(r=i.slice(9))}return r}function YN({message:e,theme:t,isOwn:n,isStreaming:r=!1}){var c,u;const i=Pt(t),o=e.sender.name?e.sender.name.split(" ").map(d=>d[0]).join("").toUpperCase().slice(0,2):"U",s=D.useMemo(()=>{var d,f;return((d=e==null?void 0:e.metadata)==null?void 0:d.format)==="markdown"||((f=e==null?void 0:e.metadata)==null?void 0:f.markdown)===!0||Pw(e.content)},[e.content,e.metadata]),a=D.useMemo(()=>s?Dw(e.content):e.content,[e.content,s]),l=D.useMemo(()=>Iw(t),[t]);return h.jsx("div",{className:`flex w-full ${n?"justify-end":"justify-start"} mb-4 px-1`,children:h.jsxs("div",{className:`relative group ${n?"flex-row-reverse":"flex-row"} flex items-end gap-3 max-w-[85%] min-w-0`,children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${n?t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to-gray-700":t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:o}),h.jsxs("div",{className:`
56
56
  relative px-3 py-2 rounded-2xl break-words shadow-lg backdrop-blur-sm message-bubble message-hover min-w-0 max-w-full overflow-hidden
57
57
  ${n?`${i.chatMessage.own} rounded-br-md`:`${i.chatMessage.other} rounded-bl-md`}
58
58
  ${r?"shimmer":""}
59
59
  transition-all duration-200 group-hover:scale-[1.02]
60
- `,style:{wordWrap:"break-word",overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[h.jsx("div",{className:"leading-relaxed text-sm overflow-hidden",children:((c=e.metadata)==null?void 0:c.type)==="attachment"?h.jsx(Rw,{message:e,theme:t,isOwn:n}):r&&!n?h.jsx(Nw,{text:e.content,isComplete:!r,isRealTimeStream:((u=e.metadata)==null?void 0:u.streaming)===!0,speed:35}):s?h.jsx(G1,{remarkPlugins:[oT],rehypePlugins:[KN],components:l,children:a}):h.jsx("span",{className:"whitespace-pre-wrap break-words",children:Ow(e.content,t)})}),h.jsx("div",{className:"text-xs",children:e.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})})}function ZN({theme:e}){const t=Pt(e);return h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${e==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to-gray-700"}`,children:"AI"}),h.jsx("div",{className:`
60
+ `,style:{wordWrap:"break-word",overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[h.jsx("div",{className:"leading-relaxed text-sm overflow-hidden",children:((c=e.metadata)==null?void 0:c.type)==="attachment"?h.jsx(Rw,{message:e,theme:t,isOwn:n}):r&&!n?h.jsx(Nw,{text:e.content,isComplete:!r,isRealTimeStream:((u=e.metadata)==null?void 0:u.streaming)===!0,speed:35}):s?h.jsx(GC,{remarkPlugins:[oT],rehypePlugins:[KN],components:l,children:a}):h.jsx("span",{className:"whitespace-pre-wrap break-words",children:Ow(e.content,t)})}),h.jsx("div",{className:"text-xs",children:e.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})})}function ZN({theme:e}){const t=Pt(e);return h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${e==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to-gray-700"}`,children:"AI"}),h.jsx("div",{className:`
61
61
  relative px-4 py-3 rounded-2xl rounded-bl-md shadow-lg backdrop-blur-sm
62
62
  ${t.chatMessage.other}
63
63
  transition-all duration-200
64
- `,children:h.jsx("div",{className:"flex items-center gap-2",children:h.jsxs("div",{className:"flex items-center space-x-1",children:[h.jsx("span",{className:`text-sm ${e==="light"?"text-gray-600":"text-gray-400"}`,children:"Thinking"}),[0,1,2].map(n=>h.jsx(Me.div,{className:`w-1 h-1 rounded-full ${e==="light"?"bg-gray-400":"bg-gray-500"}`,animate:{y:[0,-3,0],opacity:[.4,1,.4],scale:[.8,1,.8]},transition:{duration:.8,repeat:1/0,repeatType:"mirror",delay:n*.2,ease:"easeInOut"}},n))]})})})]})})}function XN(){return h.jsxs("div",{className:"max-w-xs mx-auto bg-green-50 border border-green-200 rounded-lg shadow p-3 flex flex-col items-center",children:[h.jsx("div",{className:"text-2xl mb-2",children:"✅"}),h.jsx("div",{className:"text-green-700 font-semibold text-sm mb-1",children:"Success!"}),h.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:"Your action was completed successfully."})]})}function QN(){return h.jsxs("div",{className:"flex items-center gap-2 text-orange-600 dark:text-orange-400",children:[h.jsx("span",{className:"text-lg",children:"⏰"}),h.jsx("span",{className:"text-sm font-medium",children:"Request timed out"})]})}function JN({toolData:e}){return h.jsxs("div",{className:"flex items-center text-blue-600 dark:text-blue-400",children:[h.jsx("span",{className:"text-lg",children:"🛠️"}),h.jsx("span",{className:"text-sm font-medium",children:"Tool executed"})]})}function eA(e){const[t,n]=D.useState(()=>e&&typeof e.getChatMessages=="function"?e.getChatMessages():[]),[r,i]=D.useState(()=>{const c=e&&typeof e.getCurrentSession=="function"&&!!e.getCurrentSession(),u=e&&typeof e.getChatMessages=="function"&&e.getChatMessages().length>0;return!c&&!u}),[o,s]=D.useState(new Set),[a,l]=D.useState([]);return{messages:t,setMessages:n,isLoading:r,setIsLoading:i,streamingMessages:o,setStreamingMessages:s,pendingMessages:a,setPendingMessages:l}}function tA(e){const[t,n]=D.useState("idle"),[r,i]=D.useState([]);return D.useEffect(()=>{(()=>{const u=e.getAgentState();n(u||"idle")})();const s=()=>n("thinking"),a=()=>n("speaking"),l=()=>n("idle"),c=u=>{console.log("Tool executed:",u),i(d=>[...d,u]),n("tool_execution"),setTimeout(()=>n("idle"),1e3)};return e.on("agent.thinking",s),e.on("agent.speaking",a),e.on("agent.idle",l),e.on("tool.executed",c),()=>{e.off("agent.thinking",s),e.off("agent.speaking",a),e.off("agent.idle",l),e.off("tool.executed",c)}},[e]),{agentState:t,setAgentState:n,toolExecutions:r,setToolExecutions:i}}function nA(e){const[t,n]=D.useState(()=>e.getCurrentInteraction());return D.useEffect(()=>{const r=e.getCurrentInteraction();r?(console.log("ChatView: Restoring interaction state on mount/client change:",r.methodName),n(r)):n(null)},[e]),{currentInteraction:t,setCurrentInteraction:n}}function rA(){const e=D.useRef(null),[t,n]=D.useState(!0),r=D.useCallback((a=!1)=>{if(e.current){const l=e.current;a?l.scrollTop=l.scrollHeight:l.scrollTo({top:l.scrollHeight,behavior:"smooth"})}},[]),i=D.useCallback(()=>{if(e.current){const{scrollTop:a,scrollHeight:l,clientHeight:c}=e.current;return l-a-c<100}return!0},[]),o=D.useCallback(()=>{const a=i();n(a)},[i]),s=D.useCallback((a=!1)=>{t&&r(a)},[t,r]);return{messagesContainerRef:e,shouldAutoScroll:t,setShouldAutoScroll:n,scrollToBottom:r,smartScrollToBottom:s,handleScroll:o}}function iA(){const[e,t]=D.useState(!1),[n,r]=D.useState(!1);return D.useEffect(()=>{const i=()=>{const o=navigator.userAgent.toLowerCase(),a=["android","iphone","ipad","mobile","tablet"].some(d=>o.includes(d)),l="ontouchstart"in window||navigator.maxTouchPoints>0,c=window.innerWidth<=768,u=a||l&&c;t(u),u&&r(!0)};return i(),window.addEventListener("resize",i),()=>window.removeEventListener("resize",i)},[]),{isMobile:e,isFullscreen:n,setIsFullscreen:r}}function Gl({client:e,theme:t="vox",onBack:n,disabled:r=!1,displayType:i="widget",onEndChat:o,showTimer:s=!0}){const a=D.useMemo(()=>{const P=e.getCurrentAgentInfo();return Oo(P)},[e]),{suggestedReplyEnabled:l,attachmentsEnabled:c}=D.useMemo(()=>cp(a),[a]),u=D.useMemo(()=>Po(a),[a]),{messages:d,setMessages:f,setIsLoading:p,streamingMessages:m,setStreamingMessages:g,pendingMessages:v,setPendingMessages:y}=eA(e),{agentState:E,toolExecutions:w}=tA(e),{currentInteraction:_,setCurrentInteraction:C}=nA(e),{messagesContainerRef:T,shouldAutoScroll:R,setShouldAutoScroll:A,smartScrollToBottom:I,handleScroll:b,scrollToBottom:M}=rA(),{isMobile:O,isFullscreen:L,setIsFullscreen:j}=iA(),[W,oe]=D.useState(new Set),[te,B]=D.useState([]),V=Pt(t);D.useEffect(()=>(L&&O&&(document.body.style.overflow="hidden",document.body.style.position="fixed",document.body.style.width="100%",document.body.style.height="100%",document.documentElement.requestFullscreen&&document.documentElement.requestFullscreen().catch(console.log)),()=>{L&&O&&(document.body.style.overflow="unset",document.body.style.position="unset",document.body.style.width="unset",document.body.style.height="unset",document.fullscreenElement&&document.exitFullscreen().catch(console.log))}),[L,O]);const x=e.getCurrentAgentInfo(),z=(x==null?void 0:x.name)||"AI Assistant",G=z.split(" ").map(P=>P[0]).join("").toUpperCase().slice(0,2),k=D.useCallback(P=>{const ne={id:`local_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:P,timestamp:new Date,sender:{id:"participant",name:"You",type:"participant"},metadata:{isLocal:!0}};f(Se=>[...Se,ne])},[f]);D.useEffect(()=>{if(R&&d.length>0){I(!0);const P=setTimeout(()=>{R&&I(!1)},10);return()=>clearTimeout(P)}},[d.length,I,R]),D.useEffect(()=>{if(_&&R){I(!0);const P=setTimeout(()=>{R&&I(!1)},50);return()=>clearTimeout(P)}},[_,I,R]),D.useEffect(()=>{w.forEach(P=>{const ne=`${P.created_at}-${P.type}`;W.has(ne)||(console.log("Processing tool execution:",ne),oe(Se=>new Set(Se).add(ne)),setTimeout(()=>{const Se={id:`tool_${ne}`,content:"",timestamp:new Date,sender:{id:"system",name:"System",type:"agent"},metadata:{type:"toolExecution",view:h.jsx(JN,{toolData:P})}};console.log("Adding tool message with timestamp:",Se.timestamp),f(pe=>{if(pe.some(ke=>ke.id===Se.id))return console.log("Tool message already exists, skipping"),pe;console.log("Adding tool message to end of",pe.length,"messages");const be=[...pe,Se];return console.log("New messages array length:",be.length),be}),setTimeout(()=>{R&&I(!0)},0)},100))})},[w,W,f,R,I]),D.useEffect(()=>{const P=pe=>{if(console.log("ChatView: Received message:",pe),p(!1),_&&pe.sender.type==="agent"){console.log("ChatView: Queuing agent message due to active interaction:",_.methodName),y(se=>[...se,pe]);return}f(se=>{var ke;if(se.some(ye=>ye.id===pe.id))return console.log("ChatView: Message already exists, skipping:",pe.id),se;if(console.log("ChatView: Adding new message:",pe.id),pe.sender.type==="agent"&&(g(ye=>new Set(ye).add(pe.id)),!((ke=pe.metadata)!=null&&ke.streaming))){const ye=pe.content.length*35+1e3;setTimeout(()=>{g(ct=>{const xt=new Set(ct);return xt.delete(pe.id),xt})},ye)}return[...se,pe]}),setTimeout(()=>{R&&I(!0)},0)},ne=pe=>{var se;if(console.log("ChatView: Updated message:",pe),_&&pe.sender.type==="agent"){console.log("ChatView: Queuing agent message update due to active interaction:",_.methodName),y(be=>{const ke=be.findIndex(ye=>ye.id===pe.id);if(ke>=0){const ye=[...be];return ye[ke]=pe,ye}else return[...be,pe]});return}f(be=>be.map(ke=>ke.id===pe.id?{...pe}:ke)),setTimeout(()=>{R&&I(!0)},0),(se=pe.metadata)!=null&&se.streaming||g(be=>{const ke=new Set(be);return ke.delete(pe.id),ke})},Se=pe=>{console.log("ChatView: Sent message:",pe),p(!1),f(se=>se.some(ke=>ke.id===pe.id)?(console.log("ChatView: Sent message already exists, skipping:",pe.id),se):(console.log("ChatView: Adding sent message:",pe.id),[...se,pe])),setTimeout(()=>{R&&I(!0)},0)};return e.on("chat.message.received",P),e.on("chat.message.updated",ne),e.on("chat.message.sent",Se),()=>{e.off("chat.message.received",P),e.off("chat.message.updated",ne),e.off("chat.message.sent",Se)}},[e,_,R,I,p,f,g,y]),D.useEffect(()=>{const P=se=>{console.log("ChatView: RPC interaction started:",se);const be=e.getCurrentInteraction();console.log("ChatView: Got interaction from client:",be==null?void 0:be.methodName),C(be),R&&(I(!0),setTimeout(()=>{R&&I(!1)},100))},ne=se=>{if(console.log("ChatView: RPC interaction completed:",se),C(null),v.length>0&&(console.log("ChatView: Processing",v.length,"queued messages"),f(be=>{const ke=[...be];return v.forEach(ye=>{var xt;if(!ke.some(Ke=>Ke.id===ye.id)&&(console.log("ChatView: Adding queued message:",ye.id),ke.push(ye),ye.sender.type==="agent"&&(g(Ke=>new Set(Ke).add(ye.id)),!((xt=ye.metadata)!=null&&xt.streaming)))){const Ke=ye.content.length*35+1e3;setTimeout(()=>{g(ue=>{const mt=new Set(ue);return mt.delete(ye.id),mt})},Ke)}}),ke}),y([]),setTimeout(()=>{R&&I(!0)},0)),se&&se.response&&se.response.success){let be=null;se.response.successView?be=se.response.successView:se.successView&&(be=se.successView),f(ke=>{const ye=[...ke].reverse().findIndex(ue=>ue.sender.type==="participant");let ct=ke.length;ye!==-1&&(ct=ke.length-ye);const xt={id:`success_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:"",timestamp:new Date,sender:{id:"participant",name:"You",type:"participant"},metadata:{type:"successView",view:be||h.jsx(XN,{})}};e&&typeof e.addChatMessage=="function"&&e.addChatMessage(xt);const Ke=[...ke];return Ke.splice(ct,0,xt),Ke})}},Se=async se=>{_&&(console.log("ChatView: Dismissing active interaction due to timeout"),e.dismissCurrentInteraction()),C(null),v.length>0&&(console.log("ChatView: Processing",v.length,"queued messages after timeout"),f(ke=>{const ye=[...ke];return v.forEach(ct=>{var Ke;if(!ye.some(ue=>ue.id===ct.id)&&(ye.push(ct),ct.sender.type==="agent"&&(g(ue=>new Set(ue).add(ct.id)),!((Ke=ct.metadata)!=null&&Ke.streaming)))){const ue=ct.content.length*35+1e3;setTimeout(()=>{g(mt=>{const qe=new Set(mt);return qe.delete(ct.id),qe})},ue)}}),ye}),y([]),setTimeout(()=>{R&&I(!0)},0));let be=null;se&&se.response&&se.response.timeoutView?be=se.response.timeoutView:se&&se.timeoutView&&(be=se.timeoutView),f(ke=>{const ye={id:`timeout_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:"",timestamp:new Date,sender:{id:"agent",name:z,type:"agent"},metadata:{type:"timeoutView",view:be||h.jsx(QN,{})}};return e&&typeof e.addChatMessage=="function"&&e.addChatMessage(ye),[...ke,ye]}),setTimeout(()=>{e.getCurrentInteraction()||C(null)},100)},pe=async se=>{console.log("ChatView: RPC interaction dismissed:",se),console.log("ChatView: Current interaction before dismiss:",_==null?void 0:_.methodName),C(null),v.length>0&&(console.log("ChatView: Processing",v.length,"queued messages after dismissal"),f(be=>{const ke=[...be];return v.forEach(ye=>{var xt;if(!ke.some(Ke=>Ke.id===ye.id)&&(ke.push(ye),ye.sender.type==="agent"&&(g(Ke=>new Set(Ke).add(ye.id)),!((xt=ye.metadata)!=null&&xt.streaming)))){const Ke=ye.content.length*35+1e3;setTimeout(()=>{g(ue=>{const mt=new Set(ue);return mt.delete(ye.id),mt})},Ke)}}),ke}),y([]),setTimeout(()=>{R&&I(!0)},0)),setTimeout(()=>{const be=e.getCurrentInteraction();console.log("ChatView: Latest interaction from client after dismiss:",(be==null?void 0:be.methodName)||"null"),be===null&&C(null)},50),console.log("ChatView: Set currentInteraction to null after dismiss")};return e.on("rpc.interaction.started",P),e.on("rpc.interaction.completed",ne),e.on("rpc.interaction.timeout",Se),e.on("rpc.interaction.dismissed",pe),()=>{e.off("rpc.interaction.started",P),e.off("rpc.interaction.completed",ne),e.off("rpc.interaction.timeout",Se),e.off("rpc.interaction.dismissed",pe)}},[e,R,I,z,v,_,C,f,g,y]),D.useEffect(()=>{console.log("ChatView: Display type changed to:",i,"Current interaction:",(_==null?void 0:_.methodName)||"none")},[i,_]);const K=async P=>{try{_&&(console.log("ChatView: Dismissing active interaction due to user message send"),e.dismissCurrentInteraction(),C(null)),await e.sendChatMessage(P)}catch(ne){console.error("Failed to send message:",ne)}},Z=async P=>{try{_&&(console.log("ChatView: Dismissing active interaction due to user attachment send"),e.dismissCurrentInteraction(),C(null)),await e.sendAttachments(P),console.log("Attachments sent successfully:",P.map(ne=>ne.name))}catch(ne){console.error("Failed to send attachments:",ne)}};D.useEffect(()=>{const P=ne=>{B(Array.isArray(ne)?ne:["tes","hello how are you","algebra make me learn that ","what is the meaning of life"])};return e.on("suggested.response",P),()=>{e.off("suggested.response",P)}},[e]);const X=L&&O?"fullscreen":i,ie=X==="fullscreen"?L&&O?"fixed inset-0 z-[9999] flex flex-col h-screen w-screen bg-black":"flex flex-col h-full w-full max-w-none":"flex flex-col h-full w-full backdrop-blur-sm max-h-full overflow-hidden contain-layout",Y=X==="fullscreen"?L&&O?"flex items-center w-full justify-between px-3 h-11 bg-black/80 text-white border-b border-gray-700":`flex items-center w-full justify-between px-5 h-12 border-b ${V.chatHeader.container}`:`flex items-center w-full justify-between px-4 h-12 border-b ${V.chatHeader.container}`,re=X==="fullscreen"?L&&O?"flex-1 overflow-y-auto overflow-x-hidden scrollbar-hide p-4 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto overflow-x-hidden scrollbar-hide p-6 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto overflow-x-hidden scrollbar-hide w-full p-4 chat-scrollable min-h-0",H="flex-shrink-0 !w-full",Ee=()=>{j(!1),n&&n()};return h.jsxs("div",{className:`${ie} relative`,children:[h.jsx("div",{className:Y,children:h.jsxs("div",{className:"flex items-center justify-between w-full",children:[h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("h3",{className:`!font-semibold !text-sm leading-tight ${L&&O?"text-white":V.text.primary}`,children:"Chat"}),E==="idle"&&h.jsx("span",{className:`px-2 py-1 text-xs rounded-full ${t==="light"?"bg-gray-100 text-gray-600":"bg-gray-700 text-gray-400"}`,children:"Idle"})]}),s&&u&&h.jsx("div",{className:"flex-1 flex justify-center",children:h.jsx(hi,{duration:u,theme:t,onTimerExpired:()=>{console.log("Session timer expired")},showIcon:!1,className:"text-xs"})}),n&&h.jsx(Me.button,{onClick:Ee,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1.5 rounded-md transition-all duration-200 ${L&&O?"hover:bg-white/10 text-white/70 hover:text-white":t==="light"?"hover:bg-gray-100 text-gray-400 hover:text-gray-600":"hover:bg-gray-700/40 text-gray-400 hover:text-gray-200"}`,"aria-label":"Close chat",children:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[h.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),h.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]})}),h.jsx("div",{ref:T,className:`${re} flex flex-col`,style:{scrollBehavior:"smooth",scrollbarWidth:"none",contain:"layout style paint",overscrollBehavior:"contain"},onScroll:b,children:d.length===0?h.jsxs("div",{className:"flex flex-col items-center justify-center flex-1 text-center py-12",children:[h.jsx(Me.div,{animate:{scale:[1,1.05,1]},transition:{duration:2,repeat:1/0,ease:"easeInOut"},className:"w-16 h-16 rounded-full bg-gradient-to-br from-blue-500 to-purple-600 flex items-center justify-center text-white font-bold text-xl mb-6 shadow-xl",children:G}),h.jsxs("p",{className:`text-base mb-2 ${L&&O?"text-white":V.text.secondary}`,children:[z," is joining..."]}),h.jsx("p",{className:`text-xs ${L&&O?"text-gray-300":V.text.muted}`,children:"Your conversation will begin shortly"})]}):h.jsx("div",{className:"w-full space-y-3 py-4 flex-1 flex flex-col justify-end",children:h.jsxs("div",{className:"space-y-3",children:[d.map((P,ne)=>{var Se,pe,se,be;return h.jsx("div",{children:((Se=P.metadata)==null?void 0:Se.type)==="successView"?h.jsx("div",{className:"flex w-full justify-end mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row-reverse flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx(Me.div,{initial:{scale:0},animate:{scale:1},transition:{delay:.1},className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to-gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-br-md message-hover border-gray-200 dark:border-gray-700 ${V.chatMessage.own} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${V.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((pe=P.metadata)==null?void 0:pe.type)==="timeoutView"?h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${V.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${V.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((se=P.metadata)==null?void 0:se.type)==="visualization"?h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${V.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${V.text.muted} mt-1 opacity-70 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((be=P.metadata)==null?void 0:be.type)==="toolExecution"?h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${V.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${V.text.muted} mt-1 opacity-70 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):h.jsx(YN,{message:P,theme:t,isOwn:P.sender.type==="participant",isStreaming:m.has(P.id)})},P.id)}),E==="thinking"&&!_&&h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.3},children:h.jsx(ZN,{theme:t})}),_&&_.presentationMode==="embedded"&&h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx(Me.div,{initial:{scale:0},animate:{scale:1},transition:{delay:.1},className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${V.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[h.jsx(fi,{interaction:_,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:k},_.methodName),h.jsx(Me.div,{initial:{opacity:0},animate:{opacity:1},transition:{delay:.2},className:`text-xs ${V.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})]})})}),!R&&h.jsx(Me.button,{initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},onClick:()=>{A(!0),M(!1)},className:`absolute right-6 bottom-20 z-10 p-3 rounded-full shadow-lg backdrop-blur-sm border transition-all duration-200 hover:scale-105 ${t==="light"?"bg-white/90 text-gray-600 border-gray-200 hover:bg-white hover:text-gray-800":"bg-gray-800/90 text-gray-300 border-gray-700 hover:bg-gray-700 hover:text-white"}`,"aria-label":"Scroll to bottom",children:h.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 14l-7 7m0 0l-7-7m7 7V3"})})}),l&&te.length>0&&h.jsx("div",{className:"w-full flex overflow-x-auto gap-2 px-4 py-2 mb-1 scrollbar-hide",children:te.map((P,ne)=>{var Se;return h.jsx("button",{className:`whitespace-nowrap px-3 py-1 rounded-full border shadow-sm flex-shrink-0 transition-all duration-150 font-medium text-sm focus:outline-none focus:ring-2 focus:ring-blue-400/40
65
- ${t==="light"?"bg-white text-blue-700 border-blue-200 hover:bg-blue-50 hover:text-blue-900":t==="dark"?"bg-gray-800 text-blue-300 border-gray-700 hover:bg-gray-700 hover:text-white":((Se=V.suggestedResponse)==null?void 0:Se.container)||"bg-gradient-to-br from-blue-500 to-purple-600 text-white border-blue-400 hover:from-blue-600 hover:to-purple-700"}
66
- `,style:{boxShadow:t==="vox"?"0 2px 8px 0 rgba(80,60,200,0.10)":void 0,borderWidth:1},onClick:()=>{K(P),B([])},children:P},P+ne)})}),_&&_.presentationMode!=="embedded"&&h.jsx(fi,{interaction:_,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:k},_.methodName),h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.2},className:H,children:h.jsx(Do,{modality:"chat",theme:t,disabled:r,showTextInput:!0,textInputPlaceholder:"Type a message...",onSendText:K,onSendAttachments:c?Z:void 0,supportsAttachments:c,showEndCall:!!o,onEndCall:o})})]})}const Bg=N.forwardRef(({disabled:e,sessionStarted:t,participantName:n="User",loadingText:r="Waiting for agent to connect...",theme:i="vox",client:o,displayType:s="widget",onBack:a},l)=>{var G,k,K,Z,X,ie;const[c,u]=N.useState(!1),[d,f]=N.useState(!1),[p,m]=N.useState(!1),[g,v]=N.useState(()=>{var Y;return((Y=o==null?void 0:o.getCurrentInteraction)==null?void 0:Y.call(o))||null}),[y,E]=N.useState(()=>t),w=N.useRef(null),_=N.useMemo(()=>{var re;const Y=(re=o==null?void 0:o.getCurrentAgentInfo)==null?void 0:re.call(o);return Oo(Y)},[o]),C=N.useMemo(()=>Po(_),[_]);N.useMemo(()=>up(_),[_]);const T=N.useRef(null),[R,A]=N.useState(64);N.useLayoutEffect(()=>{const Y=T.current;if(!Y)return;const re=()=>A(Y.offsetHeight||64);re();const H=new ResizeObserver(()=>re());return H.observe(Y),window.addEventListener("resize",re),()=>{H.disconnect(),window.removeEventListener("resize",re)}},[]),_w();const{agent:{isActive:I=!1}={}}=o?Cl(o):{agent:{isActive:!1}},b=oo(o,"microphone"),M=Pt(i),O=N.useMemo(()=>o!=null&&o.getCurrentSession?!!o.getCurrentSession():!1,[o]),L=N.useMemo(()=>o!=null&&o.getIsAgentConnected&&o.getIsAgentConnected()||p,[o,p]),j=I||L;N.useEffect(()=>{j&&y&&E(!1)},[j,y]),N.useEffect(()=>{if(t&&!j){const Y=setTimeout(()=>{O&&!j&&(console.log("⚡ SessionView: Auto-connecting agent after room connection"),m(!0),f(!1))},3e3),re=setTimeout(()=>{j||(console.warn("⏱️ SessionView: Agent connection timeout after 30s"),f(!0))},3e4);return()=>{clearTimeout(Y),clearTimeout(re)}}else j&&f(!1)},[t,j,O]),N.useEffect(()=>{if(!o)return;const Y=()=>{v(null),u(!1),f(!1)};return o.on("connection.disconnected",Y),()=>o.off("connection.disconnected",Y)},[o]),N.useEffect(()=>{if(!o)return;const Y=()=>{console.log("✅ SessionView: Agent connected event received"),m(!0),f(!1),E(!1)},re=Y,H=Y,Ee=ne=>{console.log("👤 SessionView: Participant joined:",ne),ne.isLocal||Y()},P=()=>{m(!1),t&&E(!0)};return o.on("agent.connected",Y),o.on("agent.speaking",re),o.on("agent.thinking",H),o.on("participant.joined",Ee),o.on("connection.disconnected",P),()=>{o.off("agent.connected",Y),o.off("agent.speaking",re),o.off("agent.thinking",H),o.off("participant.joined",Ee),o.off("connection.disconnected",P)}},[o,t]),N.useEffect(()=>{if(!o)return;const Y=()=>v(o.getCurrentInteraction()),re=()=>v(null);return o.on("rpc.interaction.started",Y),o.on("rpc.interaction.completed",re),o.on("rpc.interaction.timeout",re),o.on("rpc.interaction.dismissed",re),()=>{o.off("rpc.interaction.started",Y),o.off("rpc.interaction.completed",re),o.off("rpc.interaction.timeout",re),o.off("rpc.interaction.dismissed",re)}},[o]),N.useEffect(()=>{var re;if(!o)return;const Y=(re=o.getCurrentInteraction)==null?void 0:re.call(o);v(Y||null)},[o]),N.useEffect(()=>{var re,H;const Y=((H=(re=o==null?void 0:o.getCurrentSession)==null?void 0:re.call(o))==null?void 0:H.id)||null;w.current,w.current=Y},[o]),N.useEffect(()=>{g&&c&&u(!1)},[g,c]);const W=N.useCallback(Y=>{},[]),oe=N.useCallback(()=>{var Y,re,H;try{g&&(v(null),(Y=o==null?void 0:o.dismissCurrentInteraction)==null||Y.call(o)),u(!1),f(!1),(re=o==null?void 0:o.endSession)==null||re.call(o),(H=o==null?void 0:o.disconnect)==null||H.call(o),a==null||a()}catch(Ee){console.error("Failed to end call:",Ee),v(null),u(!1),f(!1),a==null||a()}},[o,g,a]),te=Be("w-full flex flex-col",s==="fullscreen"?"w-full max-w-none mx-0 h-full":"w-full mx-auto",M.main,s==="fullscreen"?"max-w-none":"","overflow-hidden h-full"),B=a&&(s==="popup"||s==="fullscreen"),V=N.useMemo(()=>d?"Agent is taking longer than expected...":O?"Room connected. Waiting for agent...":r,[d,O,r]),x=N.useMemo(()=>d?"Please check your connection or try again.":O?"The agent will join shortly.":"Agent is connecting... This may take a moment.",[d,O]),z=o.getCurrentAgentInfo();return y?h.jsxs("main",{ref:l,className:Be(te,"relative",e&&"pointer-events-none opacity-50"),children:[(B||C)&&h.jsxs("div",{className:`flex items-center justify-between w-full p-4 border-b ${((G=M.chatHeader)==null?void 0:G.container)||"border-gray-200"}`,children:[h.jsx("div",{children:h.jsx("h3",{className:`font-semibold ${M.text.primary}`,children:(z==null?void 0:z.agentName)||"Voice Session"})}),C&&h.jsx(hi,{duration:C,theme:i,onTimerExpired:()=>{console.log("Session timer expired")}})]}),h.jsx("div",{className:"flex-1 flex items-center justify-center w-full",children:h.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[h.jsx(Me.div,{animate:{rotate:360,scale:[1,1.1,1]},transition:{rotate:{duration:2,repeat:1/0,ease:"linear"},scale:{duration:1,repeat:1/0,ease:"easeInOut"}},className:"w-12 h-12 mb-4",children:h.jsx(yo,{className:M.spinner,weight:"bold"})}),h.jsx(Me.span,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`text-sm opacity-80 ${M.text.muted} text-center max-w-xs`,children:V}),h.jsx(Me.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:2},className:`text-xs ${M.text.muted} mt-2 text-center opacity-60`,children:x}),d&&a&&h.jsx(Me.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:a,className:`mt-4 px-4 py-2 rounded-lg ${((k=M.chatHeader)==null?void 0:k.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]})})]}):h.jsxs("main",{ref:l,className:Be(te,"relative",e&&"pointer-events-none opacity-50"),style:{minHeight:0},children:[(B||C)&&h.jsxs("div",{className:`flex items-center justify-between w-full p-4 border-b ${((K=M.chatHeader)==null?void 0:K.container)||"border-gray-200"}`,children:[h.jsx("div",{children:h.jsx("h3",{className:`font-semibold ${M.text.primary}`,children:"Voice Session"})}),C&&h.jsx(hi,{duration:C,theme:i,onTimerExpired:()=>{console.log("Session timer expired")}})]}),h.jsxs("div",{className:"w-full flex-1 flex flex-col items-center px-0 min-h-0 overflow-hidden",children:[!j&&h.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[h.jsx(Me.div,{animate:{rotate:360,scale:[1,1.1,1]},transition:{rotate:{duration:2,repeat:1/0,ease:"linear"},scale:{duration:1,repeat:1/0,ease:"easeInOut"}},className:"w-12 h-12 mb-4",children:h.jsx(yo,{className:M.spinner,weight:"bold"})}),h.jsx(Me.span,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`text-sm opacity-80 ${M.text.muted} text-center max-w-xs`,children:V}),h.jsx(Me.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:2},className:`text-xs ${M.text.muted} mt-2 text-center opacity-60`,children:x}),d&&a&&h.jsx(Me.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:a,className:`mt-4 px-4 py-2 rounded-lg ${((Z=M.chatHeader)==null?void 0:Z.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]}),j&&h.jsxs(h.Fragment,{children:[c&&h.jsx("div",{className:Be("h-full left-0 right-0 w-full top-0 flex flex-col transition-[opacity,translate] duration-300 ease-out z-10",i==="light"?"bg-white":"bg-black backdrop-blur-sm","translate-y-0 opacity-100 delay-200"),style:{bottom:`${R}px`},children:h.jsx(Gl,{client:o,theme:i,displayType:s==="fullscreen"?"fullscreen":"widget",disabled:e,onBack:()=>u(!1),showTimer:!1})}),!c&&h.jsxs("div",{className:Be("flex-1 flex flex-col items-center w-full h-full min-h-0",(g==null?void 0:g.presentationMode)==="embedded"?"justify-end":"justify-center"),children:[h.jsx(Me.div,{className:"w-full flex justify-center",animate:{y:(g==null?void 0:g.presentationMode)==="embedded"?-8:0},transition:{duration:.3,ease:"easeOut"},children:h.jsx(vw,{chatOpen:c,client:o,theme:i},`media-tiles-${((ie=(X=o==null?void 0:o.getCurrentSession)==null?void 0:X.call(o))==null?void 0:ie.id)||"no-session"}`)}),h.jsx(Tr,{mode:"wait",children:g&&g.presentationMode==="embedded"&&h.jsx(Me.div,{initial:{opacity:0,y:20,height:0},animate:{opacity:1,y:0,height:"auto"},exit:{opacity:0,y:20,height:0},transition:{duration:.3,ease:"easeOut"},className:Be("w-full relative mt-4 flex justify-center",s==="fullscreen"?"max-w-4xl":"max-w-md"),children:h.jsx("div",{className:"bg-white/10 backdrop-blur-sm rounded-xl border border-white/20 shadow-lg overflow-hidden",children:h.jsx(fi,{interaction:g,theme:i,onDismiss:()=>{var Y;return(Y=o==null?void 0:o.dismissCurrentInteraction)==null?void 0:Y.call(o)},client:o,addLocalMessage:W})})},`embedded-${g.methodName}`)})]})]})]}),h.jsx(Tr,{mode:"wait",children:g&&g.presentationMode!=="embedded"&&!c&&h.jsx("div",{className:Be("absolute inset-0 z-50 flex items-center justify-center backdrop-blur-sm",s==="fullscreen"?"bg-black/70":"bg-black/50"),children:h.jsx(Me.div,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.2,ease:"easeOut"},className:Be("relative w-full overflow-hidden",s==="fullscreen"?"max-w-2xl mx-8 max-h-[85vh]":"max-w-lg mx-4 max-h-[80vh]","bg-white dark:bg-gray-900 rounded-2xl shadow-2xl","border border-gray-200 dark:border-gray-700"),children:h.jsx(fi,{interaction:g,theme:i,onDismiss:()=>{var Y;return(Y=o==null?void 0:o.dismissCurrentInteraction)==null?void 0:Y.call(o)},client:o,addLocalMessage:W})},`modal-${g.methodName}`)})}),h.jsx("div",{ref:T,className:"relative z-30 mt-auto w-full",children:h.jsx(Do,{modality:"voice",theme:i,disabled:e,showMicrophone:!0,microphoneEnabled:b.enabled,microphoneLoading:b.pending,onToggleMicrophone:()=>b.toggle(),showChatToggle:!0,chatOpen:c,onToggleChat:()=>u(!c),showEndCall:!0,onEndCall:oe})})]})});Bg.displayName="SessionView";function Bd({trackRef:e,participant:t,isLocal:n=!1,className:r="",theme:i}){var l;const o=Pt(i),s=(t==null?void 0:t.name)||(t==null?void 0:t.identity)||(n?"You":"Participant"),a=(e==null?void 0:e.publication)&&!e.publication.isMuted;return h.jsxs("div",{className:`relative rounded-lg overflow-hidden ${o.video.tile} ${r}`,children:[a?h.jsx(Rt.VideoTrack,{trackRef:e,className:"w-full h-full object-cover"}):h.jsx("div",{className:`w-full h-full flex items-center justify-center ${o.video.placeholder}`,children:h.jsx("div",{className:"text-center",children:h.jsx("div",{className:`w-16 h-16 mx-auto mb-2 rounded-full flex items-center justify-center ${o.video.avatar}`,children:h.jsx(ot.User,{className:"w-8 h-8"})})})}),h.jsx("div",{className:`absolute bottom-2 left-2 px-2 py-1 rounded text-xs ${o.video.nameOverlay}`,children:s}),((l=e==null?void 0:e.publication)==null?void 0:l.isMuted)&&h.jsx("div",{className:`absolute top-2 right-2 p-1 rounded ${o.video.mutedIndicator}`,children:h.jsx(ot.CameraOff,{className:"w-4 h-4"})})]})}function $g({client:e,theme:t="vox",onBack:n,disabled:r=!1,displayType:i,onEndCall:o}){var K;const s=Pt(t),[a,l]=D.useState(!1),[c,u]=D.useState(!1),d=D.useMemo(()=>{const Z=e.getCurrentAgentInfo();return Oo(Z)},[e]),{userVideoEnabled:f,agentAvatarEnabled:p,screenshareEnabled:m}=D.useMemo(()=>lp(d),[d]),g=D.useMemo(()=>Po(d),[d]),v=D.useRef(null),[y,E]=D.useState(64);D.useLayoutEffect(()=>{const Z=v.current;if(!Z)return;const X=()=>E(Z.offsetHeight||64);X();const ie=new ResizeObserver(()=>X());return ie.observe(Z),window.addEventListener("resize",X),()=>{ie.disconnect(),window.removeEventListener("resize",X)}},[]);const[w,_]=D.useState(null),C=Iv(e),{videoTrackRefs:T,screenShareTrackRefs:R}=Ov(e),{agent:{isActive:A=!1}={},state:I="idle",audioTrack:b}=e?Cl(e):{agent:{isActive:!1},state:"idle",audioTrack:null},M=D.useMemo(()=>e.getRemoteParticipants(),[e,C]),O=oo(e,"microphone"),L=oo(e,"camera"),j=oo(e,"screenShare"),W=D.useCallback(async()=>{L.pending||await L.toggle()},[L]),oe=D.useCallback(async()=>{j.pending||await j.toggle()},[j]),te=D.useCallback(()=>{l(Z=>!Z)},[]),B=D.useCallback(()=>{o?o():n&&n()},[o,n]);D.useEffect(()=>{if(!e)return;const Z=X=>{console.log("📺 Video: Interactive UI state updated:",X),_(X)};return e.on("interactive.ui.update",Z),e.on("interactive.ui.show",Z),()=>{e.off("interactive.ui.update",Z),e.off("interactive.ui.show",Z)}},[e]),D.useEffect(()=>{if(A)u(!1);else{const Z=setTimeout(()=>{A||u(!0)},3e4);return()=>{clearTimeout(Z)}}},[A]);const V=C==null?void 0:C.localParticipant,x=D.useMemo(()=>(e?e.getCameraTrackRefs():[]).find(Z=>Z.participant===V),[e,V]),G=T.filter(Z=>Z.participant!==V)[0],k=D.useMemo(()=>(R||[]).find(Z=>Z.participant===V),[R,V]);return h.jsxs("div",{className:`flex flex-col h-full ${s.video.container} relative`,children:[h.jsxs("div",{className:`flex items-center justify-between p-4 border-b ${s.video.header}`,children:[h.jsxs("div",{className:"flex items-center gap-3",children:[h.jsx("div",{className:`w-3 h-3 rounded-full ${s.video.statusDot}`}),h.jsx("span",{className:"font-medium",children:"Video Call"}),h.jsxs("span",{className:"text-sm opacity-70",children:[M.length+1," participant",M.length!==0?"s":""]})]}),h.jsxs("div",{className:"flex items-center gap-2",children:[g&&h.jsx(hi,{duration:g,theme:t,onTimerExpired:()=>{console.log("Session timer expired")}}),h.jsx("button",{className:`p-2 rounded-lg transition-colors ${s.video.headerButton}`,title:"Layout options",children:h.jsx(ot.LayoutGrid,{className:"w-4 h-4"})})]})]}),h.jsxs("div",{className:"relative flex-1 min-h-0",children:[!A&&h.jsx("div",{className:"flex items-center justify-center h-full",children:h.jsxs("div",{className:"text-center",children:[h.jsx(Me.div,{animate:{rotate:360,scale:[1,1.1,1]},transition:{rotate:{duration:2,repeat:1/0,ease:"linear"},scale:{duration:1,repeat:1/0,ease:"easeInOut"}},className:"w-12 h-12 mx-auto",children:h.jsx(yo,{className:s.spinner,weight:"bold"})}),c&&n&&h.jsx(Me.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:n,className:`mt-4 px-4 py-2 rounded-lg ${((K=s.chatHeader)==null?void 0:K.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]})}),A&&!a&&h.jsx("div",{className:"p-4 min-h-0 h-full",children:h.jsxs("div",{className:"relative w-full h-full overflow-hidden",children:[p?G?h.jsx(Bd,{trackRef:G,participant:G.participant,isLocal:!1,theme:t,className:"w-full h-full"}):h.jsx("div",{className:"w-full h-full flex items-center justify-center",children:h.jsx("div",{className:"text-center",children:h.jsx(ot.Users,{className:"w-12 h-12 mx-auto mb-4 opacity-50"})})}):h.jsx("div",{className:"w-full h-full flex items-center justify-center",children:h.jsx("div",{className:"text-center",children:h.jsxs("div",{className:"mb-4",children:[h.jsx("div",{className:"w-16 h-16 mx-auto mb-4 rounded-full bg-gradient-to-br from-[#6721a4] to-[#5c64f6] flex items-center justify-center",children:h.jsx(ot.User,{className:"w-8 h-8 text-white"})}),A&&(b?h.jsx(Rt.BarVisualizer,{barCount:5,state:I,options:{minHeight:5},trackRef:b,className:"flex items-center justify-center gap-1",children:h.jsx("span",{className:Be(["bg-[#6721a4] min-h-2 w-2 rounded-full","origin-center transition-colors duration-250 ease-linear","data-[lk-highlighted=true]:bg-[#5c64f6]","data-[lk-muted=true]:bg-[#222222]"])})}):h.jsx("div",{className:"flex items-center justify-center gap-1",children:Array.from({length:5}).map((Z,X)=>h.jsx("span",{className:Be(["bg-[#6721a4] min-h-2 w-2 rounded-full","origin-center transition-colors duration-250 ease-linear",I==="speaking"&&"bg-[#5c64f6]",I==="thinking"&&"animate-pulse bg-yellow-500"])},X))}))]})})}),k&&h.jsx("div",{className:"absolute bottom-4 left-0 sm:left-0 z-10 w-32 sm:w-36 h-20 sm:h-24 rounded-lg overflow-hidden shadow-xl border border-white/20",children:h.jsxs("div",{className:"relative w-full h-full bg-black/40",children:[h.jsx(Rt.VideoTrack,{trackRef:k,className:"w-full h-full object-contain"}),h.jsx("div",{className:`absolute top-1 left-1 px-1.5 py-0.5 rounded text-xs ${s.video.nameOverlay}`,children:h.jsxs("span",{className:"inline-flex items-center gap-1",children:[h.jsx(ot.Monitor,{className:"w-3 h-3"}),h.jsx("span",{className:"text-xs",children:"Sharing"})]})})]})}),x&&f&&h.jsx("div",{className:"absolute bottom-4 right-0 w-32 sm:w-36 h-20 sm:h-24 rounded-lg overflow-hidden shadow-xl border border-white/20",children:h.jsx(Bd,{trackRef:x,participant:V||void 0,isLocal:!0,theme:t,className:"w-full h-full"})})]})})]}),h.jsx(Tr,{mode:"wait",children:a&&h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},transition:{duration:.3,ease:"easeOut"},className:Be("absolute left-0 right-0 top-0 flex flex-col z-20",t==="light"?"bg-white":"bg-gray-900/95 backdrop-blur-sm"),style:{bottom:`${y}px`},children:h.jsx(Gl,{client:e,theme:t,displayType:i==="fullscreen"?"fullscreen":"widget",disabled:r,onBack:()=>l(!1),showTimer:!1})})}),h.jsx("div",{ref:v,className:"relative z-30 mt-auto",children:h.jsx(Do,{modality:"video",theme:t,disabled:r,showMicrophone:!0,microphoneEnabled:O.enabled,microphoneLoading:O.pending,onToggleMicrophone:()=>O.toggle(),showCamera:f,cameraEnabled:L.enabled,cameraLoading:L.pending,onToggleCamera:W,showScreenShare:m,screenShareEnabled:j.enabled,screenShareLoading:j.pending,onToggleScreenShare:oe,showChatToggle:!0,chatOpen:a,onToggleChat:te,showEndCall:!0,onEndCall:B})})]})}const $d=e=>e,oA=()=>{let e=$d;return{configure(t){e=t},generate(t){return e(t)},reset(){e=$d}}},sA=oA();function Pn(e,...t){const n=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(r=>n.searchParams.append("args[]",r)),`Minified MUI error #${e}; visit ${n} for the full message.`}function Jn(e){if(typeof e!="string")throw new Error(process.env.NODE_ENV!=="production"?"MUI: `capitalize(string)` expects a string argument.":Pn(7));return e.charAt(0).toUpperCase()+e.slice(1)}var Yi={exports:{}},Zi={exports:{}},$e={};/** @license React v16.13.1
64
+ `,children:h.jsx("div",{className:"flex items-center gap-2",children:h.jsxs("div",{className:"flex items-center space-x-1",children:[h.jsx("span",{className:`text-sm ${e==="light"?"text-gray-600":"text-gray-400"}`,children:"Thinking"}),[0,1,2].map(n=>h.jsx(Me.div,{className:`w-1 h-1 rounded-full ${e==="light"?"bg-gray-400":"bg-gray-500"}`,animate:{y:[0,-3,0],opacity:[.4,1,.4],scale:[.8,1,.8]},transition:{duration:.8,repeat:1/0,repeatType:"mirror",delay:n*.2,ease:"easeInOut"}},n))]})})})]})})}function XN(){return h.jsxs("div",{className:"max-w-xs mx-auto bg-green-50 border border-green-200 rounded-lg shadow p-3 flex flex-col items-center",children:[h.jsx("div",{className:"text-2xl mb-2",children:"✅"}),h.jsx("div",{className:"text-green-700 font-semibold text-sm mb-1",children:"Success!"}),h.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:"Your action was completed successfully."})]})}function QN(){return h.jsxs("div",{className:"flex items-center gap-2 text-orange-600 dark:text-orange-400",children:[h.jsx("span",{className:"text-lg",children:"⏰"}),h.jsx("span",{className:"text-sm font-medium",children:"Request timed out"})]})}function JN({toolData:e}){return h.jsxs("div",{className:"flex items-center text-blue-600 dark:text-blue-400",children:[h.jsx("span",{className:"text-lg",children:"🛠️"}),h.jsx("span",{className:"text-sm font-medium",children:"Tool executed"})]})}function eA(e){const[t,n]=D.useState(()=>e&&typeof e.getChatMessages=="function"?e.getChatMessages():[]),[r,i]=D.useState(()=>{const c=e&&typeof e.getCurrentSession=="function"&&!!e.getCurrentSession(),u=e&&typeof e.getChatMessages=="function"&&e.getChatMessages().length>0;return!c&&!u}),[o,s]=D.useState(new Set),[a,l]=D.useState([]);return{messages:t,setMessages:n,isLoading:r,setIsLoading:i,streamingMessages:o,setStreamingMessages:s,pendingMessages:a,setPendingMessages:l}}function tA(e){const[t,n]=D.useState("idle"),[r,i]=D.useState([]);return D.useEffect(()=>{(()=>{const u=e.getAgentState();n(u||"idle")})();const s=()=>n("thinking"),a=()=>n("speaking"),l=()=>n("idle"),c=u=>{console.log("Tool executed:",u),i(d=>[...d,u]),n("tool_execution"),setTimeout(()=>n("idle"),1e3)};return e.on("agent.thinking",s),e.on("agent.speaking",a),e.on("agent.idle",l),e.on("tool.executed",c),()=>{e.off("agent.thinking",s),e.off("agent.speaking",a),e.off("agent.idle",l),e.off("tool.executed",c)}},[e]),{agentState:t,setAgentState:n,toolExecutions:r,setToolExecutions:i}}function nA(e){const[t,n]=D.useState(()=>e.getCurrentInteraction());return D.useEffect(()=>{const r=e.getCurrentInteraction();r?(console.log("ChatView: Restoring interaction state on mount/client change:",r.methodName),n(r)):n(null)},[e]),{currentInteraction:t,setCurrentInteraction:n}}function rA(){const e=D.useRef(null),[t,n]=D.useState(!0),r=D.useCallback((a=!1)=>{if(e.current){const l=e.current;a?l.scrollTop=l.scrollHeight:l.scrollTo({top:l.scrollHeight,behavior:"smooth"})}},[]),i=D.useCallback(()=>{if(e.current){const{scrollTop:a,scrollHeight:l,clientHeight:c}=e.current;return l-a-c<100}return!0},[]),o=D.useCallback(()=>{const a=i();n(a)},[i]),s=D.useCallback((a=!1)=>{t&&r(a)},[t,r]);return{messagesContainerRef:e,shouldAutoScroll:t,setShouldAutoScroll:n,scrollToBottom:r,smartScrollToBottom:s,handleScroll:o}}function iA(){const[e,t]=D.useState(!1),[n,r]=D.useState(!1);return D.useEffect(()=>{const i=()=>{const o=navigator.userAgent.toLowerCase(),a=["android","iphone","ipad","mobile","tablet"].some(d=>o.includes(d)),l="ontouchstart"in window||navigator.maxTouchPoints>0,c=window.innerWidth<=768,u=a||l&&c;t(u),u&&r(!0)};return i(),window.addEventListener("resize",i),()=>window.removeEventListener("resize",i)},[]),{isMobile:e,isFullscreen:n,setIsFullscreen:r}}function Gl({client:e,theme:t="vox",onBack:n,disabled:r=!1,displayType:i="widget",onEndChat:o,showTimer:s=!0}){const a=D.useMemo(()=>{const P=e.getCurrentAgentInfo();return Oo(P)},[e]),{suggestedReplyEnabled:l,attachmentsEnabled:c}=D.useMemo(()=>cp(a),[a]),u=D.useMemo(()=>Po(a),[a]),{messages:d,setMessages:f,setIsLoading:p,streamingMessages:m,setStreamingMessages:g,pendingMessages:v,setPendingMessages:y}=eA(e),{agentState:E,toolExecutions:w}=tA(e),{currentInteraction:_,setCurrentInteraction:C}=nA(e),{messagesContainerRef:T,shouldAutoScroll:R,setShouldAutoScroll:A,smartScrollToBottom:I,handleScroll:b,scrollToBottom:M}=rA(),{isMobile:O,isFullscreen:L,setIsFullscreen:j}=iA(),[W,oe]=D.useState(new Set),[te,B]=D.useState([]),$=Pt(t);D.useEffect(()=>(L&&O&&(document.body.style.overflow="hidden",document.body.style.position="fixed",document.body.style.width="100%",document.body.style.height="100%",document.documentElement.requestFullscreen&&document.documentElement.requestFullscreen().catch(console.log)),()=>{L&&O&&(document.body.style.overflow="unset",document.body.style.position="unset",document.body.style.width="unset",document.body.style.height="unset",document.fullscreenElement&&document.exitFullscreen().catch(console.log))}),[L,O]);const x=e.getCurrentAgentInfo(),z=(x==null?void 0:x.name)||"AI Assistant",G=z.split(" ").map(P=>P[0]).join("").toUpperCase().slice(0,2),k=D.useCallback(P=>{const ne={id:`local_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:P,timestamp:new Date,sender:{id:"participant",name:"You",type:"participant"},metadata:{isLocal:!0}};f(Se=>[...Se,ne])},[f]);D.useEffect(()=>{if(R&&d.length>0){I(!0);const P=setTimeout(()=>{R&&I(!1)},10);return()=>clearTimeout(P)}},[d.length,I,R]),D.useEffect(()=>{if(_&&R){I(!0);const P=setTimeout(()=>{R&&I(!1)},50);return()=>clearTimeout(P)}},[_,I,R]),D.useEffect(()=>{w.forEach(P=>{const ne=`${P.created_at}-${P.type}`;W.has(ne)||(console.log("Processing tool execution:",ne),oe(Se=>new Set(Se).add(ne)),setTimeout(()=>{const Se={id:`tool_${ne}`,content:"",timestamp:new Date,sender:{id:"system",name:"System",type:"agent"},metadata:{type:"toolExecution",view:h.jsx(JN,{toolData:P})}};console.log("Adding tool message with timestamp:",Se.timestamp),f(pe=>{if(pe.some(ke=>ke.id===Se.id))return console.log("Tool message already exists, skipping"),pe;console.log("Adding tool message to end of",pe.length,"messages");const be=[...pe,Se];return console.log("New messages array length:",be.length),be}),setTimeout(()=>{R&&I(!0)},0)},100))})},[w,W,f,R,I]),D.useEffect(()=>{const P=pe=>{if(console.log("ChatView: Received message:",pe),p(!1),_&&pe.sender.type==="agent"){console.log("ChatView: Queuing agent message due to active interaction:",_.methodName),y(se=>[...se,pe]);return}f(se=>{var ke;if(se.some(ye=>ye.id===pe.id))return console.log("ChatView: Message already exists, skipping:",pe.id),se;if(console.log("ChatView: Adding new message:",pe.id),pe.sender.type==="agent"&&(g(ye=>new Set(ye).add(pe.id)),!((ke=pe.metadata)!=null&&ke.streaming))){const ye=pe.content.length*35+1e3;setTimeout(()=>{g(ct=>{const xt=new Set(ct);return xt.delete(pe.id),xt})},ye)}return[...se,pe]}),setTimeout(()=>{R&&I(!0)},0)},ne=pe=>{var se;if(console.log("ChatView: Updated message:",pe),_&&pe.sender.type==="agent"){console.log("ChatView: Queuing agent message update due to active interaction:",_.methodName),y(be=>{const ke=be.findIndex(ye=>ye.id===pe.id);if(ke>=0){const ye=[...be];return ye[ke]=pe,ye}else return[...be,pe]});return}f(be=>be.map(ke=>ke.id===pe.id?{...pe}:ke)),setTimeout(()=>{R&&I(!0)},0),(se=pe.metadata)!=null&&se.streaming||g(be=>{const ke=new Set(be);return ke.delete(pe.id),ke})},Se=pe=>{console.log("ChatView: Sent message:",pe),p(!1),f(se=>se.some(ke=>ke.id===pe.id)?(console.log("ChatView: Sent message already exists, skipping:",pe.id),se):(console.log("ChatView: Adding sent message:",pe.id),[...se,pe])),setTimeout(()=>{R&&I(!0)},0)};return e.on("chat.message.received",P),e.on("chat.message.updated",ne),e.on("chat.message.sent",Se),()=>{e.off("chat.message.received",P),e.off("chat.message.updated",ne),e.off("chat.message.sent",Se)}},[e,_,R,I,p,f,g,y]),D.useEffect(()=>{const P=se=>{console.log("ChatView: RPC interaction started:",se);const be=e.getCurrentInteraction();console.log("ChatView: Got interaction from client:",be==null?void 0:be.methodName),C(be),R&&(I(!0),setTimeout(()=>{R&&I(!1)},100))},ne=se=>{if(console.log("ChatView: RPC interaction completed:",se),C(null),v.length>0&&(console.log("ChatView: Processing",v.length,"queued messages"),f(be=>{const ke=[...be];return v.forEach(ye=>{var xt;if(!ke.some(Ke=>Ke.id===ye.id)&&(console.log("ChatView: Adding queued message:",ye.id),ke.push(ye),ye.sender.type==="agent"&&(g(Ke=>new Set(Ke).add(ye.id)),!((xt=ye.metadata)!=null&&xt.streaming)))){const Ke=ye.content.length*35+1e3;setTimeout(()=>{g(ue=>{const mt=new Set(ue);return mt.delete(ye.id),mt})},Ke)}}),ke}),y([]),setTimeout(()=>{R&&I(!0)},0)),se&&se.response&&se.response.success){let be=null;se.response.successView?be=se.response.successView:se.successView&&(be=se.successView),f(ke=>{const ye=[...ke].reverse().findIndex(ue=>ue.sender.type==="participant");let ct=ke.length;ye!==-1&&(ct=ke.length-ye);const xt={id:`success_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:"",timestamp:new Date,sender:{id:"participant",name:"You",type:"participant"},metadata:{type:"successView",view:be||h.jsx(XN,{})}};e&&typeof e.addChatMessage=="function"&&e.addChatMessage(xt);const Ke=[...ke];return Ke.splice(ct,0,xt),Ke})}},Se=async se=>{_&&(console.log("ChatView: Dismissing active interaction due to timeout"),e.dismissCurrentInteraction()),C(null),v.length>0&&(console.log("ChatView: Processing",v.length,"queued messages after timeout"),f(ke=>{const ye=[...ke];return v.forEach(ct=>{var Ke;if(!ye.some(ue=>ue.id===ct.id)&&(ye.push(ct),ct.sender.type==="agent"&&(g(ue=>new Set(ue).add(ct.id)),!((Ke=ct.metadata)!=null&&Ke.streaming)))){const ue=ct.content.length*35+1e3;setTimeout(()=>{g(mt=>{const qe=new Set(mt);return qe.delete(ct.id),qe})},ue)}}),ye}),y([]),setTimeout(()=>{R&&I(!0)},0));let be=null;se&&se.response&&se.response.timeoutView?be=se.response.timeoutView:se&&se.timeoutView&&(be=se.timeoutView),f(ke=>{const ye={id:`timeout_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:"",timestamp:new Date,sender:{id:"agent",name:z,type:"agent"},metadata:{type:"timeoutView",view:be||h.jsx(QN,{})}};return e&&typeof e.addChatMessage=="function"&&e.addChatMessage(ye),[...ke,ye]}),setTimeout(()=>{e.getCurrentInteraction()||C(null)},100)},pe=async se=>{console.log("ChatView: RPC interaction dismissed:",se),console.log("ChatView: Current interaction before dismiss:",_==null?void 0:_.methodName),C(null),v.length>0&&(console.log("ChatView: Processing",v.length,"queued messages after dismissal"),f(be=>{const ke=[...be];return v.forEach(ye=>{var xt;if(!ke.some(Ke=>Ke.id===ye.id)&&(ke.push(ye),ye.sender.type==="agent"&&(g(Ke=>new Set(Ke).add(ye.id)),!((xt=ye.metadata)!=null&&xt.streaming)))){const Ke=ye.content.length*35+1e3;setTimeout(()=>{g(ue=>{const mt=new Set(ue);return mt.delete(ye.id),mt})},Ke)}}),ke}),y([]),setTimeout(()=>{R&&I(!0)},0)),setTimeout(()=>{const be=e.getCurrentInteraction();console.log("ChatView: Latest interaction from client after dismiss:",(be==null?void 0:be.methodName)||"null"),be===null&&C(null)},50),console.log("ChatView: Set currentInteraction to null after dismiss")};return e.on("rpc.interaction.started",P),e.on("rpc.interaction.completed",ne),e.on("rpc.interaction.timeout",Se),e.on("rpc.interaction.dismissed",pe),()=>{e.off("rpc.interaction.started",P),e.off("rpc.interaction.completed",ne),e.off("rpc.interaction.timeout",Se),e.off("rpc.interaction.dismissed",pe)}},[e,R,I,z,v,_,C,f,g,y]),D.useEffect(()=>{console.log("ChatView: Display type changed to:",i,"Current interaction:",(_==null?void 0:_.methodName)||"none")},[i,_]);const K=async P=>{try{_&&(console.log("ChatView: Dismissing active interaction due to user message send"),e.dismissCurrentInteraction(),C(null)),await e.sendChatMessage(P)}catch(ne){console.error("Failed to send message:",ne)}},Z=async P=>{try{_&&(console.log("ChatView: Dismissing active interaction due to user attachment send"),e.dismissCurrentInteraction(),C(null)),await e.sendAttachments(P),console.log("Attachments sent successfully:",P.map(ne=>ne.name))}catch(ne){console.error("Failed to send attachments:",ne)}};D.useEffect(()=>{const P=ne=>{B(Array.isArray(ne)?ne:["tes","hello how are you","algebra make me learn that ","what is the meaning of life"])};return e.on("suggested.response",P),()=>{e.off("suggested.response",P)}},[e]);const X=L&&O?"fullscreen":i,ie=X==="fullscreen"?L&&O?`fixed inset-0 z-[9999] flex flex-col h-[100svh] w-screen min-h-0 ${$.main}`:"flex flex-col h-full w-full max-w-none":"flex flex-col h-full w-full backdrop-blur-sm max-h-full overflow-hidden contain-layout",Y=X==="fullscreen"?L&&O?`flex items-center w-full justify-between px-3 h-11 ${$.chatHeader.container} border-b`:`flex items-center w-full justify-between px-5 h-12 border-b ${$.chatHeader.container}`:`flex items-center w-full justify-between px-4 h-12 border-b ${$.chatHeader.container}`,re=X==="fullscreen"?L&&O?"flex-1 overflow-y-auto overflow-x-hidden scrollbar-hide p-4 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto overflow-x-hidden scrollbar-hide p-6 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto overflow-x-hidden scrollbar-hide w-full p-4 chat-scrollable min-h-0",H="flex-shrink-0 !w-full",Ee=()=>{j(!1),n&&n()};return h.jsxs("div",{className:`${ie} relative`,children:[h.jsx("div",{className:Y,children:h.jsxs("div",{className:"flex items-center justify-between w-full",children:[h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("h3",{className:`!font-semibold !text-sm pl-3 leading-tight ${L&&O?"":$.text.primary}`,children:"Transcription"}),E==="idle"&&h.jsx("span",{className:`px-2 py-1 text-xs rounded-full ${t==="light"?"bg-gray-100 text-gray-600":"bg-gray-700 text-gray-400"}`,children:"Idle"})]}),s&&u&&h.jsx("div",{className:"flex-1 flex justify-center",children:h.jsx(hi,{duration:u,theme:t,onTimerExpired:()=>{console.log("Session timer expired")},showIcon:!1,className:"text-xs"})}),n&&h.jsx(Me.button,{onClick:Ee,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1.5 rounded-md transition-all duration-200 ${L&&O?"hover:bg-white/10 text-white/70 hover:text-white":t==="light"?"hover:bg-gray-100 text-gray-400 hover:text-gray-600":"hover:bg-gray-700/40 text-gray-400 hover:text-gray-200"}`,"aria-label":"Close chat",children:h.jsxs("svg",{xmlns:"http://www.w3.org/2000/svg",width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round",children:[h.jsx("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),h.jsx("line",{x1:"6",y1:"6",x2:"18",y2:"18"})]})})]})}),h.jsx("div",{ref:T,className:`${re}`,style:{scrollBehavior:"smooth",scrollbarWidth:"none",contain:"layout style paint",overscrollBehavior:"contain"},onScroll:b,children:d.length===0?h.jsxs("div",{className:"flex flex-col items-center justify-center h-full text-center py-12",children:[h.jsx(Me.div,{animate:{scale:[1,1.05,1]},transition:{duration:2,repeat:1/0,ease:"easeInOut"},className:"w-16 h-16 rounded-full bg-gradient-to-br from-blue-500 to-purple-600 flex items-center justify-center text-white font-bold text-xl mb-6 shadow-xl",children:G}),h.jsxs("p",{className:`text-base mb-2 ${L&&O?"text-white":$.text.secondary}`,children:[z," is joining..."]}),h.jsx("p",{className:`text-xs ${L&&O?"text-gray-300":$.text.muted}`,children:"Your conversation will begin shortly"})]}):h.jsx("div",{className:"w-full space-y-3 py-4 px-2",children:h.jsxs("div",{className:"space-y-3",children:[d.map((P,ne)=>{var Se,pe,se,be;return h.jsx("div",{children:((Se=P.metadata)==null?void 0:Se.type)==="successView"?h.jsx("div",{className:"flex w-full justify-end mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row-reverse flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx(Me.div,{initial:{scale:0},animate:{scale:1},transition:{delay:.1},className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to-gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-br-md message-hover border-gray-200 dark:border-gray-700 ${$.chatMessage.own} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${$.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((pe=P.metadata)==null?void 0:pe.type)==="timeoutView"?h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${$.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${$.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((se=P.metadata)==null?void 0:se.type)==="visualization"?h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${$.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${$.text.muted} mt-1 opacity-70 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((be=P.metadata)==null?void 0:be.type)==="toolExecution"?h.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx("div",{className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${$.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[P.metadata.view,h.jsx("div",{className:`text-xs ${$.text.muted} mt-1 opacity-70 transition-opacity duration-200`,children:P.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):h.jsx(YN,{message:P,theme:t,isOwn:P.sender.type==="participant",isStreaming:m.has(P.id)})},P.id)}),E==="thinking"&&!_&&h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.3},children:h.jsx(ZN,{theme:t})}),_&&_.presentationMode==="embedded"&&h.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%] min-w-0",children:[h.jsx(Me.div,{initial:{scale:0},animate:{scale:1},transition:{delay:.1},className:`w-6 h-6 rounded-full flex items-center justify-center text-white text-xs font-semibold flex-shrink-0 shadow-lg ${t==="light"?"bg-gradient-to-br from-blue-500 to-purple-600":"bg-gradient-to-br from-gray-600 to_gray-700"}`,children:G}),h.jsxs("div",{className:`flex h-full flex-col justify-between border px-3 py-2 rounded-2xl shadow-lg backdrop-bl-sm message-bubble rounded-bl-md message-hover border-gray-200 dark:border-gray-700 ${$.chatMessage.other} min-w-0 max-w-full break-words overflow-hidden`,style:{overflowWrap:"anywhere",wordBreak:"break-word",hyphens:"auto"},children:[h.jsx(fi,{interaction:_,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:k},_.methodName),h.jsx(Me.div,{initial:{opacity:0},animate:{opacity:1},transition:{delay:.2},className:`text-xs ${$.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200`,children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})]})})}),!R&&h.jsx(Me.button,{initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},onClick:()=>{A(!0),M(!1)},className:`absolute right-6 bottom-20 z-10 p-3 rounded-full shadow-lg backdrop-blur-sm border transition-all duration-200 hover:scale-105 ${t==="light"?"bg-white/90 text-gray-600 border-gray-200 hover:bg-white hover:text-gray-800":"bg-gray-800/90 text-gray-300 border-gray-700 hover:bg-gray-700 hover:text-white"}`,"aria-label":"Scroll to bottom",children:h.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:h.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M19 14l-7 7m0 0l-7-7m7 7V3"})})}),l&&te.length>0&&h.jsx("div",{className:"w-full flex overflow-x-auto gap-2 px-4 py-2 mb-1 scrollbar-hide flex-shrink-0",children:te.map((P,ne)=>{var Se;return h.jsx("button",{className:`whitespace-nowrap px-3 py-1 rounded-full border shadow-sm flex-shrink-0 transition-all duration-150 font-medium text-sm focus:outline-none focus:ring-2 focus:ring-blue-400/40
65
+ ${t==="light"?"bg-white text-blue-700 border-blue-200 hover:bg-blue-50 hover:text-blue-900":t==="dark"?"bg-gray-800 text-blue-300 border-gray-700 hover:bg-gray-700 hover:text-white":((Se=$.suggestedResponse)==null?void 0:Se.container)||"bg-gradient-to-br from-blue-500 to-purple-600 text-white border-blue-400 hover:from-blue-600 hover:to-purple-700"}
66
+ `,style:{boxShadow:t==="vox"?"0 2px 8px 0 rgba(80,60,200,0.10)":void 0,borderWidth:1},onClick:()=>{K(P),B([])},children:P},P+ne)})}),_&&_.presentationMode!=="embedded"&&h.jsx(fi,{interaction:_,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:k},_.methodName),h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.2},className:H,children:h.jsx(Do,{modality:"chat",theme:t,disabled:r,showTextInput:!0,textInputPlaceholder:"Type a message...",onSendText:K,onSendAttachments:c?Z:void 0,supportsAttachments:c,showEndCall:!!o,onEndCall:o})})]})}const Bg=N.forwardRef(({disabled:e,sessionStarted:t,participantName:n="User",loadingText:r="Waiting for agent to connect...",theme:i="vox",client:o,displayType:s="widget",onBack:a},l)=>{var G,k,K,Z,X,ie;const[c,u]=N.useState(!1),[d,f]=N.useState(!1),[p,m]=N.useState(!1),[g,v]=N.useState(()=>{var Y;return((Y=o==null?void 0:o.getCurrentInteraction)==null?void 0:Y.call(o))||null}),[y,E]=N.useState(()=>t),w=N.useRef(null),_=N.useMemo(()=>{var re;const Y=(re=o==null?void 0:o.getCurrentAgentInfo)==null?void 0:re.call(o);return Oo(Y)},[o]),C=N.useMemo(()=>Po(_),[_]);N.useMemo(()=>up(_),[_]);const T=N.useRef(null),[R,A]=N.useState(64);N.useLayoutEffect(()=>{const Y=T.current;if(!Y)return;const re=()=>A(Y.offsetHeight||64);re();const H=new ResizeObserver(()=>re());return H.observe(Y),window.addEventListener("resize",re),()=>{H.disconnect(),window.removeEventListener("resize",re)}},[]),_w();const{agent:{isActive:I=!1}={}}=o?Cl(o):{agent:{isActive:!1}},b=oo(o,"microphone"),M=Pt(i),O=N.useMemo(()=>o!=null&&o.getCurrentSession?!!o.getCurrentSession():!1,[o]),L=N.useMemo(()=>o!=null&&o.getIsAgentConnected&&o.getIsAgentConnected()||p,[o,p]),j=I||L;N.useEffect(()=>{j&&y&&E(!1)},[j,y]),N.useEffect(()=>{if(t&&!j){const Y=setTimeout(()=>{O&&!j&&(console.log("⚡ SessionView: Auto-connecting agent after room connection"),m(!0),f(!1))},3e3),re=setTimeout(()=>{j||(console.warn("⏱️ SessionView: Agent connection timeout after 30s"),f(!0))},3e4);return()=>{clearTimeout(Y),clearTimeout(re)}}else j&&f(!1)},[t,j,O]),N.useEffect(()=>{if(!o)return;const Y=()=>{v(null),u(!1),f(!1)};return o.on("connection.disconnected",Y),()=>o.off("connection.disconnected",Y)},[o]),N.useEffect(()=>{if(!o)return;const Y=()=>{console.log("✅ SessionView: Agent connected event received"),m(!0),f(!1),E(!1)},re=Y,H=Y,Ee=ne=>{console.log("👤 SessionView: Participant joined:",ne),ne.isLocal||Y()},P=()=>{m(!1),t&&E(!0)};return o.on("agent.connected",Y),o.on("agent.speaking",re),o.on("agent.thinking",H),o.on("participant.joined",Ee),o.on("connection.disconnected",P),()=>{o.off("agent.connected",Y),o.off("agent.speaking",re),o.off("agent.thinking",H),o.off("participant.joined",Ee),o.off("connection.disconnected",P)}},[o,t]),N.useEffect(()=>{if(!o)return;const Y=()=>v(o.getCurrentInteraction()),re=()=>v(null);return o.on("rpc.interaction.started",Y),o.on("rpc.interaction.completed",re),o.on("rpc.interaction.timeout",re),o.on("rpc.interaction.dismissed",re),()=>{o.off("rpc.interaction.started",Y),o.off("rpc.interaction.completed",re),o.off("rpc.interaction.timeout",re),o.off("rpc.interaction.dismissed",re)}},[o]),N.useEffect(()=>{var re;if(!o)return;const Y=(re=o.getCurrentInteraction)==null?void 0:re.call(o);v(Y||null)},[o]),N.useEffect(()=>{var re,H;const Y=((H=(re=o==null?void 0:o.getCurrentSession)==null?void 0:re.call(o))==null?void 0:H.id)||null;w.current,w.current=Y},[o]),N.useEffect(()=>{g&&c&&u(!1)},[g,c]);const W=N.useCallback(Y=>{},[]),oe=N.useCallback(()=>{var Y,re,H;try{g&&(v(null),(Y=o==null?void 0:o.dismissCurrentInteraction)==null||Y.call(o)),u(!1),f(!1),(re=o==null?void 0:o.endSession)==null||re.call(o),(H=o==null?void 0:o.disconnect)==null||H.call(o),a==null||a()}catch(Ee){console.error("Failed to end call:",Ee),v(null),u(!1),f(!1),a==null||a()}},[o,g,a]),te=Be("w-full flex flex-col",s==="fullscreen"?"w-full max-w-none mx-0 h-full":"w-full mx-auto",M.main,s==="fullscreen"?"max-w-none":"","overflow-hidden h-full"),B=a&&(s==="popup"||s==="fullscreen"),$=N.useMemo(()=>d?"Agent is taking longer than expected...":O?"Room connected. Waiting for agent...":r,[d,O,r]),x=N.useMemo(()=>d?"Please check your connection or try again.":O?"The agent will join shortly.":"Agent is connecting... This may take a moment.",[d,O]),z=o.getCurrentAgentInfo();return y?h.jsxs("main",{ref:l,className:Be(te,"relative",e&&"pointer-events-none opacity-50"),children:[(B||C)&&h.jsxs("div",{className:`flex items-center justify-between w-full p-4 border-b ${((G=M.chatHeader)==null?void 0:G.container)||"border-gray-200"}`,children:[h.jsx("div",{children:h.jsx("h3",{className:`font-semibold ${M.text.primary}`,children:(z==null?void 0:z.agentName)||"Voice Session"})}),C&&h.jsx(hi,{duration:C,theme:i,onTimerExpired:()=>{console.log("Session timer expired")}})]}),h.jsx("div",{className:"flex-1 flex items-center justify-center w-full",children:h.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[h.jsx(Me.div,{animate:{rotate:360,scale:[1,1.1,1]},transition:{rotate:{duration:2,repeat:1/0,ease:"linear"},scale:{duration:1,repeat:1/0,ease:"easeInOut"}},className:"w-12 h-12 mb-4",children:h.jsx(yo,{className:M.spinner,weight:"bold"})}),h.jsx(Me.span,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`text-sm opacity-80 ${M.text.muted} text-center max-w-xs`,children:$}),h.jsx(Me.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:2},className:`text-xs ${M.text.muted} mt-2 text-center opacity-60`,children:x}),d&&a&&h.jsx(Me.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:a,className:`mt-4 px-4 py-2 rounded-lg ${((k=M.chatHeader)==null?void 0:k.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]})})]}):h.jsxs("main",{ref:l,className:Be(te,"relative",e&&"pointer-events-none opacity-50"),style:{minHeight:0},children:[(B||C)&&h.jsxs("div",{className:`flex items-center justify-between w-full p-4 border-b ${((K=M.chatHeader)==null?void 0:K.container)||"border-gray-200"}`,children:[h.jsx("div",{children:h.jsx("h3",{className:`font-semibold ${M.text.primary}`,children:"Voice Session"})}),C&&h.jsx(hi,{duration:C,theme:i,onTimerExpired:()=>{console.log("Session timer expired")}})]}),h.jsxs("div",{className:"w-full flex-1 flex flex-col items-center px-0 min-h-0 overflow-hidden relative",children:[!j&&h.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[h.jsx(Me.div,{animate:{rotate:360,scale:[1,1.1,1]},transition:{rotate:{duration:2,repeat:1/0,ease:"linear"},scale:{duration:1,repeat:1/0,ease:"easeInOut"}},className:"w-12 h-12 mb-4",children:h.jsx(yo,{className:M.spinner,weight:"bold"})}),h.jsx(Me.span,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`text-sm opacity-80 ${M.text.muted} text-center max-w-xs`,children:$}),h.jsx(Me.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:2},className:`text-xs ${M.text.muted} mt-2 text-center opacity-60`,children:x}),d&&a&&h.jsx(Me.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:a,className:`mt-4 px-4 py-2 rounded-lg ${((Z=M.chatHeader)==null?void 0:Z.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]}),j&&h.jsxs(h.Fragment,{children:[c&&h.jsx("div",{className:Be("absolute inset-0 flex flex-col min-h-0 transition-[opacity,transform] duration-300 ease-out z-10",M.main),style:{bottom:0,top:0,left:0,right:0},children:h.jsx(Gl,{client:o,theme:i,displayType:s==="fullscreen"?"fullscreen":"widget",disabled:e,onBack:()=>u(!1),showTimer:!1})}),!c&&h.jsxs("div",{className:Be("flex-1 flex flex-col items-center w-full h-full min-h-0",(g==null?void 0:g.presentationMode)==="embedded"?"justify-end":"justify-center"),children:[h.jsx(Me.div,{className:"w-full flex justify-center",animate:{y:(g==null?void 0:g.presentationMode)==="embedded"?-8:0},transition:{duration:.3,ease:"easeOut"},children:h.jsx(vw,{chatOpen:c,client:o,theme:i},`media-tiles-${((ie=(X=o==null?void 0:o.getCurrentSession)==null?void 0:X.call(o))==null?void 0:ie.id)||"no-session"}`)}),h.jsx(Tr,{mode:"wait",children:g&&g.presentationMode==="embedded"&&h.jsx(Me.div,{initial:{opacity:0,y:20,height:0},animate:{opacity:1,y:0,height:"auto"},exit:{opacity:0,y:20,height:0},transition:{duration:.3,ease:"easeOut"},className:Be("w-full relative mt-4 flex justify-center",s==="fullscreen"?"max-w-4xl":"max-w-md"),children:h.jsx("div",{className:"bg-white/10 backdrop-blur-sm rounded-xl border border-white/20 shadow-lg overflow-hidden",children:h.jsx(fi,{interaction:g,theme:i,onDismiss:()=>{var Y;return(Y=o==null?void 0:o.dismissCurrentInteraction)==null?void 0:Y.call(o)},client:o,addLocalMessage:W})})},`embedded-${g.methodName}`)})]})]})]}),h.jsx(Tr,{mode:"wait",children:g&&g.presentationMode!=="embedded"&&!c&&h.jsx("div",{className:Be("absolute inset-0 z-50 flex items-center justify-center backdrop-blur-sm",s==="fullscreen"?"bg-black/70":"bg-black/50"),children:h.jsx(Me.div,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.2,ease:"easeOut"},className:Be("relative w-full overflow-hidden",s==="fullscreen"?"max-w-2xl mx-8 max-h-[85vh]":"max-w-lg mx-4 max-h-[80vh]","bg-white dark:bg-gray-900 rounded-2xl shadow-2xl","border border-gray-200 dark:border-gray-700"),children:h.jsx(fi,{interaction:g,theme:i,onDismiss:()=>{var Y;return(Y=o==null?void 0:o.dismissCurrentInteraction)==null?void 0:Y.call(o)},client:o,addLocalMessage:W})},`modal-${g.methodName}`)})}),h.jsx("div",{ref:T,className:"relative z-30 mt-auto w-full",children:h.jsx(Do,{modality:"voice",theme:i,disabled:e,showMicrophone:!0,microphoneEnabled:b.enabled,microphoneLoading:b.pending,onToggleMicrophone:()=>b.toggle(),showChatToggle:!0,chatOpen:c,onToggleChat:()=>u(!c),showEndCall:!0,onEndCall:oe})})]})});Bg.displayName="SessionView";function Bd({trackRef:e,participant:t,isLocal:n=!1,className:r="",theme:i}){var l;const o=Pt(i),s=(t==null?void 0:t.name)||(t==null?void 0:t.identity)||(n?"You":"Participant"),a=(e==null?void 0:e.publication)&&!e.publication.isMuted;return h.jsxs("div",{className:`relative rounded-lg overflow-hidden ${o.video.tile} ${r}`,children:[a?h.jsx(Rt.VideoTrack,{trackRef:e,className:"w-full h-full object-cover"}):h.jsx("div",{className:`w-full h-full flex items-center justify-center ${o.video.placeholder}`,children:h.jsx("div",{className:"text-center",children:h.jsx("div",{className:`w-16 h-16 mx-auto mb-2 rounded-full flex items-center justify-center ${o.video.avatar}`,children:h.jsx(ot.User,{className:"w-8 h-8"})})})}),h.jsx("div",{className:`absolute bottom-2 left-2 px-2 py-1 rounded text-xs ${o.video.nameOverlay}`,children:s}),((l=e==null?void 0:e.publication)==null?void 0:l.isMuted)&&h.jsx("div",{className:`absolute top-2 right-2 p-1 rounded ${o.video.mutedIndicator}`,children:h.jsx(ot.CameraOff,{className:"w-4 h-4"})})]})}function $g({client:e,theme:t="vox",onBack:n,disabled:r=!1,displayType:i,onEndCall:o}){var K;const s=Pt(t),[a,l]=D.useState(!1),[c,u]=D.useState(!1),d=D.useMemo(()=>{const Z=e.getCurrentAgentInfo();return Oo(Z)},[e]),{userVideoEnabled:f,agentAvatarEnabled:p,screenshareEnabled:m}=D.useMemo(()=>lp(d),[d]),g=D.useMemo(()=>Po(d),[d]),v=D.useRef(null),[y,E]=D.useState(64);D.useLayoutEffect(()=>{const Z=v.current;if(!Z)return;const X=()=>E(Z.offsetHeight||64);X();const ie=new ResizeObserver(()=>X());return ie.observe(Z),window.addEventListener("resize",X),()=>{ie.disconnect(),window.removeEventListener("resize",X)}},[]);const[w,_]=D.useState(null),C=Iv(e),{videoTrackRefs:T,screenShareTrackRefs:R}=Ov(e),{agent:{isActive:A=!1}={},state:I="idle",audioTrack:b}=e?Cl(e):{agent:{isActive:!1},state:"idle",audioTrack:null},M=D.useMemo(()=>e.getRemoteParticipants(),[e,C]),O=oo(e,"microphone"),L=oo(e,"camera"),j=oo(e,"screenShare"),W=D.useCallback(async()=>{L.pending||await L.toggle()},[L]),oe=D.useCallback(async()=>{j.pending||await j.toggle()},[j]),te=D.useCallback(()=>{l(Z=>!Z)},[]),B=D.useCallback(()=>{o?o():n&&n()},[o,n]);D.useEffect(()=>{if(!e)return;const Z=X=>{console.log("📺 Video: Interactive UI state updated:",X),_(X)};return e.on("interactive.ui.update",Z),e.on("interactive.ui.show",Z),()=>{e.off("interactive.ui.update",Z),e.off("interactive.ui.show",Z)}},[e]),D.useEffect(()=>{if(A)u(!1);else{const Z=setTimeout(()=>{A||u(!0)},3e4);return()=>{clearTimeout(Z)}}},[A]);const $=C==null?void 0:C.localParticipant,x=D.useMemo(()=>(e?e.getCameraTrackRefs():[]).find(Z=>Z.participant===$),[e,$]),G=T.filter(Z=>Z.participant!==$)[0],k=D.useMemo(()=>(R||[]).find(Z=>Z.participant===$),[R,$]);return h.jsxs("div",{className:`flex flex-col h-full ${s.video.container} relative`,children:[h.jsxs("div",{className:`flex items-center justify-between p-4 border-b ${s.video.header}`,children:[h.jsxs("div",{className:"flex items-center gap-3",children:[h.jsx("div",{className:`w-3 h-3 rounded-full ${s.video.statusDot}`}),h.jsx("span",{className:"font-medium",children:"Video Call"}),h.jsxs("span",{className:"text-sm opacity-70",children:[M.length+1," participant",M.length!==0?"s":""]})]}),h.jsxs("div",{className:"flex items-center gap-2",children:[g&&h.jsx(hi,{duration:g,theme:t,onTimerExpired:()=>{console.log("Session timer expired")}}),h.jsx("button",{className:`p-2 rounded-lg transition-colors ${s.video.headerButton}`,title:"Layout options",children:h.jsx(ot.LayoutGrid,{className:"w-4 h-4"})})]})]}),h.jsxs("div",{className:"relative flex-1 min-h-0",children:[!A&&h.jsx("div",{className:"flex items-center justify-center h-full",children:h.jsxs("div",{className:"text-center",children:[h.jsx(Me.div,{animate:{rotate:360,scale:[1,1.1,1]},transition:{rotate:{duration:2,repeat:1/0,ease:"linear"},scale:{duration:1,repeat:1/0,ease:"easeInOut"}},className:"w-12 h-12 mx-auto",children:h.jsx(yo,{className:s.spinner,weight:"bold"})}),c&&n&&h.jsx(Me.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:n,className:`mt-4 px-4 py-2 rounded-lg ${((K=s.chatHeader)==null?void 0:K.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]})}),A&&!a&&h.jsx("div",{className:"p-4 min-h-0 h-full",children:h.jsxs("div",{className:"relative w-full h-full overflow-hidden",children:[p?G?h.jsx(Bd,{trackRef:G,participant:G.participant,isLocal:!1,theme:t,className:"w-full h-full"}):h.jsx("div",{className:"w-full h-full flex items-center justify-center",children:h.jsx("div",{className:"text-center",children:h.jsx(ot.Users,{className:"w-12 h-12 mx-auto mb-4 opacity-50"})})}):h.jsx("div",{className:"w-full h-full flex items-center justify-center",children:h.jsx("div",{className:"text-center",children:h.jsxs("div",{className:"mb-4",children:[h.jsx("div",{className:"w-16 h-16 mx-auto mb-4 rounded-full bg-gradient-to-br from-[#6721a4] to-[#5c64f6] flex items-center justify-center",children:h.jsx(ot.User,{className:"w-8 h-8 text-white"})}),A&&(b?h.jsx(Rt.BarVisualizer,{barCount:5,state:I,options:{minHeight:5},trackRef:b,className:"flex items-center justify-center gap-1",children:h.jsx("span",{className:Be(["bg-[#6721a4] min-h-2 w-2 rounded-full","origin-center transition-colors duration-250 ease-linear","data-[lk-highlighted=true]:bg-[#5c64f6]","data-[lk-muted=true]:bg-[#222222]"])})}):h.jsx("div",{className:"flex items-center justify-center gap-1",children:Array.from({length:5}).map((Z,X)=>h.jsx("span",{className:Be(["bg-[#6721a4] min-h-2 w-2 rounded-full","origin-center transition-colors duration-250 ease-linear",I==="speaking"&&"bg-[#5c64f6]",I==="thinking"&&"animate-pulse bg-yellow-500"])},X))}))]})})}),k&&h.jsx("div",{className:"absolute bottom-4 left-0 sm:left-0 z-10 w-32 sm:w-36 h-20 sm:h-24 rounded-lg overflow-hidden shadow-xl border border-white/20",children:h.jsxs("div",{className:"relative w-full h-full bg-black/40",children:[h.jsx(Rt.VideoTrack,{trackRef:k,className:"w-full h-full object-contain"}),h.jsx("div",{className:`absolute top-1 left-1 px-1.5 py-0.5 rounded text-xs ${s.video.nameOverlay}`,children:h.jsxs("span",{className:"inline-flex items-center gap-1",children:[h.jsx(ot.Monitor,{className:"w-3 h-3"}),h.jsx("span",{className:"text-xs",children:"Sharing"})]})})]})}),x&&f&&h.jsx("div",{className:"absolute bottom-4 right-0 w-32 sm:w-36 h-20 sm:h-24 rounded-lg overflow-hidden shadow-xl border border-white/20",children:h.jsx(Bd,{trackRef:x,participant:$||void 0,isLocal:!0,theme:t,className:"w-full h-full"})})]})})]}),h.jsx(Tr,{mode:"wait",children:a&&h.jsx(Me.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},transition:{duration:.3,ease:"easeOut"},className:Be("absolute left-0 right-0 top-0 flex flex-col z-20",t==="light"?"bg-white":"bg-gray-900/95 backdrop-blur-sm"),style:{bottom:`${y}px`},children:h.jsx(Gl,{client:e,theme:t,displayType:i==="fullscreen"?"fullscreen":"widget",disabled:r,onBack:()=>l(!1),showTimer:!1})})}),h.jsx("div",{ref:v,className:"relative z-30 mt-auto",children:h.jsx(Do,{modality:"video",theme:t,disabled:r,showMicrophone:!0,microphoneEnabled:O.enabled,microphoneLoading:O.pending,onToggleMicrophone:()=>O.toggle(),showCamera:f,cameraEnabled:L.enabled,cameraLoading:L.pending,onToggleCamera:W,showScreenShare:m,screenShareEnabled:j.enabled,screenShareLoading:j.pending,onToggleScreenShare:oe,showChatToggle:!0,chatOpen:a,onToggleChat:te,showEndCall:!0,onEndCall:B})})]})}const $d=e=>e,oA=()=>{let e=$d;return{configure(t){e=t},generate(t){return e(t)},reset(){e=$d}}},sA=oA();function Pn(e,...t){const n=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(r=>n.searchParams.append("args[]",r)),`Minified MUI error #${e}; visit ${n} for the full message.`}function Jn(e){if(typeof e!="string")throw new Error(process.env.NODE_ENV!=="production"?"MUI: `capitalize(string)` expects a string argument.":Pn(7));return e.charAt(0).toUpperCase()+e.slice(1)}var Yi={exports:{}},Zi={exports:{}},$e={};/** @license React v16.13.1
67
67
  * react-is.production.min.js
68
68
  *
69
69
  * Copyright (c) Facebook, Inc. and its affiliates.
@@ -77,12 +77,12 @@ https://github.com/highlightjs/highlight.js/issues/2277`),bt=ee,Je=xe),De===void
77
77
  *
78
78
  * This source code is licensed under the MIT license found in the
79
79
  * LICENSE file in the root directory of this source tree.
80
- */var zd;function lA(){return zd||(zd=1,process.env.NODE_ENV!=="production"&&function(){var e=typeof Symbol=="function"&&Symbol.for,t=e?Symbol.for("react.element"):60103,n=e?Symbol.for("react.portal"):60106,r=e?Symbol.for("react.fragment"):60107,i=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,s=e?Symbol.for("react.provider"):60109,a=e?Symbol.for("react.context"):60110,l=e?Symbol.for("react.async_mode"):60111,c=e?Symbol.for("react.concurrent_mode"):60111,u=e?Symbol.for("react.forward_ref"):60112,d=e?Symbol.for("react.suspense"):60113,f=e?Symbol.for("react.suspense_list"):60120,p=e?Symbol.for("react.memo"):60115,m=e?Symbol.for("react.lazy"):60116,g=e?Symbol.for("react.block"):60121,v=e?Symbol.for("react.fundamental"):60117,y=e?Symbol.for("react.responder"):60118,E=e?Symbol.for("react.scope"):60119;function w(P){return typeof P=="string"||typeof P=="function"||P===r||P===c||P===o||P===i||P===d||P===f||typeof P=="object"&&P!==null&&(P.$$typeof===m||P.$$typeof===p||P.$$typeof===s||P.$$typeof===a||P.$$typeof===u||P.$$typeof===v||P.$$typeof===y||P.$$typeof===E||P.$$typeof===g)}function _(P){if(typeof P=="object"&&P!==null){var ne=P.$$typeof;switch(ne){case t:var Se=P.type;switch(Se){case l:case c:case r:case o:case i:case d:return Se;default:var pe=Se&&Se.$$typeof;switch(pe){case a:case u:case m:case p:case s:return pe;default:return ne}}case n:return ne}}}var C=l,T=c,R=a,A=s,I=t,b=u,M=r,O=m,L=p,j=n,W=o,oe=i,te=d,B=!1;function V(P){return B||(B=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),x(P)||_(P)===l}function x(P){return _(P)===c}function z(P){return _(P)===a}function G(P){return _(P)===s}function k(P){return typeof P=="object"&&P!==null&&P.$$typeof===t}function K(P){return _(P)===u}function Z(P){return _(P)===r}function X(P){return _(P)===m}function ie(P){return _(P)===p}function Y(P){return _(P)===n}function re(P){return _(P)===o}function H(P){return _(P)===i}function Ee(P){return _(P)===d}Ve.AsyncMode=C,Ve.ConcurrentMode=T,Ve.ContextConsumer=R,Ve.ContextProvider=A,Ve.Element=I,Ve.ForwardRef=b,Ve.Fragment=M,Ve.Lazy=O,Ve.Memo=L,Ve.Portal=j,Ve.Profiler=W,Ve.StrictMode=oe,Ve.Suspense=te,Ve.isAsyncMode=V,Ve.isConcurrentMode=x,Ve.isContextConsumer=z,Ve.isContextProvider=G,Ve.isElement=k,Ve.isForwardRef=K,Ve.isFragment=Z,Ve.isLazy=X,Ve.isMemo=ie,Ve.isPortal=Y,Ve.isProfiler=re,Ve.isStrictMode=H,Ve.isSuspense=Ee,Ve.isValidElementType=w,Ve.typeOf=_}()),Ve}var Ud;function Vg(){return Ud||(Ud=1,process.env.NODE_ENV==="production"?Zi.exports=aA():Zi.exports=lA()),Zi.exports}/*
80
+ */var zd;function lA(){return zd||(zd=1,process.env.NODE_ENV!=="production"&&function(){var e=typeof Symbol=="function"&&Symbol.for,t=e?Symbol.for("react.element"):60103,n=e?Symbol.for("react.portal"):60106,r=e?Symbol.for("react.fragment"):60107,i=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,s=e?Symbol.for("react.provider"):60109,a=e?Symbol.for("react.context"):60110,l=e?Symbol.for("react.async_mode"):60111,c=e?Symbol.for("react.concurrent_mode"):60111,u=e?Symbol.for("react.forward_ref"):60112,d=e?Symbol.for("react.suspense"):60113,f=e?Symbol.for("react.suspense_list"):60120,p=e?Symbol.for("react.memo"):60115,m=e?Symbol.for("react.lazy"):60116,g=e?Symbol.for("react.block"):60121,v=e?Symbol.for("react.fundamental"):60117,y=e?Symbol.for("react.responder"):60118,E=e?Symbol.for("react.scope"):60119;function w(P){return typeof P=="string"||typeof P=="function"||P===r||P===c||P===o||P===i||P===d||P===f||typeof P=="object"&&P!==null&&(P.$$typeof===m||P.$$typeof===p||P.$$typeof===s||P.$$typeof===a||P.$$typeof===u||P.$$typeof===v||P.$$typeof===y||P.$$typeof===E||P.$$typeof===g)}function _(P){if(typeof P=="object"&&P!==null){var ne=P.$$typeof;switch(ne){case t:var Se=P.type;switch(Se){case l:case c:case r:case o:case i:case d:return Se;default:var pe=Se&&Se.$$typeof;switch(pe){case a:case u:case m:case p:case s:return pe;default:return ne}}case n:return ne}}}var C=l,T=c,R=a,A=s,I=t,b=u,M=r,O=m,L=p,j=n,W=o,oe=i,te=d,B=!1;function $(P){return B||(B=!0,console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")),x(P)||_(P)===l}function x(P){return _(P)===c}function z(P){return _(P)===a}function G(P){return _(P)===s}function k(P){return typeof P=="object"&&P!==null&&P.$$typeof===t}function K(P){return _(P)===u}function Z(P){return _(P)===r}function X(P){return _(P)===m}function ie(P){return _(P)===p}function Y(P){return _(P)===n}function re(P){return _(P)===o}function H(P){return _(P)===i}function Ee(P){return _(P)===d}Ve.AsyncMode=C,Ve.ConcurrentMode=T,Ve.ContextConsumer=R,Ve.ContextProvider=A,Ve.Element=I,Ve.ForwardRef=b,Ve.Fragment=M,Ve.Lazy=O,Ve.Memo=L,Ve.Portal=j,Ve.Profiler=W,Ve.StrictMode=oe,Ve.Suspense=te,Ve.isAsyncMode=$,Ve.isConcurrentMode=x,Ve.isContextConsumer=z,Ve.isContextProvider=G,Ve.isElement=k,Ve.isForwardRef=K,Ve.isFragment=Z,Ve.isLazy=X,Ve.isMemo=ie,Ve.isPortal=Y,Ve.isProfiler=re,Ve.isStrictMode=H,Ve.isSuspense=Ee,Ve.isValidElementType=w,Ve.typeOf=_}()),Ve}var Ud;function Vg(){return Ud||(Ud=1,process.env.NODE_ENV==="production"?Zi.exports=aA():Zi.exports=lA()),Zi.exports}/*
81
81
  object-assign
82
82
  (c) Sindre Sorhus
83
83
  @license MIT
84
- */var Us,Hd;function cA(){if(Hd)return Us;Hd=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function r(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function i(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var s={},a=0;a<10;a++)s["_"+String.fromCharCode(a)]=a;var l=Object.getOwnPropertyNames(s).map(function(u){return s[u]});if(l.join("")!=="0123456789")return!1;var c={};return"abcdefghijklmnopqrst".split("").forEach(function(u){c[u]=u}),Object.keys(Object.assign({},c)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return Us=i()?Object.assign:function(o,s){for(var a,l=r(o),c,u=1;u<arguments.length;u++){a=Object(arguments[u]);for(var d in a)t.call(a,d)&&(l[d]=a[d]);if(e){c=e(a);for(var f=0;f<c.length;f++)n.call(a,c[f])&&(l[c[f]]=a[c[f]])}}return l},Us}var Hs,Wd;function Kl(){if(Wd)return Hs;Wd=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Hs=e,Hs}var Ws,Gd;function zg(){return Gd||(Gd=1,Ws=Function.call.bind(Object.prototype.hasOwnProperty)),Ws}var Gs,Kd;function uA(){if(Kd)return Gs;Kd=1;var e=function(){};if(process.env.NODE_ENV!=="production"){var t=Kl(),n={},r=zg();e=function(o){var s="Warning: "+o;typeof console<"u"&&console.error(s);try{throw new Error(s)}catch{}}}function i(o,s,a,l,c){if(process.env.NODE_ENV!=="production"){for(var u in o)if(r(o,u)){var d;try{if(typeof o[u]!="function"){var f=Error((l||"React class")+": "+a+" type `"+u+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw f.name="Invariant Violation",f}d=o[u](s,u,l,a,null,t)}catch(m){d=m}if(d&&!(d instanceof Error)&&e((l||"React class")+": type specification of "+a+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof d+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),d instanceof Error&&!(d.message in n)){n[d.message]=!0;var p=c?c():"";e("Failed "+a+" type: "+d.message+(p??""))}}}}return i.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(n={})},Gs=i,Gs}var Ks,qd;function dA(){if(qd)return Ks;qd=1;var e=Vg(),t=cA(),n=Kl(),r=zg(),i=uA(),o=function(){};process.env.NODE_ENV!=="production"&&(o=function(a){var l="Warning: "+a;typeof console<"u"&&console.error(l);try{throw new Error(l)}catch{}});function s(){return null}return Ks=function(a,l){var c=typeof Symbol=="function"&&Symbol.iterator,u="@@iterator";function d(x){var z=x&&(c&&x[c]||x[u]);if(typeof z=="function")return z}var f="<<anonymous>>",p={array:y("array"),bigint:y("bigint"),bool:y("boolean"),func:y("function"),number:y("number"),object:y("object"),string:y("string"),symbol:y("symbol"),any:E(),arrayOf:w,element:_(),elementType:C(),instanceOf:T,node:b(),objectOf:A,oneOf:R,oneOfType:I,shape:O,exact:L};function m(x,z){return x===z?x!==0||1/x===1/z:x!==x&&z!==z}function g(x,z){this.message=x,this.data=z&&typeof z=="object"?z:{},this.stack=""}g.prototype=Error.prototype;function v(x){if(process.env.NODE_ENV!=="production")var z={},G=0;function k(Z,X,ie,Y,re,H,Ee){if(Y=Y||f,H=H||ie,Ee!==n){if(l){var P=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw P.name="Invariant Violation",P}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var ne=Y+":"+ie;!z[ne]&&G<3&&(o("You are manually calling a React.PropTypes validation function for the `"+H+"` prop on `"+Y+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),z[ne]=!0,G++)}}return X[ie]==null?Z?X[ie]===null?new g("The "+re+" `"+H+"` is marked as required "+("in `"+Y+"`, but its value is `null`.")):new g("The "+re+" `"+H+"` is marked as required in "+("`"+Y+"`, but its value is `undefined`.")):null:x(X,ie,Y,re,H)}var K=k.bind(null,!1);return K.isRequired=k.bind(null,!0),K}function y(x){function z(G,k,K,Z,X,ie){var Y=G[k],re=oe(Y);if(re!==x){var H=te(Y);return new g("Invalid "+Z+" `"+X+"` of type "+("`"+H+"` supplied to `"+K+"`, expected ")+("`"+x+"`."),{expectedType:x})}return null}return v(z)}function E(){return v(s)}function w(x){function z(G,k,K,Z,X){if(typeof x!="function")return new g("Property `"+X+"` of component `"+K+"` has invalid PropType notation inside arrayOf.");var ie=G[k];if(!Array.isArray(ie)){var Y=oe(ie);return new g("Invalid "+Z+" `"+X+"` of type "+("`"+Y+"` supplied to `"+K+"`, expected an array."))}for(var re=0;re<ie.length;re++){var H=x(ie,re,K,Z,X+"["+re+"]",n);if(H instanceof Error)return H}return null}return v(z)}function _(){function x(z,G,k,K,Z){var X=z[G];if(!a(X)){var ie=oe(X);return new g("Invalid "+K+" `"+Z+"` of type "+("`"+ie+"` supplied to `"+k+"`, expected a single ReactElement."))}return null}return v(x)}function C(){function x(z,G,k,K,Z){var X=z[G];if(!e.isValidElementType(X)){var ie=oe(X);return new g("Invalid "+K+" `"+Z+"` of type "+("`"+ie+"` supplied to `"+k+"`, expected a single ReactElement type."))}return null}return v(x)}function T(x){function z(G,k,K,Z,X){if(!(G[k]instanceof x)){var ie=x.name||f,Y=V(G[k]);return new g("Invalid "+Z+" `"+X+"` of type "+("`"+Y+"` supplied to `"+K+"`, expected ")+("instance of `"+ie+"`."))}return null}return v(z)}function R(x){if(!Array.isArray(x))return process.env.NODE_ENV!=="production"&&(arguments.length>1?o("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):o("Invalid argument supplied to oneOf, expected an array.")),s;function z(G,k,K,Z,X){for(var ie=G[k],Y=0;Y<x.length;Y++)if(m(ie,x[Y]))return null;var re=JSON.stringify(x,function(Ee,P){var ne=te(P);return ne==="symbol"?String(P):P});return new g("Invalid "+Z+" `"+X+"` of value `"+String(ie)+"` "+("supplied to `"+K+"`, expected one of "+re+"."))}return v(z)}function A(x){function z(G,k,K,Z,X){if(typeof x!="function")return new g("Property `"+X+"` of component `"+K+"` has invalid PropType notation inside objectOf.");var ie=G[k],Y=oe(ie);if(Y!=="object")return new g("Invalid "+Z+" `"+X+"` of type "+("`"+Y+"` supplied to `"+K+"`, expected an object."));for(var re in ie)if(r(ie,re)){var H=x(ie,re,K,Z,X+"."+re,n);if(H instanceof Error)return H}return null}return v(z)}function I(x){if(!Array.isArray(x))return process.env.NODE_ENV!=="production"&&o("Invalid argument supplied to oneOfType, expected an instance of array."),s;for(var z=0;z<x.length;z++){var G=x[z];if(typeof G!="function")return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+B(G)+" at index "+z+"."),s}function k(K,Z,X,ie,Y){for(var re=[],H=0;H<x.length;H++){var Ee=x[H],P=Ee(K,Z,X,ie,Y,n);if(P==null)return null;P.data&&r(P.data,"expectedType")&&re.push(P.data.expectedType)}var ne=re.length>0?", expected one of type ["+re.join(", ")+"]":"";return new g("Invalid "+ie+" `"+Y+"` supplied to "+("`"+X+"`"+ne+"."))}return v(k)}function b(){function x(z,G,k,K,Z){return j(z[G])?null:new g("Invalid "+K+" `"+Z+"` supplied to "+("`"+k+"`, expected a ReactNode."))}return v(x)}function M(x,z,G,k,K){return new g((x||"React class")+": "+z+" type `"+G+"."+k+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+K+"`.")}function O(x){function z(G,k,K,Z,X){var ie=G[k],Y=oe(ie);if(Y!=="object")return new g("Invalid "+Z+" `"+X+"` of type `"+Y+"` "+("supplied to `"+K+"`, expected `object`."));for(var re in x){var H=x[re];if(typeof H!="function")return M(K,Z,X,re,te(H));var Ee=H(ie,re,K,Z,X+"."+re,n);if(Ee)return Ee}return null}return v(z)}function L(x){function z(G,k,K,Z,X){var ie=G[k],Y=oe(ie);if(Y!=="object")return new g("Invalid "+Z+" `"+X+"` of type `"+Y+"` "+("supplied to `"+K+"`, expected `object`."));var re=t({},G[k],x);for(var H in re){var Ee=x[H];if(r(x,H)&&typeof Ee!="function")return M(K,Z,X,H,te(Ee));if(!Ee)return new g("Invalid "+Z+" `"+X+"` key `"+H+"` supplied to `"+K+"`.\nBad object: "+JSON.stringify(G[k],null," ")+`
85
- Valid keys: `+JSON.stringify(Object.keys(x),null," "));var P=Ee(ie,H,K,Z,X+"."+H,n);if(P)return P}return null}return v(z)}function j(x){switch(typeof x){case"number":case"string":case"undefined":return!0;case"boolean":return!x;case"object":if(Array.isArray(x))return x.every(j);if(x===null||a(x))return!0;var z=d(x);if(z){var G=z.call(x),k;if(z!==x.entries){for(;!(k=G.next()).done;)if(!j(k.value))return!1}else for(;!(k=G.next()).done;){var K=k.value;if(K&&!j(K[1]))return!1}}else return!1;return!0;default:return!1}}function W(x,z){return x==="symbol"?!0:z?z["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&z instanceof Symbol:!1}function oe(x){var z=typeof x;return Array.isArray(x)?"array":x instanceof RegExp?"object":W(z,x)?"symbol":z}function te(x){if(typeof x>"u"||x===null)return""+x;var z=oe(x);if(z==="object"){if(x instanceof Date)return"date";if(x instanceof RegExp)return"regexp"}return z}function B(x){var z=te(x);switch(z){case"array":case"object":return"an "+z;case"boolean":case"date":case"regexp":return"a "+z;default:return z}}function V(x){return!x.constructor||!x.constructor.name?f:x.constructor.name}return p.checkPropTypes=i,p.resetWarningCache=i.resetWarningCache,p.PropTypes=p,p},Ks}var qs,Yd;function fA(){if(Yd)return qs;Yd=1;var e=Kl();function t(){}function n(){}return n.resetWarningCache=t,qs=function(){function r(s,a,l,c,u,d){if(d!==e){var f=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw f.name="Invariant Violation",f}}r.isRequired=r;function i(){return r}var o={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:i,element:r,elementType:r,instanceOf:i,node:r,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:n,resetWarningCache:t};return o.PropTypes=o,o},qs}var Zd;function hA(){if(Zd)return Yi.exports;if(Zd=1,process.env.NODE_ENV!=="production"){var e=Vg(),t=!0;Yi.exports=dA()(e.isElement,t)}else Yi.exports=fA()();return Yi.exports}var pA=hA();const je=Lo(pA);function gA(e,t,n=void 0){const r={};for(const i in e){const o=e[i];let s="",a=!0;for(let l=0;l<o.length;l+=1){const c=o[l];c&&(s+=(a===!0?"":" ")+t(c),a=!1,n&&n[c]&&(s+=" "+n[c]))}r[i]=s}return r}var Xi={exports:{}},He={};/**
84
+ */var Us,Hd;function cA(){if(Hd)return Us;Hd=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function r(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function i(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var s={},a=0;a<10;a++)s["_"+String.fromCharCode(a)]=a;var l=Object.getOwnPropertyNames(s).map(function(u){return s[u]});if(l.join("")!=="0123456789")return!1;var c={};return"abcdefghijklmnopqrst".split("").forEach(function(u){c[u]=u}),Object.keys(Object.assign({},c)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return Us=i()?Object.assign:function(o,s){for(var a,l=r(o),c,u=1;u<arguments.length;u++){a=Object(arguments[u]);for(var d in a)t.call(a,d)&&(l[d]=a[d]);if(e){c=e(a);for(var f=0;f<c.length;f++)n.call(a,c[f])&&(l[c[f]]=a[c[f]])}}return l},Us}var Hs,Wd;function Kl(){if(Wd)return Hs;Wd=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Hs=e,Hs}var Ws,Gd;function zg(){return Gd||(Gd=1,Ws=Function.call.bind(Object.prototype.hasOwnProperty)),Ws}var Gs,Kd;function uA(){if(Kd)return Gs;Kd=1;var e=function(){};if(process.env.NODE_ENV!=="production"){var t=Kl(),n={},r=zg();e=function(o){var s="Warning: "+o;typeof console<"u"&&console.error(s);try{throw new Error(s)}catch{}}}function i(o,s,a,l,c){if(process.env.NODE_ENV!=="production"){for(var u in o)if(r(o,u)){var d;try{if(typeof o[u]!="function"){var f=Error((l||"React class")+": "+a+" type `"+u+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+typeof o[u]+"`.This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");throw f.name="Invariant Violation",f}d=o[u](s,u,l,a,null,t)}catch(m){d=m}if(d&&!(d instanceof Error)&&e((l||"React class")+": type specification of "+a+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof d+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),d instanceof Error&&!(d.message in n)){n[d.message]=!0;var p=c?c():"";e("Failed "+a+" type: "+d.message+(p??""))}}}}return i.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(n={})},Gs=i,Gs}var Ks,qd;function dA(){if(qd)return Ks;qd=1;var e=Vg(),t=cA(),n=Kl(),r=zg(),i=uA(),o=function(){};process.env.NODE_ENV!=="production"&&(o=function(a){var l="Warning: "+a;typeof console<"u"&&console.error(l);try{throw new Error(l)}catch{}});function s(){return null}return Ks=function(a,l){var c=typeof Symbol=="function"&&Symbol.iterator,u="@@iterator";function d(x){var z=x&&(c&&x[c]||x[u]);if(typeof z=="function")return z}var f="<<anonymous>>",p={array:y("array"),bigint:y("bigint"),bool:y("boolean"),func:y("function"),number:y("number"),object:y("object"),string:y("string"),symbol:y("symbol"),any:E(),arrayOf:w,element:_(),elementType:C(),instanceOf:T,node:b(),objectOf:A,oneOf:R,oneOfType:I,shape:O,exact:L};function m(x,z){return x===z?x!==0||1/x===1/z:x!==x&&z!==z}function g(x,z){this.message=x,this.data=z&&typeof z=="object"?z:{},this.stack=""}g.prototype=Error.prototype;function v(x){if(process.env.NODE_ENV!=="production")var z={},G=0;function k(Z,X,ie,Y,re,H,Ee){if(Y=Y||f,H=H||ie,Ee!==n){if(l){var P=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use `PropTypes.checkPropTypes()` to call them. Read more at http://fb.me/use-check-prop-types");throw P.name="Invariant Violation",P}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var ne=Y+":"+ie;!z[ne]&&G<3&&(o("You are manually calling a React.PropTypes validation function for the `"+H+"` prop on `"+Y+"`. This is deprecated and will throw in the standalone `prop-types` package. You may be seeing this warning due to a third-party PropTypes library. See https://fb.me/react-warning-dont-call-proptypes for details."),z[ne]=!0,G++)}}return X[ie]==null?Z?X[ie]===null?new g("The "+re+" `"+H+"` is marked as required "+("in `"+Y+"`, but its value is `null`.")):new g("The "+re+" `"+H+"` is marked as required in "+("`"+Y+"`, but its value is `undefined`.")):null:x(X,ie,Y,re,H)}var K=k.bind(null,!1);return K.isRequired=k.bind(null,!0),K}function y(x){function z(G,k,K,Z,X,ie){var Y=G[k],re=oe(Y);if(re!==x){var H=te(Y);return new g("Invalid "+Z+" `"+X+"` of type "+("`"+H+"` supplied to `"+K+"`, expected ")+("`"+x+"`."),{expectedType:x})}return null}return v(z)}function E(){return v(s)}function w(x){function z(G,k,K,Z,X){if(typeof x!="function")return new g("Property `"+X+"` of component `"+K+"` has invalid PropType notation inside arrayOf.");var ie=G[k];if(!Array.isArray(ie)){var Y=oe(ie);return new g("Invalid "+Z+" `"+X+"` of type "+("`"+Y+"` supplied to `"+K+"`, expected an array."))}for(var re=0;re<ie.length;re++){var H=x(ie,re,K,Z,X+"["+re+"]",n);if(H instanceof Error)return H}return null}return v(z)}function _(){function x(z,G,k,K,Z){var X=z[G];if(!a(X)){var ie=oe(X);return new g("Invalid "+K+" `"+Z+"` of type "+("`"+ie+"` supplied to `"+k+"`, expected a single ReactElement."))}return null}return v(x)}function C(){function x(z,G,k,K,Z){var X=z[G];if(!e.isValidElementType(X)){var ie=oe(X);return new g("Invalid "+K+" `"+Z+"` of type "+("`"+ie+"` supplied to `"+k+"`, expected a single ReactElement type."))}return null}return v(x)}function T(x){function z(G,k,K,Z,X){if(!(G[k]instanceof x)){var ie=x.name||f,Y=$(G[k]);return new g("Invalid "+Z+" `"+X+"` of type "+("`"+Y+"` supplied to `"+K+"`, expected ")+("instance of `"+ie+"`."))}return null}return v(z)}function R(x){if(!Array.isArray(x))return process.env.NODE_ENV!=="production"&&(arguments.length>1?o("Invalid arguments supplied to oneOf, expected an array, got "+arguments.length+" arguments. A common mistake is to write oneOf(x, y, z) instead of oneOf([x, y, z])."):o("Invalid argument supplied to oneOf, expected an array.")),s;function z(G,k,K,Z,X){for(var ie=G[k],Y=0;Y<x.length;Y++)if(m(ie,x[Y]))return null;var re=JSON.stringify(x,function(Ee,P){var ne=te(P);return ne==="symbol"?String(P):P});return new g("Invalid "+Z+" `"+X+"` of value `"+String(ie)+"` "+("supplied to `"+K+"`, expected one of "+re+"."))}return v(z)}function A(x){function z(G,k,K,Z,X){if(typeof x!="function")return new g("Property `"+X+"` of component `"+K+"` has invalid PropType notation inside objectOf.");var ie=G[k],Y=oe(ie);if(Y!=="object")return new g("Invalid "+Z+" `"+X+"` of type "+("`"+Y+"` supplied to `"+K+"`, expected an object."));for(var re in ie)if(r(ie,re)){var H=x(ie,re,K,Z,X+"."+re,n);if(H instanceof Error)return H}return null}return v(z)}function I(x){if(!Array.isArray(x))return process.env.NODE_ENV!=="production"&&o("Invalid argument supplied to oneOfType, expected an instance of array."),s;for(var z=0;z<x.length;z++){var G=x[z];if(typeof G!="function")return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+B(G)+" at index "+z+"."),s}function k(K,Z,X,ie,Y){for(var re=[],H=0;H<x.length;H++){var Ee=x[H],P=Ee(K,Z,X,ie,Y,n);if(P==null)return null;P.data&&r(P.data,"expectedType")&&re.push(P.data.expectedType)}var ne=re.length>0?", expected one of type ["+re.join(", ")+"]":"";return new g("Invalid "+ie+" `"+Y+"` supplied to "+("`"+X+"`"+ne+"."))}return v(k)}function b(){function x(z,G,k,K,Z){return j(z[G])?null:new g("Invalid "+K+" `"+Z+"` supplied to "+("`"+k+"`, expected a ReactNode."))}return v(x)}function M(x,z,G,k,K){return new g((x||"React class")+": "+z+" type `"+G+"."+k+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+K+"`.")}function O(x){function z(G,k,K,Z,X){var ie=G[k],Y=oe(ie);if(Y!=="object")return new g("Invalid "+Z+" `"+X+"` of type `"+Y+"` "+("supplied to `"+K+"`, expected `object`."));for(var re in x){var H=x[re];if(typeof H!="function")return M(K,Z,X,re,te(H));var Ee=H(ie,re,K,Z,X+"."+re,n);if(Ee)return Ee}return null}return v(z)}function L(x){function z(G,k,K,Z,X){var ie=G[k],Y=oe(ie);if(Y!=="object")return new g("Invalid "+Z+" `"+X+"` of type `"+Y+"` "+("supplied to `"+K+"`, expected `object`."));var re=t({},G[k],x);for(var H in re){var Ee=x[H];if(r(x,H)&&typeof Ee!="function")return M(K,Z,X,H,te(Ee));if(!Ee)return new g("Invalid "+Z+" `"+X+"` key `"+H+"` supplied to `"+K+"`.\nBad object: "+JSON.stringify(G[k],null," ")+`
85
+ Valid keys: `+JSON.stringify(Object.keys(x),null," "));var P=Ee(ie,H,K,Z,X+"."+H,n);if(P)return P}return null}return v(z)}function j(x){switch(typeof x){case"number":case"string":case"undefined":return!0;case"boolean":return!x;case"object":if(Array.isArray(x))return x.every(j);if(x===null||a(x))return!0;var z=d(x);if(z){var G=z.call(x),k;if(z!==x.entries){for(;!(k=G.next()).done;)if(!j(k.value))return!1}else for(;!(k=G.next()).done;){var K=k.value;if(K&&!j(K[1]))return!1}}else return!1;return!0;default:return!1}}function W(x,z){return x==="symbol"?!0:z?z["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&z instanceof Symbol:!1}function oe(x){var z=typeof x;return Array.isArray(x)?"array":x instanceof RegExp?"object":W(z,x)?"symbol":z}function te(x){if(typeof x>"u"||x===null)return""+x;var z=oe(x);if(z==="object"){if(x instanceof Date)return"date";if(x instanceof RegExp)return"regexp"}return z}function B(x){var z=te(x);switch(z){case"array":case"object":return"an "+z;case"boolean":case"date":case"regexp":return"a "+z;default:return z}}function $(x){return!x.constructor||!x.constructor.name?f:x.constructor.name}return p.checkPropTypes=i,p.resetWarningCache=i.resetWarningCache,p.PropTypes=p,p},Ks}var qs,Yd;function fA(){if(Yd)return qs;Yd=1;var e=Kl();function t(){}function n(){}return n.resetWarningCache=t,qs=function(){function r(s,a,l,c,u,d){if(d!==e){var f=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw f.name="Invariant Violation",f}}r.isRequired=r;function i(){return r}var o={array:r,bigint:r,bool:r,func:r,number:r,object:r,string:r,symbol:r,any:r,arrayOf:i,element:r,elementType:r,instanceOf:i,node:r,objectOf:i,oneOf:i,oneOfType:i,shape:i,exact:i,checkPropTypes:n,resetWarningCache:t};return o.PropTypes=o,o},qs}var Zd;function hA(){if(Zd)return Yi.exports;if(Zd=1,process.env.NODE_ENV!=="production"){var e=Vg(),t=!0;Yi.exports=dA()(e.isElement,t)}else Yi.exports=fA()();return Yi.exports}var pA=hA();const je=Lo(pA);function gA(e,t,n=void 0){const r={};for(const i in e){const o=e[i];let s="",a=!0;for(let l=0;l<o.length;l+=1){const c=o[l];c&&(s+=(a===!0?"":" ")+t(c),a=!1,n&&n[c]&&(s+=" "+n[c]))}r[i]=s}return r}var Xi={exports:{}},He={};/**
86
86
  * @license React
87
87
  * react-is.production.js
88
88
  *
@@ -109,7 +109,7 @@ For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.`:Pn(18,`(${t})`));return
109
109
  * This source code is licensed under the MIT license found in the
110
110
  * LICENSE file in the root directory of this source tree.
111
111
  */function bM(e,t){const n=Zm(e,t);return process.env.NODE_ENV!=="production"?(...r)=>{const i=typeof e=="string"?`"${e}"`:"component";return r.length===0?console.error([`MUI: Seems like you called \`styled(${i})()\` without a \`style\` argument.`,'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join(`
112
- `)):r.some(o=>o===void 0)&&console.error(`MUI: the styled(${i})(...args) API requires all its args to be defined.`),n(...r)}:n}function yM(e,t){Array.isArray(e.__emotion_styles)&&(e.__emotion_styles=t(e.__emotion_styles))}const lf=[];function Zn(e){return lf[0]=e,mM(lf)}const xM=e=>{const t=Object.keys(e).map(n=>({key:n,val:e[n]}))||[];return t.sort((n,r)=>n.val-r.val),t.reduce((n,r)=>({...n,[r.key]:r.val}),{})};function vM(e){const{values:t={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:r=5,...i}=e,o=xM(t),s=Object.keys(o);function a(f){return`@media (min-width:${typeof t[f]=="number"?t[f]:f}${n})`}function l(f){return`@media (max-width:${(typeof t[f]=="number"?t[f]:f)-r/100}${n})`}function c(f,p){const m=s.indexOf(p);return`@media (min-width:${typeof t[f]=="number"?t[f]:f}${n}) and (max-width:${(m!==-1&&typeof t[s[m]]=="number"?t[s[m]]:p)-r/100}${n})`}function u(f){return s.indexOf(f)+1<s.length?c(f,s[s.indexOf(f)+1]):a(f)}function d(f){const p=s.indexOf(f);return p===0?a(s[1]):p===s.length-1?l(s[p]):c(f,s[s.indexOf(f)+1]).replace("@media","@media not all and")}return{keys:s,values:o,up:a,down:l,between:c,only:u,not:d,unit:n,...i}}const wM={borderRadius:4};function Gg(e=8,t=ql({spacing:e})){if(e.mui)return e;const n=(...r)=>(process.env.NODE_ENV!=="production"&&(r.length<=4||console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${r.length}`)),(r.length===0?[1]:r).map(o=>{const s=t(o);return typeof s=="number"?`${s}px`:s}).join(" "));return n.mui=!0,n}function EM(e,t){var r;const n=this;if(n.vars){if(!((r=n.colorSchemes)!=null&&r[e])||typeof n.getColorSchemeSelector!="function")return{};let i=n.getColorSchemeSelector(e);return i==="&"?t:((i.includes("data-")||i.includes("."))&&(i=`*:where(${i.replace(/\s*&$/,"")}) &`),{[i]:t})}return n.palette.mode===e?t:{}}function Kg(e={},...t){const{breakpoints:n={},palette:r={},spacing:i,shape:o={},...s}=e,a=vM(n),l=Gg(i);let c=Ht({breakpoints:a,direction:"ltr",components:{},palette:{mode:"light",...r},spacing:l,shape:{...wM,...o}},s);return c=wA(c),c.applyStyles=EM,c=t.reduce((u,d)=>Ht(u,d),c),c.unstable_sxConfig={...Xo,...s==null?void 0:s.unstable_sxConfig},c.unstable_sx=function(d){return Mr({sx:d,theme:this})},c}const SM={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function Zl(e,t,n="Mui"){const r=SM[t];return r?`${n}-${r}`:`${sA.generate(e)}-${t}`}function kM(e,t,n="Mui"){const r={};return t.forEach(i=>{r[i]=Zl(e,i,n)}),r}function qg(e,t=""){return e.displayName||e.name||t}function cf(e,t,n){const r=qg(t);return e.displayName||(r!==""?`${n}(${r})`:n)}function CM(e){if(e!=null){if(typeof e=="string")return e;if(typeof e=="function")return qg(e,"Component");if(typeof e=="object")switch(e.$$typeof){case Co.ForwardRef:return cf(e,e.render,"ForwardRef");case Co.Memo:return cf(e,e.type,"memo");default:return}}}function Yg(e){const{variants:t,...n}=e,r={variants:t,style:Zn(n),isProcessed:!0};return r.style===n||t&&t.forEach(i=>{typeof i.style!="function"&&(i.style=Zn(i.style))}),r}const _M=Kg();function Zs(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}function Kn(e,t){return t&&e&&typeof e=="object"&&e.styles&&!e.styles.startsWith("@layer")&&(e.styles=`@layer ${t}{${String(e.styles)}}`),e}function TM(e){return e?(t,n)=>n[e]:null}function NM(e,t,n){e.theme=IM(e.theme)?n:e.theme[t]||e.theme}function ao(e,t,n){const r=typeof t=="function"?t(e):t;if(Array.isArray(r))return r.flatMap(i=>ao(e,i,n));if(Array.isArray(r==null?void 0:r.variants)){let i;if(r.isProcessed)i=n?Kn(r.style,n):r.style;else{const{variants:o,...s}=r;i=n?Kn(Zn(s),n):s}return Zg(e,r.variants,[i],n)}return r!=null&&r.isProcessed?n?Kn(Zn(r.style),n):r.style:n?Kn(Zn(r),n):r}function Zg(e,t,n=[],r=void 0){var o;let i;e:for(let s=0;s<t.length;s+=1){const a=t[s];if(typeof a.props=="function"){if(i??(i={...e,...e.ownerState,ownerState:e.ownerState}),!a.props(i))continue}else for(const l in a.props)if(e[l]!==a.props[l]&&((o=e.ownerState)==null?void 0:o[l])!==a.props[l])continue e;typeof a.style=="function"?(i??(i={...e,...e.ownerState,ownerState:e.ownerState}),n.push(r?Kn(Zn(a.style(i)),r):a.style(i))):n.push(r?Kn(Zn(a.style),r):a.style)}return n}function AM(e={}){const{themeId:t,defaultTheme:n=_M,rootShouldForwardProp:r=Zs,slotShouldForwardProp:i=Zs}=e;function o(a){NM(a,t,n)}return(a,l={})=>{yM(a,T=>T.filter(R=>R!==Mr));const{name:c,slot:u,skipVariantsResolver:d,skipSx:f,overridesResolver:p=TM(Xg(u)),...m}=l,g=c&&c.startsWith("Mui")||u?"components":"custom",v=d!==void 0?d:u&&u!=="Root"&&u!=="root"||!1,y=f||!1;let E=Zs;u==="Root"||u==="root"?E=r:u?E=i:OM(a)&&(E=void 0);const w=bM(a,{shouldForwardProp:E,label:RM(c,u),...m}),_=T=>{if(T.__emotion_real===T)return T;if(typeof T=="function")return function(A){return ao(A,T,A.theme.modularCssLayers?g:void 0)};if(xn(T)){const R=Yg(T);return function(I){return R.variants?ao(I,R,I.theme.modularCssLayers?g:void 0):I.theme.modularCssLayers?Kn(R.style,g):R.style}}return T},C=(...T)=>{const R=[],A=T.map(_),I=[];if(R.push(o),c&&p&&I.push(function(L){var te,B;const W=(B=(te=L.theme.components)==null?void 0:te[c])==null?void 0:B.styleOverrides;if(!W)return null;const oe={};for(const V in W)oe[V]=ao(L,W[V],L.theme.modularCssLayers?"theme":void 0);return p(L,oe)}),c&&!v&&I.push(function(L){var oe,te;const j=L.theme,W=(te=(oe=j==null?void 0:j.components)==null?void 0:oe[c])==null?void 0:te.variants;return W?Zg(L,W,[],L.theme.modularCssLayers?"theme":void 0):null}),y||I.push(Mr),Array.isArray(A[0])){const O=A.shift(),L=new Array(R.length).fill(""),j=new Array(I.length).fill("");let W;W=[...L,...O,...j],W.raw=[...L,...O.raw,...j],R.unshift(W)}const b=[...R,...A,...I],M=w(...b);return a.muiName&&(M.muiName=a.muiName),process.env.NODE_ENV!=="production"&&(M.displayName=MM(c,u,a)),M};return w.withConfig&&(C.withConfig=w.withConfig),C}}function MM(e,t,n){return e?`${e}${Jn(t||"")}`:`Styled(${CM(n)})`}function RM(e,t){let n;return process.env.NODE_ENV!=="production"&&e&&(n=`${e}-${Xg(t||"Root")}`),n}function IM(e){for(const t in e)return!1;return!0}function OM(e){return typeof e=="string"&&e.charCodeAt(0)>96}function Xg(e){return e&&e.charAt(0).toLowerCase()+e.slice(1)}function Ba(e,t,n=!1){const r={...t};for(const i in e)if(Object.prototype.hasOwnProperty.call(e,i)){const o=i;if(o==="components"||o==="slots")r[o]={...e[o],...r[o]};else if(o==="componentsProps"||o==="slotProps"){const s=e[o],a=t[o];if(!a)r[o]=s||{};else if(!s)r[o]=a;else{r[o]={...a};for(const l in s)if(Object.prototype.hasOwnProperty.call(s,l)){const c=l;r[o][c]=Ba(s[c],a[c],n)}}}else o==="className"&&n&&t.className?r.className=Ha(e==null?void 0:e.className,t==null?void 0:t.className):o==="style"&&n&&t.style?r.style={...e==null?void 0:e.style,...t==null?void 0:t.style}:r[o]===void 0&&(r[o]=e[o])}return r}function PM(e,t=Number.MIN_SAFE_INTEGER,n=Number.MAX_SAFE_INTEGER){return Math.max(t,Math.min(e,n))}function Xl(e,t=0,n=1){return process.env.NODE_ENV!=="production"&&(e<t||e>n)&&console.error(`MUI: The value provided ${e} is out of range [${t}, ${n}].`),PM(e,t,n)}function DM(e){e=e.slice(1);const t=new RegExp(`.{1,${e.length>=6?2:1}}`,"g");let n=e.match(t);return n&&n[0].length===1&&(n=n.map(r=>r+r)),process.env.NODE_ENV!=="production"&&e.length!==e.trim().length&&console.error(`MUI: The color: "${e}" is invalid. Make sure the color input doesn't contain leading/trailing space.`),n?`rgb${n.length===4?"a":""}(${n.map((r,i)=>i<3?parseInt(r,16):Math.round(parseInt(r,16)/255*1e3)/1e3).join(", ")})`:""}function Dn(e){if(e.type)return e;if(e.charAt(0)==="#")return Dn(DM(e));const t=e.indexOf("("),n=e.substring(0,t);if(!["rgb","rgba","hsl","hsla","color"].includes(n))throw new Error(process.env.NODE_ENV!=="production"?`MUI: Unsupported \`${e}\` color.
112
+ `)):r.some(o=>o===void 0)&&console.error(`MUI: the styled(${i})(...args) API requires all its args to be defined.`),n(...r)}:n}function yM(e,t){Array.isArray(e.__emotion_styles)&&(e.__emotion_styles=t(e.__emotion_styles))}const lf=[];function Zn(e){return lf[0]=e,mM(lf)}const xM=e=>{const t=Object.keys(e).map(n=>({key:n,val:e[n]}))||[];return t.sort((n,r)=>n.val-r.val),t.reduce((n,r)=>({...n,[r.key]:r.val}),{})};function vM(e){const{values:t={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:r=5,...i}=e,o=xM(t),s=Object.keys(o);function a(f){return`@media (min-width:${typeof t[f]=="number"?t[f]:f}${n})`}function l(f){return`@media (max-width:${(typeof t[f]=="number"?t[f]:f)-r/100}${n})`}function c(f,p){const m=s.indexOf(p);return`@media (min-width:${typeof t[f]=="number"?t[f]:f}${n}) and (max-width:${(m!==-1&&typeof t[s[m]]=="number"?t[s[m]]:p)-r/100}${n})`}function u(f){return s.indexOf(f)+1<s.length?c(f,s[s.indexOf(f)+1]):a(f)}function d(f){const p=s.indexOf(f);return p===0?a(s[1]):p===s.length-1?l(s[p]):c(f,s[s.indexOf(f)+1]).replace("@media","@media not all and")}return{keys:s,values:o,up:a,down:l,between:c,only:u,not:d,unit:n,...i}}const wM={borderRadius:4};function Gg(e=8,t=ql({spacing:e})){if(e.mui)return e;const n=(...r)=>(process.env.NODE_ENV!=="production"&&(r.length<=4||console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${r.length}`)),(r.length===0?[1]:r).map(o=>{const s=t(o);return typeof s=="number"?`${s}px`:s}).join(" "));return n.mui=!0,n}function EM(e,t){var r;const n=this;if(n.vars){if(!((r=n.colorSchemes)!=null&&r[e])||typeof n.getColorSchemeSelector!="function")return{};let i=n.getColorSchemeSelector(e);return i==="&"?t:((i.includes("data-")||i.includes("."))&&(i=`*:where(${i.replace(/\s*&$/,"")}) &`),{[i]:t})}return n.palette.mode===e?t:{}}function Kg(e={},...t){const{breakpoints:n={},palette:r={},spacing:i,shape:o={},...s}=e,a=vM(n),l=Gg(i);let c=Ht({breakpoints:a,direction:"ltr",components:{},palette:{mode:"light",...r},spacing:l,shape:{...wM,...o}},s);return c=wA(c),c.applyStyles=EM,c=t.reduce((u,d)=>Ht(u,d),c),c.unstable_sxConfig={...Xo,...s==null?void 0:s.unstable_sxConfig},c.unstable_sx=function(d){return Mr({sx:d,theme:this})},c}const SM={active:"active",checked:"checked",completed:"completed",disabled:"disabled",error:"error",expanded:"expanded",focused:"focused",focusVisible:"focusVisible",open:"open",readOnly:"readOnly",required:"required",selected:"selected"};function Zl(e,t,n="Mui"){const r=SM[t];return r?`${n}-${r}`:`${sA.generate(e)}-${t}`}function kM(e,t,n="Mui"){const r={};return t.forEach(i=>{r[i]=Zl(e,i,n)}),r}function qg(e,t=""){return e.displayName||e.name||t}function cf(e,t,n){const r=qg(t);return e.displayName||(r!==""?`${n}(${r})`:n)}function CM(e){if(e!=null){if(typeof e=="string")return e;if(typeof e=="function")return qg(e,"Component");if(typeof e=="object")switch(e.$$typeof){case Co.ForwardRef:return cf(e,e.render,"ForwardRef");case Co.Memo:return cf(e,e.type,"memo");default:return}}}function Yg(e){const{variants:t,...n}=e,r={variants:t,style:Zn(n),isProcessed:!0};return r.style===n||t&&t.forEach(i=>{typeof i.style!="function"&&(i.style=Zn(i.style))}),r}const _M=Kg();function Zs(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}function Kn(e,t){return t&&e&&typeof e=="object"&&e.styles&&!e.styles.startsWith("@layer")&&(e.styles=`@layer ${t}{${String(e.styles)}}`),e}function TM(e){return e?(t,n)=>n[e]:null}function NM(e,t,n){e.theme=IM(e.theme)?n:e.theme[t]||e.theme}function ao(e,t,n){const r=typeof t=="function"?t(e):t;if(Array.isArray(r))return r.flatMap(i=>ao(e,i,n));if(Array.isArray(r==null?void 0:r.variants)){let i;if(r.isProcessed)i=n?Kn(r.style,n):r.style;else{const{variants:o,...s}=r;i=n?Kn(Zn(s),n):s}return Zg(e,r.variants,[i],n)}return r!=null&&r.isProcessed?n?Kn(Zn(r.style),n):r.style:n?Kn(Zn(r),n):r}function Zg(e,t,n=[],r=void 0){var o;let i;e:for(let s=0;s<t.length;s+=1){const a=t[s];if(typeof a.props=="function"){if(i??(i={...e,...e.ownerState,ownerState:e.ownerState}),!a.props(i))continue}else for(const l in a.props)if(e[l]!==a.props[l]&&((o=e.ownerState)==null?void 0:o[l])!==a.props[l])continue e;typeof a.style=="function"?(i??(i={...e,...e.ownerState,ownerState:e.ownerState}),n.push(r?Kn(Zn(a.style(i)),r):a.style(i))):n.push(r?Kn(Zn(a.style),r):a.style)}return n}function AM(e={}){const{themeId:t,defaultTheme:n=_M,rootShouldForwardProp:r=Zs,slotShouldForwardProp:i=Zs}=e;function o(a){NM(a,t,n)}return(a,l={})=>{yM(a,T=>T.filter(R=>R!==Mr));const{name:c,slot:u,skipVariantsResolver:d,skipSx:f,overridesResolver:p=TM(Xg(u)),...m}=l,g=c&&c.startsWith("Mui")||u?"components":"custom",v=d!==void 0?d:u&&u!=="Root"&&u!=="root"||!1,y=f||!1;let E=Zs;u==="Root"||u==="root"?E=r:u?E=i:OM(a)&&(E=void 0);const w=bM(a,{shouldForwardProp:E,label:RM(c,u),...m}),_=T=>{if(T.__emotion_real===T)return T;if(typeof T=="function")return function(A){return ao(A,T,A.theme.modularCssLayers?g:void 0)};if(xn(T)){const R=Yg(T);return function(I){return R.variants?ao(I,R,I.theme.modularCssLayers?g:void 0):I.theme.modularCssLayers?Kn(R.style,g):R.style}}return T},C=(...T)=>{const R=[],A=T.map(_),I=[];if(R.push(o),c&&p&&I.push(function(L){var te,B;const W=(B=(te=L.theme.components)==null?void 0:te[c])==null?void 0:B.styleOverrides;if(!W)return null;const oe={};for(const $ in W)oe[$]=ao(L,W[$],L.theme.modularCssLayers?"theme":void 0);return p(L,oe)}),c&&!v&&I.push(function(L){var oe,te;const j=L.theme,W=(te=(oe=j==null?void 0:j.components)==null?void 0:oe[c])==null?void 0:te.variants;return W?Zg(L,W,[],L.theme.modularCssLayers?"theme":void 0):null}),y||I.push(Mr),Array.isArray(A[0])){const O=A.shift(),L=new Array(R.length).fill(""),j=new Array(I.length).fill("");let W;W=[...L,...O,...j],W.raw=[...L,...O.raw,...j],R.unshift(W)}const b=[...R,...A,...I],M=w(...b);return a.muiName&&(M.muiName=a.muiName),process.env.NODE_ENV!=="production"&&(M.displayName=MM(c,u,a)),M};return w.withConfig&&(C.withConfig=w.withConfig),C}}function MM(e,t,n){return e?`${e}${Jn(t||"")}`:`Styled(${CM(n)})`}function RM(e,t){let n;return process.env.NODE_ENV!=="production"&&e&&(n=`${e}-${Xg(t||"Root")}`),n}function IM(e){for(const t in e)return!1;return!0}function OM(e){return typeof e=="string"&&e.charCodeAt(0)>96}function Xg(e){return e&&e.charAt(0).toLowerCase()+e.slice(1)}function Ba(e,t,n=!1){const r={...t};for(const i in e)if(Object.prototype.hasOwnProperty.call(e,i)){const o=i;if(o==="components"||o==="slots")r[o]={...e[o],...r[o]};else if(o==="componentsProps"||o==="slotProps"){const s=e[o],a=t[o];if(!a)r[o]=s||{};else if(!s)r[o]=a;else{r[o]={...a};for(const l in s)if(Object.prototype.hasOwnProperty.call(s,l)){const c=l;r[o][c]=Ba(s[c],a[c],n)}}}else o==="className"&&n&&t.className?r.className=Ha(e==null?void 0:e.className,t==null?void 0:t.className):o==="style"&&n&&t.style?r.style={...e==null?void 0:e.style,...t==null?void 0:t.style}:r[o]===void 0&&(r[o]=e[o])}return r}function PM(e,t=Number.MIN_SAFE_INTEGER,n=Number.MAX_SAFE_INTEGER){return Math.max(t,Math.min(e,n))}function Xl(e,t=0,n=1){return process.env.NODE_ENV!=="production"&&(e<t||e>n)&&console.error(`MUI: The value provided ${e} is out of range [${t}, ${n}].`),PM(e,t,n)}function DM(e){e=e.slice(1);const t=new RegExp(`.{1,${e.length>=6?2:1}}`,"g");let n=e.match(t);return n&&n[0].length===1&&(n=n.map(r=>r+r)),process.env.NODE_ENV!=="production"&&e.length!==e.trim().length&&console.error(`MUI: The color: "${e}" is invalid. Make sure the color input doesn't contain leading/trailing space.`),n?`rgb${n.length===4?"a":""}(${n.map((r,i)=>i<3?parseInt(r,16):Math.round(parseInt(r,16)/255*1e3)/1e3).join(", ")})`:""}function Dn(e){if(e.type)return e;if(e.charAt(0)==="#")return Dn(DM(e));const t=e.indexOf("("),n=e.substring(0,t);if(!["rgb","rgba","hsl","hsla","color"].includes(n))throw new Error(process.env.NODE_ENV!=="production"?`MUI: Unsupported \`${e}\` color.
113
113
  The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().`:Pn(9,e));let r=e.substring(t+1,e.length-1),i;if(n==="color"){if(r=r.split(" "),i=r.shift(),r.length===4&&r[3].charAt(0)==="/"&&(r[3]=r[3].slice(1)),!["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].includes(i))throw new Error(process.env.NODE_ENV!=="production"?`MUI: unsupported \`${i}\` color space.
114
114
  The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.`:Pn(10,i))}else r=r.split(",");return r=r.map(o=>parseFloat(o)),{type:n,values:r,colorSpace:i}}const LM=e=>{const t=Dn(e);return t.values.slice(0,3).map((n,r)=>t.type.includes("hsl")&&r!==0?`${n}%`:n).join(" ")},Zr=(e,t)=>{try{return LM(e)}catch{return t&&process.env.NODE_ENV!=="production"&&console.warn(t),e}};function Qo(e){const{type:t,colorSpace:n}=e;let{values:r}=e;return t.includes("rgb")?r=r.map((i,o)=>o<3?parseInt(i,10):i):t.includes("hsl")&&(r[1]=`${r[1]}%`,r[2]=`${r[2]}%`),t.includes("color")?r=`${n} ${r.join(" ")}`:r=`${r.join(", ")}`,`${t}(${r})`}function Qg(e){e=Dn(e);const{values:t}=e,n=t[0],r=t[1]/100,i=t[2]/100,o=r*Math.min(i,1-i),s=(c,u=(c+n/30)%12)=>i-o*Math.max(Math.min(u-3,9-u,1),-1);let a="rgb";const l=[Math.round(s(0)*255),Math.round(s(8)*255),Math.round(s(4)*255)];return e.type==="hsla"&&(a+="a",l.push(t[3])),Qo({type:a,values:l})}function $a(e){e=Dn(e);let t=e.type==="hsl"||e.type==="hsla"?Dn(Qg(e)).values:e.values;return t=t.map(n=>(e.type!=="color"&&(n/=255),n<=.03928?n/12.92:((n+.055)/1.055)**2.4)),Number((.2126*t[0]+.7152*t[1]+.0722*t[2]).toFixed(3))}function uf(e,t){const n=$a(e),r=$a(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}function FM(e,t){return e=Dn(e),t=Xl(t),(e.type==="rgb"||e.type==="hsl")&&(e.type+="a"),e.type==="color"?e.values[3]=`/${t}`:e.values[3]=t,Qo(e)}function Qi(e,t,n){try{return FM(e,t)}catch{return e}}function Ql(e,t){if(e=Dn(e),t=Xl(t),e.type.includes("hsl"))e.values[2]*=1-t;else if(e.type.includes("rgb")||e.type.includes("color"))for(let n=0;n<3;n+=1)e.values[n]*=1-t;return Qo(e)}function Ye(e,t,n){try{return Ql(e,t)}catch{return e}}function Jl(e,t){if(e=Dn(e),t=Xl(t),e.type.includes("hsl"))e.values[2]+=(100-e.values[2])*t;else if(e.type.includes("rgb"))for(let n=0;n<3;n+=1)e.values[n]+=(255-e.values[n])*t;else if(e.type.includes("color"))for(let n=0;n<3;n+=1)e.values[n]+=(1-e.values[n])*t;return Qo(e)}function Ze(e,t,n){try{return Jl(e,t)}catch{return e}}function jM(e,t=.15){return $a(e)>.5?Ql(e,t):Jl(e,t)}function Ji(e,t,n){try{return jM(e,t)}catch{return e}}const BM=D.createContext(void 0);process.env.NODE_ENV!=="production"&&(je.node,je.object);function $M(e){const{theme:t,name:n,props:r}=e;if(!t||!t.components||!t.components[n])return r;const i=t.components[n];return i.defaultProps?Ba(i.defaultProps,r,t.components.mergeClassNameAndStyle):!i.styleOverrides&&!i.variants?Ba(i,r,t.components.mergeClassNameAndStyle):r}function VM({props:e,name:t}){const n=D.useContext(BM);return $M({props:e,name:t,theme:{components:n}})}const df={theme:void 0};function zM(e){let t,n;return function(i){let o=t;return(o===void 0||i.theme!==n)&&(df.theme=i.theme,o=Yg(e(df)),t=o,n=i.theme),o}}function UM(e=""){function t(...r){if(!r.length)return"";const i=r[0];return typeof i=="string"&&!i.match(/(#|\(|\)|(-?(\d*\.)?\d+)(px|em|%|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc))|^(-?(\d*\.)?\d+)$|(\d+ \d+ \d+)/)?`, var(--${e?`${e}-`:""}${i}${t(...r.slice(1))})`:`, ${i}`}return(r,...i)=>`var(--${e?`${e}-`:""}${r}${t(...i)})`}const ff=(e,t,n,r=[])=>{let i=e;t.forEach((o,s)=>{s===t.length-1?Array.isArray(i)?i[Number(o)]=n:i&&typeof i=="object"&&(i[o]=n):i&&typeof i=="object"&&(i[o]||(i[o]=r.includes(o)?[]:{}),i=i[o])})},HM=(e,t,n)=>{function r(i,o=[],s=[]){Object.entries(i).forEach(([a,l])=>{(!n||n&&!n([...o,a]))&&l!=null&&(typeof l=="object"&&Object.keys(l).length>0?r(l,[...o,a],Array.isArray(l)?[...s,a]:s):t([...o,a],l,s))})}r(e)},WM=(e,t)=>typeof t=="number"?["lineHeight","fontWeight","opacity","zIndex"].some(r=>e.includes(r))||e[e.length-1].toLowerCase().includes("opacity")?t:`${t}px`:t;function Xs(e,t){const{prefix:n,shouldSkipGeneratingVar:r}=t||{},i={},o={},s={};return HM(e,(a,l,c)=>{if((typeof l=="string"||typeof l=="number")&&(!r||!r(a,l))){const u=`--${n?`${n}-`:""}${a.join("-")}`,d=WM(a,l);Object.assign(i,{[u]:d}),ff(o,a,`var(${u})`,c),ff(s,a,`var(${u}, ${d})`,c)}},a=>a[0]==="vars"),{css:i,vars:o,varsWithDefaults:s}}function GM(e,t={}){const{getSelector:n=v,disableCssColorScheme:r,colorSchemeSelector:i}=t,{colorSchemes:o={},components:s,defaultColorScheme:a="light",...l}=e,{vars:c,css:u,varsWithDefaults:d}=Xs(l,t);let f=d;const p={},{[a]:m,...g}=o;if(Object.entries(g||{}).forEach(([w,_])=>{const{vars:C,css:T,varsWithDefaults:R}=Xs(_,t);f=Ht(f,R),p[w]={css:T,vars:C}}),m){const{css:w,vars:_,varsWithDefaults:C}=Xs(m,t);f=Ht(f,C),p[a]={css:w,vars:_}}function v(w,_){var T,R;let C=i;if(i==="class"&&(C=".%s"),i==="data"&&(C="[data-%s]"),i!=null&&i.startsWith("data-")&&!i.includes("%s")&&(C=`[${i}="%s"]`),w){if(C==="media")return e.defaultColorScheme===w?":root":{[`@media (prefers-color-scheme: ${((R=(T=o[w])==null?void 0:T.palette)==null?void 0:R.mode)||w})`]:{":root":_}};if(C)return e.defaultColorScheme===w?`:root, ${C.replace("%s",String(w))}`:C.replace("%s",String(w))}return":root"}return{vars:f,generateThemeVars:()=>{let w={...c};return Object.entries(p).forEach(([,{vars:_}])=>{w=Ht(w,_)}),w},generateStyleSheets:()=>{var A,I;const w=[],_=e.defaultColorScheme||"light";function C(b,M){Object.keys(M).length&&w.push(typeof b=="string"?{[b]:{...M}}:b)}C(n(void 0,{...u}),u);const{[_]:T,...R}=p;if(T){const{css:b}=T,M=(I=(A=o[_])==null?void 0:A.palette)==null?void 0:I.mode,O=!r&&M?{colorScheme:M,...b}:{...b};C(n(_,{...O}),O)}return Object.entries(R).forEach(([b,{css:M}])=>{var j,W;const O=(W=(j=o[b])==null?void 0:j.palette)==null?void 0:W.mode,L=!r&&O?{colorScheme:O,...M}:{...M};C(n(b,{...L}),L)}),w}}}function KM(e){return function(n){return e==="media"?(process.env.NODE_ENV!=="production"&&n!=="light"&&n!=="dark"&&console.error(`MUI: @media (prefers-color-scheme) supports only 'light' or 'dark', but receive '${n}'.`),`@media (prefers-color-scheme: ${n})`):e?e.startsWith("data-")&&!e.includes("%s")?`[${e}="${n}"] &`:e==="class"?`.${n} &`:e==="data"?`[data-${n}] &`:`${e.replace("%s",n)} &`:"&"}}const mi={black:"#000",white:"#fff"},qM={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121",A100:"#f5f5f5",A200:"#eeeeee",A400:"#bdbdbd",A700:"#616161"},cr={50:"#f3e5f5",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",700:"#7b1fa2"},ur={300:"#e57373",400:"#ef5350",500:"#f44336",700:"#d32f2f",800:"#c62828"},qr={300:"#ffb74d",400:"#ffa726",500:"#ff9800",700:"#f57c00",900:"#e65100"},dr={50:"#e3f2fd",200:"#90caf9",400:"#42a5f5",700:"#1976d2",800:"#1565c0"},fr={300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",700:"#0288d1",900:"#01579b"},hr={300:"#81c784",400:"#66bb6a",500:"#4caf50",700:"#388e3c",800:"#2e7d32",900:"#1b5e20"};function Jg(){return{text:{primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.6)",disabled:"rgba(0, 0, 0, 0.38)"},divider:"rgba(0, 0, 0, 0.12)",background:{paper:mi.white,default:mi.white},action:{active:"rgba(0, 0, 0, 0.54)",hover:"rgba(0, 0, 0, 0.04)",hoverOpacity:.04,selected:"rgba(0, 0, 0, 0.08)",selectedOpacity:.08,disabled:"rgba(0, 0, 0, 0.26)",disabledBackground:"rgba(0, 0, 0, 0.12)",disabledOpacity:.38,focus:"rgba(0, 0, 0, 0.12)",focusOpacity:.12,activatedOpacity:.12}}}const YM=Jg();function em(){return{text:{primary:mi.white,secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",icon:"rgba(255, 255, 255, 0.5)"},divider:"rgba(255, 255, 255, 0.12)",background:{paper:"#121212",default:"#121212"},action:{active:mi.white,hover:"rgba(255, 255, 255, 0.08)",hoverOpacity:.08,selected:"rgba(255, 255, 255, 0.16)",selectedOpacity:.16,disabled:"rgba(255, 255, 255, 0.3)",disabledBackground:"rgba(255, 255, 255, 0.12)",disabledOpacity:.38,focus:"rgba(255, 255, 255, 0.12)",focusOpacity:.12,activatedOpacity:.24}}}const hf=em();function pf(e,t,n,r){const i=r.light||r,o=r.dark||r*1.5;e[t]||(e.hasOwnProperty(n)?e[t]=e[n]:t==="light"?e.light=Jl(e.main,i):t==="dark"&&(e.dark=Ql(e.main,o)))}function ZM(e="light"){return e==="dark"?{main:dr[200],light:dr[50],dark:dr[400]}:{main:dr[700],light:dr[400],dark:dr[800]}}function XM(e="light"){return e==="dark"?{main:cr[200],light:cr[50],dark:cr[400]}:{main:cr[500],light:cr[300],dark:cr[700]}}function QM(e="light"){return e==="dark"?{main:ur[500],light:ur[300],dark:ur[700]}:{main:ur[700],light:ur[400],dark:ur[800]}}function JM(e="light"){return e==="dark"?{main:fr[400],light:fr[300],dark:fr[700]}:{main:fr[700],light:fr[500],dark:fr[900]}}function eR(e="light"){return e==="dark"?{main:hr[400],light:hr[300],dark:hr[700]}:{main:hr[800],light:hr[500],dark:hr[900]}}function tR(e="light"){return e==="dark"?{main:qr[400],light:qr[300],dark:qr[700]}:{main:"#ed6c02",light:qr[500],dark:qr[900]}}function ec(e){const{mode:t="light",contrastThreshold:n=3,tonalOffset:r=.2,...i}=e,o=e.primary||ZM(t),s=e.secondary||XM(t),a=e.error||QM(t),l=e.info||JM(t),c=e.success||eR(t),u=e.warning||tR(t);function d(g){const v=uf(g,hf.text.primary)>=n?hf.text.primary:YM.text.primary;if(process.env.NODE_ENV!=="production"){const y=uf(g,v);y<3&&console.error([`MUI: The contrast ratio of ${y}:1 for ${v} on ${g}`,"falls below the WCAG recommended absolute minimum contrast ratio of 3:1.","https://www.w3.org/TR/2008/REC-WCAG20-20081211/#visual-audio-contrast-contrast"].join(`
115
115
  `))}return v}const f=({color:g,name:v,mainShade:y=500,lightShade:E=300,darkShade:w=700})=>{if(g={...g},!g.main&&g[y]&&(g.main=g[y]),!g.hasOwnProperty("main"))throw new Error(process.env.NODE_ENV!=="production"?`MUI: The color${v?` (${v})`:""} provided to augmentColor(color) is invalid.
@@ -140,7 +140,7 @@ To suppress this warning, you need to explicitly provide the \`palette.${t}Chann
140
140
  ${n.promptSlider}
141
141
  ${s===r?"opacity-100 translate-y-0":"opacity-0 translate-y-4"}
142
142
  whitespace-pre-line break-words transition-all duration-700 ease-out
143
- `,style:{minHeight:"3rem",display:s===r?"flex":"none",alignItems:"center",justifyContent:"center"},children:h.jsx("span",{className:"italic",children:o})},s))})}const im=N.forwardRef(({disabled:e,onStartCall:t,onStartChat:n,onStartVideo:r,prompts:i=['"Click to talk"','"How can I assist you today?"'],statusMessage:o="Agent is ready",title:s="Choose how to interact",subTitle:a="Ask me anything or give me a task to complete",theme:l="vox",modalities:c=["voice","chat","video"]},u)=>{const d=Pt(l),f=c.includes("voice"),p=c.includes("chat"),m=c.includes("video"),g=[f,p,m].filter(Boolean).length;return h.jsxs("div",{className:"flex flex-col items-center h-full justify-center w-full relative px-8 py-16","aria-disabled":e,style:{background:"transparent"},children:[h.jsx("div",{className:"absolute inset-0 opacity-[0.01] pointer-events-none mix-blend-overlay",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulance type='fractalNoise' baseFrequency='2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")`,backgroundRepeat:"repeat"}}),h.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[500px] h-[500px] bg-gradient-radial from-white/[0.02] to-transparent blur-3xl pointer-events-none"}),h.jsxs("div",{className:"flex flex-col items-center justify-center w-full max-w-2xl space-y-12 z-10",children:[h.jsx("div",{className:"text-center space-y-2 max-w-md",children:h.jsx("p",{className:`text-base leading-relaxed tracking-wide ${d.text.secondary}`,children:a})}),h.jsx("div",{className:"flex items-center justify-center w-full",children:f&&p&&m?h.jsxs("div",{className:"flex gap-5 items-center justify-center",children:[h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:t,children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]}),h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:n,children:[h.jsx(Js,{onClick:n,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Chat"})]}),h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:r||t,children:[h.jsx(ea,{onClick:r||t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Video"})]})]}):g>1?h.jsxs("div",{className:"flex gap-6 items-center justify-center",children:[f&&h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:t,children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]}),p&&h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:n,children:[h.jsx(Js,{onClick:n,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Chat"})]}),m&&r&&h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:r,children:[h.jsx(ea,{onClick:r,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Video"})]})]}):h.jsx("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",children:f?h.jsxs(h.Fragment,{children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]}):p?h.jsxs(h.Fragment,{children:[h.jsx(Js,{onClick:n,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Chat"})]}):m&&r?h.jsxs(h.Fragment,{children:[h.jsx(ea,{onClick:r,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Video"})]}):h.jsxs(h.Fragment,{children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]})})}),h.jsx("div",{className:"w-full flex justify-center",children:h.jsx($R,{prompts:i,theme:l})})]})]})});im.displayName="Welcome";class nc extends D.Component{constructor(t){super(t),this.state={hasError:!1}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,n){console.error("VoxketWidget Error:",t,n)}render(){if(this.state.hasError){if(this.props.fallback){const t=this.props.fallback;return D.createElement(t,{error:this.state.error})}return D.createElement("div",{style:{padding:"20px",border:"1px solid #ff4444",borderRadius:"8px",background:"#fff5f5",color:"#cc0000"}},"VoxketWidget encountered an error. Please check the console for details.")}return this.props.children}}const om=({onClick:e,position:t="bottom-right",size:n=64,className:r="",style:i,ariaLabel:o="Open Voxket",logoScale:s=.7,isRunning:a=!1,logoUrl:l="/logo.png"})=>{const c={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"},u={width:n,height:n,...i},d=D.useMemo(()=>{if(typeof window>"u"||!window.matchMedia)return!1;try{return window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch{return!1}},[]);return h.jsxs("div",{className:"relative pointer-events-auto",children:[a&&h.jsxs(h.Fragment,{children:[h.jsx(Me.div,{className:"absolute inset-0 rounded-full pointer-events-none",style:{width:n+24,height:n+24,left:-12,top:-12,background:"linear-gradient(45deg, rgba(6,182,212,0.3), rgba(34,211,238,0.3), rgba(6,182,212,0.3))",filter:"blur(8px)"},animate:d?void 0:{scale:[1,1.1,1],opacity:[.6,.9,.6]},transition:d?void 0:{duration:2,repeat:1/0,ease:"easeInOut"}}),h.jsx(Me.div,{className:"absolute inset-0 rounded-full pointer-events-none",style:{width:n+16,height:n+16,left:-8,top:-8,background:"linear-gradient(135deg, rgba(6,182,212,0.4), rgba(34,211,238,0.4))",filter:"blur(4px)"},animate:d?void 0:{scale:[1,1.05,1],opacity:[.7,1,.7]},transition:d?void 0:{duration:1.5,repeat:1/0,ease:"easeInOut",delay:.2}})]}),h.jsxs(Me.button,{type:"button",onClick:e,"aria-label":o,className:`fixed z-50 rounded-full bg-black flex items-center justify-center overflow-hidden focus:outline-none focus:ring-2 focus:ring-cyan-400/60 ${c[t]} ${r}`,style:{...u,boxShadow:a?"0 0 0 2px rgba(6,182,212,0.5), 0 0 20px rgba(6,182,212,0.4), 0 8px 32px rgba(0,0,0,0.3)":"0 8px 32px rgba(0,0,0,0.3)",border:a?"2px solid rgba(6,182,212,0.6)":"none"},initial:{scale:.9,opacity:0},animate:{scale:1,opacity:1,...a&&!d?{boxShadow:["0 0 0 2px rgba(6,182,212,0.5), 0 0 20px rgba(6,182,212,0.4), 0 8px 32px rgba(0,0,0,0.3)","0 0 0 2px rgba(6,182,212,0.8), 0 0 30px rgba(6,182,212,0.6), 0 8px 32px rgba(0,0,0,0.3)","0 0 0 2px rgba(6,182,212,0.5), 0 0 20px rgba(6,182,212,0.4), 0 8px 32px rgba(0,0,0,0.3)"]}:{}},exit:{scale:.9,opacity:0},whileHover:{scale:1.05},whileTap:{scale:.95},"data-position":t,"data-voxket-trigger":"true",transition:{...!d&&a?{boxShadow:{duration:2,repeat:1/0,ease:"easeInOut"}}:{}},children:[a&&h.jsxs(h.Fragment,{children:[h.jsx(Me.span,{"aria-hidden":!0,className:"absolute inset-0 rounded-full pointer-events-none",style:{background:"conic-gradient(from 0deg, rgba(6,182,212,0.0) 0deg, rgba(6,182,212,1) 90deg, rgba(34,211,238,1) 180deg, rgba(6,182,212,0.0) 270deg)",WebkitMask:"radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px))",mask:"radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px))"},animate:d?void 0:{rotate:360},transition:d?void 0:{duration:3,repeat:1/0,ease:"linear"}}),h.jsx("span",{"aria-hidden":!0,className:"absolute inset-1 rounded-full pointer-events-none",style:{background:"radial-gradient(circle, rgba(6,182,212,0.1) 0%, transparent 70%)"}})]}),h.jsx("img",{src:l,alt:"Voxket",className:"object-contain select-none pointer-events-none relative z-10",style:{width:`${Math.max(0,Math.min(1,s))*100}%`,height:`${Math.max(0,Math.min(1,s))*100}%`,filter:a?"brightness(1.1) contrast(1.1)":"none"},draggable:!1})]})]})};function sm({room:e,onSessionEnd:t,onSessionStart:n,enableConsoleLogging:r=!0,enableLocalStorage:i=!0,voxketSessionId:o}={}){const[s,a]=D.useState(null),[l,c]=D.useState([]),[u,d]=D.useState(null),[f,p]=D.useState([]),m=D.useCallback((E,w)=>{const _={timestamp:new Date,event:E,data:w,sessionId:s==null?void 0:s.sessionId,participantId:u==null?void 0:u.identity};if(c(C=>[...C,_]),i){const C=JSON.parse(localStorage.getItem("voxket-session-logs")||"[]");C.push(_),localStorage.setItem("voxket-session-logs",JSON.stringify(C))}return _},[s==null?void 0:s.sessionId,u==null?void 0:u.identity,r,i]);D.useEffect(()=>{if(!e)return;const E=()=>{const b=o||`session-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,M=new Date,O={sessionId:b,startTime:M,totalMessages:0,connectionIssues:0,participantCount:f.length,events:[]};a(O),m("SESSION_STARTED",{sessionId:b,startTime:M}),n==null||n(b)},w=()=>{if(s){const b=new Date,M=b.getTime()-s.startTime.getTime(),O={...s,endTime:b,duration:M,events:l};m("SESSION_ENDED",{sessionId:s.sessionId,duration:`${Math.round(M/1e3)}s`,totalMessages:s.totalMessages,connectionIssues:s.connectionIssues}),t==null||t(O),a(null),c([])}},_=b=>{m("CONNECTION_STATE_CHANGED",{state:b}),b===le.ConnectionState.Reconnecting&&s&&(a(M=>M?{...M,connectionIssues:M.connectionIssues+1}:null),m("CONNECTION_ISSUE",{type:"reconnecting"}))},C=b=>{m("TRACK_PUBLISHED",{trackKind:b.kind,trackSource:b.source})},T=b=>{m("TRACK_UNPUBLISHED",{trackKind:b.kind,trackSource:b.source})},R=(b,M)=>{s&&a(O=>O?{...O,totalMessages:O.totalMessages+1}:null),m("DATA_RECEIVED",{participantId:M==null?void 0:M.identity,dataSize:b.length})},A=b=>{m("PARTICIPANT_CONNECTED",{participantId:b.identity,participantName:b.name}),p(M=>[...M,b]),s&&a(M=>M?{...M,participantCount:M.participantCount+1}:null)},I=b=>{m("PARTICIPANT_DISCONNECTED",{participantId:b.identity,participantName:b.name}),p(M=>M.filter(O=>O.identity!==b.identity))};return e.localParticipant&&d(e.localParticipant),e.on(le.RoomEvent.Connected,E),e.on(le.RoomEvent.Disconnected,w),e.on(le.RoomEvent.ConnectionStateChanged,_),e.on(le.RoomEvent.TrackPublished,C),e.on(le.RoomEvent.TrackUnpublished,T),e.on(le.RoomEvent.DataReceived,R),e.on(le.RoomEvent.ParticipantConnected,A),e.on(le.RoomEvent.ParticipantDisconnected,I),()=>{e.off(le.RoomEvent.Connected,E),e.off(le.RoomEvent.Disconnected,w),e.off(le.RoomEvent.ConnectionStateChanged,_),e.off(le.RoomEvent.TrackPublished,C),e.off(le.RoomEvent.TrackUnpublished,T),e.off(le.RoomEvent.DataReceived,R),e.off(le.RoomEvent.ParticipantConnected,A),e.off(le.RoomEvent.ParticipantDisconnected,I)}},[e,s,l,f.length,m,t,n]);const g=D.useCallback(()=>i?JSON.parse(localStorage.getItem("voxket-session-logs")||"[]"):l,[l,i]),v=D.useCallback(()=>{i&&localStorage.removeItem("voxket-session-logs"),c([])},[i]),y=D.useCallback(()=>{const E=g(),w=JSON.stringify(E,null,2),_="data:application/json;charset=utf-8,"+encodeURIComponent(w),C=`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,T=document.createElement("a");T.setAttribute("href",_),T.setAttribute("download",C),T.click()},[g]);return{sessionMetrics:s,sessionLogs:l,logEvent:m,getSessionLogs:g,clearSessionLogs:v,exportSessionLogs:y}}class rc{constructor(){Ce(this,"listeners",{})}on(t,n){return this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push(n),()=>this.off(t,n)}once(t,n){const r=(...i)=>{this.off(t,r),n(...i)};return this.on(t,r)}off(t,n){const r=this.listeners[t];if(!r)return;const i=r.indexOf(n);i>-1&&r.splice(i,1)}removeAllListeners(t){t?delete this.listeners[t]:this.listeners={}}emit(t,...n){const r=this.listeners[t];if(!r)return;const i=[...r];for(const o of i)try{o(...n)}catch(s){console.error(`Error in event listener for ${String(t)}:`,s)}}listenerCount(t){var n;return((n=this.listeners[t])==null?void 0:n.length)??0}eventNames(){return Object.keys(this.listeners)}}class am{constructor(t){Ce(this,"plugins",new Map);Ce(this,"installedPlugins",new Set);Ce(this,"context");this.context={client:t,emit:t.emit.bind(t),on:t.on.bind(t),config:{}}}register(t){if(this.plugins.has(t.name))throw new Error(`Plugin '${t.name}' is already registered`);if(t.dependencies){for(const n of t.dependencies)if(!this.plugins.has(n))throw new Error(`Plugin '${t.name}' depends on '${n}' which is not registered`)}this.plugins.set(t.name,t)}async install(t,n){const r=this.plugins.get(t);if(!r)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t))throw new Error(`Plugin '${t}' is already installed`);if(r.dependencies)for(const o of r.dependencies)this.installedPlugins.has(o)||await this.install(o);const i={...this.context,config:{...r.config,...n}};r.install&&await r.install(i),this.installedPlugins.add(t),this.setupPluginEvents(r,i)}async uninstall(t){var r;const n=this.plugins.get(t);if(!n)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t)){for(const[i,o]of this.plugins)if(this.installedPlugins.has(i)&&((r=o.dependencies)!=null&&r.includes(t)))throw new Error(`Cannot uninstall '${t}' because '${i}' depends on it`);n.uninstall&&await n.uninstall(this.context),this.installedPlugins.delete(t)}}isInstalled(t){return this.installedPlugins.has(t)}getInstalledPlugins(){return Array.from(this.installedPlugins)}getAvailablePlugins(){return Array.from(this.plugins.keys())}getPluginInfo(t){return this.plugins.get(t)}setupPluginEvents(t,n){t.onSessionStart&&n.on("session.started",r=>{t.onSessionStart(n,r.id)}),t.onSessionEnd&&n.on("session.ended",r=>{t.onSessionEnd(n,r.id)}),t.onAgentResponse&&n.on("agent.response",r=>{t.onAgentResponse(n,r)})}}function VR(e){return e}function ic(e,t,n){return{name:e,version:"1.0.0",description:`${t} modality plugin`,install:async r=>{n.onActivate&&await n.onActivate(r)},uninstall:async r=>{n.onDeactivate&&await n.onDeactivate(r)},onAgentResponse:n.onMessage}}const zR={name:"analytics",version:"1.0.0",description:"Built-in analytics tracking",install:async e=>{console.log("Analytics plugin installed"),e.on("session.started",t=>{console.log("Analytics: Session started",t.id)}),e.on("session.ended",(t,n)=>{console.log("Analytics: Session ended",t.id,n)}),e.on("chat.message.sent",t=>{console.log("Analytics: User message sent",t.content.length)})}},UR={name:"debug",version:"1.0.0",description:"Debug logging and development tools",install:async e=>{console.log("Debug plugin installed");const t=e.emit;e.emit=(n,...r)=>(console.log(`[Debug] Event: ${String(n)}`,r),t(n,...r))}},HR={name:"metrics",version:"1.0.0",description:"Advanced metrics collection",install:async e=>{console.log("Metrics plugin installed");const t=new Map;e.on("session.started",n=>{t.set(n.id,{startTime:Date.now(),events:[]})}),e.on("agent.response",n=>{console.log("Metrics: Agent response analyzed",{type:n.type,length:n.content.length,timestamp:n.timestamp})})}};class lm extends rc{constructor(n){super();Ce(this,"room",null);Ce(this,"registeredMethods",new Map);Ce(this,"activeInteractions",new Map);Ce(this,"currentInteraction",null);n&&this.setRoom(n)}setRoom(n){this.room=n}async registerFrontendRPC(n,r,i="embedded"){if(console.log(`RpcManager: Starting registration for method '${n}'`),!this.room)throw console.error(`RpcManager: Cannot register '${n}' - no room instance`),new Error("Room not initialized. Cannot register RPC method.");if(!this.room.localParticipant)throw console.error(`RpcManager: Cannot register '${n}' - no local participant`),new Error("Local participant not available for RPC registration");console.log(`RpcManager: Room state: ${this.room.state}`),console.log(`RpcManager: Local participant: ${this.room.localParticipant.identity}`),console.log(`RpcManager: Registering frontend RPC method: ${n}`);const o={methodName:n,component:r,presentationMode:i};this.registeredMethods.set(n,o);try{this.room.registerRpcMethod(n,async s=>{console.log(`RpcManager: RPC method '${n}' called by ${s.callerIdentity}`),console.log("RpcManager: Payload:",s.payload),this.emit("rpc.method.called",{methodName:n,data:s});let a;console.log(`RpcManager: Current registration for '${n}':`,o);let l=s.responseTimeout||30;try{a=JSON.parse(s.payload)}catch{a=s.payload}try{const c=await this.awaitUserInteraction(n,r,i,a,l);return JSON.stringify(c)}catch(c){throw console.error(`RpcManager: Error in RPC method '${n}':`,c),c}}),this.emit("rpc.method.registered",{methodName:n}),console.log(`RpcManager: Successfully registered RPC method: ${n}`)}catch(s){throw console.error(`RpcManager: Failed to register RPC method '${n}':`,s),s}}async awaitUserInteraction(n,r,i,o,s){return new Promise((a,l)=>{const c=`${n}_${Date.now()}`;console.log(`RpcManager: Starting user interaction for method: ${n}, timeout: ${s} seconds`);const u={didSuccess:(f,p)=>{console.log(`RpcManager: User interaction successful for method: ${n}`,f),this.clearInteraction(c),this.currentInteraction=null;const m={success:!0,message:"User interaction completed successfully",data:f,timestamp:new Date,...p?{successView:p}:{}};this.emit("rpc.interaction.completed",{methodName:n,response:m}),a(m)},didFail:f=>{console.log(`RpcManager: User interaction failed for method: ${n}`,f),this.clearInteraction(c);const p={success:!1,message:"User interaction failed",error:f,timestamp:new Date};this.emit("rpc.interaction.completed",{methodName:n,response:p}),a(p)},dismissView:()=>{var p;console.log(`RpcManager: User dismissed interaction for method: ${n}`),console.log("RpcManager: Current interaction before dismiss:",(p=this.currentInteraction)==null?void 0:p.methodName),this.clearInteraction(c),this.currentInteraction=null,console.log("RpcManager: Current interaction after dismiss:",this.currentInteraction);const f={success:!0,data:{dismissed:!0,reason:"User dismissed the interaction"},message:"User interaction dismissed",timestamp:new Date};this.emit("rpc.interaction.dismissed",{methodName:n,response:f}),this.emit("rpc.interaction.completed",{methodName:n,response:f}),setTimeout(()=>{var m;((m=this.currentInteraction)==null?void 0:m.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),a(f)},didTimeout:f=>{console.log(`RpcManager: User interaction timeout for method: ${n}`),this.clearInteraction(c),this.currentInteraction=null;const p={success:!0,message:`User interaction timed out after ${s} seconds, it should be considered as declined, agent don't need to retry`,timestamp:new Date,...f?{timeoutView:f}:{}};this.emit("rpc.interaction.timeout",{methodName:n,response:p}),setTimeout(()=>{var m;((m=this.currentInteraction)==null?void 0:m.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),a(p)}},d=setTimeout(()=>{u.didTimeout&&u.didTimeout()},s);this.activeInteractions.set(c,{resolve:f=>a(JSON.parse(f)),reject:l,timeoutId:d}),this.currentInteraction={isVisible:!0,methodName:n,component:r,presentationMode:i,timeout:s,data:o,handler:u},this.emit("rpc.interaction.started",{methodName:n,presentationMode:i}),setTimeout(async()=>{var f;if((f=this.currentInteraction)!=null&&f.handler)try{console.log(`RpcManager: Component created for method: ${n} with data:`,o)}catch(p){console.error("RpcManager: Error loading data into component:",p),u.didFail({error:"Failed to load data into component"})}},100)})}clearInteraction(n){const r=this.activeInteractions.get(n);r&&(console.log(`RpcManager: Clearing interaction: ${n}`),clearTimeout(r.timeoutId),this.activeInteractions.delete(n))}getCurrentInteraction(){return this.currentInteraction}dismissCurrentInteraction(){var n;this.currentInteraction&&(console.log(`RpcManager: Dismissing current interaction: ${this.currentInteraction.methodName}`),(n=this.currentInteraction.handler)==null||n.dismissView(),setTimeout(()=>{this.currentInteraction&&(console.log("RpcManager: Force clearing lingering interaction"),this.currentInteraction=null)},0))}getRegisteredMethods(){return Array.from(this.registeredMethods.keys())}unregisterMethod(n){this.registeredMethods.delete(n),console.log(`RpcManager: Unregistered RPC method: ${n}`)}clear(){for(const[n,r]of this.activeInteractions)clearTimeout(r.timeoutId);this.activeInteractions.clear(),this.registeredMethods.clear(),this.currentInteraction=null,console.log("RpcManager: Cleared all registrations and interactions")}}class Ue extends Error{constructor(t,n,r){super(t),this.code=n,this.details=r,this.name="VoxketError"}}class cm{constructor(t,n="User"){Ce(this,"chatMessages",[]);Ce(this,"activeTranscriptions",new Map);Ce(this,"room",null);Ce(this,"eventEmitter");Ce(this,"participantName");this.eventEmitter=t,this.participantName=n}setRoom(t){this.room=t}setParticipantName(t){this.participantName=t}getChatMessages(){return[...this.chatMessages]}addChatMessage(t){this.chatMessages.some(r=>r.id===t.id)||this.chatMessages.push(t)}updateChatMessage(t){const n=this.chatMessages.findIndex(r=>r.id===t.id);n!==-1&&(this.chatMessages[n]=t)}clearChatMessages(){this.chatMessages=[],this.activeTranscriptions.clear(),console.log("🧹 ChatManager: Cleared chat messages and transcription history")}trackTranscription(t,n){this.activeTranscriptions.set(t,{messageId:n,timestamp:Date.now()})}getActiveTranscription(t){const n=Date.now(),r=this.activeTranscriptions.get(t);return r&&n-r.timestamp<1e3?r:null}async sendMessage(t,n){if(!this.room)throw new Ue("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw new Ue("No local participant","CONNECTION_FAILED");try{const r={id:`msg_${Date.now()}`,content:t,sender:{id:"user",name:this.participantName,type:"participant"},timestamp:new Date,metadata:n||{}};await this.room.localParticipant.sendText(t,{topic:"lk.chat",destinationIdentities:[]}),this.eventEmitter.emit("chat.message.sent",r)}catch(r){throw console.error("ChatManager: Failed to send chat message:",r),new Ue("Failed to send message","NETWORK_ERROR",r)}}async sendAttachments(t,n){if(!this.room)throw new Ue("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw new Ue("No local participant","CONNECTION_FAILED");if(!t||t.length===0)throw new Ue("No files provided","INVALID_PARAMETER");const r=t.filter(i=>i.type.startsWith("image/"));if(r.length===0)throw new Ue("Only image files are allowed","INVALID_PARAMETER");r.length!==t.length&&console.warn("ChatManager: Some non-image files were filtered out");try{const i=r.map(async(o,s)=>{const l={id:`att_${Date.now()}_${s}`,content:`📎 ${o.name}`,sender:{id:"user",name:this.participantName,type:"participant"},timestamp:new Date,metadata:{...n,type:"attachment",fileName:o.name,fileSize:o.size,mimeType:o.type,uploading:!0}};this.eventEmitter.emit("chat.message.sent",l);const c=await this.room.localParticipant.sendFile(o,{mimeType:o.type,topic:"images",onProgress:d=>{const f={...l,metadata:{...l.metadata,uploadProgress:d}};this.eventEmitter.emit("chat.message.updated",f)}});try{const d=new FileReader,f=new Promise((g,v)=>{d.onload=()=>{typeof d.result=="string"?g(d.result):v(new Error("Failed to convert to base64"))},d.onerror=v});d.readAsDataURL(o);const m={type:"image",data:await f,filename:o.name,mimeType:o.type,size:o.size};await this.room.localParticipant.sendText(JSON.stringify(m),{topic:"images",destinationIdentities:[]})}catch(d){console.warn("ChatManager: Failed to send image data to agent:",d);try{const f=`I've shared an image: ${o.name}`;await this.room.localParticipant.sendText(f,{topic:"lk.chat",destinationIdentities:[]})}catch(f){console.warn("ChatManager: Failed to send image notification to agent:",f)}}const u={...l,metadata:{...l.metadata,uploading:!1,uploadProgress:1,streamId:c.id}};return this.eventEmitter.emit("chat.message.updated",u),c});await Promise.all(i)}catch(i){throw console.error("ChatManager: Failed to send attachments:",i),new Ue("Failed to send attachments","NETWORK_ERROR",i)}}async sendAttachment(t,n){return this.sendAttachments([t],n)}convertMarkdownToText(t){if(!t)return"";let n=t;return n=n.replace(/\*\*(.*?)\*\*/g,"$1"),n=n.replace(/__(.*?)__/g,"$1"),n=n.replace(/\*(.*?)\*/g,"$1"),n=n.replace(/_(.*?)_/g,"$1"),n=n.replace(/~~(.*?)~~/g,"$1"),n=n.replace(/`([^`]+)`/g,"$1"),n=n.replace(/```[\s\S]*?```/g,""),n=n.replace(/^#{1,6}\s+/gm,""),n=n.replace(/\[([^\]]+)\]\([^)]+\)/g,"$1"),n.trim()}}class um{constructor(t){Ce(this,"room",null);Ce(this,"eventEmitter");Ce(this,"silencePreventionNode",null);Ce(this,"silencePreventionOscillator",null);Ce(this,"audioContext",null);this.eventEmitter=t,this.initializeAudioContext()}initializeAudioContext(){try{if(this.audioContext||(this.audioContext=new(window.AudioContext||window.webkitAudioContext),console.log("🔊 MediaManager: AudioContext created:",{state:this.audioContext.state,sampleRate:this.audioContext.sampleRate})),this.audioContext.state==="suspended"){console.log("🔊 MediaManager: AudioContext suspended, will resume on user interaction");const t=async()=>{this.audioContext&&this.audioContext.state==="suspended"&&(await this.audioContext.resume(),console.log("✅ MediaManager: AudioContext resumed:",this.audioContext.state)),document.removeEventListener("click",t),document.removeEventListener("touchstart",t),document.removeEventListener("keydown",t)};document.addEventListener("click",t,{once:!0}),document.addEventListener("touchstart",t,{once:!0}),document.addEventListener("keydown",t,{once:!0})}else this.audioContext.state==="running"&&console.log("✅ MediaManager: AudioContext already running")}catch(t){console.error("MediaManager: Failed to initialize AudioContext:",t)}}async ensureAudioContextRunning(){if(this.audioContext||this.initializeAudioContext(),this.audioContext&&this.audioContext.state==="suspended"){console.log("🔊 MediaManager: Attempting to resume suspended AudioContext");try{await this.audioContext.resume(),console.log("✅ MediaManager: AudioContext resumed successfully")}catch(t){console.error("MediaManager: Failed to resume AudioContext:",t)}}}setRoom(t){this.room=t}getLocalParticipant(){var t;return((t=this.room)==null?void 0:t.localParticipant)??null}getRemoteParticipants(){var t;return Array.from(((t=this.room)==null?void 0:t.remoteParticipants.values())??[])}async toggleMicrophone(t){return this.setMicrophoneEnabled(t!==!1)}async setMicrophoneEnabled(t){var n,r,i;try{if(!this.room||this.room.state!=="connected")throw console.warn("⚠️ MediaManager: Cannot enable microphone - room not connected",{hasRoom:!!this.room,roomState:(n=this.room)==null?void 0:n.state}),new Ue("Cannot enable microphone: room not connected","CONNECTION_FAILED");await this.ensureAudioContextRunning();const o=(r=this.room)==null?void 0:r.localParticipant.isMicrophoneEnabled,s=t??!o;s&&this.startSilencePrevention(),await((i=this.room)==null?void 0:i.localParticipant.setMicrophoneEnabled(s,{autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0})),s?this.eventEmitter.emit("track.unmuted",{source:"microphone",enabled:!0}):(this.eventEmitter.emit("track.muted",{source:"microphone",enabled:!1}),this.stopSilencePrevention()),console.log("🎤 MediaManager: Microphone",s?"enabled":"disabled")}catch(o){throw console.error("MediaManager: Failed to toggle microphone:",o),this.stopSilencePrevention(),new Ue("Failed to toggle microphone","PERMISSION_DENIED",o)}}startSilencePrevention(){try{if(this.audioContext||(this.audioContext=new AudioContext),this.silencePreventionOscillator)return;console.log("🔇 MediaManager: Starting silence prevention"),this.silencePreventionOscillator=this.audioContext.createOscillator(),this.silencePreventionNode=this.audioContext.createGain(),this.silencePreventionOscillator.frequency.value=20,this.silencePreventionNode.gain.value=.001,this.silencePreventionOscillator.connect(this.silencePreventionNode),this.silencePreventionNode.connect(this.audioContext.destination),this.silencePreventionOscillator.start(),console.log("✅ MediaManager: Silence prevention started")}catch(t){console.error("❌ MediaManager: Failed to start silence prevention:",t)}}stopSilencePrevention(){try{this.silencePreventionOscillator&&(console.log("🔇 MediaManager: Stopping silence prevention"),this.silencePreventionOscillator.stop(),this.silencePreventionOscillator.disconnect(),this.silencePreventionOscillator=null),this.silencePreventionNode&&(this.silencePreventionNode.disconnect(),this.silencePreventionNode=null)}catch(t){console.error("❌ MediaManager: Failed to stop silence prevention:",t)}}async toggleCamera(t){return this.setCameraEnabled(t!==!1)}async setCameraEnabled(t){var n,r;try{const i=(n=this.room)==null?void 0:n.localParticipant.isCameraEnabled,o=t??!i;await((r=this.room)==null?void 0:r.localParticipant.setCameraEnabled(o)),o?this.eventEmitter.emit("track.unmuted",{source:"camera",enabled:!0}):this.eventEmitter.emit("track.muted",{source:"camera",enabled:!1})}catch(i){throw new Ue("Failed to toggle camera","PERMISSION_DENIED",i)}}async enableCamera(){return this.setCameraEnabled(!0)}async disableCamera(){return this.setCameraEnabled(!1)}async startScreenShare(){var t;try{await((t=this.room)==null?void 0:t.localParticipant.setScreenShareEnabled(!0)),this.eventEmitter.emit("track.unmuted",{source:"screenShare",enabled:!0})}catch(n){throw new Ue("Failed to start screen share","PERMISSION_DENIED",n)}}async stopScreenShare(){var t;try{await((t=this.room)==null?void 0:t.localParticipant.setScreenShareEnabled(!1)),this.eventEmitter.emit("track.muted",{source:"screenShare",enabled:!1})}catch(n){throw new Ue("Failed to stop screen share","PERMISSION_DENIED",n)}}async getAudioInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(n=>n.kind==="audioinput")}catch(t){throw new Ue("Failed to get audio input devices","DEVICE_ERROR",t)}}async getVideoInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(n=>n.kind==="videoinput")}catch(t){throw new Ue("Failed to get video input devices","DEVICE_ERROR",t)}}async setAudioInputDevice(t){var n;try{if(!((n=this.room)!=null&&n.localParticipant))throw new Error("Not connected to room")}catch(r){throw new Ue("Failed to set audio input device","DEVICE_ERROR",r)}}async setVideoInputDevice(t){var n;try{if(!((n=this.room)!=null&&n.localParticipant))throw new Error("Not connected to room")}catch(r){throw new Ue("Failed to set video input device","DEVICE_ERROR",r)}}getMicrophoneTrack(){const t=this.getLocalParticipant();if(!t)return null;for(const[,n]of t.trackPublications)if(n.source===le.Track.Source.Microphone)return n.track;return null}getCameraTrack(){const t=this.getLocalParticipant();if(!t)return null;for(const[,n]of t.trackPublications)if(n.source===le.Track.Source.Camera)return n.track;return null}getScreenShareTrack(){const t=this.getLocalParticipant();if(!t)return null;for(const[,n]of t.trackPublications)if(n.source===le.Track.Source.ScreenShare)return n.track;return null}get isMicrophoneEnabled(){const t=this.getMicrophoneTrack();return t?!t.isMuted:!1}get isCameraEnabled(){const t=this.getCameraTrack();return t?!t.isMuted:!1}get isScreenShareEnabled(){const t=this.getScreenShareTrack();return t?!t.isMuted:!1}getAgentAudioTrack(){const t=this.getRemoteParticipants();console.log("🔊 MediaManager.getAgentAudioTrack: Checking remote participants:",{count:t.length,participants:t.map(n=>({identity:n.identity,name:n.name,hasMicTrack:!!n.getTrackPublication(le.Track.Source.Microphone)}))});for(const n of t){const r=n.getTrackPublication(le.Track.Source.Microphone);if(r!=null&&r.track)return console.log("✅ MediaManager.getAgentAudioTrack: Found audio track for",n.identity),{source:le.Track.Source.Microphone,participant:n,publication:r}}return console.log("❌ MediaManager.getAgentAudioTrack: No audio track found"),null}getAgentVideoTrack(){const t=this.getRemoteParticipants();for(const n of t){const r=n.getTrackPublication(le.Track.Source.Camera);if(r!=null&&r.track)return{source:le.Track.Source.Camera,participant:n,publication:r}}return null}getVideoTrackRefs(){const t=[],n=this.getLocalParticipant();if(n){const i=n.getTrackPublication(le.Track.Source.Camera);i!=null&&i.track&&t.push({source:le.Track.Source.Camera,participant:n,publication:i});const o=n.getTrackPublication(le.Track.Source.ScreenShare);o!=null&&o.track&&t.push({source:le.Track.Source.ScreenShare,participant:n,publication:o})}const r=this.getRemoteParticipants();for(const i of r){const o=i.getTrackPublication(le.Track.Source.Camera);o!=null&&o.track&&t.push({source:le.Track.Source.Camera,participant:i,publication:o});const s=i.getTrackPublication(le.Track.Source.ScreenShare);s!=null&&s.track&&t.push({source:le.Track.Source.ScreenShare,participant:i,publication:s})}return t}getCameraTrackRefs(){return this.getVideoTrackRefs().filter(t=>t.source===le.Track.Source.Camera)}getScreenShareTrackRefs(){return this.getVideoTrackRefs().filter(t=>t.source===le.Track.Source.ScreenShare)}getPublishPermissions(){const t=this.getLocalParticipant();if(!t)return{camera:!1,microphone:!1,screenShare:!1,data:!1};const n=t.permissions;if(!n)return{camera:!0,microphone:!0,screenShare:!0,data:!0};const r=i=>!!n.canPublish&&(n.canPublishSources.length===0||n.canPublishSources.includes(i));return{camera:r(1),microphone:r(2),screenShare:r(3),data:n.canPublishData??!1}}canPublishSource(t){return this.getPublishPermissions()[t]}}class dm{constructor(t,n){Ce(this,"room",null);Ce(this,"config");Ce(this,"eventEmitter");Ce(this,"connectionState",le.ConnectionState.Disconnected);Ce(this,"isConnected",!1);Ce(this,"currentAgentInfo",null);this.config=t,this.eventEmitter=n,this.initializeRoom()}initializeRoom(){this.room=new le.Room({adaptiveStream:!1,stopLocalTrackOnUnpublish:!1,audioCaptureDefaults:{autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0},publishDefaults:{stopMicTrackOnMute:!1,preConnectBuffer:!0}}),this.setupRoomEventListeners()}setupRoomEventListeners(){this.room&&(this.room.on(le.RoomEvent.Connected,()=>{this.connectionState=le.ConnectionState.Connected,this.isConnected=!0,console.log("📡 ConnectionManager: Emitting connection.connected event"),this.eventEmitter.emit("connection.connected")}),this.room.on(le.RoomEvent.Disconnected,t=>{console.log("ConnectionManager: Room disconnected, reason:",t),this.connectionState=le.ConnectionState.Disconnected,this.isConnected=!1,t&&console.log("ConnectionManager: Disconnect reason details:",{reason:t.toString(),connectionState:this.connectionState}),this.eventEmitter.emit("connection.disconnected",t==null?void 0:t.toString())}),this.room.on(le.RoomEvent.ConnectionStateChanged,t=>{this.connectionState=t,t===le.ConnectionState.Connecting&&this.eventEmitter.emit("connection.connecting")}),this.room.on(le.RoomEvent.ParticipantConnected,t=>{const n={id:t.identity,name:t.name||t.identity,isLocal:!1};this.eventEmitter.emit("participant.joined",n)}),this.room.on(le.RoomEvent.ParticipantDisconnected,t=>{const n={id:t.identity,name:t.name||t.identity,isLocal:!1};this.eventEmitter.emit("participant.left",n)}),this.room.on(le.RoomEvent.LocalTrackPublished,t=>{console.log("ConnectionManager: Local track published:",t.source),t.source===le.Track.Source.ScreenShare?this.eventEmitter.emit("track.unmuted",{source:"screenShare",enabled:!0}):t.source===le.Track.Source.Microphone&&(console.log("✅ ConnectionManager: Local MICROPHONE track RE-PUBLISHED at:",new Date().toISOString()),console.log(" Track restart complete - audio should resume"))}),this.room.on(le.RoomEvent.LocalTrackUnpublished,t=>{console.log(" ConnectionManager: Local track unpublished:",t.source),t.source===le.Track.Source.ScreenShare?this.eventEmitter.emit("track.muted",{source:"screenShare",enabled:!1}):t.source===le.Track.Source.Microphone&&(console.warn("⚠️ ConnectionManager: Local MICROPHONE track UNPUBLISHED at:",new Date().toISOString()),console.log(" ⚠️ WARNING: This will cause audio disruption!"))}),this.room.on(le.RoomEvent.LocalAudioSilenceDetected,()=>{var t,n;console.log("🔇 ConnectionManager: Local audio silence detected at:",new Date().toISOString()),console.log(" Remote participants count:",(t=this.room)==null?void 0:t.remoteParticipants.size),(n=this.room)==null||n.remoteParticipants.forEach(r=>{console.log(" Remote participant:",r.identity,{audioTracks:r.audioTrackPublications.size,hasAudio:Array.from(r.audioTrackPublications.values()).some(i=>i.track)})})}),this.room.on(le.RoomEvent.TrackSubscribed,(t,n,r)=>{var i,o;console.log("🎵 ConnectionManager: Track subscribed:",{trackKind:t.kind,trackSource:t.source,participantIdentity:r.identity,isAgent:(i=r.identity)==null?void 0:i.startsWith("agent-")}),this.eventEmitter.emit("media.track.subscribed",{id:t.sid||n.trackSid,kind:t.kind,source:((o=t.source)==null?void 0:o.toString())||"unknown",participantId:r.identity,isEnabled:!t.isMuted,isMuted:t.isMuted})}),this.room.on(le.RoomEvent.TrackUnsubscribed,(t,n,r)=>{var i;console.log("🔇 ConnectionManager: Track unsubscribed:",{trackKind:t.kind,participantIdentity:r.identity}),this.eventEmitter.emit("media.track.unsubscribed",{id:t.sid||n.trackSid,kind:t.kind,source:((i=t.source)==null?void 0:i.toString())||"unknown",participantId:r.identity,isEnabled:!1,isMuted:!0})}))}async fetchConnectionDetails(t,n,r,i){try{const o={agent_id:t,participant_name:n,participant_metadata:i||{user_id:""},modality:r[0],modalities:r},s={accept:"application/json","Content-Type":"application/json"};if(this.config.authToken)s.Authorization=`Bearer ${this.config.authToken}`;else if(this.config.appId&&this.config.appSecret)s["X-APP-ID"]=this.config.appId,s["X-APP-SECRET"]=this.config.appSecret;else throw new Error("Either authToken or both appId and appSecret must be provided");const a=await fetch(`${this.config.baseUrl}/api/live/agent/session`,{method:"POST",headers:s,body:JSON.stringify(o)});if(!a.ok){let u=`HTTP ${a.status}: Failed to fetch connection details`;try{const d=await a.json();d&&(d.error?u=`API Error: ${d.error}`:d.detail?u=`API Error: ${d.detail}`:d.message&&(u=`API Error: ${d.message}`))}catch{try{const f=await a.text();f&&(u=`API Error: ${f}`)}catch{}}throw new Error(u)}const l=await a.json();let c;return l.agent_info&&(c={id:l.agent_info.agent_info.id,name:l.agent_info.agent_info.name,capabilities:l.agent_info.capabilities,modality_supported:l.agent_info.modality_supported,session_settings:l.agent_info.session_settings||{}},this.currentAgentInfo=c),{serverUrl:l.wss_url,participantToken:l.token,voxketSessionId:l.session_id,agentInfo:c}}catch(o){console.error("ConnectionManager: fetchConnectionDetails failed:",o);const s=new Ue(`Failed to fetch connection details: ${o instanceof Error?o.message:"Unknown error"}`,"CONNECTION_FAILED",o);throw this.eventEmitter.emit("connection.error",s),s}}async connect(t,n,r,i){var o;try{this.eventEmitter.emit("connection.connecting");const s=await this.fetchConnectionDetails(t,n,r,i);return await((o=this.room)==null?void 0:o.connect(s.serverUrl,s.participantToken)),this.isConnected=!0,s}catch(s){console.error("ConnectionManager: Connection failed:",s);const a=new Ue(`Failed to connect to Voxket services: ${s instanceof Error?s.message:"Unknown error"}`,"CONNECTION_FAILED",s);throw this.eventEmitter.emit("connection.error",a),a}}async disconnect(){try{this.room&&await this.room.disconnect(),this.isConnected=!1,this.currentAgentInfo=null,this.initializeRoom(),this.eventEmitter.emit("connection.disconnected")}catch(t){console.error("ConnectionManager: Disconnect failed:",t);const n=new Ue("Failed to disconnect properly","NETWORK_ERROR",t);throw this.eventEmitter.emit("connection.error",n),n}}getRoom(){return this.room}getConnectionState(){return this.connectionState}get connected(){return this.isConnected&&this.connectionState===le.ConnectionState.Connected}getCurrentAgentInfo(){return this.currentAgentInfo}getParticipants(){if(!this.room)return[];const t=[];return this.room.localParticipant&&t.push({id:this.room.localParticipant.identity,name:this.room.localParticipant.name||this.room.localParticipant.identity,isLocal:!0}),this.room.remoteParticipants.forEach(n=>{t.push({id:n.identity,name:n.name||n.identity,isLocal:!1})}),t}updateConfig(t){this.config={...this.config,...t}}}class fm{constructor(t,n,r){Ce(this,"room",null);Ce(this,"eventEmitter");Ce(this,"chatManager");Ce(this,"agentManager");Ce(this,"textStreamHandlersRegistered",!1);Ce(this,"_eventEmitters",new Map);this.eventEmitter=t,this.chatManager=n,this.agentManager=r}setRoom(t){this.room=t,t&&!this.textStreamHandlersRegistered&&(console.log("📡 StreamHandlerManager: Auto-registering handlers on room set"),this.setupTextStreamHandlers())}areHandlersRegistered(){return this.textStreamHandlersRegistered}resetHandlersFlag(){this.textStreamHandlersRegistered=!1}setupTextStreamHandlers(){this.room&&(this.registerChatHandler(),this.registerTranscriptionHandler(),this.registerSuggestedResponseHandler(),this.registerAgentStateHandler(),this.registerFunctionToolsHandler(),this.registerImageTextStreamHandler(),this.registerImageByteStreamHandler(),this.registerCommonTopicHandlers(),this.registerWildcardHandler(),this.textStreamHandlersRegistered=!0)}registerChatHandler(){try{this.room.registerTextStreamHandler("lk.chat",async(t,n)=>{try{const r=await t.readAll(),i={id:`msg_${Date.now()}_${n.identity||"user"}_${Math.random().toString(36).substr(2,9)}`,content:r,timestamp:new Date,sender:{id:n.identity||"user",name:n.identity||"User",type:"participant"},metadata:{topic:"lk.chat"}};this.eventEmitter.emit("chat.message.received",i)}catch(r){console.error("StreamHandlerManager: Failed to process lk.chat message:",r)}})}catch(t){console.warn("StreamHandlerManager: lk.chat handler already registered, skipping:",t)}}registerTranscriptionHandler(){try{console.log("📡 StreamHandlerManager: Registering lk.transcription handler"),this.room.registerTextStreamHandler("lk.transcription",async(t,n)=>{var r,i;console.log("💬 StreamHandlerManager: Received lk.transcription stream from:",n.identity);try{const o=n.identity===((i=(r=this.room)==null?void 0:r.localParticipant)==null?void 0:i.identity),s=n.identity,a=this.chatManager.getActiveTranscription(s);let l,c=!0;a?(l=a.messageId,c=!1):(l=`msg_${o?"user":"agent"}_${n.identity}_${Date.now()}`,this.chatManager.trackTranscription(s,l));let u="";const d=this.agentManager.getCurrentAgentInfo(),f=(d==null?void 0:d.name)||n.identity||"AI Assistant",p=o?"participant":"agent",m=o?"User":f,g={id:l,content:"",timestamp:new Date,sender:{id:n.identity||"unknown",name:m,type:p},metadata:{topic:"lk.transcription",streaming:!0}};c&&this.eventEmitter.emit("chat.message.received",g);for await(const w of t){u+=w;const _=this.chatManager.convertMarkdownToText(u),C={...g,content:_,metadata:{...g.metadata,streaming:!0}};this.eventEmitter.emit("chat.message.updated",C)}const v=this.chatManager.convertMarkdownToText(u),y={...g,content:v,metadata:{...g.metadata,streaming:!1}};this.eventEmitter.emit("chat.message.updated",y);const E={id:l,text:v,isFinal:!0,startTime:g.timestamp.getTime(),participantId:n.identity||"agent"};this.eventEmitter.emit("transcription.received",E)}catch(o){console.error("StreamHandlerManager: Failed to process lk.transcription message:",o);try{const s=await t.readAll(),a=this.agentManager.getCurrentAgentInfo(),l=(a==null?void 0:a.name)||n.identity||"AI Assistant",c={id:`msg_${Date.now()}_agent_transcription_${Math.random().toString(36).substr(2,9)}`,content:s,timestamp:new Date,sender:{id:n.identity||"agent",name:l,type:"agent"},metadata:{topic:"lk.transcription"}};this.eventEmitter.emit("chat.message.received",c),console.log("💬 StreamHandlerManager: Emitted chat.message.received:",{id:c.id,sender:c.sender.name,contentLength:c.content.length,preview:c.content.substring(0,50)});const u={id:c.id,text:c.content,isFinal:!0,startTime:c.timestamp.getTime(),participantId:n.identity||"agent"};this.eventEmitter.emit("transcription.received",u),console.log("📝 StreamHandlerManager: Emitted transcription.received:",{id:u.id,textLength:u.text.length})}catch(s){console.error("StreamHandlerManager: Fallback failed for lk.transcription:",s)}}})}catch(t){console.warn("StreamHandlerManager: lk.transcription handler already registered, skipping:",t)}}registerSuggestedResponseHandler(){try{this.room.registerTextStreamHandler("suggested_response",async t=>{const n=await t.readAll();let r=[];try{r=["tes","hello how are you","algebra make me learn that","what is the meaning of life"]}catch(i){console.warn("StreamHandlerManager: Failed to parse suggested_response:",i,n)}this.eventEmitter.emit("suggested.response",r)})}catch(t){console.warn("StreamHandlerManager: suggested_response handler already registered, skipping:",t)}}registerAgentStateHandler(){try{this.room.registerTextStreamHandler("agent_state_changed",async(t,n)=>{const r=await t.readAll();let i={};try{i=typeof r=="string"?JSON.parse(r.replace(/'/g,'"')):r}catch(o){console.warn("StreamHandlerManager: Failed to parse agent_state_changed:",o,r)}this.agentManager.handleAgentStateChanged(i)})}catch(t){console.warn("StreamHandlerManager: agent_state_changed handler already registered, skipping:",t)}}registerFunctionToolsHandler(){try{this.room.registerTextStreamHandler("function_tools_executed",async(t,n)=>{const r=await t.readAll();let i={};try{if(typeof r=="string")try{i=JSON.parse(r)}catch(o){let s=r;try{s=s.replace(/\bTrue\b/g,"true"),s=s.replace(/\bFalse\b/g,"false"),s=s.replace(/\bNone\b/g,"null");const a=s.replace(/\\"/g,"___ESCAPED_QUOTE___");let l="",c=!1;for(let u=0;u<a.length;u++){const d=a[u],f=u>0?a[u-1]:"";d==='"'&&f!=="\\"?(c=!c,l+=d):d==="'"&&f!=="\\"&&!c?l+='"':l+=d}s=l.replace(/___ESCAPED_QUOTE___/g,'\\"'),i=JSON.parse(s)}catch(a){console.warn("StreamHandlerManager: Enhanced parsing also failed:",a);try{let l=r.replace(/\bTrue\b/g,"true").replace(/\bFalse\b/g,"false").replace(/\bNone\b/g,"null");i=new Function("return "+l)()}catch(l){throw console.error("StreamHandlerManager: All parsing methods failed:",l),o}}}else i=r}catch(o){console.warn("StreamHandlerManager: Failed to parse function_tool_executed:",o,r);let s=null;if(typeof r=="string"&&r.includes("visualization_data"))try{const a=r.match(/"arguments":\s*"({.*?})"/);if(a){const l=a[1].replace(/\\"/g,'"');s=JSON.parse(l),console.log("🛠️ StreamHandlerManager: Extracted visualization data:",s)}}catch(a){console.warn("StreamHandlerManager: Failed to extract visualization data:",a)}i={type:"function_tools_executed",function_calls:[],function_call_outputs:[],created_at:Date.now()/1e3,parseError:!0,rawData:r,extractedVisualizationData:s}}this.eventEmitter.emit("tool.executed",i)})}catch(t){console.warn("StreamHandlerManager: function_tool_executed handler already registered, skipping:",t)}}registerImageTextStreamHandler(){try{this.room.registerTextStreamHandler("images",async(t,n)=>{try{const r=await t.readAll()}catch(r){console.error("StreamHandlerManager: Error processing images stream:",r)}})}catch(t){console.warn("StreamHandlerManager: images text handler already registered, skipping:",t)}}registerImageByteStreamHandler(){try{this.room.registerByteStreamHandler("images",async(t,n)=>{var r,i;try{const o=t.info,s={id:`img_${Date.now()}_${n.identity||"agent"}_${Math.random().toString(36).substr(2,9)}`,content:`🖼️ ${o.name||"Image"}`,sender:{id:n.identity||"agent",name:n.identity||"Agent",type:n.identity===((i=(r=this.room)==null?void 0:r.localParticipant)==null?void 0:i.identity)?"participant":"agent"},timestamp:new Date,metadata:{type:"attachment",fileName:o.name,fileSize:o.size,mimeType:o.mimeType,streamId:o.id,downloading:!0}};this.eventEmitter.emit("chat.message.received",s),t.onProgress&&(t.onProgress=d=>{const f={...s,metadata:{...s.metadata,downloadProgress:d||0}};this.eventEmitter.emit("chat.message.updated",f)});const a=[];for await(const d of t)a.push(d);const l=new Blob(a,{type:o.mimeType||"application/octet-stream"}),c=URL.createObjectURL(l),u={...s,metadata:{...s.metadata,downloading:!1,downloadProgress:1,downloadUrl:c,blob:l}};this.eventEmitter.emit("chat.message.updated",u)}catch(o){console.error("StreamHandlerManager: Error processing image attachment:",o)}})}catch(t){console.warn("StreamHandlerManager: image byte handler already registered, skipping:",t)}}registerCommonTopicHandlers(){["error","warning","status","system","debug","info"].forEach(n=>{try{this.room.registerTextStreamHandler(n,async(r,i)=>{try{const o=await r.readAll();if(console.log(`📝 StreamHandlerManager: Received '${n}' stream:`,o),n==="error"){let s={};try{s=typeof o=="string"?JSON.parse(o):o}catch{s={message:o}}console.warn("⚠️ StreamHandlerManager: Agent error:",s),this.eventEmitter.emit("agent.error",s)}else this.eventEmitter.emit("text.stream.received",{topic:n,data:o,participantInfo:i})}catch(o){console.error(`StreamHandlerManager: Failed to process '${n}' stream:`,o)}})}catch(r){console.warn(`StreamHandlerManager: Handler for '${n}' already registered, skipping:`,r)}})}registerWildcardHandler(){try{this.room.registerTextStreamHandler("*",async(t,n)=>{var r;try{const i=await t.readAll(),o=((r=t.info)==null?void 0:r.topic)||"unknown";if(this._eventEmitters.has(o)){const s=this._eventEmitters.get(o);try{s(i),console.log(`📝 StreamHandlerManager: Processed custom topic '${o}' via event emitter`)}catch(a){console.error(`StreamHandlerManager: Error in custom handler for topic '${o}':`,a)}}else console.log(`📝 StreamHandlerManager: Received unhandled text stream for topic '${o}':`,i),this.eventEmitter.emit("text.stream.unhandled",{topic:o,data:i,participantInfo:n})}catch(i){console.error("StreamHandlerManager: Failed to process unhandled text stream:",i)}})}catch(t){console.warn("StreamHandlerManager: Generic text stream handler already registered, skipping:",t)}}registerEventEmitter(t,n){if(!this.room)throw new Error("Room not available");this._eventEmitters.set(t,n),console.log(`📝 StreamHandlerManager: Stored handler for topic '${t}' in event emitters map`);try{this.room.registerTextStreamHandler(t,async r=>{try{const i=await r.readAll();console.log(`📝 StreamHandlerManager: Direct handler called for topic '${t}'`),n(i)}catch(i){console.error(`Error processing event for topic '${t}':`,i)}}),console.log(`📝 StreamHandlerManager: Successfully registered direct handler for topic '${t}'`)}catch(r){console.warn(`StreamHandlerManager: Direct handler registration failed for topic '${t}':`,r),console.log(`📝 StreamHandlerManager: Wildcard handler will process topic '${t}' instead`)}}getRegisteredEventEmitters(){return Array.from(this._eventEmitters.keys())}hasEventEmitter(t){return this._eventEmitters.has(t)}}const hm=N.createContext(null);function lo({config:e,children:t,autoConnect:n=!1,client:r}){const[i,o]=N.useState(null),[s,a]=N.useState(!1),[l,c]=N.useState(!1),[u,d]=N.useState(null),[f,p]=N.useState(null),[m,g]=N.useState("idle"),[v,y]=N.useState(null),[E,w]=N.useState([]),[_,C]=N.useState([]),[T,R]=N.useState([]);N.useEffect(()=>{const V=r||new Ti(e);o(V);const x=A(V);return n&&!r&&I(V),()=>{x(),r||V.disconnect().catch(console.error)}},[e,n,r]);const A=V=>{const x=()=>{c(!0),d(null)},z=()=>{a(!0),c(!1),d(null)},G=()=>{a(!1),c(!1),p(null),g("idle"),w([]),C([]),R([])},k=ne=>{d(ne),c(!1)},K=ne=>{p(ne),g(ne.state)},Z=ne=>{g(ne),f&&p({...f,state:ne})},X=(ne,Se)=>{p(null),g("idle"),y(Se),w([]),C([]),R([])},ie=ne=>{w(Se=>[...Se,ne])},Y=ne=>{w(Se=>Se.filter(pe=>pe.id!==ne.id))},re=ne=>{C(Se=>[...Se,ne])},H=ne=>{C(Se=>[...Se,ne])},Ee=ne=>{console.log("📝 VoxketProvider: Received transcription:",ne),R(Se=>Se.find(se=>se.id===ne.id)?(console.log("📝 VoxketProvider: Duplicate transcription detected, skipping:",ne.id),Se):(console.log("📝 VoxketProvider: Adding new transcription:",ne.id),[...Se,ne]))},P=()=>{console.log("🧹 VoxketProvider: Clearing chat messages and transcriptions"),C([]),R([])};return V.on("connection.connecting",x),V.on("connection.connected",z),V.on("connection.disconnected",G),V.on("connection.error",k),V.on("session.created",K),V.on("session.state.changed",Z),V.on("session.ended",X),V.on("participant.joined",ie),V.on("participant.left",Y),V.on("chat.message.received",re),V.on("chat.message.sent",H),V.on("transcription.received",Ee),V.on("chat.history.cleared",P),()=>{console.log("📝 VoxketProvider: Cleaning up event listeners"),V.off("connection.connecting",x),V.off("connection.connected",z),V.off("connection.disconnected",G),V.off("connection.error",k),V.off("session.created",K),V.off("session.state.changed",Z),V.off("session.ended",X),V.off("participant.joined",ie),V.off("participant.left",Y),V.off("chat.message.received",re),V.off("chat.message.sent",H),V.off("chat.history.cleared",P),V.off("transcription.received",Ee)}},I=async V=>{const x=V||i;if(x)try{await x.connect()}catch(z){console.error("Failed to connect:",z)}},B={client:i,isConnected:s,isConnecting:l,connectionError:u,currentSession:f,sessionState:m,sessionMetrics:v,participants:E,chatMessages:_,transcriptions:T,connect:()=>I(),disconnect:async()=>{if(i)try{await i.disconnect()}catch(V){console.error("Failed to disconnect:",V)}},createSession:async(V,x={})=>{if(!i)throw new Error("Client not initialized");const z={agentId:V,participantName:x.participantName||"User",metadata:x.metadata,modalities:x.modalities||["voice"]};return await i.createSession(z)},endSession:async()=>i?await i.endSession():null,sendChatMessage:async V=>{if(!i)throw new Error("Client not initialized");await i.sendChatMessage(V)},setMicrophoneEnabled:async V=>{if(!i)throw new Error("Client not initialized");await i.setMicrophoneEnabled(V)},setCameraEnabled:async V=>{if(!i)throw new Error("Client not initialized");await i.setCameraEnabled(V)},startScreenShare:async()=>{if(!i)throw new Error("Client not initialized");await i.startScreenShare()},stopScreenShare:async()=>{if(!i)throw new Error("Client not initialized");await i.stopScreenShare()}};return h.jsx(hm.Provider,{value:B,children:t})}function hn(){const e=N.useContext(hm);if(!e)throw new Error("useVoxket must be used within a VoxketProvider");return e}const An=new WeakSet,ta=new WeakSet;class pm{constructor(t,n){Ce(this,"renderedComponents",new Map);Ce(this,"config");Ce(this,"voxketClient");this.config=t,this.voxketClient=n}renderUI(t={}){const n=this.resolveTarget(t.target||"body"),r=this.getTargetKey(n);if(ta.has(n)){console.warn("⚠️ UIRenderer: Target is already being processed, skipping renderUI");return}if(An.has(n)){console.log("✋ UIRenderer: Target already has a React root in registry, updating existing props...");const o=this.renderedComponents.get(r);if(o&&o.root){const s=this.buildWidgetProps(t);try{o.root.render(N.createElement(lo,{config:this.config,autoConnect:t.autoStart||!1,client:this.voxketClient,children:N.createElement(co,s)})),console.log("✅ UIRenderer: Successfully updated existing widget with new props");return}catch(a){throw console.error("Error re-rendering existing widget:",a),new Error(`Failed to update existing widget: ${a instanceof Error?a.message:"Unknown error"}`)}}else console.warn("⚠️ Registry inconsistency detected, cleaning up"),An.delete(n)}let i=this.renderedComponents.get(r);if(i&&i.target===n&&An.has(n)){console.log("🔄 UIRenderer: Reusing existing React root for target:",r);const o=i.root,s=this.buildWidgetProps(t);try{o.render(N.createElement(lo,{config:this.config,autoConnect:t.autoStart||!1,client:this.voxketClient,children:N.createElement(co,s)}))}catch(a){throw console.error("Error rendering Voxket widget:",a),new Error(`Failed to render Voxket widget: ${a instanceof Error?a.message:"Unknown error"}`)}return}ta.add(n);try{if(i){console.log("🧹 UIRenderer: Cleaning up existing component for different target");try{i.root.unmount(),this.renderedComponents.delete(r),An.delete(i.target),n.innerHTML=""}catch(a){console.warn("Failed to cleanup existing root:",a)}}if(An.has(n)){console.warn("⚠️ UIRenderer: Target already in registry, skipping root creation");return}console.log("🆕 UIRenderer: Creating new React root for target:",r);const o=Xm.createRoot(n);this.renderedComponents.set(r,{root:o,target:n}),An.add(n);const s=this.buildWidgetProps(t);if(!o||typeof o.render!="function")throw new Error("Invalid React root. Make sure React 18+ is properly installed and configured.");try{o.render(N.createElement(lo,{config:this.config,autoConnect:t.autoStart||!1,client:this.voxketClient,children:N.createElement(co,s)}))}catch(a){throw console.error("Error rendering Voxket widget:",a),new Error(`Failed to render Voxket widget: ${a instanceof Error?a.message:"Unknown error"}`)}}finally{ta.delete(n)}}removeUI(t){const n=t?this.resolveTarget(t):null;if(n){const r=this.getTargetKey(n),i=this.renderedComponents.get(r);if(i){console.log("🗑️ UIRenderer: Removing UI for target:",r),this.renderedComponents.delete(r);const o=i.target,s=()=>{var a;try{o&&o.isConnected?typeof((a=i.root)==null?void 0:a.unmount)=="function"&&(i.root.unmount(),console.log("✅ UIRenderer: UI unmounted for target:",r)):console.log("ℹ️ UIRenderer: Target element already disconnected, skipping unmount")}catch(l){console.warn("Failed to unmount React root:",l)}finally{requestAnimationFrame(()=>{try{n.querySelectorAll('[id*="voxket"], [class*="voxket"], .fixed.inset-0.z-50').forEach(c=>{try{c.parentNode&&c.remove()}catch(u){console.warn("Failed to remove element:",u)}})}finally{An.delete(n)}})}};queueMicrotask(()=>setTimeout(s,0))}else console.log("ℹ️ UIRenderer: No component found for target, cleaning registry:",r),An.delete(n),n.isConnected&&n.hasChildNodes()&&(n.innerHTML="");n===document.body&&n.querySelectorAll(".fixed.z-50, .fixed.inset-0").forEach(s=>{if(s.classList.contains("bg-black")&&(s.classList.contains("backdrop-blur-sm")||s.classList.contains("bg-opacity-30")))try{s.remove()}catch(a){console.warn("Failed to remove fixed element:",a)}})}}removeAllUI(){for(const[t,n]of this.renderedComponents)n.root.unmount();this.renderedComponents.clear(),this.forceCleanupFullscreenOverlays()}forceCleanupFullscreenOverlays(){document.body.querySelectorAll(".fixed.inset-0.z-50").forEach(n=>{if(n.classList.contains("bg-black")&&(n.classList.contains("backdrop-blur-sm")||n.classList.contains("bg-opacity-30")))try{n.remove()}catch(r){console.warn("Failed to remove overlay:",r)}})}resolveTarget(t){if(typeof t=="string"){const n=document.querySelector(t);if(!n)throw new Error(`Target element not found: ${t}`);return n}return t}getTargetKey(t){return t.id?t.id:t.className?t.tagName+"_"+t.className.replace(/\s+/g,"_"):t.tagName+"_"+t.outerHTML.length%1e3}buildWidgetProps(t){var r,i,o;const n=this.config;return{agentId:t.agentId||n.agentId||"default-agent",participantName:t.participantName||n.participantName||"User",baseUrl:this.config.baseUrl,appSecret:this.config.appSecret,appId:this.config.appId,className:t.className,theme:typeof t.theme=="string"?t.theme:void 0,modalities:t.modality||n.modalities||["voice"],suportsChatInput:((r=t.modality)==null?void 0:r.includes("chat"))!==!1,suportsVideoInput:((i=t.modality)==null?void 0:i.includes("video"))===!0,suportsScreenShare:((o=t.modality)==null?void 0:o.includes("screen_share"))===!0,autoStart:t.autoStart,displayType:t.displayType||"widget",popupPosition:t.popupPosition||"bottom-right",popupTriggerText:t.popupTriggerText||"Open Chat",popupModalityMode:t.popupModalityMode||"all",width:t.width,height:t.height,onDisplayTypeChange:t.onDisplayTypeChange,prompts:t.prompts,statusMessage:t.statusMessage,welcomeTitle:t.welcomeTitle,welcomeSubTitle:t.welcomeSubTitle,loadingText:t.loadingText,voxketClient:this.voxketClient,participantMetadata:t.participantMetadata}}updateConfig(t){this.config=t}}class gm{constructor(t){Ce(this,"agentState","idle");Ce(this,"isAgentConnected",!1);Ce(this,"currentAgentInfo",null);Ce(this,"eventEmitter");this.eventEmitter=t}getAgentState(){return this.agentState}setAgentState(t){this.agentState!==t&&(this.agentState=t,this.eventEmitter.emit("agent.state.changed",{state:t}))}getIsAgentConnected(){return this.isAgentConnected}setAgentConnected(t){this.isAgentConnected=t,console.log(t?"🤖 AgentManager: Agent marked as connected":"🤖 AgentManager: Agent marked as disconnected")}getCurrentAgentInfo(){return this.currentAgentInfo}setCurrentAgentInfo(t){this.currentAgentInfo=t,console.log("📝 AgentManager: Agent info updated:",t)}reset(){this.agentState="idle",this.isAgentConnected=!1,this.currentAgentInfo=null,console.log("🔄 AgentManager: Agent state reset")}handleAgentStateChanged(t){this.isAgentConnected||(this.setAgentConnected(!0),this.eventEmitter.emit("agent.connected",t)),t.new_state==="speaking"?(this.setAgentState("speaking"),this.eventEmitter.emit("agent.speaking",t)):t.new_state==="thinking"?(this.setAgentState("thinking"),this.eventEmitter.emit("agent.thinking",t)):(t.new_state==="idle"||t.new_state==="listening")&&this.setAgentState("idle")}}class Ti extends rc{constructor(n){super();Ce(this,"config");Ce(this,"pluginManager");Ce(this,"rpcManager");Ce(this,"chatManager");Ce(this,"mediaManager");Ce(this,"connectionManager");Ce(this,"streamHandlerManager");Ce(this,"uiRenderer");Ce(this,"agentManager");Ce(this,"currentSession",null);if(!n.authToken&&(!n.appId||!n.appSecret))throw new Error("Either authToken or both appId and appSecret must be provided");this.config=n,this.chatManager=new cm(this,n.participantName||"User"),this.mediaManager=new um(this),this.agentManager=new gm(this),this.connectionManager=new dm({baseUrl:n.baseUrl,appId:n.appId,appSecret:n.appSecret,authToken:n.authToken},this),this.streamHandlerManager=new fm(this,this.chatManager,this.agentManager),this.uiRenderer=new pm(n,this),this.pluginManager=new am(this),this.rpcManager=new lm,this.setupEventListeners(),this.setupRpcEventForwarding()}setupEventListeners(){this.on("connection.connected",()=>{var r,i,o,s,a,l,c;if(console.log("🔌 VoxketClient: connection.connected event fired",{hasSession:!!this.currentSession,sessionState:(r=this.currentSession)==null?void 0:r.state,sessionId:(i=this.currentSession)==null?void 0:i.id}),(s=(o=this.config).onConnected)==null||s.call(o),this.currentSession&&this.currentSession.state==="connecting"){const u=this.currentSession.state;this.currentSession.state="connected",this.emit("session.state.changed","connected",u),console.log("✅ VoxketClient: Session state changed to connected")}else console.log("⚠️ VoxketClient: Cannot update session state",{hasSession:!!this.currentSession,currentState:(a=this.currentSession)==null?void 0:a.state});const n=this.connectionManager.getRoom();if(n){this.rpcManager.setRoom(n);const u=Array.from(n.remoteParticipants.values()).find(d=>{var f;return(f=d.identity)==null?void 0:f.startsWith("agent-")});u&&(console.log("🤖 VoxketClient: Agent already in room, marking as connected",{agentIdentity:u.identity,hasAudioTrack:u.audioTrackPublications.size>0}),this.agentManager.getIsAgentConnected()||(this.agentManager.setAgentConnected(!0),this.emit("agent.connected",{identity:u.identity})))}(c=(l=this.currentSession)==null?void 0:l.activeModalities)!=null&&c.includes("voice")&&setTimeout(async()=>{try{this.mediaManager.getLocalParticipant()&&(this.mediaManager.isMicrophoneEnabled||(await this.mediaManager.setMicrophoneEnabled(!0),this.emit("track.unmuted",{source:"microphone",enabled:!0}),console.log("🎤 VoxketClient: Microphone enabled after connection")))}catch(u){console.warn("VoxketClient: Failed to enable microphone after room connection:",u)}},100)}),this.on("connection.disconnected",n=>{var r,i,o;(i=(r=this.config).onDisconnected)==null||i.call(r,n),this.streamHandlerManager.resetHandlersFlag(),this.agentManager.reset(),this.chatManager.clearChatMessages(),n&&console.log("🔍 VoxketClient: Disconnect reason details:",{reason:n.toString(),currentSession:(o=this.currentSession)==null?void 0:o.id})}),this.on("connection.error",n=>{var r,i;(i=(r=this.config).onError)==null||i.call(r,n)}),this.on("chat.message.received",n=>{var r,i;this.chatManager.addChatMessage(n),(i=(r=this.config).onMessageReceived)==null||i.call(r,n)}),this.on("chat.message.updated",n=>{this.chatManager.updateChatMessage(n)}),this.on("chat.message.sent",n=>{this.chatManager.addChatMessage(n)}),this.on("transcription.received",n=>{var r,i;(i=(r=this.config).onTranscriptionReceived)==null||i.call(r,n)}),this.on("session.state.changed",n=>{var r,i;(i=(r=this.config).onSessionStateChanged)==null||i.call(r,n)}),this.on("session.created",n=>{var r,i;(i=(r=this.config).onSessionStart)==null||i.call(r,n.id)}),this.on("session.ended",(n,r)=>{var i,o;(o=(i=this.config).onSessionEnd)==null||o.call(i,r)}),this.on("participant.joined",n=>{var r,i;(i=(r=this.config).onUserJoined)==null||i.call(r,n.id)}),this.on("participant.left",n=>{var r,i;(i=(r=this.config).onUserLeft)==null||i.call(r,n.id)})}setupRpcEventForwarding(){if(!this.rpcManager){console.warn("RpcManager not initialized, skipping event forwarding setup");return}this.rpcManager.on("rpc.method.registered",n=>this.emit("rpc.method.registered",n)),this.rpcManager.on("rpc.method.called",n=>this.emit("rpc.method.called",n)),this.rpcManager.on("rpc.interaction.started",n=>this.emit("rpc.interaction.started",n)),this.rpcManager.on("rpc.interaction.completed",n=>this.emit("rpc.interaction.completed",n)),this.rpcManager.on("rpc.interaction.timeout",n=>this.emit("rpc.interaction.timeout",n)),this.rpcManager.on("rpc.interaction.dismissed",n=>this.emit("rpc.interaction.dismissed",n))}async connect(n,r,i,o){const s=n||this.config.agentId||"default-agent",a=r||this.config.participantName||"User",l=i||this.config.modalities||["voice"],c=o||this.config.participantMetadata,u=await this.connectionManager.connect(s,a,l,c),d=this.connectionManager.getRoom();return this.chatManager.setRoom(d),this.mediaManager.setRoom(d),this.streamHandlerManager.setRoom(d),u.agentInfo&&this.agentManager.setCurrentAgentInfo(u.agentInfo),u}async disconnect(){await this.connectionManager.disconnect(),this.currentSession=null;const n=this.connectionManager.getRoom();this.chatManager.setRoom(n),this.mediaManager.setRoom(n),this.streamHandlerManager.setRoom(n)}async createSession(n){var r,i;try{const o=await this.connect(n.agentId,n.participantName,n.modalities,n.participantMetadata),s={id:o.voxketSessionId,agentId:n.agentId,state:"connecting",startedAt:new Date,metadata:n.metadata||{},activeModalities:n.modalities||["voice"],agentInfo:o.agentInfo||this.agentManager.getCurrentAgentInfo()};this.currentSession=s,this.emit("session.created",s);const a=this.connectionManager.getRoom();if(a&&(a.state!=="connected"?(console.log("⏳ VoxketClient: Waiting for room to connect..."),await new Promise((c,u)=>{const d=setTimeout(()=>{u(new Error("Room connection timeout"))},1e4),f=()=>{clearTimeout(d),a.off("connected",f),a.off("disconnected",p),console.log("✅ VoxketClient: Room connected successfully"),c()},p=()=>{clearTimeout(d),a.off("connected",f),a.off("disconnected",p),u(new Error("Room disconnected while waiting for connection"))};a.once("connected",f),a.once("disconnected",p)})):console.log("✅ VoxketClient: Room already connected"),this.currentSession.state="connected",this.emit("session.state.changed","connected","connecting"),console.log("⏳ VoxketClient: Waiting for agent to connect..."),await new Promise(c=>{const u=setTimeout(()=>{console.warn("⚠️ VoxketClient: Agent connection timeout (30s), continuing anyway"),c(!1)},3e4),d=()=>{clearTimeout(u),this.off("agent.connected",d),this.off("participant.joined",f),console.log("✅ VoxketClient: Agent connected and ready"),c(!0)},f=p=>{var m,g;((m=p.id)!=null&&m.startsWith("agent-")||(g=p.name)!=null&&g.toLowerCase().includes("agent"))&&(clearTimeout(u),this.off("agent.connected",d),this.off("participant.joined",f),console.log("✅ VoxketClient: Agent participant joined:",p.name||p.id),c(!0))};this.once("agent.connected",d),this.on("participant.joined",f),this.agentManager.getIsAgentConnected()&&(clearTimeout(u),this.off("agent.connected",d),this.off("participant.joined",f),console.log("✅ VoxketClient: Agent already connected"),c(!0))})&&(this.currentSession.state="active",this.emit("session.state.changed","active","connected"))),(r=n.modalities)!=null&&r.includes("voice"))try{await this.mediaManager.setMicrophoneEnabled(!0),this.emit("track.unmuted",{source:"microphone",enabled:!0}),console.log("🎤 VoxketClient: Microphone enabled successfully")}catch(l){console.warn("VoxketClient: Failed to enable microphone, but continuing with session:",l)}if((i=n.modalities)!=null&&i.includes("video"))try{await new Promise(l=>setTimeout(l,200)),await this.mediaManager.enableCamera(),console.log("🎥 VoxketClient: Camera enabled successfully")}catch(l){console.warn("VoxketClient: Failed to enable camera, but continuing with session:",l)}return s}catch(o){throw console.error("VoxketClient: Failed to create session:",o),o instanceof Ue?o:o instanceof TypeError&&o.message.includes("fetch")?new Ue("Network connection failed","CONNECTION_FAILED",o):o instanceof Error&&o.message.includes("Failed to fetch connection details")?new Ue(`API connection failed: ${o.message}`,"CONNECTION_FAILED",o):new Ue(`Failed to create session: ${o instanceof Error?o.message:"Unknown error"}`,"SESSION_NOT_FOUND",o)}}async startSession(n,r){const i={agentId:n||this.config.agentId||"default-agent",participantName:(r==null?void 0:r.participantName)||this.config.participantName||"User",modalities:(r==null?void 0:r.modalities)||this.config.modalities||["voice","chat"],metadata:r==null?void 0:r.metadata,participantMetadata:r==null?void 0:r.participantMetadata};return this.createSession(i)}async endSession(){var n,r;if(!this.currentSession)return null;try{const i={sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((r=this.connectionManager.getRoom())==null?void 0:r.remoteParticipants.size)||0,audioQuality:{avgBitrate:64e3,avgLatency:150,packetLoss:.01,jitter:.05},videoQuality:{avgBitrate:5e5,avgLatency:150,packetLoss:.01,jitter:.05},networkStats:{totalBytesReceived:0,totalBytesSent:0,connectionType:"webrtc",avgRoundTripTime:150},events:[]};return this.currentSession.endedAt=new Date,this.currentSession.state="disconnected",this.emit("session.ended",this.currentSession,i),await this.disconnect(),i}catch(i){throw new Ue("Failed to end session","SESSION_NOT_FOUND",i)}}getCurrentSession(){return this.currentSession}getSessionMetrics(){var n,r;return this.currentSession?{sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((r=this.connectionManager.getRoom())==null?void 0:r.remoteParticipants.size)||0,audioQuality:{avgBitrate:64e3,avgLatency:150,packetLoss:.01,jitter:.05},videoQuality:{avgBitrate:5e5,avgLatency:150,packetLoss:.01,jitter:.05},networkStats:{totalBytesReceived:0,totalBytesSent:0,connectionType:"webrtc",avgRoundTripTime:150},events:[]}:null}async sendMessage(n,r){if(!this.currentSession)throw new Ue("No active session","SESSION_NOT_FOUND");return this.dismissCurrentInteraction(),this.chatManager.sendMessage(n,r)}async sendChatMessage(n,r){return this.sendMessage(n,r)}async sendAttachments(n,r){if(!this.currentSession)throw new Ue("No active session","SESSION_NOT_FOUND");return this.dismissCurrentInteraction(),this.chatManager.sendAttachments(n,r)}async sendAttachment(n,r){return this.chatManager.sendAttachment(n,r)}getChatMessages(){return this.chatManager.getChatMessages()}addChatMessage(n){this.chatManager.addChatMessage(n)}updateChatMessage(n){this.chatManager.updateChatMessage(n)}clearChatMessages(){this.chatManager.clearChatMessages(),this.dismissCurrentInteraction(),this.uiRenderer.removeAllUI()}toggleMicrophone(n){return this.mediaManager.toggleMicrophone(n)}async setMicrophoneEnabled(n){return this.mediaManager.setMicrophoneEnabled(n)}toggleCamera(n){return this.mediaManager.toggleCamera(n)}async setCameraEnabled(n){return this.mediaManager.setCameraEnabled(n)}async enableCamera(){return this.mediaManager.enableCamera()}async disableCamera(){return this.mediaManager.disableCamera()}async startScreenShare(){return this.mediaManager.startScreenShare()}async stopScreenShare(){return this.mediaManager.stopScreenShare()}async getAudioInputDevices(){return this.mediaManager.getAudioInputDevices()}async getVideoInputDevices(){return this.mediaManager.getVideoInputDevices()}async setAudioInputDevice(n){return this.mediaManager.setAudioInputDevice(n)}async setVideoInputDevice(n){return this.mediaManager.setVideoInputDevice(n)}get isMicrophoneEnabled(){return this.mediaManager.isMicrophoneEnabled}get isCameraEnabled(){return this.mediaManager.isCameraEnabled}get isScreenShareEnabled(){return this.mediaManager.isScreenShareEnabled}getMicrophoneTrack(){return this.mediaManager.getMicrophoneTrack()}getCameraTrack(){return this.mediaManager.getCameraTrack()}getScreenShareTrack(){return this.mediaManager.getScreenShareTrack()}getAgentAudioTrack(){return this.mediaManager.getAgentAudioTrack()}getAgentVideoTrack(){return this.mediaManager.getAgentVideoTrack()}getVideoTrackRefs(){return this.mediaManager.getVideoTrackRefs()}getCameraTrackRefs(){return this.mediaManager.getCameraTrackRefs()}getScreenShareTrackRefs(){return this.mediaManager.getScreenShareTrackRefs()}getPublishPermissions(){return this.mediaManager.getPublishPermissions()}canPublishSource(n){return this.mediaManager.canPublishSource(n)}getLocalParticipant(){return this.mediaManager.getLocalParticipant()}getRemoteParticipants(){return this.mediaManager.getRemoteParticipants()}getParticipants(){return this.connectionManager.getParticipants()}getRoom(){return this.connectionManager.getRoom()}getConnectionState(){return this.connectionManager.getConnectionState()}get connected(){return this.connectionManager.connected}getCurrentAgentInfo(){return this.agentManager.getCurrentAgentInfo()}getIsAgentConnected(){return this.agentManager.getIsAgentConnected()}getAgentState(){return this.agentManager.getAgentState()}renderUI(n={}){this.uiRenderer.renderUI(n)}removeUI(n){this.uiRenderer.removeUI(n)}removeAllUI(){this.uiRenderer.removeAllUI()}async registerFrontendRPC(n,r,i="embedded"){return this.rpcManager.registerFrontendRPC(n,r,i)}getCurrentInteraction(){return this.rpcManager.getCurrentInteraction()}dismissCurrentInteraction(){this.rpcManager.dismissCurrentInteraction()}getRegisteredRpcMethods(){return this.rpcManager.getRegisteredMethods()}unregisterRpcMethod(n){this.rpcManager.unregisterMethod(n)}registerPlugin(n){this.pluginManager.register(n)}getPluginManager(){return this.pluginManager}registerEventListener(n,r){return this.on(n,r)}registerEventEmitter(n,r){return this.streamHandlerManager.registerEventEmitter(n,r)}getRegisteredEventEmitters(){return this.streamHandlerManager.getRegisteredEventEmitters()}hasEventEmitter(n){return this.streamHandlerManager.hasEventEmitter(n)}updateConfig(n){this.config={...this.config,...n},this.uiRenderer.updateConfig(this.config),this.connectionManager.updateConfig({baseUrl:this.config.baseUrl,appId:this.config.appId,appSecret:this.config.appSecret}),this.chatManager.setParticipantName(this.config.participantName||"User")}setParticipantMetadata(n){this.config.participantMetadata=n}getParticipantMetadata(){return this.config.participantMetadata}async startRecording(){var n;try{this.emit("recording.started",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(r){throw new Ue("Failed to start recording","RECORDING_ERROR",r)}}async stopRecording(){var n;try{this.emit("recording.stopped",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(r){throw new Ue("Failed to stop recording","RECORDING_ERROR",r)}}}const WR=Me.create(Bg),GR=Me.create(Gl),KR=Me.create($g),qR=Me.create(im);function YR({theme:e,mode:t,loadingText:n,sessionState:r}){const i=Pt(e),o=()=>{if(r==="connected")return"Connecting to agent...";if(n)return n;switch(t){case"voice":return"Connecting to voice agent...";case"chat":return"Starting chat session...";case"video":return"Connecting to video call...";default:return"Connecting..."}};return h.jsxs("div",{className:"flex flex-col items-center justify-center h-full w-full p-8",children:[h.jsxs("div",{className:"text-center",children:[h.jsx("h3",{className:`text-lg font-semibold mb-2 ${i.text.accent}`,children:o()}),h.jsx("p",{className:`text-sm ${i.text.muted}`,children:"Please wait a moment..."})]}),h.jsxs("div",{className:"flex space-x-1 mt-4",children:[h.jsx("div",{className:"w-2 h-2 rounded-full animate-bounce bg-blue-500",style:{animationDelay:"0ms"}}),h.jsx("div",{className:"w-2 h-2 rounded-full animate-bounce bg-blue-500",style:{animationDelay:"150ms"}}),h.jsx("div",{className:"w-2 h-2 rounded-full animate-bounce bg-blue-500",style:{animationDelay:"300ms"}})]})]})}const ZR=Me.create(YR);function xf({children:e,theme:t,displayType:n="widget",onClose:r,popupPosition:i="bottom-right",onExpand:o}){const s=Pt(t);if(n==="fullscreen")return h.jsx("div",{className:"fixed inset-0 z-[9999] bg-black/40 bg-opacity-30 backdrop-blur-sm flex items-center justify-center p-8",onClick:a=>{a.target===a.currentTarget&&r&&r()},children:h.jsxs("div",{className:"w-full h-full max-w-7xl max-h-[95vh] rounded-2xl relative bg-transparent flex flex-col",onClick:a=>{a.stopPropagation()},children:[r&&h.jsx("button",{onClick:a=>{a.preventDefault(),a.stopPropagation(),r()},className:"absolute top-4 cursor-pointer right-4 z-[10000] w-12 h-12 rounded-full bg-gray-900 bg-opacity-90 text-white flex items-center justify-center hover:bg-gray-800 transition-all duration-200 shadow-lg border border-gray-700 backdrop-blur-sm",title:"Exit Fullscreen",type:"button",children:h.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:h.jsx("path",{d:"M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"})})}),h.jsxs("div",{id:"voice-card",className:`voxket-widget-root theme-${t} ${s.card} w-full h-full flex flex-col rounded-xl shadow-2xl relative overflow-hidden`,"data-theme":t,style:{minHeight:"600px",height:"100%",contain:"layout style paint",overscrollBehavior:"contain",backgroundColor:t==="midnight"?"#161a25":void 0},children:[h.jsx("div",{className:s.cardTopGradient}),h.jsx("div",{className:s.cardPurpleBlur}),h.jsx("div",{className:s.cardPinkBlur}),h.jsx("div",{className:"relative z-10 flex flex-col h-full",children:e}),h.jsx("div",{className:s.cardPulse1}),h.jsx("div",{className:s.cardPulse2,style:{animationDelay:"1s"}})]})]})});if(n==="popup"){const a={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"};return h.jsx("div",{className:"fixed rounded-2xl inset-0 z-[9999] pointer-events-none",children:h.jsxs("div",{className:`fixed rounded-2xl ${a[i]} pointer-events-auto`,children:[r&&h.jsx("button",{onClick:r,className:"absolute -top-2 -right-2 z-10 w-8 h-8 rounded-full bg-gray-900 bg-opacity-90 text-white flex items-center justify-center hover:bg-gray-800 transition-all duration-200 text-sm shadow-lg border border-gray-700",children:"×"}),h.jsxs("div",{id:"voice-card",className:`voxket-widget-root theme-${t} ${s.card} rounded-2xl flex flex-col relative overflow-hidden`,"data-theme":t,style:{width:"350px",height:"500px",contain:"layout style paint",overscrollBehavior:"contain",backgroundColor:t==="midnight"?"#161a25":void 0},children:[h.jsx("div",{className:s.cardTopGradient}),h.jsx("div",{className:s.cardPurpleBlur}),h.jsx("div",{className:s.cardPinkBlur}),h.jsx("div",{className:"relative z-10 flex flex-col h-full w-full",children:e}),h.jsx("div",{className:s.cardPulse1}),h.jsx("div",{className:s.cardPulse2,style:{animationDelay:"1s"}})]})]})})}return h.jsxs("div",{id:"voice-card",className:`voxket-widget-root theme-${t} ${s.card} relative overflow-hidden w-full h-full`,"data-theme":t,style:{height:"100%",maxHeight:"100%",contain:"layout style paint",overscrollBehavior:"contain",backgroundColor:t==="midnight"?"#161a25":void 0},children:[h.jsx("div",{className:s.cardTopGradient}),h.jsx("div",{className:s.cardPurpleBlur}),h.jsx("div",{className:s.cardPinkBlur}),h.jsx("div",{className:"relative z-10 flex flex-col h-full w-full",children:e}),h.jsx("div",{className:s.cardPulse1}),h.jsx("div",{className:s.cardPulse2,style:{animationDelay:"1s"}})]})}function XR(e){if(typeof window>"u")return null;const{agentId:t,participantName:n,baseUrl:r,appSecret:i,appId:o,authToken:s,prompts:a,statusMessage:l,welcomeTitle:c,welcomeSubTitle:u,className:d,width:f,height:p,loadingText:m,suportsChatInput:g=!0,suportsVideoInput:v=!0,suportsScreenShare:y=!0,theme:E="vox",onSessionStart:w,onSessionEnd:_,enableSessionLogging:C=!0,onSessionLogsUpdate:T,onSessionMetricsUpdate:R,modalities:A=["voice"],displayType:I="widget",popupPosition:b="bottom-right",popupTriggerText:M="Open Chat",onPopupToggle:O,voxketClient:L,onDisplayTypeChange:j,participantMetadata:W,popupModalityMode:oe="all",popupTriggerLogoUrl:te}=e,[B,V]=D.useState(!1),[x,z]=D.useState(null),[G,k]=D.useState(()=>{try{if(L)return!!L.getCurrentSession()}catch(S){console.error("Error checking existing session:",S)}return!1}),[K,Z]=D.useState(!1),[X,ie]=D.useState(t||""),[Y,re]=D.useState(n||"User"),[H,Ee]=D.useState(()=>{try{if(L)return L.getCurrentSession()}catch(S){console.error("Error getting current session:",S)}return null}),[P,ne]=D.useState(()=>{var S,F,q;try{if(L){const ce=L.getCurrentSession();if((S=ce==null?void 0:ce.activeModalities)!=null&&S.includes("chat"))return"chat";if((F=ce==null?void 0:ce.activeModalities)!=null&&F.includes("voice"))return"voice";if((q=ce==null?void 0:ce.activeModalities)!=null&&q.includes("video"))return"video"}}catch(ce){console.error("Error determining current mode:",ce)}return"welcome"}),[Se,pe]=D.useState(!1),[se,be]=D.useState(!1),[ke,ye]=D.useState(()=>A.length===1?A[0]:null),[ct,xt]=D.useState(!1);D.useEffect(()=>{I==="fullscreen"&&console.log("🎯 Widget: Switched to fullscreen mode")},[I]),D.useEffect(()=>{G&&!K?console.log("📊 Session started:",{currentMode:P,sessionId:H==null?void 0:H.id}):!G&&!K&&P==="welcome"&&console.log("📊 Returned to welcome screen")},[G,P,K]);const Ke=D.useRef(null);if(!Ke.current)try{if(L)console.log("🔄 Using existing VoxketClient to preserve session state"),Ke.current=L;else if(!s&&(!o||!i)){const S="Missing required props: Either provide 'authToken' or both 'appId' and 'appSecret'";console.error("❌ VoxketClient creation failed:",S),z(new Error(S)),V(!0)}else if(r){const S={...s?{authToken:s}:{appId:o,appSecret:i},baseUrl:r,agentId:X,participantName:Y||"User",modalities:A,participantMetadata:W};console.log("🔧 Creating new VoxketClient with config:",{authMethod:s?"Bearer Token":"App Credentials",...s?{}:{appId:(o==null?void 0:o.substring(0,8))+"..."},baseUrl:r,agentId:X,participantName:Y||"User",modalities:A}),Ke.current=new Ti(S)}else{const S="Missing required prop: baseUrl";console.error("❌ VoxketClient creation failed:",S),z(new Error(S)),V(!0)}}catch(S){console.error("❌ Failed to create VoxketClient:",S),z(S),V(!0)}const ue=Ke.current;D.useEffect(()=>{const S=Ke.current;return()=>{S&&!L&&(console.log("🧹 Widget unmounting: disconnecting VoxketClient"),S.disconnect().catch(F=>{console.error("❌ Error during widget cleanup disconnect:",F)}))}},[L]);const mt=D.useMemo(()=>I==="popup"&&ke?[ke]:A,[I,ke,A]),qe=D.useMemo(()=>{try{if(!ue)return console.warn("⚠️ No VoxketClient available, creating fallback room"),new le.Room;const S=ue.getRoom();return console.log("🏠 Widget: Room reference updated:",{roomExists:!!S,roomState:S==null?void 0:S.state,sessionStarted:G,currentMode:P}),S||new le.Room}catch(S){return console.error("❌ Error getting room from client:",S),new le.Room}},[ue,G,P]);D.useEffect(()=>{if(qe){const S=()=>{console.log("🏠 Widget: Room state changed:",{state:qe.state,numParticipants:qe.numParticipants,isConnected:qe.state==="connected",sessionId:H==null?void 0:H.id})},F=(q,ce,Qe)=>{console.log("🎵 Widget: Track subscribed:",{trackKind:q.kind,trackSource:q.source,participantSid:Qe.sid,participantIdentity:Qe.identity,sessionId:H==null?void 0:H.id})};return qe.on(le.RoomEvent.Connected,S),qe.on(le.RoomEvent.Disconnected,S),qe.on(le.RoomEvent.TrackSubscribed,F),()=>{qe.off(le.RoomEvent.Connected,S),qe.off(le.RoomEvent.Disconnected,S),qe.off(le.RoomEvent.TrackSubscribed,F)}}},[qe,H==null?void 0:H.id]),D.useEffect(()=>{!K&&P==="welcome"?console.log("🎬 Widget: Welcome screen ready"):G&&P!=="welcome"&&console.log("🎬 Widget: Session mode active:",P)},[P,K,G]),D.useEffect(()=>{(P==="voice"||P==="video"||P==="chat")&&!H&&!G&&!K&&ue&&!ue.connected&&(console.log("🔄 Auto-correcting: Found orphaned mode without session, returning to welcome"),ne("welcome"),Z(!1))},[P,H,G,K,ue]);const{sessionMetrics:$,sessionLogs:J,logEvent:we}=sm({room:qe,onSessionStart:w,onSessionEnd:_,enableConsoleLogging:C,enableLocalStorage:C,voxketSessionId:H==null?void 0:H.id});D.useEffect(()=>{T&&T(J)},[J,T]),D.useEffect(()=>{R&&$&&R($)},[$,R]),D.useEffect(()=>{if(!ue)return;const S=(F,q)=>{console.log("📊 Widget: Session state changed:",{from:q,to:F,currentLoading:K}),(F==="connecting"||F==="connected")&&(K||(console.log("⏳ Widget: Setting loading=true (waiting for agent)"),Z(!0))),F==="active"&&(console.log("✅ Widget: Session active, agent ready - removing loader"),Z(!1),k(!0)),(F==="disconnected"||F==="error")&&(console.log("🔴 Widget: Session ended - resetting state"),Z(!1),k(!1),Ee(null),ne("welcome"))};return ue.on("session.state.changed",S),()=>{ue.off("session.state.changed",S)}},[ue,K]),D.useEffect(()=>{if(!ue)return;const S=()=>{const F=ue.connected,q=ue.getCurrentSession();console.log("🔗 Connection state changed:",{isConnected:F,currentSessionId:q==null?void 0:q.id,currentMode:P,loading:K,sessionStarted:G}),!F&&G&&!K&&(console.log("🔴 Connection lost during active session - returning to welcome"),Z(!1),k(!1),Ee(null),ne("welcome")),F&&q&&K&&(console.log("🟢 Connected with active session - removing loader"),Z(!1),k(!0),Ee(q))};return ue.on("connectionStateChanged",S),ue.on("sessionEnded",()=>{console.log("📞 Session ended - returning to welcome"),Z(!1),k(!1),Ee(null),ne("welcome")}),()=>{ue.off("connectionStateChanged",S),ue.off("sessionEnded",()=>{})}},[ue,P,K,G]);const Fe=!!(!!(ue!=null&&ue.connected)&&G&&H);D.useEffect(()=>{const S=q=>{console.log("🔴 Widget: Room disconnected:",q),console.log("🔍 Widget: Current state on disconnect:",{currentMode:P,sessionStarted:G,currentSessionId:H==null?void 0:H.id,loading:K}),Z(!1),k(!1),Ee(null),ne("welcome"),console.log("🏠 Widget: Automatically returning to welcome screen after disconnect")},F=q=>{console.log("📹 Media devices error:",q)};return qe.on(le.RoomEvent.MediaDevicesError,F),qe.on(le.RoomEvent.Disconnected,S),()=>{qe.off(le.RoomEvent.Disconnected,S),qe.off(le.RoomEvent.MediaDevicesError,F)}},[qe,P,G,H==null?void 0:H.id,K]);const At=async()=>{try{if(!ue){console.error("❌ VoxketClient not available"),z(new Error("VoxketClient not initialized")),V(!0);return}Z(!0),ne("voice"),console.log("🎤 Starting voice session...",{agentId:X,participantName:Y}),console.log("🎤 Pre-start state:",{currentMode:"voice",sessionStarted:!1,loading:!0}),we("USER_STARTED_VOICE_SESSION",{agentId:X,participantName:Y});const S=await ue.startSession(X,{participantName:Y||"User",modalities:I==="popup"?["voice"]:["voice",...v?["video"]:[]],participantMetadata:ue.getParticipantMetadata()||W});console.log("✅ Voice session started successfully:",S.id),Ee(S),k(!0),Z(!1),w&&w(S.id)}catch(S){console.error("❌ Failed to start voice session:",S),Z(!1),k(!1),ne("welcome")}},Qt=async()=>{try{if(!ue){console.error("❌ VoxketClient not available"),z(new Error("VoxketClient not initialized")),V(!0);return}Z(!0),ne("chat"),console.log("💬 Starting chat session...",{agentId:X,participantName:Y}),we("USER_STARTED_CHAT_SESSION",{agentId:X,participantName:Y});const S=await ue.startSession(X,{participantName:Y||"User",modalities:["chat"],participantMetadata:ue.getParticipantMetadata()||W});console.log("✅ Chat session started successfully:",S.id),Ee(S),k(!0),Z(!1),w&&w(S.id)}catch(S){console.error("❌ Failed to start chat session:",S),Z(!1),k(!1),ne("welcome")}},Bt=async()=>{try{if(!ue){console.error("❌ VoxketClient not available"),z(new Error("VoxketClient not initialized")),V(!0);return}Z(!0),ne("video"),console.log("📺 Starting video session...",{agentId:X,participantName:Y}),console.log("📺 Pre-start state:",{currentMode:"video",sessionStarted:!1,loading:!0}),we("USER_STARTED_VIDEO_SESSION",{agentId:X,participantName:Y});const S=await ue.startSession(X,{participantName:Y||"User",modalities:["video","voice"],participantMetadata:ue.getParticipantMetadata()||W});console.log("✅ Video session started successfully:",S.id),Ee(S),k(!0),Z(!1),w&&w(S.id)}catch(S){console.error("❌ Failed to start video session:",S),Z(!1),k(!1),ne("welcome")}},Dt=()=>{ne("welcome"),Z(!1),j&&j(e.displayType||"widget"),H&&G?(console.log("🧹 Widget: Cleaning up active session"),k(!1),Ee(null),ue&&(console.log("🔌 Widget: Disconnecting client and cleaning up room"),ue.disconnect().catch(S=>{console.error("❌ Widget: Error during disconnect:",S)}))):(console.log("📝 Widget: No active session to clean up"),ue&&ue.connected&&(console.log("🔌 Widget: Force disconnecting client for fresh state"),ue.disconnect().catch(S=>{console.error("❌ Widget: Error during force disconnect:",S)}))),I==="popup"&&!Se&&pe(!0),console.log("✅ Widget: handleBackToWelcome completed",{newCurrentMode:"welcome",newLoading:!1,newSessionStarted:!1})},Wt=()=>{const S=!Se;pe(S),O&&O(S),!S&&!(H&&G)&&(ne("welcome"),k(!1),Ee(null))},wt=()=>{console.log("🔄 Closing fullscreen, switching to widget display type"),e.onDisplayTypeChange?e.onDisplayTypeChange("widget"):console.warn("⚠️ No onDisplayTypeChange callback provided")},rn=()=>{if(console.log("🔄 Expand to fullscreen requested"),e.onDisplayTypeChange)e.onDisplayTypeChange("fullscreen");else{console.warn("⚠️ No onDisplayTypeChange callback provided for expand functionality");const S=document.getElementById("voice-card")||document.querySelector(".voxket-widget-container");S&&S.requestFullscreen&&S.requestFullscreen().catch(F=>{console.warn("⚠️ Fullscreen API not supported or failed:",F)})}};D.useEffect(()=>{var S,F,q;if(L&&ue){const ce=ue.getCurrentSession();ue.connected,ce&&(console.log("✅ Restoring session state:",ce.id),Ee(ce),k(!0),Z(!1),(S=ce.activeModalities)!=null&&S.includes("chat")?ne("chat"):(F=ce.activeModalities)!=null&&F.includes("voice")?ne("voice"):(q=ce.activeModalities)!=null&&q.includes("video")&&ne("video"))}},[L,ue]),D.useEffect(()=>()=>{!L&&ue&&ue.disconnect()},[ue,L]);let Et=P==="video"?"w-[32rem]":"w-96",rr=P==="video"?"h-[30rem]":"h-[25rem]",ir={};if(f&&(f.startsWith("w-")?Et=f:(ir.width=f,Et="")),p&&(p.startsWith("h-")?rr=p:(ir.height=p,rr="")),I==="popup"&&!Se)return console.log("🟡 Showing popup trigger button"),h.jsxs(h.Fragment,{children:[h.jsx(om,{onClick:()=>{if(Fe){!ke&&(H!=null&&H.activeModalities)&&(H.activeModalities.includes("chat")?ye("chat"):H.activeModalities.includes("video")?ye("video"):H.activeModalities.includes("voice")&&ye("voice")),be(!1),pe(!0),O&&O(!0);return}if(oe!=="all"){ye(oe),be(!1),pe(!0),O&&O(!0);return}if(A.length===1){ye(A[0]),be(!1),pe(!0),O&&O(!0);return}be(S=>!S),ye(null),xt(!1)},position:b,ariaLabel:M,size:64,isRunning:Fe,logoUrl:te}),se&&oe==="all"&&(()=>{const q={};b==="bottom-right"?(q.bottom=88,q.right=16):b==="bottom-left"?(q.bottom=88,q.left=16):b==="top-right"?(q.top=88,q.right=16):(q.top=88,q.left=16);const ce="absolute w-0 h-0 border-8",Qe=b.startsWith("bottom")?h.jsx("div",{className:`${ce} border-transparent border-t-black`,style:{bottom:-16,right:b.endsWith("right")?16:void 0,left:b.endsWith("left")?16:void 0}}):h.jsx("div",{className:`${ce} border-transparent border-b-black`,style:{top:-16,right:b.endsWith("right")?16:void 0,left:b.endsWith("left")?16:void 0}});return h.jsx("div",{className:"fixed z-[51]",style:q,children:h.jsxs("div",{className:"relative bg-black text-white rounded-xl shadow-2xl px-3 py-3",children:[Qe,h.jsx("div",{className:"text-xs uppercase tracking-wide mb-2 opacity-70",children:"Choose modality"}),h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("button",{type:"button",onClick:()=>{ye("voice"),be(!1),pe(!0),O&&O(!0)},className:"px-3 py-2 rounded-md bg-white/10 hover:bg-white/20 text-white text-sm",title:"Voice",children:"Voice"}),h.jsx("button",{type:"button",onClick:()=>{ye("chat"),be(!1),pe(!0),O&&O(!0)},className:"px-3 py-2 rounded-md bg-white/10 hover:bg-white/20 text-white text-sm",title:"Chat",children:"Chat"}),h.jsx("button",{type:"button",onClick:()=>{ye("video"),be(!1),pe(!0),O&&O(!0)},className:"px-3 py-2 rounded-md bg-white/10 hover:bg-white/20 text-white text-sm",title:"Video",children:"Video"})]})]})})})()]});if(B||!ue){const S=(x==null?void 0:x.message)||"VoxketWidget encountered an error. Please check your configuration.";return h.jsx("div",{className:`voxket-widget-root theme-${E} flex items-center justify-center p-8 ${d||""}`,style:{width:f||"400px",height:p||"500px",border:"1px solid #ff4444",borderRadius:"8px",background:"#fff5f5",color:"#cc0000"},children:h.jsxs("div",{className:"text-center",children:[h.jsx("div",{className:"text-4xl mb-4",children:"⚠️"}),h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Widget Error"}),h.jsx("p",{className:"text-sm mb-4",children:S}),h.jsx("button",{onClick:()=>{V(!1),z(null),window.location.reload()},className:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors",children:"Retry"})]})})}let Br=`voxket-widget-root theme-${E}`,Bn={scrollMargin:0,scrollPadding:0,contain:"layout style paint"};I==="widget"?(Br+=` flex min-h-fit ${Et} ${rr} ${d}`,Bn={...Bn,...ir}):(Br=`${d||""}`,Bn={});const pn=h.jsx("div",{className:"h-full w-full flex flex-col overflow-hidden relative z-10",children:h.jsxs(Tr,{mode:"wait",children:[P==="welcome"&&!K&&h.jsx(qR,{agentId:X,participantName:Y||"",onAgentIdChange:ie,onParticipantNameChange:re,onStartCall:At,onStartChat:Qt,onStartVideo:Bt,disabled:G||K,prompts:a,statusMessage:l,title:c,subTitle:u,theme:E,modalities:mt,initial:{opacity:0,y:0},animate:{opacity:1,y:0},exit:{opacity:0,y:40},transition:{duration:.3,ease:"easeInOut"}},"welcome"),K&&(P==="voice"||P==="chat"||P==="video")&&h.jsx(ZR,{theme:E,mode:P,loadingText:m,sessionState:H==null?void 0:H.state,initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.3,ease:"easeInOut"}},`loading-${P}`),P==="voice"&&!K&&G&&ue&&h.jsxs(Rt.RoomContext.Provider,{value:qe,children:[h.jsx(Rt.RoomAudioRenderer,{},`audio-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(Rt.StartAudio,{label:"Start Audio"},`start-audio-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(WR,{loadingText:m,participantName:Y||"User",sessionStarted:G,disabled:!1,theme:E,client:ue,displayType:I,onBack:I==="popup"?Wt:Dt,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"voice-session")]}),P==="chat"&&!K&&G&&ue&&h.jsx(GR,{client:ue,theme:E,displayType:I,onBack:I==="popup"?Wt:Dt,onEndChat:Dt,disabled:!1,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"chat-view"),P==="video"&&!K&&G&&ue&&h.jsxs(Rt.RoomContext.Provider,{value:qe,children:[h.jsx(Rt.RoomAudioRenderer,{},`audio-video-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(Rt.StartAudio,{label:"Start Audio"},`start-audio-video-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(KR,{client:ue,theme:E,displayType:I,onBack:I==="popup"?Wt:Dt,onEndCall:Dt,disabled:!1,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"video-session")]})]})});return I==="fullscreen"||I==="popup"?h.jsx(xf,{theme:E,displayType:I,popupPosition:b,onClose:I==="fullscreen"?wt:Wt,children:pn}):h.jsx("div",{className:Br,style:Bn,children:h.jsx(xf,{theme:E,displayType:I,popupPosition:b,onExpand:rn,children:pn})})}function co(e){return h.jsx(nc,{children:h.jsx(XR,{...e})})}function QR({logs:e,onClear:t,onExport:n}){const[r,i]=N.useState(!1),[o,s]=N.useState(""),a=e.filter(l=>!o||l.event.toLowerCase().includes(o.toLowerCase()));return r?h.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",children:h.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[80vh] flex flex-col m-4",children:[h.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[h.jsxs("h2",{className:"text-lg font-semibold",children:["Session Logs (",e.length,")"]}),h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("input",{type:"text",placeholder:"Filter events...",value:o,onChange:l=>s(l.target.value),className:"px-3 py-1 border rounded text-sm"}),h.jsx("button",{onClick:t,className:"px-3 py-1 bg-red-600 text-white rounded text-sm hover:bg-red-700",children:"Clear"}),h.jsx("button",{onClick:n,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700",children:"Export"}),h.jsx("button",{onClick:()=>i(!1),className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700",children:"Close"})]})]}),h.jsx("div",{className:"flex-1 overflow-auto p-4",children:a.length===0?h.jsx("p",{className:"text-gray-500 text-center py-8",children:"No logs found"}):h.jsx("div",{className:"space-y-2",children:a.map((l,c)=>h.jsxs("div",{className:"border rounded p-3 text-sm",children:[h.jsxs("div",{className:"flex items-center justify-between mb-1",children:[h.jsx("span",{className:"font-semibold text-blue-600",children:l.event}),h.jsx("span",{className:"text-gray-500 text-xs",children:new Date(l.timestamp).toLocaleTimeString()})]}),l.sessionId&&h.jsxs("div",{className:"text-xs text-gray-600 mb-1",children:["Session: ",l.sessionId]}),l.data&&h.jsx("div",{className:"bg-gray-50 p-2 rounded text-xs",children:h.jsx("pre",{className:"whitespace-pre-wrap overflow-auto",children:JSON.stringify(l.data,null,2)})})]},c))})})]})}):h.jsxs("button",{onClick:()=>i(!0),className:"fixed bottom-4 right-4 bg-blue-600 text-white px-4 py-2 rounded-lg shadow-lg hover:bg-blue-700 transition-colors text-sm z-50",children:["Session Logs (",e.length,")"]})}function JR({metrics:e}){return e?h.jsxs("div",{className:"bg-gray-100 p-4 rounded-lg",children:[h.jsx("h3",{className:"font-semibold mb-2",children:"Current Session"}),h.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Session ID:"}),h.jsx("div",{className:"font-mono text-xs",children:e.sessionId})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Start Time:"}),h.jsx("div",{children:new Date(e.startTime).toLocaleString()})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Messages:"}),h.jsx("div",{children:e.totalMessages})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Participants:"}),h.jsx("div",{children:e.participantCount})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Connection Issues:"}),h.jsx("div",{children:e.connectionIssues})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Duration:"}),h.jsxs("div",{children:[Math.round((Date.now()-new Date(e.startTime).getTime())/1e3),"s"]})]})]})]}):null}function nr(){const{currentSession:e,sessionState:t,sessionMetrics:n,createSession:r,endSession:i}=hn(),o=N.useCallback(async(a,l)=>await r(a,l),[r]),s=N.useCallback(async()=>await i(),[i]);return{session:e,state:t,metrics:n,isActive:e!==null&&t!=="disconnected",isConnecting:t==="connecting",isConnected:t==="connected"||t==="active",start:o,stop:s}}function mm(){const{sessionMetrics:e,currentSession:t}=hn();return{metrics:e,sessionId:t==null?void 0:t.id,duration:e==null?void 0:e.duration,participantCount:e==null?void 0:e.participantCount,messageCount:e==null?void 0:e.messageCount,audioQuality:e==null?void 0:e.audioQuality,networkStats:e==null?void 0:e.networkStats}}function bm(){const{setMicrophoneEnabled:e,client:t}=hn(),[n,r]=N.useState(!1),[i,o]=N.useState(!1),s=N.useCallback(async()=>{if(!i){o(!0);try{const c=!n;await e(c),r(c)}catch(c){console.error("Failed to toggle microphone:",c)}finally{o(!1)}}},[n,i,e]),a=N.useCallback(async()=>{if(!(n||i)){o(!0);try{await e(!0),r(!0)}catch(c){console.error("Failed to enable microphone:",c)}finally{o(!1)}}},[n,i,e]),l=N.useCallback(async()=>{if(!(!n||i)){o(!0);try{await e(!1),r(!1)}catch(c){console.error("Failed to disable microphone:",c)}finally{o(!1)}}},[n,i,e]);return{isEnabled:n,isLoading:i,toggle:s,enable:a,disable:l}}function ym(){const{setCameraEnabled:e}=hn(),[t,n]=N.useState(!1),[r,i]=N.useState(!1),o=N.useCallback(async()=>{if(!r){i(!0);try{const l=!t;await e(l),n(l)}catch(l){console.error("Failed to toggle camera:",l)}finally{i(!1)}}},[t,r,e]),s=N.useCallback(async()=>{if(!(t||r)){i(!0);try{await e(!0),n(!0)}catch(l){console.error("Failed to enable camera:",l)}finally{i(!1)}}},[t,r,e]),a=N.useCallback(async()=>{if(!(!t||r)){i(!0);try{await e(!1),n(!1)}catch(l){console.error("Failed to disable camera:",l)}finally{i(!1)}}},[t,r,e]);return{isEnabled:t,isLoading:r,toggle:o,enable:s,disable:a}}function xm(){const{startScreenShare:e,stopScreenShare:t}=hn(),[n,r]=N.useState(!1),[i,o]=N.useState(!1),s=N.useCallback(async()=>{if(!(n||i)){o(!0);try{await e(),r(!0)}catch(c){console.error("Failed to start screen share:",c)}finally{o(!1)}}},[n,i,e]),a=N.useCallback(async()=>{if(!(!n||i)){o(!0);try{await t(),r(!1)}catch(c){console.error("Failed to stop screen share:",c)}finally{o(!1)}}},[n,i,t]),l=N.useCallback(async()=>{n?await a():await s()},[n,s,a]);return{isSharing:n,isLoading:i,start:s,stop:a,toggle:l}}function eI(){const{client:e}=hn(),[t,n]=N.useState({tracks:[],layout:{type:"grid",showLocalVideo:!0,aspectRatio:"16:9"},isRecording:!1}),r=N.useMemo(()=>t.tracks.find(g=>g.isLocal),[t.tracks]),i=N.useMemo(()=>t.tracks.filter(g=>!g.isLocal),[t.tracks]),o=N.useCallback(async()=>{try{r!=null&&r.isEnabled?await(e==null?void 0:e.disableCamera()):await(e==null?void 0:e.enableCamera())}catch(g){throw console.error("Failed to toggle camera:",g),g}},[e,r]),s=N.useCallback(async()=>{try{t.tracks.find(v=>v.isScreenShare)?await(e==null?void 0:e.stopScreenShare()):await(e==null?void 0:e.startScreenShare())}catch(g){throw console.error("Failed to toggle screen share:",g),g}},[e,t.tracks]),a=N.useCallback(g=>{n(v=>({...v,layout:g}))},[]),l=N.useCallback(g=>{n(v=>({...v,pinnedTrack:g}))},[]),c=N.useCallback(()=>{n(g=>({...g,pinnedTrack:void 0}))},[]),u=N.useCallback(async()=>{try{await(e==null?void 0:e.startRecording()),n(g=>({...g,isRecording:!0}))}catch(g){throw console.error("Failed to start recording:",g),g}},[e]),d=N.useCallback(async()=>{try{await(e==null?void 0:e.stopRecording()),n(g=>({...g,isRecording:!1}))}catch(g){throw console.error("Failed to stop recording:",g),g}},[e]),f=N.useCallback(g=>t.tracks.find(v=>v.id===g),[t.tracks]),p=N.useCallback(g=>t.tracks.filter(v=>v.participantId===g),[t.tracks]),m=N.useCallback(g=>g.isEnabled&&t.tracks.includes(g),[t.tracks]);return N.useEffect(()=>{if(!e)return;const g=E=>{n(w=>({...w,tracks:[...w.tracks.filter(_=>_.id!==E.id),E]}))},v=E=>{n(w=>{var _;return{...w,tracks:w.tracks.filter(C=>C.id!==E),pinnedTrack:((_=w.pinnedTrack)==null?void 0:_.id)===E?void 0:w.pinnedTrack}})},y=E=>{n(w=>({...w,tracks:w.tracks.map(_=>_.id===E.id?E:_)}))};return e.on("videoTrackAdded",g),e.on("videoTrackRemoved",v),e.on("videoTrackUpdated",y),()=>{e.off("videoTrackAdded",g),e.off("videoTrackRemoved",v),e.off("videoTrackUpdated",y)}},[e]),{tracks:t.tracks,localTrack:r,remoteTraracks:i,pinnedTrack:t.pinnedTrack,layout:t.layout,isRecording:t.isRecording,toggleCamera:o,toggleScreenShare:s,setLayout:a,pinTrack:l,unpinTrack:c,startRecording:u,stopRecording:d,getTrackById:f,getTracksByParticipant:p,isTrackActive:m}}function Jo(){const{chatMessages:e,sendChatMessage:t,currentSession:n}=hn(),[r,i]=N.useState(!1),o=N.useCallback(async c=>{if(!(!c.trim()||r||!n)){i(!0);try{await t(c.trim())}catch(u){throw console.error("Failed to send chat message:",u),u}finally{i(!1)}}},[t,r,n]),{userMessages:s,agentMessages:a,allMessages:l}=N.useMemo(()=>{const c=e.filter(d=>d.sender.type==="participant"),u=e.filter(d=>d.sender.type==="agent");return{userMessages:c,agentMessages:u,allMessages:e}},[e]);return{messages:l,userMessages:s,agentMessages:a,messageCount:l.length,isSending:r,canSend:!!n&&!r,send:o}}function tI(){const{send:e,isSending:t,canSend:n}=Jo(),[r,i]=N.useState(""),o=N.useCallback(async()=>{if(!(!r.trim()||!n))try{await e(r),i("")}catch(a){throw a}},[r,e,n]),s=N.useCallback(a=>{a.key==="Enter"&&!a.shiftKey&&(a.preventDefault(),o())},[o]);return{value:r,setValue:i,send:o,handleKeyPress:s,isSending:t,canSend:n&&r.trim().length>0}}function oc(){const{isConnected:e,isConnecting:t,connectionError:n,connect:r,disconnect:i}=hn(),o=N.useCallback(async()=>{if(!(e||t))try{await r()}catch(a){throw console.error("Failed to connect:",a),a}},[r,e,t]),s=N.useCallback(async()=>{if(e)try{await i()}catch(a){throw console.error("Failed to disconnect:",a),a}},[i,e]);return{isConnected:e,isConnecting:t,isDisconnected:!e&&!t,error:n,hasError:!!n,connect:o,disconnect:s}}function vm(){const{participants:e}=hn();return{participants:e,count:e.length,localParticipant:e.find(t=>t.isLocal),remoteParticipants:e.filter(t=>!t.isLocal)}}const wm=N.createContext({}),Ni=()=>N.useContext(wm);function Em({children:e,...t}){return h.jsx(wm.Provider,{value:t,children:e})}function uo({name:e,children:t,fallback:n,className:r}){return h.jsx("div",{className:`voxket-slot voxket-slot--${e} ${r||""}`,children:t||n})}function Sm(e,t={}){return Object.assign(e,t)}function km({showMicrophoneControl:e=!0,showCameraControl:t=!0,showScreenShareControl:n=!0,showSessionActions:r=!0,customControls:i,className:o=""}){const s=nr(),a=bm(),l=ym(),c=xm(),u=Ni(),d=["voxket-session-controls",`voxket-session-controls--${u.variant||"default"}`,`voxket-session-controls--${u.size||"md"}`,s.isActive?"voxket-session-controls--active":"voxket-session-controls--inactive",o].filter(Boolean).join(" ");return!s.isActive&&!r?h.jsx("div",{className:d,children:h.jsx("div",{className:"voxket-controls-inactive",children:h.jsx("p",{children:"Controls available during active session"})})}):h.jsxs("div",{className:d,children:[r&&h.jsx("div",{className:"voxket-session-actions",children:s.isActive?h.jsx("button",{onClick:s.stop,className:"voxket-button voxket-button--danger",children:"End Session"}):h.jsx(nI,{})}),s.isActive&&h.jsxs("div",{className:"voxket-media-controls",children:[e&&h.jsxs("button",{onClick:a.toggle,disabled:a.isLoading,className:`voxket-button voxket-button--media ${a.isEnabled?"voxket-button--active":""}`,title:a.isEnabled?"Mute microphone":"Unmute microphone",children:[h.jsx("span",{className:"voxket-icon",children:"🎤"}),a.isLoading?"Loading...":a.isEnabled?"Mute":"Unmute"]}),t&&h.jsxs("button",{onClick:l.toggle,disabled:l.isLoading,className:`voxket-button voxket-button--media ${l.isEnabled?"voxket-button--active":""}`,title:l.isEnabled?"Stop camera":"Start camera",children:[h.jsx("span",{className:"voxket-icon",children:"📹"}),l.isLoading?"Loading...":l.isEnabled?"Stop Video":"Start Video"]}),n&&h.jsxs("button",{onClick:c.toggle,disabled:c.isLoading,className:`voxket-button voxket-button--media ${c.isSharing?"voxket-button--active":""}`,title:c.isSharing?"Stop screen share":"Start screen share",children:[h.jsx("span",{className:"voxket-icon",children:"🖥️"}),c.isLoading?"Loading...":c.isSharing?"Stop Share":"Share Screen"]})]}),i&&h.jsx("div",{className:"voxket-custom-controls",children:i})]})}function nI(){nr();const[e,t]=N.useState(!1),n=async()=>{t(!0);try{console.log("Start session - agentId needed")}catch(r){console.error("Failed to start session:",r)}finally{t(!1)}};return h.jsx("button",{onClick:n,disabled:e,className:"voxket-button voxket-button--primary",children:e?"Starting...":"Start Session"})}function sc({showConnectionStatus:e=!0,showSessionInfo:t=!0,showAgentInfo:n=!0,className:r=""}){const i=nr(),o=oc(),s=Ni(),a=["voxket-session-header",`voxket-session-header--${s.variant||"default"}`,`voxket-session-header--${s.size||"md"}`,r].filter(Boolean).join(" ");return h.jsxs("div",{className:a,children:[e&&h.jsxs("div",{className:"voxket-connection-status",children:[h.jsx("div",{className:`voxket-status-indicator ${o.isConnected?"connected":"disconnected"}`}),h.jsx("span",{className:"voxket-status-text",children:o.isConnecting?"Connecting...":o.isConnected?"Connected":"Disconnected"})]}),t&&i.session&&h.jsxs("div",{className:"voxket-session-info",children:[h.jsxs("div",{className:"voxket-session-id",children:["Session: ",i.session.id.slice(-8)]}),h.jsxs("div",{className:"voxket-session-state",children:["State: ",i.state]})]}),n&&i.session&&h.jsxs("div",{className:"voxket-agent-info",children:[h.jsxs("div",{className:"voxket-agent-id",children:["Agent: ",i.session.agentId]}),h.jsxs("div",{className:"voxket-modalities",children:["Modalities: ",i.session.activeModalities.join(", ")]})]}),o.error&&h.jsxs("div",{className:"voxket-error-message",children:["Error: ",o.error.message]})]})}function ac({showChat:e=!0,showTranscriptions:t=!1,customContent:n,className:r=""}){const i=nr(),o=Jo(),s=Ni(),a=["voxket-session-content",`voxket-session-content--${s.variant||"default"}`,`voxket-session-content--${s.size||"md"}`,r].filter(Boolean).join(" ");return i.isActive?h.jsx("div",{className:a,children:n||h.jsxs(h.Fragment,{children:[e&&h.jsxs("div",{className:"voxket-chat-container",children:[h.jsxs("div",{className:"voxket-chat-messages",children:[o.messages.map(l=>h.jsxs("div",{className:`voxket-message voxket-message--${l.sender.type}`,children:[h.jsxs("div",{className:"voxket-message-header",children:[h.jsx("span",{className:"voxket-message-sender",children:l.sender.name}),h.jsx("span",{className:"voxket-message-time",children:l.timestamp.toLocaleTimeString()})]}),h.jsx("div",{className:"voxket-message-content",children:l.content})]},l.id)),o.messages.length===0&&h.jsx("div",{className:"voxket-empty-messages",children:h.jsx("p",{children:"No messages yet. Start the conversation!"})})]}),h.jsx(rI,{})]}),t&&h.jsx("div",{className:"voxket-transcriptions",children:h.jsx("div",{className:"voxket-transcription-placeholder",children:h.jsx("p",{children:"Voice transcriptions will appear here"})})})]})}):h.jsx("div",{className:a,children:h.jsx("div",{className:"voxket-inactive-state",children:h.jsxs("div",{className:"voxket-inactive-message",children:[h.jsx("h3",{children:"Start a conversation"}),h.jsx("p",{children:"Begin a session to start chatting with the AI agent"})]})})})}function rI(){const e=Jo(),[t,n]=N.useState(""),r=async()=>{if(!(!t.trim()||!e.canSend))try{await e.send(t),n("")}catch(o){console.error("Failed to send message:",o)}},i=o=>{o.key==="Enter"&&!o.shiftKey&&(o.preventDefault(),r())};return h.jsxs("div",{className:"voxket-chat-input",children:[h.jsx("input",{type:"text",value:t,onChange:o=>n(o.target.value),onKeyPress:i,placeholder:"Type your message...",disabled:!e.canSend,className:"voxket-input"}),h.jsx("button",{onClick:r,disabled:!e.canSend||!t.trim(),className:"voxket-send-button",children:e.isSending?"Sending...":"Send"})]})}function lc({showMetrics:e=!0,showParticipants:t=!0,showStatus:n=!0,customFooter:r,className:i=""}){const o=nr(),s=mm(),a=vm(),l=Ni(),c=["voxket-session-footer",`voxket-session-footer--${l.variant||"default"}`,`voxket-session-footer--${l.size||"md"}`,i].filter(Boolean).join(" ");return o.isActive?h.jsx("div",{className:c,children:r||h.jsxs(h.Fragment,{children:[n&&h.jsxs("div",{className:"voxket-session-status",children:[h.jsx("div",{className:"voxket-status-indicator voxket-status-indicator--active"}),h.jsx("span",{className:"voxket-status-text",children:"Session Active"})]}),e&&s.metrics&&h.jsxs("div",{className:"voxket-session-metrics",children:[h.jsxs("div",{className:"voxket-metric",children:[h.jsx("span",{className:"voxket-metric-label",children:"Duration:"}),h.jsx("span",{className:"voxket-metric-value",children:iI(s.duration||0)})]}),h.jsxs("div",{className:"voxket-metric",children:[h.jsx("span",{className:"voxket-metric-label",children:"Messages:"}),h.jsx("span",{className:"voxket-metric-value",children:s.metrics.messageCount})]})]}),t&&h.jsxs("div",{className:"voxket-participants-info",children:[h.jsxs("span",{className:"voxket-participants-count",children:[a.count," participant",a.count!==1?"s":""]}),a.remoteParticipants.length>0&&h.jsx("div",{className:"voxket-participant-list",children:a.remoteParticipants.map(u=>h.jsx("span",{className:"voxket-participant-name",children:u.name},u.id))})]})]})}):h.jsx("div",{className:c,children:h.jsx("div",{className:"voxket-footer-inactive",children:h.jsx("span",{className:"voxket-status-text",children:"Ready to start session"})})})}function iI(e){const t=Math.floor(e/1e3),n=Math.floor(t/60),r=Math.floor(n/60);return r>0?`${r}:${(n%60).toString().padStart(2,"0")}:${(t%60).toString().padStart(2,"0")}`:`${n}:${(t%60).toString().padStart(2,"0")}`}function oI({agentId:e,sessionConfig:t,autoStart:n=!1,onSessionStart:r,onSessionEnd:i,variant:o="default",size:s="md",theme:a,className:l="",children:c}){var p;const u=nr(),d=oc();N.useEffect(()=>{n&&e&&d.isConnected&&!u.isActive&&u.start(e,t).catch(console.error)},[n,e,d.isConnected,u.isActive]),N.useEffect(()=>{var m;(m=u.session)!=null&&m.id&&r&&r(u.session.id)},[(p=u.session)==null?void 0:p.id,r]),N.useEffect(()=>()=>{u.isActive&&i&&u.stop().then(i).catch(console.error)},[]);const f=["voxket-session",`voxket-session--${o}`,`voxket-session--${s}`,u.isActive?"voxket-session--active":"voxket-session--inactive",l].filter(Boolean).join(" ");return h.jsx(Em,{variant:o,size:s,theme:a,className:l,children:h.jsx("div",{className:f,children:c||h.jsxs(h.Fragment,{children:[h.jsx(uo,{name:"header",fallback:h.jsx(sc,{})}),h.jsx(uo,{name:"content",fallback:h.jsx(ac,{})}),h.jsx(uo,{name:"footer",fallback:h.jsx(lc,{})})]})})})}const Cm=Sm(oI,{Header:sc,Content:ac,Footer:lc,Controls:km}),Xn={name:"default",colors:{primary:"#3B82F6",secondary:"#6B7280",accent:"#8B5CF6",background:"#FFFFFF",surface:"#F9FAFB",text:{primary:"#111827",secondary:"#6B7280",muted:"#9CA3AF",inverse:"#FFFFFF"},status:{success:"#10B981",warning:"#F59E0B",error:"#EF4444",info:"#3B82F6"},border:"#E5E7EB",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"},typography:{fontFamily:"system-ui, -apple-system, sans-serif",fontSize:{xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem"},fontWeight:{normal:400,medium:500,semibold:600,bold:700},lineHeight:{tight:1.25,normal:1.5,relaxed:1.75}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem"},borderRadius:{none:"0",sm:"0.25rem",md:"0.5rem",lg:"0.75rem",full:"9999px"},shadows:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1)"}},za={...Xn,name:"dark",colors:{primary:"#60A5FA",secondary:"#9CA3AF",accent:"#A78BFA",background:"#111827",surface:"#1F2937",text:{primary:"#F9FAFB",secondary:"#D1D5DB",muted:"#9CA3AF",inverse:"#111827"},status:{success:"#34D399",warning:"#FBBF24",error:"#F87171",info:"#60A5FA"},border:"#374151",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.3)"}},Ua={...Xn,name:"enterprise",colors:{primary:"#1E40AF",secondary:"#64748B",accent:"#7C3AED",background:"#FFFFFF",surface:"#F8FAFC",text:{primary:"#0F172A",secondary:"#475569",muted:"#94A3B8",inverse:"#FFFFFF"},status:{success:"#059669",warning:"#D97706",error:"#DC2626",info:"#1E40AF"},border:"#CBD5E1",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"},borderRadius:{none:"0",sm:"0.125rem",md:"0.25rem",lg:"0.375rem",full:"9999px"}},_m=N.createContext(null),Tm=()=>{const e=N.useContext(_m);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};function sI({theme:e="default",themes:t={},children:n,cssVariables:r=!0,className:i=""}){const[o,s]=N.useState(()=>{const f={default:Xn,dark:za,enterprise:Ua,...t};return typeof e=="string"?f[e]||Xn:e}),[a,l]=N.useState(()=>({default:Xn,dark:za,enterprise:Ua,...t})),c=f=>{if(typeof f=="string"){const p=a[f];p&&s(p)}else s(f)},u=f=>{l(p=>({...p,[f.name]:f}))};N.useEffect(()=>{if(r&&typeof document<"u"){const f=document.documentElement;Object.entries(Nm(o)).forEach(([p,m])=>{f.style.setProperty(`--voxket-${p}`,m)})}},[o,r]);const d={theme:o,setTheme:c,themes:a,registerTheme:u};return h.jsx(_m.Provider,{value:d,children:h.jsx("div",{className:`voxket-theme voxket-theme--${o.name} ${i}`,children:n})})}function Nm(e){const t={},n=(r,i="")=>{for(const[o,s]of Object.entries(r)){const a=i?`${i}-${o}`:o;typeof s=="object"&&s!==null&&!Array.isArray(s)?n(s,a):t[a]=String(s)}};return n(e),t}function aI(e=Xn,t){return{...e,...t,colors:{...e.colors,...t.colors},typography:{...e.typography,...t.typography},spacing:{...e.spacing,...t.spacing},borderRadius:{...e.borderRadius,...t.borderRadius},shadows:{...e.shadows,...t.shadows}}}function lI(e){var n;const{theme:t}=Tm();return((n=t.components)==null?void 0:n[e])||{}}const cI=ic("voice-modality","voice",{onActivate:async e=>{const t=e.config;t.enableTranscription&&uI(e),t.enableVoiceActivation&&dI(e,t),console.log("Voice modality activated",t)},onDeactivate:async e=>{console.log("Voice modality deactivated")},onMessage:async(e,t)=>{t.type==="audio"&&fI(e,t)}});function uI(e,t){e.on("participant.speaking.started",n=>{console.log("Transcription: Started for",n.name)}),e.on("participant.speaking.stopped",n=>{console.log("Transcription: Stopped for",n.name)})}function dI(e,t){const n=t.silenceThreshold||-50;console.log("Voice activation setup with threshold:",n)}function fI(e,t){console.log("Playing audio response:",t.content)}const hI=ic("chat-modality","chat",{onActivate:async e=>{const t=e.config;t.enableRichText&&pI(),t.enableFileUpload&&gI(e),t.enableCustomComponents&&mI(),console.log("Chat modality activated",t)},onDeactivate:async e=>{console.log("Chat modality deactivated")},onMessage:async(e,t)=>{const n=e.config;t.type==="ui_component"?bI(e,t):t.type==="text"&&n.enableRichText&&yI(e,t)}});function pI(e){console.log("Rich text support enabled")}function gI(e){console.log("File upload enabled"),e.on("chat.file.uploaded",t=>{console.log("File uploaded:",t.name)})}function mI(e){console.log("Custom components enabled");const t=new Map;t.set("quick-actions",xI),t.set("form",vI),t.set("card",wI),t.set("chart",EI)}function bI(e,t){const{componentType:n,props:r}=t.metadata;console.log("Rendering custom component:",n,r),e.emit("chat.component.render",{type:n,props:r,timestamp:new Date})}function yI(e,t){console.log("Processing rich text message:",t.content)}function xI(e){return{type:"quick-actions",actions:e.actions||[],layout:e.layout||"horizontal"}}function vI(e){return{type:"form",fields:e.fields||[],submitAction:e.submitAction,validation:e.validation}}function wI(e){return{type:"card",title:e.title,content:e.content,actions:e.actions,variant:e.variant||"default"}}function EI(e){return{type:"chart",chartType:e.chartType||"line",data:e.data,options:e.options}}function fo({track:e,participantName:t,showControls:n=!0,showName:r=!0,showMuteIndicator:i=!0,isPinned:o=!1,className:s="",onClick:a,onPin:l,onUnpin:c}){const u=N.useRef(null),[d,f]=N.useState(!1);N.useEffect(()=>{if(!u.current||!e.isEnabled)return;const v=u.current;return v.srcObject=null,()=>{v.srcObject&&(v.srcObject=null)}},[e]);const p=()=>{a==null||a(e)},m=v=>{v.stopPropagation(),o?c==null||c(e):l==null||l(e)},g=["voxket-video-tile",e.isLocal?"voxket-video-tile--local":"voxket-video-tile--remote",e.isScreenShare?"voxket-video-tile--screen-share":"voxket-video-tile--camera",o?"voxket-video-tile--pinned":"",e.isEnabled?"":"voxket-video-tile--disabled",d?"voxket-video-tile--hovered":"",s].filter(Boolean).join(" ");return h.jsxs("div",{className:g,onClick:p,onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),style:{aspectRatio:e.dimensions?`${e.dimensions.width} / ${e.dimensions.height}`:"16 / 9"},children:[h.jsx("video",{ref:u,className:"voxket-video-element",autoPlay:!0,playsInline:!0,muted:e.isLocal}),!e.isEnabled&&h.jsxs("div",{className:"voxket-video-placeholder",children:[h.jsx("div",{className:"voxket-video-placeholder-icon",children:e.isScreenShare?"🖥️":"📹"}),h.jsx("p",{className:"voxket-video-placeholder-text",children:e.isScreenShare?"Screen sharing paused":"Camera off"})]}),h.jsxs("div",{className:"voxket-video-overlay",children:[r&&t&&h.jsxs("div",{className:"voxket-video-name",children:[t,e.isLocal&&" (You)"]}),i&&!e.isEnabled&&h.jsx("div",{className:"voxket-video-mute-indicator",children:"🔇"}),n&&(d||o)&&h.jsxs("div",{className:"voxket-video-controls",children:[h.jsx("button",{className:`voxket-video-control-btn ${o?"voxket-video-control-btn--active":""}`,onClick:m,title:o?"Unpin video":"Pin video",children:"📌"}),e.isScreenShare&&h.jsx("div",{className:"voxket-video-indicator",children:"🖥️"}),e.source&&h.jsx("div",{className:"voxket-video-source",children:e.source})]})]}),!e.isEnabled&&h.jsx("div",{className:"voxket-video-loading",children:h.jsx("div",{className:"voxket-spinner"})})]})}function SI({tracks:e,layout:t,className:n="",onLayoutChange:r,onTrackClick:i,maxVisibleTracks:o=9,showPagination:s=!0}){const[a,l]=N.useState(0),[c,u]=N.useState(null),d=N.useMemo(()=>{let E=[...e];t.type==="speaker"&&c&&(E=[c,...e.filter(C=>C.id!==c.id)]);const w=a*o,_=w+o;return E.slice(w,_)},[e,t,c,a,o]),f=Math.ceil(e.length/o),p=N.useMemo(()=>{const E=d.length;switch(t.type){case"grid":const w=Math.ceil(Math.sqrt(E)),_=Math.ceil(E/w);return{display:"grid",gridTemplateColumns:`repeat(${w}, 1fr)`,gridTemplateRows:`repeat(${_}, 1fr)`,gap:"8px"};case"speaker":return{display:"flex",flexDirection:"column",gap:"8px"};case"sidebar":return{display:"flex",gap:"8px"};case"gallery":return{display:"flex",flexWrap:"wrap",gap:"8px",justifyContent:"center"};default:return{}}},[t.type,d.length]),m=E=>{u(E)},g=()=>{u(null)},v=E=>{r==null||r({...t,type:E})},y=["voxket-video-grid",`voxket-video-grid--${t.type}`,`voxket-video-grid--${d.length}-tracks`,n].filter(Boolean).join(" ");return e.length===0?h.jsx("div",{className:"voxket-video-grid-empty",children:h.jsxs("div",{className:"voxket-video-grid-empty-content",children:[h.jsx("div",{className:"voxket-video-grid-empty-icon",children:"📹"}),h.jsx("p",{children:"No video tracks available"})]})}):h.jsxs("div",{className:y,children:[h.jsxs("div",{className:"voxket-video-grid-controls",children:[h.jsx("div",{className:"voxket-video-layout-controls",children:["grid","speaker","sidebar","gallery"].map(E=>h.jsx("button",{className:`voxket-layout-btn ${t.type===E?"voxket-layout-btn--active":""}`,onClick:()=>v(E),title:`Switch to ${E} layout`,children:kI(E)},E))}),h.jsxs("div",{className:"voxket-video-count",children:[e.length," participant",e.length!==1?"s":""]})]}),h.jsx("div",{className:"voxket-video-grid-content",style:p,children:t.type==="speaker"&&c?h.jsxs(h.Fragment,{children:[h.jsx("div",{className:"voxket-video-speaker-main",children:h.jsx(fo,{track:c,participantName:`Participant ${c.participantId}`,isPinned:!0,onClick:i,onUnpin:g})}),h.jsx("div",{className:"voxket-video-speaker-sidebar",children:d.filter(E=>E.id!==c.id).map(E=>h.jsx(fo,{track:E,participantName:`Participant ${E.participantId}`,showControls:!1,onClick:i,onPin:m},E.id))})]}):d.map(E=>h.jsx(fo,{track:E,participantName:`Participant ${E.participantId}`,isPinned:(c==null?void 0:c.id)===E.id,onClick:i,onPin:m,onUnpin:g},E.id))}),s&&f>1&&h.jsxs("div",{className:"voxket-video-pagination",children:[h.jsx("button",{className:"voxket-pagination-btn",onClick:()=>l(Math.max(0,a-1)),disabled:a===0,children:"←"}),h.jsxs("span",{className:"voxket-pagination-info",children:["Page ",a+1," of ",f]}),h.jsx("button",{className:"voxket-pagination-btn",onClick:()=>l(Math.min(f-1,a+1)),disabled:a===f-1,children:"→"})]})]})}function kI(e){switch(e){case"grid":return"⊞";case"speaker":return"🎤";case"sidebar":return"⫸";case"gallery":return"⊡";case"picture-in-picture":return"⧉";default:return"⊞"}}function CI({localTrack:e,onToggleCamera:t,onToggleScreenShare:n,onLayoutChange:r,showLayoutControls:i=!0,showCameraControls:o=!0,showScreenShareControls:s=!0,className:a=""}){const l=["voxket-video-controls",a].filter(Boolean).join(" "),c=u=>{r==null||r({type:u,showLocalVideo:!0,aspectRatio:"16:9"})};return h.jsxs("div",{className:l,children:[o&&h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Camera"}),h.jsxs("button",{className:`voxket-control-btn ${e!=null&&e.isEnabled?"voxket-control-btn--active":""}`,onClick:t,title:e!=null&&e.isEnabled?"Turn off camera":"Turn on camera",children:[h.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isEnabled?"📹":"📷"}),h.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isEnabled?"Camera On":"Camera Off"})]}),(e==null?void 0:e.dimensions)&&h.jsxs("div",{className:"voxket-video-info",children:[e.dimensions.width," × ",e.dimensions.height]})]}),s&&h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Screen Share"}),h.jsxs("button",{className:`voxket-control-btn ${e!=null&&e.isScreenShare?"voxket-control-btn--active":""}`,onClick:n,title:e!=null&&e.isScreenShare?"Stop screen sharing":"Start screen sharing",children:[h.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isScreenShare?"🛑":"🖥️"}),h.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isScreenShare?"Stop Sharing":"Share Screen"})]})]}),i&&h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Layout"}),h.jsx("div",{className:"voxket-layout-buttons",children:[{type:"grid",icon:"⊞",label:"Grid"},{type:"speaker",icon:"🎤",label:"Speaker"},{type:"sidebar",icon:"⫸",label:"Sidebar"},{type:"gallery",icon:"⊡",label:"Gallery"}].map(({type:u,icon:d,label:f})=>h.jsxs("button",{className:"voxket-layout-control-btn",onClick:()=>c(u),title:`Switch to ${f} layout`,children:[h.jsx("span",{className:"voxket-control-icon",children:d}),h.jsx("span",{className:"voxket-control-label",children:f})]},u))})]}),h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Video Settings"}),h.jsxs("div",{className:"voxket-video-settings",children:[h.jsxs("div",{className:"voxket-setting-group",children:[h.jsx("label",{className:"voxket-setting-label",children:"Quality"}),h.jsxs("select",{className:"voxket-setting-select",children:[h.jsx("option",{value:"high",children:"High (720p)"}),h.jsx("option",{value:"medium",children:"Medium (480p)"}),h.jsx("option",{value:"low",children:"Low (240p)"})]})]}),h.jsxs("div",{className:"voxket-setting-group",children:[h.jsx("label",{className:"voxket-setting-label",children:"Frame Rate"}),h.jsxs("select",{className:"voxket-setting-select",children:[h.jsx("option",{value:"30",children:"30 fps"}),h.jsx("option",{value:"15",children:"15 fps"}),h.jsx("option",{value:"10",children:"10 fps"})]})]}),h.jsxs("div",{className:"voxket-setting-group",children:[h.jsx("label",{className:"voxket-setting-label",children:"Bandwidth"}),h.jsxs("select",{className:"voxket-setting-select",children:[h.jsx("option",{value:"unlimited",children:"Unlimited"}),h.jsx("option",{value:"1000",children:"1 Mbps"}),h.jsx("option",{value:"500",children:"500 Kbps"}),h.jsx("option",{value:"250",children:"250 Kbps"})]})]})]})]}),h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Statistics"}),h.jsxs("div",{className:"voxket-video-stats",children:[h.jsxs("div",{className:"voxket-stat-item",children:[h.jsx("span",{className:"voxket-stat-label",children:"Resolution:"}),h.jsx("span",{className:"voxket-stat-value",children:e!=null&&e.dimensions?`${e.dimensions.width}×${e.dimensions.height}`:"N/A"})]}),h.jsxs("div",{className:"voxket-stat-item",children:[h.jsx("span",{className:"voxket-stat-label",children:"Source:"}),h.jsx("span",{className:"voxket-stat-value",children:(e==null?void 0:e.source)||"None"})]}),h.jsxs("div",{className:"voxket-stat-item",children:[h.jsx("span",{className:"voxket-stat-label",children:"Status:"}),h.jsx("span",{className:`voxket-stat-value ${e!=null&&e.isEnabled?"voxket-stat-value--active":"voxket-stat-value--inactive"}`,children:e!=null&&e.isEnabled?"Active":"Inactive"})]})]})]})]})}const Am=({handler:e,loadData:t,data:n,client:r,addLocalMessage:i})=>{const[o,s]=D.useState(null),[a,l]=D.useState(!0),[c,u]=D.useState(!1),[d]=D.useState(Date.now()),[f,p]=D.useState("pending");D.useEffect(()=>{(async()=>{try{if(l(!0),n&&typeof n=="object"){const E={title:n.title||"Untitled Assignment",description:n.description||"No description provided",estimated_time_of_completion:n.estimated_time_of_completion||"Unknown"};s(E),console.log("📋 AssignmentView: Assignment loaded from RPC data:",E)}}catch(E){console.error("📋 AssignmentView: Error loading assignment:",E),s({title:"Assignment Loading Error",description:"There was an error loading the assignment details. Please try again.",estimated_time_of_completion:"Unknown"})}finally{l(!1)}})()},[n,t]);const m=({message:y,assignment:E})=>{const w=y.toLowerCase().includes("declined"),_=w?"bg-red-50 border-red-200":"bg-green-50 border-green-200",C=w?"text-red-700":"text-green-700",T=w?"❌":"🎉";return h.jsxs("div",{className:`max-w-sm mx-auto ${_} border rounded-lg shadow p-3 flex flex-col items-center`,children:[h.jsx("div",{className:"text-2xl mb-2",children:T}),h.jsx("div",{className:`${C} font-semibold text-sm mb-1`,children:y}),h.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:E.title}),h.jsx("div",{className:"text-xs text-gray-500",children:"Thank you for your response!"})]})},g=async()=>{if(!(!o||!e)){u(!0);try{const y={message:"accepted"};console.log("📋 AssignmentView: Assignment accepted:",y),e.didSuccess(y),p("accepted")}catch(y){console.error("📋 AssignmentView: Error accepting assignment:",y),e.didFail({error:"Failed to accept assignment"}),p("error")}finally{u(!1)}}},v=async()=>{if(!(!o||!e)){u(!0);try{const y={message:"declined"};console.log("📋 AssignmentView: Assignment declined:",y),e.didSuccess(y),p("declined")}catch(y){console.error("📋 AssignmentView: Error declining assignment:",y),e.didFail({error:"Failed to decline assignment"}),p("error")}finally{u(!1)}}};return a?h.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:h.jsxs("div",{className:"flex items-center justify-center py-4",children:[h.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-600"}),h.jsx("span",{className:"ml-2 text-xs text-gray-600",children:"Loading assignment..."})]})}):o?f==="accepted"||f==="declined"||f==="error"?h.jsx(m,{message:f==="accepted"?"Assignment accepted!":f==="declined"?"Assignment declined":"Assignment error occurred",assignment:o}):h.jsxs("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg overflow-hidden",children:[h.jsx("div",{className:"bg-gradient-to-r from-blue-600 to-purple-600 text-white p-3",children:h.jsx("div",{className:"flex items-center justify-between",children:h.jsx("h3",{className:"text-xs font-semibold text-white truncate",children:o.title})})}),h.jsxs("div",{className:"p-3 text-black",children:[h.jsx("div",{className:"bg-gray-50 rounded p-2 mb-3",children:h.jsx("p",{className:"text-xs text-black leading-snug",children:o.description})}),h.jsx("div",{className:"mb-3 text-black",children:h.jsxs("div",{className:"flex items-center text-xs text-gray-600",children:[h.jsx("span",{className:"text-xs mr-1",children:"📅"}),h.jsxs("span",{children:["Est: ",o.estimated_time_of_completion]})]})}),h.jsxs("div",{className:"flex gap-2",children:[h.jsx("button",{onClick:g,disabled:c,className:"flex-1 bg-green-600 text-white py-2 px-3 rounded text-xs font-medium hover:bg-green-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:c?h.jsxs("span",{className:"flex items-center justify-center",children:[h.jsx("div",{className:"animate-spin rounded-full h-2 w-2 border-b-2 border-white mr-1"}),h.jsx("span",{className:"text-xs",children:"Processing..."})]}):"Accept"}),h.jsx("button",{onClick:v,disabled:c,className:"flex-1 bg-red-600 text-white py-2 px-3 rounded text-xs font-medium hover:bg-red-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:"Decline"})]})]})]}):h.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:h.jsxs("div",{className:"text-center py-4",children:[h.jsx("div",{className:"text-red-600 text-sm font-semibold mb-2",children:"⚠️ Assignment Error"}),h.jsx("p",{className:"text-xs text-gray-600 mb-3",children:"Failed to load assignment details."})]})})};function _I(){const[e,t]=D.useState(null),[n,r]=D.useState([]);D.useEffect(()=>{const a=new Ti({appId:"your-app-id",appSecret:"your-app-secret",baseUrl:"https://your-voxket-api.com",agentId:"your-agent-id",participantName:"User",modalities:["chat"]});return t(a),a.on("rpc.method.called",l=>{console.log("RPC Method Called:",l)}),a.on("rpc.interaction.completed",l=>{console.log("RPC Interaction Completed:",l)}),()=>{a.disconnect()}},[]);const i=async()=>{if(e)try{await e.registerFrontendRPC("give_assignment",Am,"embedded");const a=e.getRegisteredRpcMethods();r(a),console.log("✅ Assignment RPC registered successfully")}catch(a){console.error("❌ Failed to register assignment RPC:",a)}},o=async()=>{if(!e)return;const a=({handler:l,timeout:c})=>{const[u,d]=D.useState(""),f=[{id:"pro",name:"Pro Plan",price:"$29/month"},{id:"enterprise",name:"Enterprise Plan",price:"$99/month"},{id:"basic",name:"Basic Plan",price:"$9/month"}],p=g=>{d(g)},m=()=>{const g=f.find(v=>v.id===u);l==null||l.didSuccess({selectedProduct:u,productName:g==null?void 0:g.name,price:g==null?void 0:g.price,timestamp:new Date().toISOString()})};return h.jsxs("div",{className:"p-6 bg-white rounded-lg",children:[h.jsx("h3",{className:"text-xl font-bold mb-4",children:"Choose Your Plan"}),h.jsx("p",{className:"text-gray-600 mb-4",children:"Select the plan that best fits your needs:"}),h.jsx("div",{className:"space-y-3 mb-6",children:f.map(g=>h.jsx("div",{onClick:()=>p(g.id),className:`p-4 border rounded-lg cursor-pointer transition-all ${u===g.id?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300"}`,children:h.jsxs("div",{className:"flex justify-between items-center",children:[h.jsxs("div",{children:[h.jsx("h4",{className:"font-medium",children:g.name}),h.jsx("p",{className:"text-gray-600 text-sm",children:g.price})]}),h.jsx("div",{className:`w-4 h-4 rounded-full ${u===g.id?"bg-blue-500":"border-2 border-gray-300"}`})]})},g.id))}),h.jsxs("div",{className:"flex justify-end space-x-3",children:[h.jsx("button",{onClick:()=>l==null?void 0:l.dismissView(),className:"px-4 py-2 border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Cancel"}),h.jsx("button",{onClick:m,disabled:!u,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",children:"Select Plan"})]}),c&&h.jsxs("p",{className:"text-xs text-gray-500 mt-2",children:["Time remaining: ",c," seconds"]})]})};try{await e.registerFrontendRPC("recommend_product",a,"modal");const l=e.getRegisteredRpcMethods();r(l),console.log("✅ Product Recommendation RPC registered successfully")}catch(l){console.error("❌ Failed to register product recommendation RPC:",l)}},s=async()=>{if(!e)return;const a=({handler:l})=>{const[c,u]=D.useState(0),[d,f]=D.useState(""),p=()=>{l==null||l.didSuccess({rating:c,comment:d,timestamp:new Date().toISOString()})};return h.jsxs("div",{className:"p-4 bg-white rounded-lg",children:[h.jsx("h3",{className:"text-lg font-semibold mb-3",children:"How was your experience?"}),h.jsxs("div",{className:"mb-4",children:[h.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Rate your experience:"}),h.jsx("div",{className:"flex space-x-1",children:[1,2,3,4,5].map(m=>h.jsx("button",{onClick:()=>u(m),className:`text-2xl ${m<=c?"text-yellow-400":"text-gray-300"}`,children:"⭐"},m))})]}),h.jsxs("div",{className:"mb-4",children:[h.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Additional comments:"}),h.jsx("textarea",{value:d,onChange:m=>f(m.target.value),className:"w-full p-2 border border-gray-300 rounded text-sm",rows:3,placeholder:"Tell us more about your experience..."})]}),h.jsxs("div",{className:"flex justify-end space-x-2",children:[h.jsx("button",{onClick:()=>l==null?void 0:l.dismissView(),className:"px-3 py-1 text-sm border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Skip"}),h.jsx("button",{onClick:p,disabled:c===0,className:"px-3 py-1 text-sm bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",children:"Submit"})]})]})};try{await e.registerFrontendRPC("collect_feedback",a,"embedded");const l=e.getRegisteredRpcMethods();r(l),console.log("✅ Feedback RPC registered successfully")}catch(l){console.error("❌ Failed to register feedback RPC:",l)}};return h.jsxs("div",{className:"p-6",children:[h.jsx("h2",{className:"text-2xl font-bold mb-6",children:"Frontend RPC Examples"}),h.jsxs("div",{className:"space-y-4 mb-6",children:[h.jsxs("div",{children:[h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Register RPC Methods"}),h.jsxs("div",{className:"space-x-2",children:[h.jsx("button",{onClick:i,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600",children:"Register Assignment RPC"}),h.jsx("button",{onClick:o,className:"px-4 py-2 bg-green-500 text-white rounded hover:bg-green-600",children:"Register Product Recommendation RPC"}),h.jsx("button",{onClick:s,className:"px-4 py-2 bg-purple-500 text-white rounded hover:bg-purple-600",children:"Register Feedback RPC"})]})]}),h.jsxs("div",{children:[h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Registered Methods"}),n.length>0?h.jsx("ul",{className:"list-disc list-inside space-y-1",children:n.map(a=>h.jsx("li",{className:"text-gray-700",children:h.jsx("code",{className:"bg-gray-100 px-2 py-1 rounded",children:a})},a))}):h.jsx("p",{className:"text-gray-500",children:"No methods registered yet"})]})]}),h.jsxs("div",{className:"bg-gray-50 p-4 rounded-lg",children:[h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"How it works"}),h.jsxs("ol",{className:"list-decimal list-inside space-y-2 text-sm text-gray-700",children:[h.jsxs("li",{children:["Register RPC methods with React components using ",h.jsx("code",{children:"client.registerFrontendRPC()"})]}),h.jsx("li",{children:"When the agent calls an RPC method, the corresponding component will be displayed"}),h.jsx("li",{children:"Users interact with the component, and the response is sent back to the agent"}),h.jsx("li",{children:"Components can be displayed in different modes: embedded, modal, or fullscreen"}),h.jsx("li",{children:"Each component has a timeout and can handle success/failure scenarios"})]})]}),h.jsxs("div",{className:"mt-6 bg-blue-50 p-4 rounded-lg",children:[h.jsx("h3",{className:"text-lg font-semibold mb-2 text-blue-800",children:"Agent Side"}),h.jsx("p",{className:"text-sm text-blue-700 mb-2",children:"On the agent side, you can call these RPC methods like this:"}),h.jsx("pre",{className:"bg-white p-3 rounded text-xs text-gray-800 overflow-x-auto",children:`// Agent calls RPC method
143
+ `,style:{minHeight:"3rem",display:s===r?"flex":"none",alignItems:"center",justifyContent:"center"},children:h.jsx("span",{className:"italic",children:o})},s))})}const im=N.forwardRef(({disabled:e,onStartCall:t,onStartChat:n,onStartVideo:r,prompts:i=['"Click to talk"','"How can I assist you today?"'],statusMessage:o="Agent is ready",title:s="Choose how to interact",subTitle:a="Ask me anything or give me a task to complete",theme:l="vox",modalities:c=["voice","chat","video"]},u)=>{const d=Pt(l),f=c.includes("voice"),p=c.includes("chat"),m=c.includes("video"),g=[f,p,m].filter(Boolean).length;return h.jsxs("div",{className:"flex flex-col items-center h-full justify-center w-full relative px-8 py-16","aria-disabled":e,style:{background:"transparent"},children:[h.jsx("div",{className:"absolute inset-0 opacity-[0.01] pointer-events-none mix-blend-overlay",style:{backgroundImage:`url("data:image/svg+xml,%3Csvg viewBox='0 0 400 400' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulance type='fractalNoise' baseFrequency='2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E")`,backgroundRepeat:"repeat"}}),h.jsx("div",{className:"absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-[500px] h-[500px] bg-gradient-radial from-white/[0.02] to-transparent blur-3xl pointer-events-none"}),h.jsxs("div",{className:"flex flex-col items-center justify-center w-full max-w-2xl space-y-12 z-10",children:[h.jsx("div",{className:"text-center space-y-2 max-w-md",children:h.jsx("p",{className:`text-base leading-relaxed tracking-wide ${d.text.secondary}`,children:a})}),h.jsx("div",{className:"flex items-center justify-center w-full",children:f&&p&&m?h.jsxs("div",{className:"flex gap-5 items-center justify-center",children:[h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:t,children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]}),h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:n,children:[h.jsx(Js,{onClick:n,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Chat"})]}),h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:r||t,children:[h.jsx(ea,{onClick:r||t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Video"})]})]}):g>1?h.jsxs("div",{className:"flex gap-6 items-center justify-center",children:[f&&h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:t,children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]}),p&&h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:n,children:[h.jsx(Js,{onClick:n,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Chat"})]}),m&&r&&h.jsxs("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",onClick:r,children:[h.jsx(ea,{onClick:r,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Video"})]})]}):h.jsx("div",{className:"flex flex-col items-center gap-3 group cursor-pointer",children:f?h.jsxs(h.Fragment,{children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]}):p?h.jsxs(h.Fragment,{children:[h.jsx(Js,{onClick:n,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Chat"})]}):m&&r?h.jsxs(h.Fragment,{children:[h.jsx(ea,{onClick:r,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Video"})]}):h.jsxs(h.Fragment,{children:[h.jsx(eo,{onClick:t,disabled:e,theme:l}),h.jsx("span",{className:`text-xs font-medium tracking-wider uppercase ${d.text.muted} group-hover:text-white transition-colors duration-300`,children:"Voice"})]})})}),h.jsx("div",{className:"w-full flex justify-center",children:h.jsx($R,{prompts:i,theme:l})})]})]})});im.displayName="Welcome";class nc extends D.Component{constructor(t){super(t),this.state={hasError:!1}}static getDerivedStateFromError(t){return{hasError:!0,error:t}}componentDidCatch(t,n){console.error("VoxketWidget Error:",t,n)}render(){if(this.state.hasError){if(this.props.fallback){const t=this.props.fallback;return D.createElement(t,{error:this.state.error})}return D.createElement("div",{style:{padding:"20px",border:"1px solid #ff4444",borderRadius:"8px",background:"#fff5f5",color:"#cc0000"}},"VoxketWidget encountered an error. Please check the console for details.")}return this.props.children}}const om=({onClick:e,position:t="bottom-right",size:n=64,className:r="",style:i,ariaLabel:o="Open Voxket",logoScale:s=.7,isRunning:a=!1,logoUrl:l="/logo.png"})=>{const c={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"},u={width:n,height:n,...i},d=D.useMemo(()=>{if(typeof window>"u"||!window.matchMedia)return!1;try{return window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch{return!1}},[]);return h.jsxs("div",{className:"relative pointer-events-auto",children:[a&&h.jsxs(h.Fragment,{children:[h.jsx(Me.div,{className:"absolute inset-0 rounded-full pointer-events-none",style:{width:n+24,height:n+24,left:-12,top:-12,background:"linear-gradient(45deg, rgba(6,182,212,0.3), rgba(34,211,238,0.3), rgba(6,182,212,0.3))",filter:"blur(8px)"},animate:d?void 0:{scale:[1,1.1,1],opacity:[.6,.9,.6]},transition:d?void 0:{duration:2,repeat:1/0,ease:"easeInOut"}}),h.jsx(Me.div,{className:"absolute inset-0 rounded-full pointer-events-none",style:{width:n+16,height:n+16,left:-8,top:-8,background:"linear-gradient(135deg, rgba(6,182,212,0.4), rgba(34,211,238,0.4))",filter:"blur(4px)"},animate:d?void 0:{scale:[1,1.05,1],opacity:[.7,1,.7]},transition:d?void 0:{duration:1.5,repeat:1/0,ease:"easeInOut",delay:.2}})]}),h.jsxs(Me.button,{type:"button",onClick:e,"aria-label":o,className:`fixed z-50 rounded-full bg-black flex items-center justify-center overflow-hidden focus:outline-none focus:ring-2 focus:ring-cyan-400/60 ${c[t]} ${r}`,style:{...u,boxShadow:a?"0 0 0 2px rgba(6,182,212,0.5), 0 0 20px rgba(6,182,212,0.4), 0 8px 32px rgba(0,0,0,0.3)":"0 8px 32px rgba(0,0,0,0.3)",border:a?"2px solid rgba(6,182,212,0.6)":"none"},initial:{scale:.9,opacity:0},animate:{scale:1,opacity:1,...a&&!d?{boxShadow:["0 0 0 2px rgba(6,182,212,0.5), 0 0 20px rgba(6,182,212,0.4), 0 8px 32px rgba(0,0,0,0.3)","0 0 0 2px rgba(6,182,212,0.8), 0 0 30px rgba(6,182,212,0.6), 0 8px 32px rgba(0,0,0,0.3)","0 0 0 2px rgba(6,182,212,0.5), 0 0 20px rgba(6,182,212,0.4), 0 8px 32px rgba(0,0,0,0.3)"]}:{}},exit:{scale:.9,opacity:0},whileHover:{scale:1.05},whileTap:{scale:.95},"data-position":t,"data-voxket-trigger":"true",transition:{...!d&&a?{boxShadow:{duration:2,repeat:1/0,ease:"easeInOut"}}:{}},children:[a&&h.jsxs(h.Fragment,{children:[h.jsx(Me.span,{"aria-hidden":!0,className:"absolute inset-0 rounded-full pointer-events-none",style:{background:"conic-gradient(from 0deg, rgba(6,182,212,0.0) 0deg, rgba(6,182,212,1) 90deg, rgba(34,211,238,1) 180deg, rgba(6,182,212,0.0) 270deg)",WebkitMask:"radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px))",mask:"radial-gradient(farthest-side, transparent calc(100% - 2px), #000 calc(100% - 2px))"},animate:d?void 0:{rotate:360},transition:d?void 0:{duration:3,repeat:1/0,ease:"linear"}}),h.jsx("span",{"aria-hidden":!0,className:"absolute inset-1 rounded-full pointer-events-none",style:{background:"radial-gradient(circle, rgba(6,182,212,0.1) 0%, transparent 70%)"}})]}),h.jsx("img",{src:l,alt:"Voxket",className:"object-contain select-none pointer-events-none relative z-10",style:{width:`${Math.max(0,Math.min(1,s))*100}%`,height:`${Math.max(0,Math.min(1,s))*100}%`,filter:a?"brightness(1.1) contrast(1.1)":"none"},draggable:!1})]})]})};function sm({room:e,onSessionEnd:t,onSessionStart:n,enableConsoleLogging:r=!0,enableLocalStorage:i=!0,voxketSessionId:o}={}){const[s,a]=D.useState(null),[l,c]=D.useState([]),[u,d]=D.useState(null),[f,p]=D.useState([]),m=D.useCallback((E,w)=>{const _={timestamp:new Date,event:E,data:w,sessionId:s==null?void 0:s.sessionId,participantId:u==null?void 0:u.identity};if(c(C=>[...C,_]),i){const C=JSON.parse(localStorage.getItem("voxket-session-logs")||"[]");C.push(_),localStorage.setItem("voxket-session-logs",JSON.stringify(C))}return _},[s==null?void 0:s.sessionId,u==null?void 0:u.identity,r,i]);D.useEffect(()=>{if(!e)return;const E=()=>{const b=o||`session-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,M=new Date,O={sessionId:b,startTime:M,totalMessages:0,connectionIssues:0,participantCount:f.length,events:[]};a(O),m("SESSION_STARTED",{sessionId:b,startTime:M}),n==null||n(b)},w=()=>{if(s){const b=new Date,M=b.getTime()-s.startTime.getTime(),O={...s,endTime:b,duration:M,events:l};m("SESSION_ENDED",{sessionId:s.sessionId,duration:`${Math.round(M/1e3)}s`,totalMessages:s.totalMessages,connectionIssues:s.connectionIssues}),t==null||t(O),a(null),c([])}},_=b=>{m("CONNECTION_STATE_CHANGED",{state:b}),b===le.ConnectionState.Reconnecting&&s&&(a(M=>M?{...M,connectionIssues:M.connectionIssues+1}:null),m("CONNECTION_ISSUE",{type:"reconnecting"}))},C=b=>{m("TRACK_PUBLISHED",{trackKind:b.kind,trackSource:b.source})},T=b=>{m("TRACK_UNPUBLISHED",{trackKind:b.kind,trackSource:b.source})},R=(b,M)=>{s&&a(O=>O?{...O,totalMessages:O.totalMessages+1}:null),m("DATA_RECEIVED",{participantId:M==null?void 0:M.identity,dataSize:b.length})},A=b=>{m("PARTICIPANT_CONNECTED",{participantId:b.identity,participantName:b.name}),p(M=>[...M,b]),s&&a(M=>M?{...M,participantCount:M.participantCount+1}:null)},I=b=>{m("PARTICIPANT_DISCONNECTED",{participantId:b.identity,participantName:b.name}),p(M=>M.filter(O=>O.identity!==b.identity))};return e.localParticipant&&d(e.localParticipant),e.on(le.RoomEvent.Connected,E),e.on(le.RoomEvent.Disconnected,w),e.on(le.RoomEvent.ConnectionStateChanged,_),e.on(le.RoomEvent.TrackPublished,C),e.on(le.RoomEvent.TrackUnpublished,T),e.on(le.RoomEvent.DataReceived,R),e.on(le.RoomEvent.ParticipantConnected,A),e.on(le.RoomEvent.ParticipantDisconnected,I),()=>{e.off(le.RoomEvent.Connected,E),e.off(le.RoomEvent.Disconnected,w),e.off(le.RoomEvent.ConnectionStateChanged,_),e.off(le.RoomEvent.TrackPublished,C),e.off(le.RoomEvent.TrackUnpublished,T),e.off(le.RoomEvent.DataReceived,R),e.off(le.RoomEvent.ParticipantConnected,A),e.off(le.RoomEvent.ParticipantDisconnected,I)}},[e,s,l,f.length,m,t,n]);const g=D.useCallback(()=>i?JSON.parse(localStorage.getItem("voxket-session-logs")||"[]"):l,[l,i]),v=D.useCallback(()=>{i&&localStorage.removeItem("voxket-session-logs"),c([])},[i]),y=D.useCallback(()=>{const E=g(),w=JSON.stringify(E,null,2),_="data:application/json;charset=utf-8,"+encodeURIComponent(w),C=`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,T=document.createElement("a");T.setAttribute("href",_),T.setAttribute("download",C),T.click()},[g]);return{sessionMetrics:s,sessionLogs:l,logEvent:m,getSessionLogs:g,clearSessionLogs:v,exportSessionLogs:y}}class rc{constructor(){Ce(this,"listeners",{})}on(t,n){return this.listeners[t]||(this.listeners[t]=[]),this.listeners[t].push(n),()=>this.off(t,n)}once(t,n){const r=(...i)=>{this.off(t,r),n(...i)};return this.on(t,r)}off(t,n){const r=this.listeners[t];if(!r)return;const i=r.indexOf(n);i>-1&&r.splice(i,1)}removeAllListeners(t){t?delete this.listeners[t]:this.listeners={}}emit(t,...n){const r=this.listeners[t];if(!r)return;const i=[...r];for(const o of i)try{o(...n)}catch(s){console.error(`Error in event listener for ${String(t)}:`,s)}}listenerCount(t){var n;return((n=this.listeners[t])==null?void 0:n.length)??0}eventNames(){return Object.keys(this.listeners)}}class am{constructor(t){Ce(this,"plugins",new Map);Ce(this,"installedPlugins",new Set);Ce(this,"context");this.context={client:t,emit:t.emit.bind(t),on:t.on.bind(t),config:{}}}register(t){if(this.plugins.has(t.name))throw new Error(`Plugin '${t.name}' is already registered`);if(t.dependencies){for(const n of t.dependencies)if(!this.plugins.has(n))throw new Error(`Plugin '${t.name}' depends on '${n}' which is not registered`)}this.plugins.set(t.name,t)}async install(t,n){const r=this.plugins.get(t);if(!r)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t))throw new Error(`Plugin '${t}' is already installed`);if(r.dependencies)for(const o of r.dependencies)this.installedPlugins.has(o)||await this.install(o);const i={...this.context,config:{...r.config,...n}};r.install&&await r.install(i),this.installedPlugins.add(t),this.setupPluginEvents(r,i)}async uninstall(t){var r;const n=this.plugins.get(t);if(!n)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t)){for(const[i,o]of this.plugins)if(this.installedPlugins.has(i)&&((r=o.dependencies)!=null&&r.includes(t)))throw new Error(`Cannot uninstall '${t}' because '${i}' depends on it`);n.uninstall&&await n.uninstall(this.context),this.installedPlugins.delete(t)}}isInstalled(t){return this.installedPlugins.has(t)}getInstalledPlugins(){return Array.from(this.installedPlugins)}getAvailablePlugins(){return Array.from(this.plugins.keys())}getPluginInfo(t){return this.plugins.get(t)}setupPluginEvents(t,n){t.onSessionStart&&n.on("session.started",r=>{t.onSessionStart(n,r.id)}),t.onSessionEnd&&n.on("session.ended",r=>{t.onSessionEnd(n,r.id)}),t.onAgentResponse&&n.on("agent.response",r=>{t.onAgentResponse(n,r)})}}function VR(e){return e}function ic(e,t,n){return{name:e,version:"1.0.0",description:`${t} modality plugin`,install:async r=>{n.onActivate&&await n.onActivate(r)},uninstall:async r=>{n.onDeactivate&&await n.onDeactivate(r)},onAgentResponse:n.onMessage}}const zR={name:"analytics",version:"1.0.0",description:"Built-in analytics tracking",install:async e=>{console.log("Analytics plugin installed"),e.on("session.started",t=>{console.log("Analytics: Session started",t.id)}),e.on("session.ended",(t,n)=>{console.log("Analytics: Session ended",t.id,n)}),e.on("chat.message.sent",t=>{console.log("Analytics: User message sent",t.content.length)})}},UR={name:"debug",version:"1.0.0",description:"Debug logging and development tools",install:async e=>{console.log("Debug plugin installed");const t=e.emit;e.emit=(n,...r)=>(console.log(`[Debug] Event: ${String(n)}`,r),t(n,...r))}},HR={name:"metrics",version:"1.0.0",description:"Advanced metrics collection",install:async e=>{console.log("Metrics plugin installed");const t=new Map;e.on("session.started",n=>{t.set(n.id,{startTime:Date.now(),events:[]})}),e.on("agent.response",n=>{console.log("Metrics: Agent response analyzed",{type:n.type,length:n.content.length,timestamp:n.timestamp})})}};class lm extends rc{constructor(n){super();Ce(this,"room",null);Ce(this,"registeredMethods",new Map);Ce(this,"activeInteractions",new Map);Ce(this,"currentInteraction",null);n&&this.setRoom(n)}setRoom(n){this.room=n}async registerFrontendRPC(n,r,i="embedded"){if(console.log(`RpcManager: Starting registration for method '${n}'`),!this.room)throw console.error(`RpcManager: Cannot register '${n}' - no room instance`),new Error("Room not initialized. Cannot register RPC method.");if(!this.room.localParticipant)throw console.error(`RpcManager: Cannot register '${n}' - no local participant`),new Error("Local participant not available for RPC registration");console.log(`RpcManager: Room state: ${this.room.state}`),console.log(`RpcManager: Local participant: ${this.room.localParticipant.identity}`),console.log(`RpcManager: Registering frontend RPC method: ${n}`);const o={methodName:n,component:r,presentationMode:i};this.registeredMethods.set(n,o);try{this.room.registerRpcMethod(n,async s=>{console.log(`RpcManager: RPC method '${n}' called by ${s.callerIdentity}`),console.log("RpcManager: Payload:",s.payload),this.emit("rpc.method.called",{methodName:n,data:s});let a;console.log(`RpcManager: Current registration for '${n}':`,o);let l=s.responseTimeout||30;try{a=JSON.parse(s.payload)}catch{a=s.payload}try{const c=await this.awaitUserInteraction(n,r,i,a,l);return JSON.stringify(c)}catch(c){throw console.error(`RpcManager: Error in RPC method '${n}':`,c),c}}),this.emit("rpc.method.registered",{methodName:n}),console.log(`RpcManager: Successfully registered RPC method: ${n}`)}catch(s){throw console.error(`RpcManager: Failed to register RPC method '${n}':`,s),s}}async awaitUserInteraction(n,r,i,o,s){return new Promise((a,l)=>{const c=`${n}_${Date.now()}`;console.log(`RpcManager: Starting user interaction for method: ${n}, timeout: ${s} seconds`);const u={didSuccess:(f,p)=>{console.log(`RpcManager: User interaction successful for method: ${n}`,f),this.clearInteraction(c),this.currentInteraction=null;const m={success:!0,message:"User interaction completed successfully",data:f,timestamp:new Date,...p?{successView:p}:{}};this.emit("rpc.interaction.completed",{methodName:n,response:m}),a(m)},didFail:f=>{console.log(`RpcManager: User interaction failed for method: ${n}`,f),this.clearInteraction(c);const p={success:!1,message:"User interaction failed",error:f,timestamp:new Date};this.emit("rpc.interaction.completed",{methodName:n,response:p}),a(p)},dismissView:()=>{var p;console.log(`RpcManager: User dismissed interaction for method: ${n}`),console.log("RpcManager: Current interaction before dismiss:",(p=this.currentInteraction)==null?void 0:p.methodName),this.clearInteraction(c),this.currentInteraction=null,console.log("RpcManager: Current interaction after dismiss:",this.currentInteraction);const f={success:!0,data:{dismissed:!0,reason:"User dismissed the interaction"},message:"User interaction dismissed",timestamp:new Date};this.emit("rpc.interaction.dismissed",{methodName:n,response:f}),this.emit("rpc.interaction.completed",{methodName:n,response:f}),setTimeout(()=>{var m;((m=this.currentInteraction)==null?void 0:m.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),a(f)},didTimeout:f=>{console.log(`RpcManager: User interaction timeout for method: ${n}`),this.clearInteraction(c),this.currentInteraction=null;const p={success:!0,message:`User interaction timed out after ${s} seconds, it should be considered as declined, agent don't need to retry`,timestamp:new Date,...f?{timeoutView:f}:{}};this.emit("rpc.interaction.timeout",{methodName:n,response:p}),setTimeout(()=>{var m;((m=this.currentInteraction)==null?void 0:m.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),a(p)}},d=setTimeout(()=>{u.didTimeout&&u.didTimeout()},s);this.activeInteractions.set(c,{resolve:f=>a(JSON.parse(f)),reject:l,timeoutId:d}),this.currentInteraction={isVisible:!0,methodName:n,component:r,presentationMode:i,timeout:s,data:o,handler:u},this.emit("rpc.interaction.started",{methodName:n,presentationMode:i}),setTimeout(async()=>{var f;if((f=this.currentInteraction)!=null&&f.handler)try{console.log(`RpcManager: Component created for method: ${n} with data:`,o)}catch(p){console.error("RpcManager: Error loading data into component:",p),u.didFail({error:"Failed to load data into component"})}},100)})}clearInteraction(n){const r=this.activeInteractions.get(n);r&&(console.log(`RpcManager: Clearing interaction: ${n}`),clearTimeout(r.timeoutId),this.activeInteractions.delete(n))}getCurrentInteraction(){return this.currentInteraction}dismissCurrentInteraction(){var n;this.currentInteraction&&(console.log(`RpcManager: Dismissing current interaction: ${this.currentInteraction.methodName}`),(n=this.currentInteraction.handler)==null||n.dismissView(),setTimeout(()=>{this.currentInteraction&&(console.log("RpcManager: Force clearing lingering interaction"),this.currentInteraction=null)},0))}getRegisteredMethods(){return Array.from(this.registeredMethods.keys())}unregisterMethod(n){this.registeredMethods.delete(n),console.log(`RpcManager: Unregistered RPC method: ${n}`)}clear(){for(const[n,r]of this.activeInteractions)clearTimeout(r.timeoutId);this.activeInteractions.clear(),this.registeredMethods.clear(),this.currentInteraction=null,console.log("RpcManager: Cleared all registrations and interactions")}}class Ue extends Error{constructor(t,n,r){super(t),this.code=n,this.details=r,this.name="VoxketError"}}class cm{constructor(t,n="User"){Ce(this,"chatMessages",[]);Ce(this,"activeTranscriptions",new Map);Ce(this,"room",null);Ce(this,"eventEmitter");Ce(this,"participantName");this.eventEmitter=t,this.participantName=n}setRoom(t){this.room=t}setParticipantName(t){this.participantName=t}getChatMessages(){return[...this.chatMessages]}addChatMessage(t){this.chatMessages.some(r=>r.id===t.id)||this.chatMessages.push(t)}updateChatMessage(t){const n=this.chatMessages.findIndex(r=>r.id===t.id);n!==-1&&(this.chatMessages[n]=t)}clearChatMessages(){this.chatMessages=[],this.activeTranscriptions.clear(),console.log("🧹 ChatManager: Cleared chat messages and transcription history")}trackTranscription(t,n){this.activeTranscriptions.set(t,{messageId:n,timestamp:Date.now()})}getActiveTranscription(t){const n=Date.now(),r=this.activeTranscriptions.get(t);return r&&n-r.timestamp<1e3?r:null}async sendMessage(t,n){if(!this.room)throw new Ue("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw new Ue("No local participant","CONNECTION_FAILED");try{const r={id:`msg_${Date.now()}`,content:t,sender:{id:"user",name:this.participantName,type:"participant"},timestamp:new Date,metadata:n||{}};await this.room.localParticipant.sendText(t,{topic:"lk.chat",destinationIdentities:[]}),this.eventEmitter.emit("chat.message.sent",r)}catch(r){throw console.error("ChatManager: Failed to send chat message:",r),new Ue("Failed to send message","NETWORK_ERROR",r)}}async sendAttachments(t,n){if(!this.room)throw new Ue("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw new Ue("No local participant","CONNECTION_FAILED");if(!t||t.length===0)throw new Ue("No files provided","INVALID_PARAMETER");const r=t.filter(i=>i.type.startsWith("image/"));if(r.length===0)throw new Ue("Only image files are allowed","INVALID_PARAMETER");r.length!==t.length&&console.warn("ChatManager: Some non-image files were filtered out");try{const i=r.map(async(o,s)=>{const l={id:`att_${Date.now()}_${s}`,content:`📎 ${o.name}`,sender:{id:"user",name:this.participantName,type:"participant"},timestamp:new Date,metadata:{...n,type:"attachment",fileName:o.name,fileSize:o.size,mimeType:o.type,uploading:!0}};this.eventEmitter.emit("chat.message.sent",l);const c=await this.room.localParticipant.sendFile(o,{mimeType:o.type,topic:"images",onProgress:d=>{const f={...l,metadata:{...l.metadata,uploadProgress:d}};this.eventEmitter.emit("chat.message.updated",f)}});try{const d=new FileReader,f=new Promise((g,v)=>{d.onload=()=>{typeof d.result=="string"?g(d.result):v(new Error("Failed to convert to base64"))},d.onerror=v});d.readAsDataURL(o);const m={type:"image",data:await f,filename:o.name,mimeType:o.type,size:o.size};await this.room.localParticipant.sendText(JSON.stringify(m),{topic:"images",destinationIdentities:[]})}catch(d){console.warn("ChatManager: Failed to send image data to agent:",d);try{const f=`I've shared an image: ${o.name}`;await this.room.localParticipant.sendText(f,{topic:"lk.chat",destinationIdentities:[]})}catch(f){console.warn("ChatManager: Failed to send image notification to agent:",f)}}const u={...l,metadata:{...l.metadata,uploading:!1,uploadProgress:1,streamId:c.id}};return this.eventEmitter.emit("chat.message.updated",u),c});await Promise.all(i)}catch(i){throw console.error("ChatManager: Failed to send attachments:",i),new Ue("Failed to send attachments","NETWORK_ERROR",i)}}async sendAttachment(t,n){return this.sendAttachments([t],n)}convertMarkdownToText(t){if(!t)return"";let n=t;return n=n.replace(/\*\*(.*?)\*\*/g,"$1"),n=n.replace(/__(.*?)__/g,"$1"),n=n.replace(/\*(.*?)\*/g,"$1"),n=n.replace(/_(.*?)_/g,"$1"),n=n.replace(/~~(.*?)~~/g,"$1"),n=n.replace(/`([^`]+)`/g,"$1"),n=n.replace(/```[\s\S]*?```/g,""),n=n.replace(/^#{1,6}\s+/gm,""),n=n.replace(/\[([^\]]+)\]\([^)]+\)/g,"$1"),n.trim()}}class um{constructor(t){Ce(this,"room",null);Ce(this,"eventEmitter");Ce(this,"silencePreventionNode",null);Ce(this,"silencePreventionOscillator",null);Ce(this,"audioContext",null);this.eventEmitter=t,this.initializeAudioContext()}initializeAudioContext(){try{if(this.audioContext||(this.audioContext=new(window.AudioContext||window.webkitAudioContext),console.log("🔊 MediaManager: AudioContext created:",{state:this.audioContext.state,sampleRate:this.audioContext.sampleRate})),this.audioContext.state==="suspended"){console.log("🔊 MediaManager: AudioContext suspended, will resume on user interaction");const t=async()=>{this.audioContext&&this.audioContext.state==="suspended"&&(await this.audioContext.resume(),console.log("✅ MediaManager: AudioContext resumed:",this.audioContext.state)),document.removeEventListener("click",t),document.removeEventListener("touchstart",t),document.removeEventListener("keydown",t)};document.addEventListener("click",t,{once:!0}),document.addEventListener("touchstart",t,{once:!0}),document.addEventListener("keydown",t,{once:!0})}else this.audioContext.state==="running"&&console.log("✅ MediaManager: AudioContext already running")}catch(t){console.error("MediaManager: Failed to initialize AudioContext:",t)}}async ensureAudioContextRunning(){if(this.audioContext||this.initializeAudioContext(),this.audioContext&&this.audioContext.state==="suspended"){console.log("🔊 MediaManager: Attempting to resume suspended AudioContext");try{await this.audioContext.resume(),console.log("✅ MediaManager: AudioContext resumed successfully")}catch(t){console.error("MediaManager: Failed to resume AudioContext:",t)}}}setRoom(t){this.room=t}getLocalParticipant(){var t;return((t=this.room)==null?void 0:t.localParticipant)??null}getRemoteParticipants(){var t;return Array.from(((t=this.room)==null?void 0:t.remoteParticipants.values())??[])}async toggleMicrophone(t){return this.setMicrophoneEnabled(t!==!1)}async setMicrophoneEnabled(t){var n,r,i;try{if(!this.room||this.room.state!=="connected")throw console.warn("⚠️ MediaManager: Cannot enable microphone - room not connected",{hasRoom:!!this.room,roomState:(n=this.room)==null?void 0:n.state}),new Ue("Cannot enable microphone: room not connected","CONNECTION_FAILED");await this.ensureAudioContextRunning();const o=(r=this.room)==null?void 0:r.localParticipant.isMicrophoneEnabled,s=t??!o;s&&this.startSilencePrevention(),await((i=this.room)==null?void 0:i.localParticipant.setMicrophoneEnabled(s,{autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0})),s?this.eventEmitter.emit("track.unmuted",{source:"microphone",enabled:!0}):(this.eventEmitter.emit("track.muted",{source:"microphone",enabled:!1}),this.stopSilencePrevention()),console.log("🎤 MediaManager: Microphone",s?"enabled":"disabled")}catch(o){throw console.error("MediaManager: Failed to toggle microphone:",o),this.stopSilencePrevention(),new Ue("Failed to toggle microphone","PERMISSION_DENIED",o)}}startSilencePrevention(){try{if(this.audioContext||(this.audioContext=new AudioContext),this.silencePreventionOscillator)return;console.log("🔇 MediaManager: Starting silence prevention"),this.silencePreventionOscillator=this.audioContext.createOscillator(),this.silencePreventionNode=this.audioContext.createGain(),this.silencePreventionOscillator.frequency.value=20,this.silencePreventionNode.gain.value=.001,this.silencePreventionOscillator.connect(this.silencePreventionNode),this.silencePreventionNode.connect(this.audioContext.destination),this.silencePreventionOscillator.start(),console.log("✅ MediaManager: Silence prevention started")}catch(t){console.error("❌ MediaManager: Failed to start silence prevention:",t)}}stopSilencePrevention(){try{this.silencePreventionOscillator&&(console.log("🔇 MediaManager: Stopping silence prevention"),this.silencePreventionOscillator.stop(),this.silencePreventionOscillator.disconnect(),this.silencePreventionOscillator=null),this.silencePreventionNode&&(this.silencePreventionNode.disconnect(),this.silencePreventionNode=null)}catch(t){console.error("❌ MediaManager: Failed to stop silence prevention:",t)}}async toggleCamera(t){return this.setCameraEnabled(t!==!1)}async setCameraEnabled(t){var n,r;try{const i=(n=this.room)==null?void 0:n.localParticipant.isCameraEnabled,o=t??!i;await((r=this.room)==null?void 0:r.localParticipant.setCameraEnabled(o)),o?this.eventEmitter.emit("track.unmuted",{source:"camera",enabled:!0}):this.eventEmitter.emit("track.muted",{source:"camera",enabled:!1})}catch(i){throw new Ue("Failed to toggle camera","PERMISSION_DENIED",i)}}async enableCamera(){return this.setCameraEnabled(!0)}async disableCamera(){return this.setCameraEnabled(!1)}async startScreenShare(){var t;try{await((t=this.room)==null?void 0:t.localParticipant.setScreenShareEnabled(!0)),this.eventEmitter.emit("track.unmuted",{source:"screenShare",enabled:!0})}catch(n){throw new Ue("Failed to start screen share","PERMISSION_DENIED",n)}}async stopScreenShare(){var t;try{await((t=this.room)==null?void 0:t.localParticipant.setScreenShareEnabled(!1)),this.eventEmitter.emit("track.muted",{source:"screenShare",enabled:!1})}catch(n){throw new Ue("Failed to stop screen share","PERMISSION_DENIED",n)}}async getAudioInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(n=>n.kind==="audioinput")}catch(t){throw new Ue("Failed to get audio input devices","DEVICE_ERROR",t)}}async getVideoInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(n=>n.kind==="videoinput")}catch(t){throw new Ue("Failed to get video input devices","DEVICE_ERROR",t)}}async setAudioInputDevice(t){var n;try{if(!((n=this.room)!=null&&n.localParticipant))throw new Error("Not connected to room")}catch(r){throw new Ue("Failed to set audio input device","DEVICE_ERROR",r)}}async setVideoInputDevice(t){var n;try{if(!((n=this.room)!=null&&n.localParticipant))throw new Error("Not connected to room")}catch(r){throw new Ue("Failed to set video input device","DEVICE_ERROR",r)}}getMicrophoneTrack(){const t=this.getLocalParticipant();if(!t)return null;for(const[,n]of t.trackPublications)if(n.source===le.Track.Source.Microphone)return n.track;return null}getCameraTrack(){const t=this.getLocalParticipant();if(!t)return null;for(const[,n]of t.trackPublications)if(n.source===le.Track.Source.Camera)return n.track;return null}getScreenShareTrack(){const t=this.getLocalParticipant();if(!t)return null;for(const[,n]of t.trackPublications)if(n.source===le.Track.Source.ScreenShare)return n.track;return null}get isMicrophoneEnabled(){const t=this.getMicrophoneTrack();return t?!t.isMuted:!1}get isCameraEnabled(){const t=this.getCameraTrack();return t?!t.isMuted:!1}get isScreenShareEnabled(){const t=this.getScreenShareTrack();return t?!t.isMuted:!1}getAgentAudioTrack(){const t=this.getRemoteParticipants();console.log("🔊 MediaManager.getAgentAudioTrack: Checking remote participants:",{count:t.length,participants:t.map(n=>({identity:n.identity,name:n.name,hasMicTrack:!!n.getTrackPublication(le.Track.Source.Microphone)}))});for(const n of t){const r=n.getTrackPublication(le.Track.Source.Microphone);if(r!=null&&r.track)return console.log("✅ MediaManager.getAgentAudioTrack: Found audio track for",n.identity),{source:le.Track.Source.Microphone,participant:n,publication:r}}return console.log("❌ MediaManager.getAgentAudioTrack: No audio track found"),null}getAgentVideoTrack(){const t=this.getRemoteParticipants();for(const n of t){const r=n.getTrackPublication(le.Track.Source.Camera);if(r!=null&&r.track)return{source:le.Track.Source.Camera,participant:n,publication:r}}return null}getVideoTrackRefs(){const t=[],n=this.getLocalParticipant();if(n){const i=n.getTrackPublication(le.Track.Source.Camera);i!=null&&i.track&&t.push({source:le.Track.Source.Camera,participant:n,publication:i});const o=n.getTrackPublication(le.Track.Source.ScreenShare);o!=null&&o.track&&t.push({source:le.Track.Source.ScreenShare,participant:n,publication:o})}const r=this.getRemoteParticipants();for(const i of r){const o=i.getTrackPublication(le.Track.Source.Camera);o!=null&&o.track&&t.push({source:le.Track.Source.Camera,participant:i,publication:o});const s=i.getTrackPublication(le.Track.Source.ScreenShare);s!=null&&s.track&&t.push({source:le.Track.Source.ScreenShare,participant:i,publication:s})}return t}getCameraTrackRefs(){return this.getVideoTrackRefs().filter(t=>t.source===le.Track.Source.Camera)}getScreenShareTrackRefs(){return this.getVideoTrackRefs().filter(t=>t.source===le.Track.Source.ScreenShare)}getPublishPermissions(){const t=this.getLocalParticipant();if(!t)return{camera:!1,microphone:!1,screenShare:!1,data:!1};const n=t.permissions;if(!n)return{camera:!0,microphone:!0,screenShare:!0,data:!0};const r=i=>!!n.canPublish&&(n.canPublishSources.length===0||n.canPublishSources.includes(i));return{camera:r(1),microphone:r(2),screenShare:r(3),data:n.canPublishData??!1}}canPublishSource(t){return this.getPublishPermissions()[t]}}class dm{constructor(t,n){Ce(this,"room",null);Ce(this,"config");Ce(this,"eventEmitter");Ce(this,"connectionState",le.ConnectionState.Disconnected);Ce(this,"isConnected",!1);Ce(this,"currentAgentInfo",null);this.config=t,this.eventEmitter=n,this.initializeRoom()}initializeRoom(){this.room=new le.Room({adaptiveStream:!1,stopLocalTrackOnUnpublish:!1,audioCaptureDefaults:{autoGainControl:!0,echoCancellation:!0,noiseSuppression:!0},publishDefaults:{stopMicTrackOnMute:!1,preConnectBuffer:!0}}),this.setupRoomEventListeners()}setupRoomEventListeners(){this.room&&(this.room.on(le.RoomEvent.Connected,()=>{this.connectionState=le.ConnectionState.Connected,this.isConnected=!0,console.log("📡 ConnectionManager: Emitting connection.connected event"),this.eventEmitter.emit("connection.connected")}),this.room.on(le.RoomEvent.Disconnected,t=>{console.log("ConnectionManager: Room disconnected, reason:",t),this.connectionState=le.ConnectionState.Disconnected,this.isConnected=!1,t&&console.log("ConnectionManager: Disconnect reason details:",{reason:t.toString(),connectionState:this.connectionState}),this.eventEmitter.emit("connection.disconnected",t==null?void 0:t.toString())}),this.room.on(le.RoomEvent.ConnectionStateChanged,t=>{this.connectionState=t,t===le.ConnectionState.Connecting&&this.eventEmitter.emit("connection.connecting")}),this.room.on(le.RoomEvent.ParticipantConnected,t=>{const n={id:t.identity,name:t.name||t.identity,isLocal:!1};this.eventEmitter.emit("participant.joined",n)}),this.room.on(le.RoomEvent.ParticipantDisconnected,t=>{const n={id:t.identity,name:t.name||t.identity,isLocal:!1};this.eventEmitter.emit("participant.left",n)}),this.room.on(le.RoomEvent.LocalTrackPublished,t=>{console.log("ConnectionManager: Local track published:",t.source),t.source===le.Track.Source.ScreenShare?this.eventEmitter.emit("track.unmuted",{source:"screenShare",enabled:!0}):t.source===le.Track.Source.Microphone&&(console.log("✅ ConnectionManager: Local MICROPHONE track RE-PUBLISHED at:",new Date().toISOString()),console.log(" Track restart complete - audio should resume"))}),this.room.on(le.RoomEvent.LocalTrackUnpublished,t=>{console.log(" ConnectionManager: Local track unpublished:",t.source),t.source===le.Track.Source.ScreenShare?this.eventEmitter.emit("track.muted",{source:"screenShare",enabled:!1}):t.source===le.Track.Source.Microphone&&(console.warn("⚠️ ConnectionManager: Local MICROPHONE track UNPUBLISHED at:",new Date().toISOString()),console.log(" ⚠️ WARNING: This will cause audio disruption!"))}),this.room.on(le.RoomEvent.LocalAudioSilenceDetected,()=>{var t,n;console.log("🔇 ConnectionManager: Local audio silence detected at:",new Date().toISOString()),console.log(" Remote participants count:",(t=this.room)==null?void 0:t.remoteParticipants.size),(n=this.room)==null||n.remoteParticipants.forEach(r=>{console.log(" Remote participant:",r.identity,{audioTracks:r.audioTrackPublications.size,hasAudio:Array.from(r.audioTrackPublications.values()).some(i=>i.track)})})}),this.room.on(le.RoomEvent.TrackSubscribed,(t,n,r)=>{var i,o;console.log("🎵 ConnectionManager: Track subscribed:",{trackKind:t.kind,trackSource:t.source,participantIdentity:r.identity,isAgent:(i=r.identity)==null?void 0:i.startsWith("agent-")}),this.eventEmitter.emit("media.track.subscribed",{id:t.sid||n.trackSid,kind:t.kind,source:((o=t.source)==null?void 0:o.toString())||"unknown",participantId:r.identity,isEnabled:!t.isMuted,isMuted:t.isMuted})}),this.room.on(le.RoomEvent.TrackUnsubscribed,(t,n,r)=>{var i;console.log("🔇 ConnectionManager: Track unsubscribed:",{trackKind:t.kind,participantIdentity:r.identity}),this.eventEmitter.emit("media.track.unsubscribed",{id:t.sid||n.trackSid,kind:t.kind,source:((i=t.source)==null?void 0:i.toString())||"unknown",participantId:r.identity,isEnabled:!1,isMuted:!0})}))}async fetchConnectionDetails(t,n,r,i){try{const o={agent_id:t,participant_name:n,participant_metadata:i||{user_id:""},modality:r[0],modalities:r},s={accept:"application/json","Content-Type":"application/json"};if(this.config.authToken)s.Authorization=`Bearer ${this.config.authToken}`;else if(this.config.appId&&this.config.appSecret)s["X-APP-ID"]=this.config.appId,s["X-APP-SECRET"]=this.config.appSecret;else throw new Error("Either authToken or both appId and appSecret must be provided");const a=await fetch(`${this.config.baseUrl}/api/live/agent/session`,{method:"POST",headers:s,body:JSON.stringify(o)});if(!a.ok){let u=`HTTP ${a.status}: Failed to fetch connection details`;try{const d=await a.json();d&&(d.error?u=`API Error: ${d.error}`:d.detail?u=`API Error: ${d.detail}`:d.message&&(u=`API Error: ${d.message}`))}catch{try{const f=await a.text();f&&(u=`API Error: ${f}`)}catch{}}throw new Error(u)}const l=await a.json();let c;return l.agent_info&&(c={id:l.agent_info.agent_info.id,name:l.agent_info.agent_info.name,capabilities:l.agent_info.capabilities,modality_supported:l.agent_info.modality_supported,session_settings:l.agent_info.session_settings||{}},this.currentAgentInfo=c),{serverUrl:l.wss_url,participantToken:l.token,voxketSessionId:l.session_id,agentInfo:c}}catch(o){console.error("ConnectionManager: fetchConnectionDetails failed:",o);const s=new Ue(`Failed to fetch connection details: ${o instanceof Error?o.message:"Unknown error"}`,"CONNECTION_FAILED",o);throw this.eventEmitter.emit("connection.error",s),s}}async connect(t,n,r,i){var o;try{this.eventEmitter.emit("connection.connecting");const s=await this.fetchConnectionDetails(t,n,r,i);return await((o=this.room)==null?void 0:o.connect(s.serverUrl,s.participantToken)),this.isConnected=!0,s}catch(s){console.error("ConnectionManager: Connection failed:",s);const a=new Ue(`Failed to connect to Voxket services: ${s instanceof Error?s.message:"Unknown error"}`,"CONNECTION_FAILED",s);throw this.eventEmitter.emit("connection.error",a),a}}async disconnect(){try{this.room&&await this.room.disconnect(),this.isConnected=!1,this.currentAgentInfo=null,this.initializeRoom(),this.eventEmitter.emit("connection.disconnected")}catch(t){console.error("ConnectionManager: Disconnect failed:",t);const n=new Ue("Failed to disconnect properly","NETWORK_ERROR",t);throw this.eventEmitter.emit("connection.error",n),n}}getRoom(){return this.room}getConnectionState(){return this.connectionState}get connected(){return this.isConnected&&this.connectionState===le.ConnectionState.Connected}getCurrentAgentInfo(){return this.currentAgentInfo}getParticipants(){if(!this.room)return[];const t=[];return this.room.localParticipant&&t.push({id:this.room.localParticipant.identity,name:this.room.localParticipant.name||this.room.localParticipant.identity,isLocal:!0}),this.room.remoteParticipants.forEach(n=>{t.push({id:n.identity,name:n.name||n.identity,isLocal:!1})}),t}updateConfig(t){this.config={...this.config,...t}}}class fm{constructor(t,n,r){Ce(this,"room",null);Ce(this,"eventEmitter");Ce(this,"chatManager");Ce(this,"agentManager");Ce(this,"textStreamHandlersRegistered",!1);Ce(this,"_eventEmitters",new Map);this.eventEmitter=t,this.chatManager=n,this.agentManager=r}setRoom(t){this.room=t,t&&!this.textStreamHandlersRegistered&&(console.log("📡 StreamHandlerManager: Auto-registering handlers on room set"),this.setupTextStreamHandlers())}areHandlersRegistered(){return this.textStreamHandlersRegistered}resetHandlersFlag(){this.textStreamHandlersRegistered=!1}setupTextStreamHandlers(){this.room&&(this.registerChatHandler(),this.registerTranscriptionHandler(),this.registerSuggestedResponseHandler(),this.registerAgentStateHandler(),this.registerFunctionToolsHandler(),this.registerImageTextStreamHandler(),this.registerImageByteStreamHandler(),this.registerCommonTopicHandlers(),this.registerWildcardHandler(),this.textStreamHandlersRegistered=!0)}registerChatHandler(){try{this.room.registerTextStreamHandler("lk.chat",async(t,n)=>{try{const r=await t.readAll(),i={id:`msg_${Date.now()}_${n.identity||"user"}_${Math.random().toString(36).substr(2,9)}`,content:r,timestamp:new Date,sender:{id:n.identity||"user",name:n.identity||"User",type:"participant"},metadata:{topic:"lk.chat"}};this.eventEmitter.emit("chat.message.received",i)}catch(r){console.error("StreamHandlerManager: Failed to process lk.chat message:",r)}})}catch(t){console.warn("StreamHandlerManager: lk.chat handler already registered, skipping:",t)}}registerTranscriptionHandler(){try{console.log("📡 StreamHandlerManager: Registering lk.transcription handler"),this.room.registerTextStreamHandler("lk.transcription",async(t,n)=>{var r,i;console.log("💬 StreamHandlerManager: Received lk.transcription stream from:",n.identity);try{const o=n.identity===((i=(r=this.room)==null?void 0:r.localParticipant)==null?void 0:i.identity),s=n.identity,a=this.chatManager.getActiveTranscription(s);let l,c=!0;a?(l=a.messageId,c=!1):(l=`msg_${o?"user":"agent"}_${n.identity}_${Date.now()}`,this.chatManager.trackTranscription(s,l));let u="";const d=this.agentManager.getCurrentAgentInfo(),f=(d==null?void 0:d.name)||n.identity||"AI Assistant",p=o?"participant":"agent",m=o?"User":f,g={id:l,content:"",timestamp:new Date,sender:{id:n.identity||"unknown",name:m,type:p},metadata:{topic:"lk.transcription",streaming:!0}};c&&this.eventEmitter.emit("chat.message.received",g);for await(const w of t){u+=w;const _=this.chatManager.convertMarkdownToText(u),C={...g,content:_,metadata:{...g.metadata,streaming:!0}};this.eventEmitter.emit("chat.message.updated",C)}const v=this.chatManager.convertMarkdownToText(u),y={...g,content:v,metadata:{...g.metadata,streaming:!1}};this.eventEmitter.emit("chat.message.updated",y);const E={id:l,text:v,isFinal:!0,startTime:g.timestamp.getTime(),participantId:n.identity||"agent"};this.eventEmitter.emit("transcription.received",E)}catch(o){console.error("StreamHandlerManager: Failed to process lk.transcription message:",o);try{const s=await t.readAll(),a=this.agentManager.getCurrentAgentInfo(),l=(a==null?void 0:a.name)||n.identity||"AI Assistant",c={id:`msg_${Date.now()}_agent_transcription_${Math.random().toString(36).substr(2,9)}`,content:s,timestamp:new Date,sender:{id:n.identity||"agent",name:l,type:"agent"},metadata:{topic:"lk.transcription"}};this.eventEmitter.emit("chat.message.received",c),console.log("💬 StreamHandlerManager: Emitted chat.message.received:",{id:c.id,sender:c.sender.name,contentLength:c.content.length,preview:c.content.substring(0,50)});const u={id:c.id,text:c.content,isFinal:!0,startTime:c.timestamp.getTime(),participantId:n.identity||"agent"};this.eventEmitter.emit("transcription.received",u),console.log("📝 StreamHandlerManager: Emitted transcription.received:",{id:u.id,textLength:u.text.length})}catch(s){console.error("StreamHandlerManager: Fallback failed for lk.transcription:",s)}}})}catch(t){console.warn("StreamHandlerManager: lk.transcription handler already registered, skipping:",t)}}registerSuggestedResponseHandler(){try{this.room.registerTextStreamHandler("suggested_response",async t=>{const n=await t.readAll();let r=[];try{r=["tes","hello how are you","algebra make me learn that","what is the meaning of life"]}catch(i){console.warn("StreamHandlerManager: Failed to parse suggested_response:",i,n)}this.eventEmitter.emit("suggested.response",r)})}catch(t){console.warn("StreamHandlerManager: suggested_response handler already registered, skipping:",t)}}registerAgentStateHandler(){try{this.room.registerTextStreamHandler("agent_state_changed",async(t,n)=>{const r=await t.readAll();let i={};try{i=typeof r=="string"?JSON.parse(r.replace(/'/g,'"')):r}catch(o){console.warn("StreamHandlerManager: Failed to parse agent_state_changed:",o,r)}this.agentManager.handleAgentStateChanged(i)})}catch(t){console.warn("StreamHandlerManager: agent_state_changed handler already registered, skipping:",t)}}registerFunctionToolsHandler(){try{this.room.registerTextStreamHandler("function_tools_executed",async(t,n)=>{const r=await t.readAll();let i={};try{if(typeof r=="string")try{i=JSON.parse(r)}catch(o){let s=r;try{s=s.replace(/\bTrue\b/g,"true"),s=s.replace(/\bFalse\b/g,"false"),s=s.replace(/\bNone\b/g,"null");const a=s.replace(/\\"/g,"___ESCAPED_QUOTE___");let l="",c=!1;for(let u=0;u<a.length;u++){const d=a[u],f=u>0?a[u-1]:"";d==='"'&&f!=="\\"?(c=!c,l+=d):d==="'"&&f!=="\\"&&!c?l+='"':l+=d}s=l.replace(/___ESCAPED_QUOTE___/g,'\\"'),i=JSON.parse(s)}catch(a){console.warn("StreamHandlerManager: Enhanced parsing also failed:",a);try{let l=r.replace(/\bTrue\b/g,"true").replace(/\bFalse\b/g,"false").replace(/\bNone\b/g,"null");i=new Function("return "+l)()}catch(l){throw console.error("StreamHandlerManager: All parsing methods failed:",l),o}}}else i=r}catch(o){console.warn("StreamHandlerManager: Failed to parse function_tool_executed:",o,r);let s=null;if(typeof r=="string"&&r.includes("visualization_data"))try{const a=r.match(/"arguments":\s*"({.*?})"/);if(a){const l=a[1].replace(/\\"/g,'"');s=JSON.parse(l),console.log("🛠️ StreamHandlerManager: Extracted visualization data:",s)}}catch(a){console.warn("StreamHandlerManager: Failed to extract visualization data:",a)}i={type:"function_tools_executed",function_calls:[],function_call_outputs:[],created_at:Date.now()/1e3,parseError:!0,rawData:r,extractedVisualizationData:s}}this.eventEmitter.emit("tool.executed",i)})}catch(t){console.warn("StreamHandlerManager: function_tool_executed handler already registered, skipping:",t)}}registerImageTextStreamHandler(){try{this.room.registerTextStreamHandler("images",async(t,n)=>{try{const r=await t.readAll()}catch(r){console.error("StreamHandlerManager: Error processing images stream:",r)}})}catch(t){console.warn("StreamHandlerManager: images text handler already registered, skipping:",t)}}registerImageByteStreamHandler(){try{this.room.registerByteStreamHandler("images",async(t,n)=>{var r,i;try{const o=t.info,s={id:`img_${Date.now()}_${n.identity||"agent"}_${Math.random().toString(36).substr(2,9)}`,content:`🖼️ ${o.name||"Image"}`,sender:{id:n.identity||"agent",name:n.identity||"Agent",type:n.identity===((i=(r=this.room)==null?void 0:r.localParticipant)==null?void 0:i.identity)?"participant":"agent"},timestamp:new Date,metadata:{type:"attachment",fileName:o.name,fileSize:o.size,mimeType:o.mimeType,streamId:o.id,downloading:!0}};this.eventEmitter.emit("chat.message.received",s),t.onProgress&&(t.onProgress=d=>{const f={...s,metadata:{...s.metadata,downloadProgress:d||0}};this.eventEmitter.emit("chat.message.updated",f)});const a=[];for await(const d of t)a.push(d);const l=new Blob(a,{type:o.mimeType||"application/octet-stream"}),c=URL.createObjectURL(l),u={...s,metadata:{...s.metadata,downloading:!1,downloadProgress:1,downloadUrl:c,blob:l}};this.eventEmitter.emit("chat.message.updated",u)}catch(o){console.error("StreamHandlerManager: Error processing image attachment:",o)}})}catch(t){console.warn("StreamHandlerManager: image byte handler already registered, skipping:",t)}}registerCommonTopicHandlers(){["error","warning","status","system","debug","info"].forEach(n=>{try{this.room.registerTextStreamHandler(n,async(r,i)=>{try{const o=await r.readAll();if(console.log(`📝 StreamHandlerManager: Received '${n}' stream:`,o),n==="error"){let s={};try{s=typeof o=="string"?JSON.parse(o):o}catch{s={message:o}}console.warn("⚠️ StreamHandlerManager: Agent error:",s),this.eventEmitter.emit("agent.error",s)}else this.eventEmitter.emit("text.stream.received",{topic:n,data:o,participantInfo:i})}catch(o){console.error(`StreamHandlerManager: Failed to process '${n}' stream:`,o)}})}catch(r){console.warn(`StreamHandlerManager: Handler for '${n}' already registered, skipping:`,r)}})}registerWildcardHandler(){try{this.room.registerTextStreamHandler("*",async(t,n)=>{var r;try{const i=await t.readAll(),o=((r=t.info)==null?void 0:r.topic)||"unknown";if(this._eventEmitters.has(o)){const s=this._eventEmitters.get(o);try{s(i),console.log(`📝 StreamHandlerManager: Processed custom topic '${o}' via event emitter`)}catch(a){console.error(`StreamHandlerManager: Error in custom handler for topic '${o}':`,a)}}else console.log(`📝 StreamHandlerManager: Received unhandled text stream for topic '${o}':`,i),this.eventEmitter.emit("text.stream.unhandled",{topic:o,data:i,participantInfo:n})}catch(i){console.error("StreamHandlerManager: Failed to process unhandled text stream:",i)}})}catch(t){console.warn("StreamHandlerManager: Generic text stream handler already registered, skipping:",t)}}registerEventEmitter(t,n){if(!this.room)throw new Error("Room not available");this._eventEmitters.set(t,n),console.log(`📝 StreamHandlerManager: Stored handler for topic '${t}' in event emitters map`);try{this.room.registerTextStreamHandler(t,async r=>{try{const i=await r.readAll();console.log(`📝 StreamHandlerManager: Direct handler called for topic '${t}'`),n(i)}catch(i){console.error(`Error processing event for topic '${t}':`,i)}}),console.log(`📝 StreamHandlerManager: Successfully registered direct handler for topic '${t}'`)}catch(r){console.warn(`StreamHandlerManager: Direct handler registration failed for topic '${t}':`,r),console.log(`📝 StreamHandlerManager: Wildcard handler will process topic '${t}' instead`)}}getRegisteredEventEmitters(){return Array.from(this._eventEmitters.keys())}hasEventEmitter(t){return this._eventEmitters.has(t)}}const hm=N.createContext(null);function lo({config:e,children:t,autoConnect:n=!1,client:r}){const[i,o]=N.useState(null),[s,a]=N.useState(!1),[l,c]=N.useState(!1),[u,d]=N.useState(null),[f,p]=N.useState(null),[m,g]=N.useState("idle"),[v,y]=N.useState(null),[E,w]=N.useState([]),[_,C]=N.useState([]),[T,R]=N.useState([]);N.useEffect(()=>{const $=r||new Ti(e);o($);const x=A($);return n&&!r&&I($),()=>{x(),r||$.disconnect().catch(console.error)}},[e,n,r]);const A=$=>{const x=()=>{c(!0),d(null)},z=()=>{a(!0),c(!1),d(null)},G=()=>{a(!1),c(!1),p(null),g("idle"),w([]),C([]),R([])},k=ne=>{d(ne),c(!1)},K=ne=>{p(ne),g(ne.state)},Z=ne=>{g(ne),f&&p({...f,state:ne})},X=(ne,Se)=>{p(null),g("idle"),y(Se),w([]),C([]),R([])},ie=ne=>{w(Se=>[...Se,ne])},Y=ne=>{w(Se=>Se.filter(pe=>pe.id!==ne.id))},re=ne=>{C(Se=>[...Se,ne])},H=ne=>{C(Se=>[...Se,ne])},Ee=ne=>{console.log("📝 VoxketProvider: Received transcription:",ne),R(Se=>Se.find(se=>se.id===ne.id)?(console.log("📝 VoxketProvider: Duplicate transcription detected, skipping:",ne.id),Se):(console.log("📝 VoxketProvider: Adding new transcription:",ne.id),[...Se,ne]))},P=()=>{console.log("🧹 VoxketProvider: Clearing chat messages and transcriptions"),C([]),R([])};return $.on("connection.connecting",x),$.on("connection.connected",z),$.on("connection.disconnected",G),$.on("connection.error",k),$.on("session.created",K),$.on("session.state.changed",Z),$.on("session.ended",X),$.on("participant.joined",ie),$.on("participant.left",Y),$.on("chat.message.received",re),$.on("chat.message.sent",H),$.on("transcription.received",Ee),$.on("chat.history.cleared",P),()=>{console.log("📝 VoxketProvider: Cleaning up event listeners"),$.off("connection.connecting",x),$.off("connection.connected",z),$.off("connection.disconnected",G),$.off("connection.error",k),$.off("session.created",K),$.off("session.state.changed",Z),$.off("session.ended",X),$.off("participant.joined",ie),$.off("participant.left",Y),$.off("chat.message.received",re),$.off("chat.message.sent",H),$.off("chat.history.cleared",P),$.off("transcription.received",Ee)}},I=async $=>{const x=$||i;if(x)try{await x.connect()}catch(z){console.error("Failed to connect:",z)}},B={client:i,isConnected:s,isConnecting:l,connectionError:u,currentSession:f,sessionState:m,sessionMetrics:v,participants:E,chatMessages:_,transcriptions:T,connect:()=>I(),disconnect:async()=>{if(i)try{await i.disconnect()}catch($){console.error("Failed to disconnect:",$)}},createSession:async($,x={})=>{if(!i)throw new Error("Client not initialized");const z={agentId:$,participantName:x.participantName||"User",metadata:x.metadata,modalities:x.modalities||["voice"]};return await i.createSession(z)},endSession:async()=>i?await i.endSession():null,sendChatMessage:async $=>{if(!i)throw new Error("Client not initialized");await i.sendChatMessage($)},setMicrophoneEnabled:async $=>{if(!i)throw new Error("Client not initialized");await i.setMicrophoneEnabled($)},setCameraEnabled:async $=>{if(!i)throw new Error("Client not initialized");await i.setCameraEnabled($)},startScreenShare:async()=>{if(!i)throw new Error("Client not initialized");await i.startScreenShare()},stopScreenShare:async()=>{if(!i)throw new Error("Client not initialized");await i.stopScreenShare()}};return h.jsx(hm.Provider,{value:B,children:t})}function hn(){const e=N.useContext(hm);if(!e)throw new Error("useVoxket must be used within a VoxketProvider");return e}const An=new WeakSet,ta=new WeakSet;class pm{constructor(t,n){Ce(this,"renderedComponents",new Map);Ce(this,"config");Ce(this,"voxketClient");this.config=t,this.voxketClient=n}renderUI(t={}){const n=this.resolveTarget(t.target||"body"),r=this.getTargetKey(n);if(ta.has(n)){console.warn("⚠️ UIRenderer: Target is already being processed, skipping renderUI");return}if(An.has(n)){console.log("✋ UIRenderer: Target already has a React root in registry, updating existing props...");const o=this.renderedComponents.get(r);if(o&&o.root){const s=this.buildWidgetProps(t);try{o.root.render(N.createElement(lo,{config:this.config,autoConnect:t.autoStart||!1,client:this.voxketClient,children:N.createElement(co,s)})),console.log("✅ UIRenderer: Successfully updated existing widget with new props");return}catch(a){throw console.error("Error re-rendering existing widget:",a),new Error(`Failed to update existing widget: ${a instanceof Error?a.message:"Unknown error"}`)}}else console.warn("⚠️ Registry inconsistency detected, cleaning up"),An.delete(n)}let i=this.renderedComponents.get(r);if(i&&i.target===n&&An.has(n)){console.log("🔄 UIRenderer: Reusing existing React root for target:",r);const o=i.root,s=this.buildWidgetProps(t);try{o.render(N.createElement(lo,{config:this.config,autoConnect:t.autoStart||!1,client:this.voxketClient,children:N.createElement(co,s)}))}catch(a){throw console.error("Error rendering Voxket widget:",a),new Error(`Failed to render Voxket widget: ${a instanceof Error?a.message:"Unknown error"}`)}return}ta.add(n);try{if(i){console.log("🧹 UIRenderer: Cleaning up existing component for different target");try{i.root.unmount(),this.renderedComponents.delete(r),An.delete(i.target),n.innerHTML=""}catch(a){console.warn("Failed to cleanup existing root:",a)}}if(An.has(n)){console.warn("⚠️ UIRenderer: Target already in registry, skipping root creation");return}console.log("🆕 UIRenderer: Creating new React root for target:",r);const o=Xm.createRoot(n);this.renderedComponents.set(r,{root:o,target:n}),An.add(n);const s=this.buildWidgetProps(t);if(!o||typeof o.render!="function")throw new Error("Invalid React root. Make sure React 18+ is properly installed and configured.");try{o.render(N.createElement(lo,{config:this.config,autoConnect:t.autoStart||!1,client:this.voxketClient,children:N.createElement(co,s)}))}catch(a){throw console.error("Error rendering Voxket widget:",a),new Error(`Failed to render Voxket widget: ${a instanceof Error?a.message:"Unknown error"}`)}}finally{ta.delete(n)}}removeUI(t){const n=t?this.resolveTarget(t):null;if(n){const r=this.getTargetKey(n),i=this.renderedComponents.get(r);if(i){console.log("🗑️ UIRenderer: Removing UI for target:",r),this.renderedComponents.delete(r);const o=i.target,s=()=>{var a;try{o&&o.isConnected?typeof((a=i.root)==null?void 0:a.unmount)=="function"&&(i.root.unmount(),console.log("✅ UIRenderer: UI unmounted for target:",r)):console.log("ℹ️ UIRenderer: Target element already disconnected, skipping unmount")}catch(l){console.warn("Failed to unmount React root:",l)}finally{requestAnimationFrame(()=>{try{n.querySelectorAll('[id*="voxket"], [class*="voxket"], .fixed.inset-0.z-50').forEach(c=>{try{c.parentNode&&c.remove()}catch(u){console.warn("Failed to remove element:",u)}})}finally{An.delete(n)}})}};queueMicrotask(()=>setTimeout(s,0))}else console.log("ℹ️ UIRenderer: No component found for target, cleaning registry:",r),An.delete(n),n.isConnected&&n.hasChildNodes()&&(n.innerHTML="");n===document.body&&n.querySelectorAll(".fixed.z-50, .fixed.inset-0").forEach(s=>{if(s.classList.contains("bg-black")&&(s.classList.contains("backdrop-blur-sm")||s.classList.contains("bg-opacity-30")))try{s.remove()}catch(a){console.warn("Failed to remove fixed element:",a)}})}}removeAllUI(){for(const[t,n]of this.renderedComponents)n.root.unmount();this.renderedComponents.clear(),this.forceCleanupFullscreenOverlays()}forceCleanupFullscreenOverlays(){document.body.querySelectorAll(".fixed.inset-0.z-50").forEach(n=>{if(n.classList.contains("bg-black")&&(n.classList.contains("backdrop-blur-sm")||n.classList.contains("bg-opacity-30")))try{n.remove()}catch(r){console.warn("Failed to remove overlay:",r)}})}resolveTarget(t){if(typeof t=="string"){const n=document.querySelector(t);if(!n)throw new Error(`Target element not found: ${t}`);return n}return t}getTargetKey(t){return t.id?t.id:t.className?t.tagName+"_"+t.className.replace(/\s+/g,"_"):t.tagName+"_"+t.outerHTML.length%1e3}buildWidgetProps(t){var r,i,o;const n=this.config;return{agentId:t.agentId||n.agentId||"default-agent",participantName:t.participantName||n.participantName||"User",baseUrl:this.config.baseUrl,appSecret:this.config.appSecret,appId:this.config.appId,className:t.className,theme:typeof t.theme=="string"?t.theme:void 0,modalities:t.modality||n.modalities||["voice"],suportsChatInput:((r=t.modality)==null?void 0:r.includes("chat"))!==!1,suportsVideoInput:((i=t.modality)==null?void 0:i.includes("video"))===!0,suportsScreenShare:((o=t.modality)==null?void 0:o.includes("screen_share"))===!0,autoStart:t.autoStart,displayType:t.displayType||"widget",popupPosition:t.popupPosition||"bottom-right",popupTriggerText:t.popupTriggerText||"Open Chat",popupModalityMode:t.popupModalityMode||"all",width:t.width,height:t.height,onDisplayTypeChange:t.onDisplayTypeChange,prompts:t.prompts,statusMessage:t.statusMessage,welcomeTitle:t.welcomeTitle,welcomeSubTitle:t.welcomeSubTitle,loadingText:t.loadingText,voxketClient:this.voxketClient,participantMetadata:t.participantMetadata}}updateConfig(t){this.config=t}}class gm{constructor(t){Ce(this,"agentState","idle");Ce(this,"isAgentConnected",!1);Ce(this,"currentAgentInfo",null);Ce(this,"eventEmitter");this.eventEmitter=t}getAgentState(){return this.agentState}setAgentState(t){this.agentState!==t&&(this.agentState=t,this.eventEmitter.emit("agent.state.changed",{state:t}))}getIsAgentConnected(){return this.isAgentConnected}setAgentConnected(t){this.isAgentConnected=t,console.log(t?"🤖 AgentManager: Agent marked as connected":"🤖 AgentManager: Agent marked as disconnected")}getCurrentAgentInfo(){return this.currentAgentInfo}setCurrentAgentInfo(t){this.currentAgentInfo=t,console.log("📝 AgentManager: Agent info updated:",t)}reset(){this.agentState="idle",this.isAgentConnected=!1,this.currentAgentInfo=null,console.log("🔄 AgentManager: Agent state reset")}handleAgentStateChanged(t){this.isAgentConnected||(this.setAgentConnected(!0),this.eventEmitter.emit("agent.connected",t)),t.new_state==="speaking"?(this.setAgentState("speaking"),this.eventEmitter.emit("agent.speaking",t)):t.new_state==="thinking"?(this.setAgentState("thinking"),this.eventEmitter.emit("agent.thinking",t)):(t.new_state==="idle"||t.new_state==="listening")&&this.setAgentState("idle")}}class Ti extends rc{constructor(n){super();Ce(this,"config");Ce(this,"pluginManager");Ce(this,"rpcManager");Ce(this,"chatManager");Ce(this,"mediaManager");Ce(this,"connectionManager");Ce(this,"streamHandlerManager");Ce(this,"uiRenderer");Ce(this,"agentManager");Ce(this,"currentSession",null);if(!n.authToken&&(!n.appId||!n.appSecret))throw new Error("Either authToken or both appId and appSecret must be provided");this.config=n,this.chatManager=new cm(this,n.participantName||"User"),this.mediaManager=new um(this),this.agentManager=new gm(this),this.connectionManager=new dm({baseUrl:n.baseUrl,appId:n.appId,appSecret:n.appSecret,authToken:n.authToken},this),this.streamHandlerManager=new fm(this,this.chatManager,this.agentManager),this.uiRenderer=new pm(n,this),this.pluginManager=new am(this),this.rpcManager=new lm,this.setupEventListeners(),this.setupRpcEventForwarding()}setupEventListeners(){this.on("connection.connected",()=>{var r,i,o,s,a,l,c;if(console.log("🔌 VoxketClient: connection.connected event fired",{hasSession:!!this.currentSession,sessionState:(r=this.currentSession)==null?void 0:r.state,sessionId:(i=this.currentSession)==null?void 0:i.id}),(s=(o=this.config).onConnected)==null||s.call(o),this.currentSession&&this.currentSession.state==="connecting"){const u=this.currentSession.state;this.currentSession.state="connected",this.emit("session.state.changed","connected",u),console.log("✅ VoxketClient: Session state changed to connected")}else console.log("⚠️ VoxketClient: Cannot update session state",{hasSession:!!this.currentSession,currentState:(a=this.currentSession)==null?void 0:a.state});const n=this.connectionManager.getRoom();if(n){this.rpcManager.setRoom(n);const u=Array.from(n.remoteParticipants.values()).find(d=>{var f;return(f=d.identity)==null?void 0:f.startsWith("agent-")});u&&(console.log("🤖 VoxketClient: Agent already in room, marking as connected",{agentIdentity:u.identity,hasAudioTrack:u.audioTrackPublications.size>0}),this.agentManager.getIsAgentConnected()||(this.agentManager.setAgentConnected(!0),this.emit("agent.connected",{identity:u.identity})))}(c=(l=this.currentSession)==null?void 0:l.activeModalities)!=null&&c.includes("voice")&&setTimeout(async()=>{try{this.mediaManager.getLocalParticipant()&&(this.mediaManager.isMicrophoneEnabled||(await this.mediaManager.setMicrophoneEnabled(!0),this.emit("track.unmuted",{source:"microphone",enabled:!0}),console.log("🎤 VoxketClient: Microphone enabled after connection")))}catch(u){console.warn("VoxketClient: Failed to enable microphone after room connection:",u)}},100)}),this.on("connection.disconnected",n=>{var r,i,o;(i=(r=this.config).onDisconnected)==null||i.call(r,n),this.streamHandlerManager.resetHandlersFlag(),this.agentManager.reset(),this.chatManager.clearChatMessages(),n&&console.log("🔍 VoxketClient: Disconnect reason details:",{reason:n.toString(),currentSession:(o=this.currentSession)==null?void 0:o.id})}),this.on("connection.error",n=>{var r,i;(i=(r=this.config).onError)==null||i.call(r,n)}),this.on("chat.message.received",n=>{var r,i;this.chatManager.addChatMessage(n),(i=(r=this.config).onMessageReceived)==null||i.call(r,n)}),this.on("chat.message.updated",n=>{this.chatManager.updateChatMessage(n)}),this.on("chat.message.sent",n=>{this.chatManager.addChatMessage(n)}),this.on("transcription.received",n=>{var r,i;(i=(r=this.config).onTranscriptionReceived)==null||i.call(r,n)}),this.on("session.state.changed",n=>{var r,i;(i=(r=this.config).onSessionStateChanged)==null||i.call(r,n)}),this.on("session.created",n=>{var r,i;(i=(r=this.config).onSessionStart)==null||i.call(r,n.id)}),this.on("session.ended",(n,r)=>{var i,o;(o=(i=this.config).onSessionEnd)==null||o.call(i,r)}),this.on("participant.joined",n=>{var r,i;(i=(r=this.config).onUserJoined)==null||i.call(r,n.id)}),this.on("participant.left",n=>{var r,i;(i=(r=this.config).onUserLeft)==null||i.call(r,n.id)})}setupRpcEventForwarding(){if(!this.rpcManager){console.warn("RpcManager not initialized, skipping event forwarding setup");return}this.rpcManager.on("rpc.method.registered",n=>this.emit("rpc.method.registered",n)),this.rpcManager.on("rpc.method.called",n=>this.emit("rpc.method.called",n)),this.rpcManager.on("rpc.interaction.started",n=>this.emit("rpc.interaction.started",n)),this.rpcManager.on("rpc.interaction.completed",n=>this.emit("rpc.interaction.completed",n)),this.rpcManager.on("rpc.interaction.timeout",n=>this.emit("rpc.interaction.timeout",n)),this.rpcManager.on("rpc.interaction.dismissed",n=>this.emit("rpc.interaction.dismissed",n))}async connect(n,r,i,o){const s=n||this.config.agentId||"default-agent",a=r||this.config.participantName||"User",l=i||this.config.modalities||["voice"],c=o||this.config.participantMetadata,u=await this.connectionManager.connect(s,a,l,c),d=this.connectionManager.getRoom();return this.chatManager.setRoom(d),this.mediaManager.setRoom(d),this.streamHandlerManager.setRoom(d),u.agentInfo&&this.agentManager.setCurrentAgentInfo(u.agentInfo),u}async disconnect(){await this.connectionManager.disconnect(),this.currentSession=null;const n=this.connectionManager.getRoom();this.chatManager.setRoom(n),this.mediaManager.setRoom(n),this.streamHandlerManager.setRoom(n)}async createSession(n){var r,i;try{const o=await this.connect(n.agentId,n.participantName,n.modalities,n.participantMetadata),s={id:o.voxketSessionId,agentId:n.agentId,state:"connecting",startedAt:new Date,metadata:n.metadata||{},activeModalities:n.modalities||["voice"],agentInfo:o.agentInfo||this.agentManager.getCurrentAgentInfo()};this.currentSession=s,this.emit("session.created",s);const a=this.connectionManager.getRoom();if(a&&(a.state!=="connected"?(console.log("⏳ VoxketClient: Waiting for room to connect..."),await new Promise((c,u)=>{const d=setTimeout(()=>{u(new Error("Room connection timeout"))},1e4),f=()=>{clearTimeout(d),a.off("connected",f),a.off("disconnected",p),console.log("✅ VoxketClient: Room connected successfully"),c()},p=()=>{clearTimeout(d),a.off("connected",f),a.off("disconnected",p),u(new Error("Room disconnected while waiting for connection"))};a.once("connected",f),a.once("disconnected",p)})):console.log("✅ VoxketClient: Room already connected"),this.currentSession.state="connected",this.emit("session.state.changed","connected","connecting"),console.log("⏳ VoxketClient: Waiting for agent to connect..."),await new Promise(c=>{const u=setTimeout(()=>{console.warn("⚠️ VoxketClient: Agent connection timeout (30s), continuing anyway"),c(!1)},3e4),d=()=>{clearTimeout(u),this.off("agent.connected",d),this.off("participant.joined",f),console.log("✅ VoxketClient: Agent connected and ready"),c(!0)},f=p=>{var m,g;((m=p.id)!=null&&m.startsWith("agent-")||(g=p.name)!=null&&g.toLowerCase().includes("agent"))&&(clearTimeout(u),this.off("agent.connected",d),this.off("participant.joined",f),console.log("✅ VoxketClient: Agent participant joined:",p.name||p.id),c(!0))};this.once("agent.connected",d),this.on("participant.joined",f),this.agentManager.getIsAgentConnected()&&(clearTimeout(u),this.off("agent.connected",d),this.off("participant.joined",f),console.log("✅ VoxketClient: Agent already connected"),c(!0))})&&(this.currentSession.state="active",this.emit("session.state.changed","active","connected"))),(r=n.modalities)!=null&&r.includes("voice"))try{await this.mediaManager.setMicrophoneEnabled(!0),this.emit("track.unmuted",{source:"microphone",enabled:!0}),console.log("🎤 VoxketClient: Microphone enabled successfully")}catch(l){console.warn("VoxketClient: Failed to enable microphone, but continuing with session:",l)}if((i=n.modalities)!=null&&i.includes("video"))try{await new Promise(l=>setTimeout(l,200)),await this.mediaManager.enableCamera(),console.log("🎥 VoxketClient: Camera enabled successfully")}catch(l){console.warn("VoxketClient: Failed to enable camera, but continuing with session:",l)}return s}catch(o){throw console.error("VoxketClient: Failed to create session:",o),o instanceof Ue?o:o instanceof TypeError&&o.message.includes("fetch")?new Ue("Network connection failed","CONNECTION_FAILED",o):o instanceof Error&&o.message.includes("Failed to fetch connection details")?new Ue(`API connection failed: ${o.message}`,"CONNECTION_FAILED",o):new Ue(`Failed to create session: ${o instanceof Error?o.message:"Unknown error"}`,"SESSION_NOT_FOUND",o)}}async startSession(n,r){const i={agentId:n||this.config.agentId||"default-agent",participantName:(r==null?void 0:r.participantName)||this.config.participantName||"User",modalities:(r==null?void 0:r.modalities)||this.config.modalities||["voice","chat"],metadata:r==null?void 0:r.metadata,participantMetadata:r==null?void 0:r.participantMetadata};return this.createSession(i)}async endSession(){var n,r;if(!this.currentSession)return null;try{const i={sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((r=this.connectionManager.getRoom())==null?void 0:r.remoteParticipants.size)||0,audioQuality:{avgBitrate:64e3,avgLatency:150,packetLoss:.01,jitter:.05},videoQuality:{avgBitrate:5e5,avgLatency:150,packetLoss:.01,jitter:.05},networkStats:{totalBytesReceived:0,totalBytesSent:0,connectionType:"webrtc",avgRoundTripTime:150},events:[]};return this.currentSession.endedAt=new Date,this.currentSession.state="disconnected",this.emit("session.ended",this.currentSession,i),await this.disconnect(),i}catch(i){throw new Ue("Failed to end session","SESSION_NOT_FOUND",i)}}getCurrentSession(){return this.currentSession}getSessionMetrics(){var n,r;return this.currentSession?{sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((r=this.connectionManager.getRoom())==null?void 0:r.remoteParticipants.size)||0,audioQuality:{avgBitrate:64e3,avgLatency:150,packetLoss:.01,jitter:.05},videoQuality:{avgBitrate:5e5,avgLatency:150,packetLoss:.01,jitter:.05},networkStats:{totalBytesReceived:0,totalBytesSent:0,connectionType:"webrtc",avgRoundTripTime:150},events:[]}:null}async sendMessage(n,r){if(!this.currentSession)throw new Ue("No active session","SESSION_NOT_FOUND");return this.dismissCurrentInteraction(),this.chatManager.sendMessage(n,r)}async sendChatMessage(n,r){return this.sendMessage(n,r)}async sendAttachments(n,r){if(!this.currentSession)throw new Ue("No active session","SESSION_NOT_FOUND");return this.dismissCurrentInteraction(),this.chatManager.sendAttachments(n,r)}async sendAttachment(n,r){return this.chatManager.sendAttachment(n,r)}getChatMessages(){return this.chatManager.getChatMessages()}addChatMessage(n){this.chatManager.addChatMessage(n)}updateChatMessage(n){this.chatManager.updateChatMessage(n)}clearChatMessages(){this.chatManager.clearChatMessages(),this.dismissCurrentInteraction(),this.uiRenderer.removeAllUI()}toggleMicrophone(n){return this.mediaManager.toggleMicrophone(n)}async setMicrophoneEnabled(n){return this.mediaManager.setMicrophoneEnabled(n)}toggleCamera(n){return this.mediaManager.toggleCamera(n)}async setCameraEnabled(n){return this.mediaManager.setCameraEnabled(n)}async enableCamera(){return this.mediaManager.enableCamera()}async disableCamera(){return this.mediaManager.disableCamera()}async startScreenShare(){return this.mediaManager.startScreenShare()}async stopScreenShare(){return this.mediaManager.stopScreenShare()}async getAudioInputDevices(){return this.mediaManager.getAudioInputDevices()}async getVideoInputDevices(){return this.mediaManager.getVideoInputDevices()}async setAudioInputDevice(n){return this.mediaManager.setAudioInputDevice(n)}async setVideoInputDevice(n){return this.mediaManager.setVideoInputDevice(n)}get isMicrophoneEnabled(){return this.mediaManager.isMicrophoneEnabled}get isCameraEnabled(){return this.mediaManager.isCameraEnabled}get isScreenShareEnabled(){return this.mediaManager.isScreenShareEnabled}getMicrophoneTrack(){return this.mediaManager.getMicrophoneTrack()}getCameraTrack(){return this.mediaManager.getCameraTrack()}getScreenShareTrack(){return this.mediaManager.getScreenShareTrack()}getAgentAudioTrack(){return this.mediaManager.getAgentAudioTrack()}getAgentVideoTrack(){return this.mediaManager.getAgentVideoTrack()}getVideoTrackRefs(){return this.mediaManager.getVideoTrackRefs()}getCameraTrackRefs(){return this.mediaManager.getCameraTrackRefs()}getScreenShareTrackRefs(){return this.mediaManager.getScreenShareTrackRefs()}getPublishPermissions(){return this.mediaManager.getPublishPermissions()}canPublishSource(n){return this.mediaManager.canPublishSource(n)}getLocalParticipant(){return this.mediaManager.getLocalParticipant()}getRemoteParticipants(){return this.mediaManager.getRemoteParticipants()}getParticipants(){return this.connectionManager.getParticipants()}getRoom(){return this.connectionManager.getRoom()}getConnectionState(){return this.connectionManager.getConnectionState()}get connected(){return this.connectionManager.connected}getCurrentAgentInfo(){return this.agentManager.getCurrentAgentInfo()}getIsAgentConnected(){return this.agentManager.getIsAgentConnected()}getAgentState(){return this.agentManager.getAgentState()}renderUI(n={}){this.uiRenderer.renderUI(n)}removeUI(n){this.uiRenderer.removeUI(n)}removeAllUI(){this.uiRenderer.removeAllUI()}async registerFrontendRPC(n,r,i="embedded"){return this.rpcManager.registerFrontendRPC(n,r,i)}getCurrentInteraction(){return this.rpcManager.getCurrentInteraction()}dismissCurrentInteraction(){this.rpcManager.dismissCurrentInteraction()}getRegisteredRpcMethods(){return this.rpcManager.getRegisteredMethods()}unregisterRpcMethod(n){this.rpcManager.unregisterMethod(n)}registerPlugin(n){this.pluginManager.register(n)}getPluginManager(){return this.pluginManager}registerEventListener(n,r){return this.on(n,r)}registerEventEmitter(n,r){return this.streamHandlerManager.registerEventEmitter(n,r)}getRegisteredEventEmitters(){return this.streamHandlerManager.getRegisteredEventEmitters()}hasEventEmitter(n){return this.streamHandlerManager.hasEventEmitter(n)}updateConfig(n){this.config={...this.config,...n},this.uiRenderer.updateConfig(this.config),this.connectionManager.updateConfig({baseUrl:this.config.baseUrl,appId:this.config.appId,appSecret:this.config.appSecret}),this.chatManager.setParticipantName(this.config.participantName||"User")}setParticipantMetadata(n){this.config.participantMetadata=n}getParticipantMetadata(){return this.config.participantMetadata}async startRecording(){var n;try{this.emit("recording.started",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(r){throw new Ue("Failed to start recording","RECORDING_ERROR",r)}}async stopRecording(){var n;try{this.emit("recording.stopped",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(r){throw new Ue("Failed to stop recording","RECORDING_ERROR",r)}}}const WR=Me.create(Bg),GR=Me.create(Gl),KR=Me.create($g),qR=Me.create(im);function YR({theme:e,mode:t,loadingText:n,sessionState:r}){const i=Pt(e),o=()=>{if(r==="connected")return"Connecting to agent...";if(n)return n;switch(t){case"voice":return"Connecting to voice agent...";case"chat":return"Starting chat session...";case"video":return"Connecting to video call...";default:return"Connecting..."}};return h.jsxs("div",{className:"flex flex-col items-center justify-center h-full w-full p-8",children:[h.jsxs("div",{className:"text-center",children:[h.jsx("h3",{className:`text-lg font-semibold mb-2 ${i.text.accent}`,children:o()}),h.jsx("p",{className:`text-sm ${i.text.muted}`,children:"Please wait a moment..."})]}),h.jsxs("div",{className:"flex space-x-1 mt-4",children:[h.jsx("div",{className:"w-2 h-2 rounded-full animate-bounce bg-blue-500",style:{animationDelay:"0ms"}}),h.jsx("div",{className:"w-2 h-2 rounded-full animate-bounce bg-blue-500",style:{animationDelay:"150ms"}}),h.jsx("div",{className:"w-2 h-2 rounded-full animate-bounce bg-blue-500",style:{animationDelay:"300ms"}})]})]})}const ZR=Me.create(YR);function xf({children:e,theme:t,displayType:n="widget",onClose:r,popupPosition:i="bottom-right",onExpand:o}){const s=Pt(t);if(n==="fullscreen")return h.jsx("div",{className:"fixed inset-0 z-[9999] bg-black/40 bg-opacity-30 backdrop-blur-sm flex items-center justify-center p-8",onClick:a=>{a.target===a.currentTarget&&r&&r()},children:h.jsxs("div",{className:"w-full h-full max-w-7xl max-h-[95vh] rounded-2xl relative bg-transparent flex flex-col",onClick:a=>{a.stopPropagation()},children:[r&&h.jsx("button",{onClick:a=>{a.preventDefault(),a.stopPropagation(),r()},className:"absolute top-4 cursor-pointer right-4 z-[10000] w-12 h-12 rounded-full bg-gray-900 bg-opacity-90 text-white flex items-center justify-center hover:bg-gray-800 transition-all duration-200 shadow-lg border border-gray-700 backdrop-blur-sm",title:"Exit Fullscreen",type:"button",children:h.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:h.jsx("path",{d:"M8 3H5a2 2 0 0 0-2 2v3m18 0V5a2 2 0 0 0-2-2h-3m0 18h3a2 2 0 0 0 2-2v-3M3 16v3a2 2 0 0 0 2 2h3"})})}),h.jsxs("div",{id:"voice-card",className:`voxket-widget-root theme-${t} ${s.card} w-full h-full flex flex-col rounded-xl shadow-2xl relative overflow-hidden`,"data-theme":t,style:{minHeight:"600px",height:"100%",contain:"layout style paint",overscrollBehavior:"contain",backgroundColor:t==="midnight"?"#161a25":void 0},children:[h.jsx("div",{className:s.cardTopGradient}),h.jsx("div",{className:s.cardPurpleBlur}),h.jsx("div",{className:s.cardPinkBlur}),h.jsx("div",{className:"relative z-10 flex flex-col h-full",children:e}),h.jsx("div",{className:s.cardPulse1}),h.jsx("div",{className:s.cardPulse2,style:{animationDelay:"1s"}})]})]})});if(n==="popup"){const a={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"};return h.jsx("div",{className:"fixed rounded-2xl inset-0 z-[9999] pointer-events-none",children:h.jsxs("div",{className:`fixed rounded-2xl ${a[i]} pointer-events-auto`,children:[r&&h.jsx("button",{onClick:r,className:"absolute -top-2 -right-2 z-10 w-8 h-8 rounded-full bg-gray-900 bg-opacity-90 text-white flex items-center justify-center hover:bg-gray-800 transition-all duration-200 text-sm shadow-lg border border-gray-700",children:"×"}),h.jsxs("div",{id:"voice-card",className:`voxket-widget-root theme-${t} ${s.card} rounded-2xl flex flex-col relative overflow-hidden`,"data-theme":t,style:{width:"350px",height:"500px",contain:"layout style paint",overscrollBehavior:"contain",backgroundColor:t==="midnight"?"#161a25":void 0},children:[h.jsx("div",{className:s.cardTopGradient}),h.jsx("div",{className:s.cardPurpleBlur}),h.jsx("div",{className:s.cardPinkBlur}),h.jsx("div",{className:"relative z-10 flex flex-col h-full w-full",children:e}),h.jsx("div",{className:s.cardPulse1}),h.jsx("div",{className:s.cardPulse2,style:{animationDelay:"1s"}})]})]})})}return h.jsxs("div",{id:"voice-card",className:`voxket-widget-root theme-${t} ${s.card} relative overflow-hidden w-full h-full`,"data-theme":t,style:{height:"100%",maxHeight:"100%",contain:"layout style paint",overscrollBehavior:"contain",backgroundColor:t==="midnight"?"#161a25":void 0},children:[h.jsx("div",{className:s.cardTopGradient}),h.jsx("div",{className:s.cardPurpleBlur}),h.jsx("div",{className:s.cardPinkBlur}),h.jsx("div",{className:"relative z-10 flex flex-col h-full w-full",children:e}),h.jsx("div",{className:s.cardPulse1}),h.jsx("div",{className:s.cardPulse2,style:{animationDelay:"1s"}})]})}function XR(e){if(typeof window>"u")return null;const{agentId:t,participantName:n,baseUrl:r,appSecret:i,appId:o,authToken:s,prompts:a,statusMessage:l,welcomeTitle:c,welcomeSubTitle:u,className:d,width:f,height:p,loadingText:m,suportsChatInput:g=!0,suportsVideoInput:v=!0,suportsScreenShare:y=!0,theme:E="vox",onSessionStart:w,onSessionEnd:_,enableSessionLogging:C=!0,onSessionLogsUpdate:T,onSessionMetricsUpdate:R,modalities:A=["voice"],displayType:I="widget",popupPosition:b="bottom-right",popupTriggerText:M="Open Chat",onPopupToggle:O,voxketClient:L,onDisplayTypeChange:j,participantMetadata:W,popupModalityMode:oe="all",popupTriggerLogoUrl:te}=e,[B,$]=D.useState(!1),[x,z]=D.useState(null),[G,k]=D.useState(()=>{try{if(L)return!!L.getCurrentSession()}catch(S){console.error("Error checking existing session:",S)}return!1}),[K,Z]=D.useState(!1),[X,ie]=D.useState(t||""),[Y,re]=D.useState(n||"User"),[H,Ee]=D.useState(()=>{try{if(L)return L.getCurrentSession()}catch(S){console.error("Error getting current session:",S)}return null}),[P,ne]=D.useState(()=>{var S,F,q;try{if(L){const ce=L.getCurrentSession();if((S=ce==null?void 0:ce.activeModalities)!=null&&S.includes("chat"))return"chat";if((F=ce==null?void 0:ce.activeModalities)!=null&&F.includes("voice"))return"voice";if((q=ce==null?void 0:ce.activeModalities)!=null&&q.includes("video"))return"video"}}catch(ce){console.error("Error determining current mode:",ce)}return"welcome"}),[Se,pe]=D.useState(!1),[se,be]=D.useState(!1),[ke,ye]=D.useState(()=>A.length===1?A[0]:null),[ct,xt]=D.useState(!1);D.useEffect(()=>{I==="fullscreen"&&console.log("🎯 Widget: Switched to fullscreen mode")},[I]),D.useEffect(()=>{G&&!K?console.log("📊 Session started:",{currentMode:P,sessionId:H==null?void 0:H.id}):!G&&!K&&P==="welcome"&&console.log("📊 Returned to welcome screen")},[G,P,K]);const Ke=D.useRef(null);if(!Ke.current)try{if(L)console.log("🔄 Using existing VoxketClient to preserve session state"),Ke.current=L;else if(!s&&(!o||!i)){const S="Missing required props: Either provide 'authToken' or both 'appId' and 'appSecret'";console.error("❌ VoxketClient creation failed:",S),z(new Error(S)),$(!0)}else if(r){const S={...s?{authToken:s}:{appId:o,appSecret:i},baseUrl:r,agentId:X,participantName:Y||"User",modalities:A,participantMetadata:W};console.log("🔧 Creating new VoxketClient with config:",{authMethod:s?"Bearer Token":"App Credentials",...s?{}:{appId:(o==null?void 0:o.substring(0,8))+"..."},baseUrl:r,agentId:X,participantName:Y||"User",modalities:A}),Ke.current=new Ti(S)}else{const S="Missing required prop: baseUrl";console.error("❌ VoxketClient creation failed:",S),z(new Error(S)),$(!0)}}catch(S){console.error("❌ Failed to create VoxketClient:",S),z(S),$(!0)}const ue=Ke.current;D.useEffect(()=>{const S=Ke.current;return()=>{S&&!L&&(console.log("🧹 Widget unmounting: disconnecting VoxketClient"),S.disconnect().catch(F=>{console.error("❌ Error during widget cleanup disconnect:",F)}))}},[L]);const mt=D.useMemo(()=>I==="popup"&&ke?[ke]:A,[I,ke,A]),qe=D.useMemo(()=>{try{if(!ue)return console.warn("⚠️ No VoxketClient available, creating fallback room"),new le.Room;const S=ue.getRoom();return console.log("🏠 Widget: Room reference updated:",{roomExists:!!S,roomState:S==null?void 0:S.state,sessionStarted:G,currentMode:P}),S||new le.Room}catch(S){return console.error("❌ Error getting room from client:",S),new le.Room}},[ue,G,P]);D.useEffect(()=>{if(qe){const S=()=>{console.log("🏠 Widget: Room state changed:",{state:qe.state,numParticipants:qe.numParticipants,isConnected:qe.state==="connected",sessionId:H==null?void 0:H.id})},F=(q,ce,Qe)=>{console.log("🎵 Widget: Track subscribed:",{trackKind:q.kind,trackSource:q.source,participantSid:Qe.sid,participantIdentity:Qe.identity,sessionId:H==null?void 0:H.id})};return qe.on(le.RoomEvent.Connected,S),qe.on(le.RoomEvent.Disconnected,S),qe.on(le.RoomEvent.TrackSubscribed,F),()=>{qe.off(le.RoomEvent.Connected,S),qe.off(le.RoomEvent.Disconnected,S),qe.off(le.RoomEvent.TrackSubscribed,F)}}},[qe,H==null?void 0:H.id]),D.useEffect(()=>{!K&&P==="welcome"?console.log("🎬 Widget: Welcome screen ready"):G&&P!=="welcome"&&console.log("🎬 Widget: Session mode active:",P)},[P,K,G]),D.useEffect(()=>{(P==="voice"||P==="video"||P==="chat")&&!H&&!G&&!K&&ue&&!ue.connected&&(console.log("🔄 Auto-correcting: Found orphaned mode without session, returning to welcome"),ne("welcome"),Z(!1))},[P,H,G,K,ue]);const{sessionMetrics:V,sessionLogs:J,logEvent:we}=sm({room:qe,onSessionStart:w,onSessionEnd:_,enableConsoleLogging:C,enableLocalStorage:C,voxketSessionId:H==null?void 0:H.id});D.useEffect(()=>{T&&T(J)},[J,T]),D.useEffect(()=>{R&&V&&R(V)},[V,R]),D.useEffect(()=>{if(!ue)return;const S=(F,q)=>{console.log("📊 Widget: Session state changed:",{from:q,to:F,currentLoading:K}),(F==="connecting"||F==="connected")&&(K||(console.log("⏳ Widget: Setting loading=true (waiting for agent)"),Z(!0))),F==="active"&&(console.log("✅ Widget: Session active, agent ready - removing loader"),Z(!1),k(!0)),(F==="disconnected"||F==="error")&&(console.log("🔴 Widget: Session ended - resetting state"),Z(!1),k(!1),Ee(null),ne("welcome"))};return ue.on("session.state.changed",S),()=>{ue.off("session.state.changed",S)}},[ue,K]),D.useEffect(()=>{if(!ue)return;const S=()=>{const F=ue.connected,q=ue.getCurrentSession();console.log("🔗 Connection state changed:",{isConnected:F,currentSessionId:q==null?void 0:q.id,currentMode:P,loading:K,sessionStarted:G}),!F&&G&&!K&&(console.log("🔴 Connection lost during active session - returning to welcome"),Z(!1),k(!1),Ee(null),ne("welcome")),F&&q&&K&&(console.log("🟢 Connected with active session - removing loader"),Z(!1),k(!0),Ee(q))};return ue.on("connectionStateChanged",S),ue.on("sessionEnded",()=>{console.log("📞 Session ended - returning to welcome"),Z(!1),k(!1),Ee(null),ne("welcome")}),()=>{ue.off("connectionStateChanged",S),ue.off("sessionEnded",()=>{})}},[ue,P,K,G]);const Fe=!!(!!(ue!=null&&ue.connected)&&G&&H);D.useEffect(()=>{const S=q=>{console.log("🔴 Widget: Room disconnected:",q),console.log("🔍 Widget: Current state on disconnect:",{currentMode:P,sessionStarted:G,currentSessionId:H==null?void 0:H.id,loading:K}),Z(!1),k(!1),Ee(null),ne("welcome"),console.log("🏠 Widget: Automatically returning to welcome screen after disconnect")},F=q=>{console.log("📹 Media devices error:",q)};return qe.on(le.RoomEvent.MediaDevicesError,F),qe.on(le.RoomEvent.Disconnected,S),()=>{qe.off(le.RoomEvent.Disconnected,S),qe.off(le.RoomEvent.MediaDevicesError,F)}},[qe,P,G,H==null?void 0:H.id,K]);const At=async()=>{try{if(!ue){console.error("❌ VoxketClient not available"),z(new Error("VoxketClient not initialized")),$(!0);return}Z(!0),ne("voice"),console.log("🎤 Starting voice session...",{agentId:X,participantName:Y}),console.log("🎤 Pre-start state:",{currentMode:"voice",sessionStarted:!1,loading:!0}),we("USER_STARTED_VOICE_SESSION",{agentId:X,participantName:Y});const S=await ue.startSession(X,{participantName:Y||"User",modalities:["voice"],participantMetadata:ue.getParticipantMetadata()||W});console.log("✅ Voice session started successfully:",S.id),Ee(S),k(!0),Z(!1),w&&w(S.id)}catch(S){console.error("❌ Failed to start voice session:",S),Z(!1),k(!1),ne("welcome")}},Qt=async()=>{try{if(!ue){console.error("❌ VoxketClient not available"),z(new Error("VoxketClient not initialized")),$(!0);return}Z(!0),ne("chat"),console.log("💬 Starting chat session...",{agentId:X,participantName:Y}),we("USER_STARTED_CHAT_SESSION",{agentId:X,participantName:Y});const S=await ue.startSession(X,{participantName:Y||"User",modalities:["chat"],participantMetadata:ue.getParticipantMetadata()||W});console.log("✅ Chat session started successfully:",S.id),Ee(S),k(!0),Z(!1),w&&w(S.id)}catch(S){console.error("❌ Failed to start chat session:",S),Z(!1),k(!1),ne("welcome")}},Bt=async()=>{try{if(!ue){console.error("❌ VoxketClient not available"),z(new Error("VoxketClient not initialized")),$(!0);return}Z(!0),ne("video"),console.log("📺 Starting video session...",{agentId:X,participantName:Y}),console.log("📺 Pre-start state:",{currentMode:"video",sessionStarted:!1,loading:!0}),we("USER_STARTED_VIDEO_SESSION",{agentId:X,participantName:Y});const S=await ue.startSession(X,{participantName:Y||"User",modalities:["video","voice"],participantMetadata:ue.getParticipantMetadata()||W});console.log("✅ Video session started successfully:",S.id),Ee(S),k(!0),Z(!1),w&&w(S.id)}catch(S){console.error("❌ Failed to start video session:",S),Z(!1),k(!1),ne("welcome")}},Dt=()=>{ne("welcome"),Z(!1),j&&j(e.displayType||"widget"),H&&G?(console.log("🧹 Widget: Cleaning up active session"),k(!1),Ee(null),ue&&(console.log("🔌 Widget: Disconnecting client and cleaning up room"),ue.disconnect().catch(S=>{console.error("❌ Widget: Error during disconnect:",S)}))):(console.log("📝 Widget: No active session to clean up"),ue&&ue.connected&&(console.log("🔌 Widget: Force disconnecting client for fresh state"),ue.disconnect().catch(S=>{console.error("❌ Widget: Error during force disconnect:",S)}))),I==="popup"&&!Se&&pe(!0),console.log("✅ Widget: handleBackToWelcome completed",{newCurrentMode:"welcome",newLoading:!1,newSessionStarted:!1})},Wt=()=>{const S=!Se;pe(S),O&&O(S),!S&&!(H&&G)&&(ne("welcome"),k(!1),Ee(null))},wt=()=>{console.log("🔄 Closing fullscreen, switching to widget display type"),e.onDisplayTypeChange?e.onDisplayTypeChange("widget"):console.warn("⚠️ No onDisplayTypeChange callback provided")},rn=()=>{if(console.log("🔄 Expand to fullscreen requested"),e.onDisplayTypeChange)e.onDisplayTypeChange("fullscreen");else{console.warn("⚠️ No onDisplayTypeChange callback provided for expand functionality");const S=document.getElementById("voice-card")||document.querySelector(".voxket-widget-container");S&&S.requestFullscreen&&S.requestFullscreen().catch(F=>{console.warn("⚠️ Fullscreen API not supported or failed:",F)})}};D.useEffect(()=>{var S,F,q;if(L&&ue){const ce=ue.getCurrentSession();ue.connected,ce&&(console.log("✅ Restoring session state:",ce.id),Ee(ce),k(!0),Z(!1),(S=ce.activeModalities)!=null&&S.includes("chat")?ne("chat"):(F=ce.activeModalities)!=null&&F.includes("voice")?ne("voice"):(q=ce.activeModalities)!=null&&q.includes("video")&&ne("video"))}},[L,ue]),D.useEffect(()=>()=>{!L&&ue&&ue.disconnect()},[ue,L]);let Et=P==="video"?"w-[32rem]":"w-96",rr=P==="video"?"h-[30rem]":"h-[25rem]",ir={};if(f&&(f.startsWith("w-")?Et=f:(ir.width=f,Et="")),p&&(p.startsWith("h-")?rr=p:(ir.height=p,rr="")),I==="popup"&&!Se)return console.log("🟡 Showing popup trigger button"),h.jsxs(h.Fragment,{children:[h.jsx(om,{onClick:()=>{if(Fe){!ke&&(H!=null&&H.activeModalities)&&(H.activeModalities.includes("chat")?ye("chat"):H.activeModalities.includes("video")?ye("video"):H.activeModalities.includes("voice")&&ye("voice")),be(!1),pe(!0),O&&O(!0);return}if(oe!=="all"){ye(oe),be(!1),pe(!0),O&&O(!0);return}if(A.length===1){ye(A[0]),be(!1),pe(!0),O&&O(!0);return}be(S=>!S),ye(null),xt(!1)},position:b,ariaLabel:M,size:64,isRunning:Fe,logoUrl:te}),se&&oe==="all"&&(()=>{const q={};b==="bottom-right"?(q.bottom=88,q.right=16):b==="bottom-left"?(q.bottom=88,q.left=16):b==="top-right"?(q.top=88,q.right=16):(q.top=88,q.left=16);const ce="absolute w-0 h-0 border-8",Qe=b.startsWith("bottom")?h.jsx("div",{className:`${ce} border-transparent border-t-black`,style:{bottom:-16,right:b.endsWith("right")?16:void 0,left:b.endsWith("left")?16:void 0}}):h.jsx("div",{className:`${ce} border-transparent border-b-black`,style:{top:-16,right:b.endsWith("right")?16:void 0,left:b.endsWith("left")?16:void 0}});return h.jsx("div",{className:"fixed z-[51]",style:q,children:h.jsxs("div",{className:"relative bg-black text-white rounded-xl shadow-2xl px-3 py-3",children:[Qe,h.jsx("div",{className:"text-xs uppercase tracking-wide mb-2 opacity-70",children:"Choose modality"}),h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("button",{type:"button",onClick:()=>{ye("voice"),be(!1),pe(!0),O&&O(!0)},className:"px-3 py-2 rounded-md bg-white/10 hover:bg-white/20 text-white text-sm",title:"Voice",children:"Voice"}),h.jsx("button",{type:"button",onClick:()=>{ye("chat"),be(!1),pe(!0),O&&O(!0)},className:"px-3 py-2 rounded-md bg-white/10 hover:bg-white/20 text-white text-sm",title:"Chat",children:"Chat"}),h.jsx("button",{type:"button",onClick:()=>{ye("video"),be(!1),pe(!0),O&&O(!0)},className:"px-3 py-2 rounded-md bg-white/10 hover:bg-white/20 text-white text-sm",title:"Video",children:"Video"})]})]})})})()]});if(B||!ue){const S=(x==null?void 0:x.message)||"VoxketWidget encountered an error. Please check your configuration.";return h.jsx("div",{className:`voxket-widget-root theme-${E} flex items-center justify-center p-8 ${d||""}`,style:{width:f||"400px",height:p||"500px",border:"1px solid #ff4444",borderRadius:"8px",background:"#fff5f5",color:"#cc0000"},children:h.jsxs("div",{className:"text-center",children:[h.jsx("div",{className:"text-4xl mb-4",children:"⚠️"}),h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Widget Error"}),h.jsx("p",{className:"text-sm mb-4",children:S}),h.jsx("button",{onClick:()=>{$(!1),z(null),window.location.reload()},className:"px-4 py-2 bg-blue-600 text-white rounded hover:bg-blue-700 transition-colors",children:"Retry"})]})})}let Br=`voxket-widget-root theme-${E}`,Bn={scrollMargin:0,scrollPadding:0,contain:"layout style paint"};I==="widget"?(Br+=` flex min-h-fit ${Et} ${rr} ${d}`,Bn={...Bn,...ir}):(Br=`${d||""}`,Bn={});const pn=h.jsx("div",{className:"h-full w-full flex flex-col overflow-hidden relative z-10",children:h.jsxs(Tr,{mode:"wait",children:[P==="welcome"&&!K&&h.jsx(qR,{agentId:X,participantName:Y||"",onAgentIdChange:ie,onParticipantNameChange:re,onStartCall:At,onStartChat:Qt,onStartVideo:Bt,disabled:G||K,prompts:a,statusMessage:l,title:c,subTitle:u,theme:E,modalities:mt,initial:{opacity:0,y:0},animate:{opacity:1,y:0},exit:{opacity:0,y:40},transition:{duration:.3,ease:"easeInOut"}},"welcome"),K&&(P==="voice"||P==="chat"||P==="video")&&h.jsx(ZR,{theme:E,mode:P,loadingText:m,sessionState:H==null?void 0:H.state,initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.3,ease:"easeInOut"}},`loading-${P}`),P==="voice"&&!K&&G&&ue&&h.jsxs(Rt.RoomContext.Provider,{value:qe,children:[h.jsx(Rt.RoomAudioRenderer,{},`audio-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(Rt.StartAudio,{label:"Start Audio"},`start-audio-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(WR,{loadingText:m,participantName:Y||"User",sessionStarted:G,disabled:!1,theme:E,client:ue,displayType:I,onBack:I==="popup"?Wt:Dt,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"voice-session")]}),P==="chat"&&!K&&G&&ue&&h.jsx(GR,{client:ue,theme:E,displayType:I,onBack:I==="popup"?Wt:Dt,onEndChat:Dt,disabled:!1,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"chat-view"),P==="video"&&!K&&G&&ue&&h.jsxs(Rt.RoomContext.Provider,{value:qe,children:[h.jsx(Rt.RoomAudioRenderer,{},`audio-video-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(Rt.StartAudio,{label:"Start Audio"},`start-audio-video-${(H==null?void 0:H.id)||"no-session"}`),h.jsx(KR,{client:ue,theme:E,displayType:I,onBack:I==="popup"?Wt:Dt,onEndCall:Dt,disabled:!1,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"video-session")]})]})});return I==="fullscreen"||I==="popup"?h.jsx(xf,{theme:E,displayType:I,popupPosition:b,onClose:I==="fullscreen"?wt:Wt,children:pn}):h.jsx("div",{className:Br,style:Bn,children:h.jsx(xf,{theme:E,displayType:I,popupPosition:b,onExpand:rn,children:pn})})}function co(e){return h.jsx(nc,{children:h.jsx(XR,{...e})})}function QR({logs:e,onClear:t,onExport:n}){const[r,i]=N.useState(!1),[o,s]=N.useState(""),a=e.filter(l=>!o||l.event.toLowerCase().includes(o.toLowerCase()));return r?h.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",children:h.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[80vh] flex flex-col m-4",children:[h.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[h.jsxs("h2",{className:"text-lg font-semibold",children:["Session Logs (",e.length,")"]}),h.jsxs("div",{className:"flex items-center gap-2",children:[h.jsx("input",{type:"text",placeholder:"Filter events...",value:o,onChange:l=>s(l.target.value),className:"px-3 py-1 border rounded text-sm"}),h.jsx("button",{onClick:t,className:"px-3 py-1 bg-red-600 text-white rounded text-sm hover:bg-red-700",children:"Clear"}),h.jsx("button",{onClick:n,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700",children:"Export"}),h.jsx("button",{onClick:()=>i(!1),className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700",children:"Close"})]})]}),h.jsx("div",{className:"flex-1 overflow-auto p-4",children:a.length===0?h.jsx("p",{className:"text-gray-500 text-center py-8",children:"No logs found"}):h.jsx("div",{className:"space-y-2",children:a.map((l,c)=>h.jsxs("div",{className:"border rounded p-3 text-sm",children:[h.jsxs("div",{className:"flex items-center justify-between mb-1",children:[h.jsx("span",{className:"font-semibold text-blue-600",children:l.event}),h.jsx("span",{className:"text-gray-500 text-xs",children:new Date(l.timestamp).toLocaleTimeString()})]}),l.sessionId&&h.jsxs("div",{className:"text-xs text-gray-600 mb-1",children:["Session: ",l.sessionId]}),l.data&&h.jsx("div",{className:"bg-gray-50 p-2 rounded text-xs",children:h.jsx("pre",{className:"whitespace-pre-wrap overflow-auto",children:JSON.stringify(l.data,null,2)})})]},c))})})]})}):h.jsxs("button",{onClick:()=>i(!0),className:"fixed bottom-4 right-4 bg-blue-600 text-white px-4 py-2 rounded-lg shadow-lg hover:bg-blue-700 transition-colors text-sm z-50",children:["Session Logs (",e.length,")"]})}function JR({metrics:e}){return e?h.jsxs("div",{className:"bg-gray-100 p-4 rounded-lg",children:[h.jsx("h3",{className:"font-semibold mb-2",children:"Current Session"}),h.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Session ID:"}),h.jsx("div",{className:"font-mono text-xs",children:e.sessionId})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Start Time:"}),h.jsx("div",{children:new Date(e.startTime).toLocaleString()})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Messages:"}),h.jsx("div",{children:e.totalMessages})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Participants:"}),h.jsx("div",{children:e.participantCount})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Connection Issues:"}),h.jsx("div",{children:e.connectionIssues})]}),h.jsxs("div",{children:[h.jsx("span",{className:"text-gray-600",children:"Duration:"}),h.jsxs("div",{children:[Math.round((Date.now()-new Date(e.startTime).getTime())/1e3),"s"]})]})]})]}):null}function nr(){const{currentSession:e,sessionState:t,sessionMetrics:n,createSession:r,endSession:i}=hn(),o=N.useCallback(async(a,l)=>await r(a,l),[r]),s=N.useCallback(async()=>await i(),[i]);return{session:e,state:t,metrics:n,isActive:e!==null&&t!=="disconnected",isConnecting:t==="connecting",isConnected:t==="connected"||t==="active",start:o,stop:s}}function mm(){const{sessionMetrics:e,currentSession:t}=hn();return{metrics:e,sessionId:t==null?void 0:t.id,duration:e==null?void 0:e.duration,participantCount:e==null?void 0:e.participantCount,messageCount:e==null?void 0:e.messageCount,audioQuality:e==null?void 0:e.audioQuality,networkStats:e==null?void 0:e.networkStats}}function bm(){const{setMicrophoneEnabled:e,client:t}=hn(),[n,r]=N.useState(!1),[i,o]=N.useState(!1),s=N.useCallback(async()=>{if(!i){o(!0);try{const c=!n;await e(c),r(c)}catch(c){console.error("Failed to toggle microphone:",c)}finally{o(!1)}}},[n,i,e]),a=N.useCallback(async()=>{if(!(n||i)){o(!0);try{await e(!0),r(!0)}catch(c){console.error("Failed to enable microphone:",c)}finally{o(!1)}}},[n,i,e]),l=N.useCallback(async()=>{if(!(!n||i)){o(!0);try{await e(!1),r(!1)}catch(c){console.error("Failed to disable microphone:",c)}finally{o(!1)}}},[n,i,e]);return{isEnabled:n,isLoading:i,toggle:s,enable:a,disable:l}}function ym(){const{setCameraEnabled:e}=hn(),[t,n]=N.useState(!1),[r,i]=N.useState(!1),o=N.useCallback(async()=>{if(!r){i(!0);try{const l=!t;await e(l),n(l)}catch(l){console.error("Failed to toggle camera:",l)}finally{i(!1)}}},[t,r,e]),s=N.useCallback(async()=>{if(!(t||r)){i(!0);try{await e(!0),n(!0)}catch(l){console.error("Failed to enable camera:",l)}finally{i(!1)}}},[t,r,e]),a=N.useCallback(async()=>{if(!(!t||r)){i(!0);try{await e(!1),n(!1)}catch(l){console.error("Failed to disable camera:",l)}finally{i(!1)}}},[t,r,e]);return{isEnabled:t,isLoading:r,toggle:o,enable:s,disable:a}}function xm(){const{startScreenShare:e,stopScreenShare:t}=hn(),[n,r]=N.useState(!1),[i,o]=N.useState(!1),s=N.useCallback(async()=>{if(!(n||i)){o(!0);try{await e(),r(!0)}catch(c){console.error("Failed to start screen share:",c)}finally{o(!1)}}},[n,i,e]),a=N.useCallback(async()=>{if(!(!n||i)){o(!0);try{await t(),r(!1)}catch(c){console.error("Failed to stop screen share:",c)}finally{o(!1)}}},[n,i,t]),l=N.useCallback(async()=>{n?await a():await s()},[n,s,a]);return{isSharing:n,isLoading:i,start:s,stop:a,toggle:l}}function eI(){const{client:e}=hn(),[t,n]=N.useState({tracks:[],layout:{type:"grid",showLocalVideo:!0,aspectRatio:"16:9"},isRecording:!1}),r=N.useMemo(()=>t.tracks.find(g=>g.isLocal),[t.tracks]),i=N.useMemo(()=>t.tracks.filter(g=>!g.isLocal),[t.tracks]),o=N.useCallback(async()=>{try{r!=null&&r.isEnabled?await(e==null?void 0:e.disableCamera()):await(e==null?void 0:e.enableCamera())}catch(g){throw console.error("Failed to toggle camera:",g),g}},[e,r]),s=N.useCallback(async()=>{try{t.tracks.find(v=>v.isScreenShare)?await(e==null?void 0:e.stopScreenShare()):await(e==null?void 0:e.startScreenShare())}catch(g){throw console.error("Failed to toggle screen share:",g),g}},[e,t.tracks]),a=N.useCallback(g=>{n(v=>({...v,layout:g}))},[]),l=N.useCallback(g=>{n(v=>({...v,pinnedTrack:g}))},[]),c=N.useCallback(()=>{n(g=>({...g,pinnedTrack:void 0}))},[]),u=N.useCallback(async()=>{try{await(e==null?void 0:e.startRecording()),n(g=>({...g,isRecording:!0}))}catch(g){throw console.error("Failed to start recording:",g),g}},[e]),d=N.useCallback(async()=>{try{await(e==null?void 0:e.stopRecording()),n(g=>({...g,isRecording:!1}))}catch(g){throw console.error("Failed to stop recording:",g),g}},[e]),f=N.useCallback(g=>t.tracks.find(v=>v.id===g),[t.tracks]),p=N.useCallback(g=>t.tracks.filter(v=>v.participantId===g),[t.tracks]),m=N.useCallback(g=>g.isEnabled&&t.tracks.includes(g),[t.tracks]);return N.useEffect(()=>{if(!e)return;const g=E=>{n(w=>({...w,tracks:[...w.tracks.filter(_=>_.id!==E.id),E]}))},v=E=>{n(w=>{var _;return{...w,tracks:w.tracks.filter(C=>C.id!==E),pinnedTrack:((_=w.pinnedTrack)==null?void 0:_.id)===E?void 0:w.pinnedTrack}})},y=E=>{n(w=>({...w,tracks:w.tracks.map(_=>_.id===E.id?E:_)}))};return e.on("videoTrackAdded",g),e.on("videoTrackRemoved",v),e.on("videoTrackUpdated",y),()=>{e.off("videoTrackAdded",g),e.off("videoTrackRemoved",v),e.off("videoTrackUpdated",y)}},[e]),{tracks:t.tracks,localTrack:r,remoteTraracks:i,pinnedTrack:t.pinnedTrack,layout:t.layout,isRecording:t.isRecording,toggleCamera:o,toggleScreenShare:s,setLayout:a,pinTrack:l,unpinTrack:c,startRecording:u,stopRecording:d,getTrackById:f,getTracksByParticipant:p,isTrackActive:m}}function Jo(){const{chatMessages:e,sendChatMessage:t,currentSession:n}=hn(),[r,i]=N.useState(!1),o=N.useCallback(async c=>{if(!(!c.trim()||r||!n)){i(!0);try{await t(c.trim())}catch(u){throw console.error("Failed to send chat message:",u),u}finally{i(!1)}}},[t,r,n]),{userMessages:s,agentMessages:a,allMessages:l}=N.useMemo(()=>{const c=e.filter(d=>d.sender.type==="participant"),u=e.filter(d=>d.sender.type==="agent");return{userMessages:c,agentMessages:u,allMessages:e}},[e]);return{messages:l,userMessages:s,agentMessages:a,messageCount:l.length,isSending:r,canSend:!!n&&!r,send:o}}function tI(){const{send:e,isSending:t,canSend:n}=Jo(),[r,i]=N.useState(""),o=N.useCallback(async()=>{if(!(!r.trim()||!n))try{await e(r),i("")}catch(a){throw a}},[r,e,n]),s=N.useCallback(a=>{a.key==="Enter"&&!a.shiftKey&&(a.preventDefault(),o())},[o]);return{value:r,setValue:i,send:o,handleKeyPress:s,isSending:t,canSend:n&&r.trim().length>0}}function oc(){const{isConnected:e,isConnecting:t,connectionError:n,connect:r,disconnect:i}=hn(),o=N.useCallback(async()=>{if(!(e||t))try{await r()}catch(a){throw console.error("Failed to connect:",a),a}},[r,e,t]),s=N.useCallback(async()=>{if(e)try{await i()}catch(a){throw console.error("Failed to disconnect:",a),a}},[i,e]);return{isConnected:e,isConnecting:t,isDisconnected:!e&&!t,error:n,hasError:!!n,connect:o,disconnect:s}}function vm(){const{participants:e}=hn();return{participants:e,count:e.length,localParticipant:e.find(t=>t.isLocal),remoteParticipants:e.filter(t=>!t.isLocal)}}const wm=N.createContext({}),Ni=()=>N.useContext(wm);function Em({children:e,...t}){return h.jsx(wm.Provider,{value:t,children:e})}function uo({name:e,children:t,fallback:n,className:r}){return h.jsx("div",{className:`voxket-slot voxket-slot--${e} ${r||""}`,children:t||n})}function Sm(e,t={}){return Object.assign(e,t)}function km({showMicrophoneControl:e=!0,showCameraControl:t=!0,showScreenShareControl:n=!0,showSessionActions:r=!0,customControls:i,className:o=""}){const s=nr(),a=bm(),l=ym(),c=xm(),u=Ni(),d=["voxket-session-controls",`voxket-session-controls--${u.variant||"default"}`,`voxket-session-controls--${u.size||"md"}`,s.isActive?"voxket-session-controls--active":"voxket-session-controls--inactive",o].filter(Boolean).join(" ");return!s.isActive&&!r?h.jsx("div",{className:d,children:h.jsx("div",{className:"voxket-controls-inactive",children:h.jsx("p",{children:"Controls available during active session"})})}):h.jsxs("div",{className:d,children:[r&&h.jsx("div",{className:"voxket-session-actions",children:s.isActive?h.jsx("button",{onClick:s.stop,className:"voxket-button voxket-button--danger",children:"End Session"}):h.jsx(nI,{})}),s.isActive&&h.jsxs("div",{className:"voxket-media-controls",children:[e&&h.jsxs("button",{onClick:a.toggle,disabled:a.isLoading,className:`voxket-button voxket-button--media ${a.isEnabled?"voxket-button--active":""}`,title:a.isEnabled?"Mute microphone":"Unmute microphone",children:[h.jsx("span",{className:"voxket-icon",children:"🎤"}),a.isLoading?"Loading...":a.isEnabled?"Mute":"Unmute"]}),t&&h.jsxs("button",{onClick:l.toggle,disabled:l.isLoading,className:`voxket-button voxket-button--media ${l.isEnabled?"voxket-button--active":""}`,title:l.isEnabled?"Stop camera":"Start camera",children:[h.jsx("span",{className:"voxket-icon",children:"📹"}),l.isLoading?"Loading...":l.isEnabled?"Stop Video":"Start Video"]}),n&&h.jsxs("button",{onClick:c.toggle,disabled:c.isLoading,className:`voxket-button voxket-button--media ${c.isSharing?"voxket-button--active":""}`,title:c.isSharing?"Stop screen share":"Start screen share",children:[h.jsx("span",{className:"voxket-icon",children:"🖥️"}),c.isLoading?"Loading...":c.isSharing?"Stop Share":"Share Screen"]})]}),i&&h.jsx("div",{className:"voxket-custom-controls",children:i})]})}function nI(){nr();const[e,t]=N.useState(!1),n=async()=>{t(!0);try{console.log("Start session - agentId needed")}catch(r){console.error("Failed to start session:",r)}finally{t(!1)}};return h.jsx("button",{onClick:n,disabled:e,className:"voxket-button voxket-button--primary",children:e?"Starting...":"Start Session"})}function sc({showConnectionStatus:e=!0,showSessionInfo:t=!0,showAgentInfo:n=!0,className:r=""}){const i=nr(),o=oc(),s=Ni(),a=["voxket-session-header",`voxket-session-header--${s.variant||"default"}`,`voxket-session-header--${s.size||"md"}`,r].filter(Boolean).join(" ");return h.jsxs("div",{className:a,children:[e&&h.jsxs("div",{className:"voxket-connection-status",children:[h.jsx("div",{className:`voxket-status-indicator ${o.isConnected?"connected":"disconnected"}`}),h.jsx("span",{className:"voxket-status-text",children:o.isConnecting?"Connecting...":o.isConnected?"Connected":"Disconnected"})]}),t&&i.session&&h.jsxs("div",{className:"voxket-session-info",children:[h.jsxs("div",{className:"voxket-session-id",children:["Session: ",i.session.id.slice(-8)]}),h.jsxs("div",{className:"voxket-session-state",children:["State: ",i.state]})]}),n&&i.session&&h.jsxs("div",{className:"voxket-agent-info",children:[h.jsxs("div",{className:"voxket-agent-id",children:["Agent: ",i.session.agentId]}),h.jsxs("div",{className:"voxket-modalities",children:["Modalities: ",i.session.activeModalities.join(", ")]})]}),o.error&&h.jsxs("div",{className:"voxket-error-message",children:["Error: ",o.error.message]})]})}function ac({showChat:e=!0,showTranscriptions:t=!1,customContent:n,className:r=""}){const i=nr(),o=Jo(),s=Ni(),a=["voxket-session-content",`voxket-session-content--${s.variant||"default"}`,`voxket-session-content--${s.size||"md"}`,r].filter(Boolean).join(" ");return i.isActive?h.jsx("div",{className:a,children:n||h.jsxs(h.Fragment,{children:[e&&h.jsxs("div",{className:"voxket-chat-container",children:[h.jsxs("div",{className:"voxket-chat-messages",children:[o.messages.map(l=>h.jsxs("div",{className:`voxket-message voxket-message--${l.sender.type}`,children:[h.jsxs("div",{className:"voxket-message-header",children:[h.jsx("span",{className:"voxket-message-sender",children:l.sender.name}),h.jsx("span",{className:"voxket-message-time",children:l.timestamp.toLocaleTimeString()})]}),h.jsx("div",{className:"voxket-message-content",children:l.content})]},l.id)),o.messages.length===0&&h.jsx("div",{className:"voxket-empty-messages",children:h.jsx("p",{children:"No messages yet. Start the conversation!"})})]}),h.jsx(rI,{})]}),t&&h.jsx("div",{className:"voxket-transcriptions",children:h.jsx("div",{className:"voxket-transcription-placeholder",children:h.jsx("p",{children:"Voice transcriptions will appear here"})})})]})}):h.jsx("div",{className:a,children:h.jsx("div",{className:"voxket-inactive-state",children:h.jsxs("div",{className:"voxket-inactive-message",children:[h.jsx("h3",{children:"Start a conversation"}),h.jsx("p",{children:"Begin a session to start chatting with the AI agent"})]})})})}function rI(){const e=Jo(),[t,n]=N.useState(""),r=async()=>{if(!(!t.trim()||!e.canSend))try{await e.send(t),n("")}catch(o){console.error("Failed to send message:",o)}},i=o=>{o.key==="Enter"&&!o.shiftKey&&(o.preventDefault(),r())};return h.jsxs("div",{className:"voxket-chat-input",children:[h.jsx("input",{type:"text",value:t,onChange:o=>n(o.target.value),onKeyPress:i,placeholder:"Type your message...",disabled:!e.canSend,className:"voxket-input"}),h.jsx("button",{onClick:r,disabled:!e.canSend||!t.trim(),className:"voxket-send-button",children:e.isSending?"Sending...":"Send"})]})}function lc({showMetrics:e=!0,showParticipants:t=!0,showStatus:n=!0,customFooter:r,className:i=""}){const o=nr(),s=mm(),a=vm(),l=Ni(),c=["voxket-session-footer",`voxket-session-footer--${l.variant||"default"}`,`voxket-session-footer--${l.size||"md"}`,i].filter(Boolean).join(" ");return o.isActive?h.jsx("div",{className:c,children:r||h.jsxs(h.Fragment,{children:[n&&h.jsxs("div",{className:"voxket-session-status",children:[h.jsx("div",{className:"voxket-status-indicator voxket-status-indicator--active"}),h.jsx("span",{className:"voxket-status-text",children:"Session Active"})]}),e&&s.metrics&&h.jsxs("div",{className:"voxket-session-metrics",children:[h.jsxs("div",{className:"voxket-metric",children:[h.jsx("span",{className:"voxket-metric-label",children:"Duration:"}),h.jsx("span",{className:"voxket-metric-value",children:iI(s.duration||0)})]}),h.jsxs("div",{className:"voxket-metric",children:[h.jsx("span",{className:"voxket-metric-label",children:"Messages:"}),h.jsx("span",{className:"voxket-metric-value",children:s.metrics.messageCount})]})]}),t&&h.jsxs("div",{className:"voxket-participants-info",children:[h.jsxs("span",{className:"voxket-participants-count",children:[a.count," participant",a.count!==1?"s":""]}),a.remoteParticipants.length>0&&h.jsx("div",{className:"voxket-participant-list",children:a.remoteParticipants.map(u=>h.jsx("span",{className:"voxket-participant-name",children:u.name},u.id))})]})]})}):h.jsx("div",{className:c,children:h.jsx("div",{className:"voxket-footer-inactive",children:h.jsx("span",{className:"voxket-status-text",children:"Ready to start session"})})})}function iI(e){const t=Math.floor(e/1e3),n=Math.floor(t/60),r=Math.floor(n/60);return r>0?`${r}:${(n%60).toString().padStart(2,"0")}:${(t%60).toString().padStart(2,"0")}`:`${n}:${(t%60).toString().padStart(2,"0")}`}function oI({agentId:e,sessionConfig:t,autoStart:n=!1,onSessionStart:r,onSessionEnd:i,variant:o="default",size:s="md",theme:a,className:l="",children:c}){var p;const u=nr(),d=oc();N.useEffect(()=>{n&&e&&d.isConnected&&!u.isActive&&u.start(e,t).catch(console.error)},[n,e,d.isConnected,u.isActive]),N.useEffect(()=>{var m;(m=u.session)!=null&&m.id&&r&&r(u.session.id)},[(p=u.session)==null?void 0:p.id,r]),N.useEffect(()=>()=>{u.isActive&&i&&u.stop().then(i).catch(console.error)},[]);const f=["voxket-session",`voxket-session--${o}`,`voxket-session--${s}`,u.isActive?"voxket-session--active":"voxket-session--inactive",l].filter(Boolean).join(" ");return h.jsx(Em,{variant:o,size:s,theme:a,className:l,children:h.jsx("div",{className:f,children:c||h.jsxs(h.Fragment,{children:[h.jsx(uo,{name:"header",fallback:h.jsx(sc,{})}),h.jsx(uo,{name:"content",fallback:h.jsx(ac,{})}),h.jsx(uo,{name:"footer",fallback:h.jsx(lc,{})})]})})})}const Cm=Sm(oI,{Header:sc,Content:ac,Footer:lc,Controls:km}),Xn={name:"default",colors:{primary:"#3B82F6",secondary:"#6B7280",accent:"#8B5CF6",background:"#FFFFFF",surface:"#F9FAFB",text:{primary:"#111827",secondary:"#6B7280",muted:"#9CA3AF",inverse:"#FFFFFF"},status:{success:"#10B981",warning:"#F59E0B",error:"#EF4444",info:"#3B82F6"},border:"#E5E7EB",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"},typography:{fontFamily:"system-ui, -apple-system, sans-serif",fontSize:{xs:"0.75rem",sm:"0.875rem",md:"1rem",lg:"1.125rem",xl:"1.25rem"},fontWeight:{normal:400,medium:500,semibold:600,bold:700},lineHeight:{tight:1.25,normal:1.5,relaxed:1.75}},spacing:{xs:"0.25rem",sm:"0.5rem",md:"1rem",lg:"1.5rem",xl:"2rem"},borderRadius:{none:"0",sm:"0.25rem",md:"0.5rem",lg:"0.75rem",full:"9999px"},shadows:{sm:"0 1px 2px 0 rgba(0, 0, 0, 0.05)",md:"0 4px 6px -1px rgba(0, 0, 0, 0.1)",lg:"0 10px 15px -3px rgba(0, 0, 0, 0.1)"}},za={...Xn,name:"dark",colors:{primary:"#60A5FA",secondary:"#9CA3AF",accent:"#A78BFA",background:"#111827",surface:"#1F2937",text:{primary:"#F9FAFB",secondary:"#D1D5DB",muted:"#9CA3AF",inverse:"#111827"},status:{success:"#34D399",warning:"#FBBF24",error:"#F87171",info:"#60A5FA"},border:"#374151",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.3)"}},Ua={...Xn,name:"enterprise",colors:{primary:"#1E40AF",secondary:"#64748B",accent:"#7C3AED",background:"#FFFFFF",surface:"#F8FAFC",text:{primary:"#0F172A",secondary:"#475569",muted:"#94A3B8",inverse:"#FFFFFF"},status:{success:"#059669",warning:"#D97706",error:"#DC2626",info:"#1E40AF"},border:"#CBD5E1",shadow:"0 1px 3px 0 rgba(0, 0, 0, 0.1)"},borderRadius:{none:"0",sm:"0.125rem",md:"0.25rem",lg:"0.375rem",full:"9999px"}},_m=N.createContext(null),Tm=()=>{const e=N.useContext(_m);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};function sI({theme:e="default",themes:t={},children:n,cssVariables:r=!0,className:i=""}){const[o,s]=N.useState(()=>{const f={default:Xn,dark:za,enterprise:Ua,...t};return typeof e=="string"?f[e]||Xn:e}),[a,l]=N.useState(()=>({default:Xn,dark:za,enterprise:Ua,...t})),c=f=>{if(typeof f=="string"){const p=a[f];p&&s(p)}else s(f)},u=f=>{l(p=>({...p,[f.name]:f}))};N.useEffect(()=>{if(r&&typeof document<"u"){const f=document.documentElement;Object.entries(Nm(o)).forEach(([p,m])=>{f.style.setProperty(`--voxket-${p}`,m)})}},[o,r]);const d={theme:o,setTheme:c,themes:a,registerTheme:u};return h.jsx(_m.Provider,{value:d,children:h.jsx("div",{className:`voxket-theme voxket-theme--${o.name} ${i}`,children:n})})}function Nm(e){const t={},n=(r,i="")=>{for(const[o,s]of Object.entries(r)){const a=i?`${i}-${o}`:o;typeof s=="object"&&s!==null&&!Array.isArray(s)?n(s,a):t[a]=String(s)}};return n(e),t}function aI(e=Xn,t){return{...e,...t,colors:{...e.colors,...t.colors},typography:{...e.typography,...t.typography},spacing:{...e.spacing,...t.spacing},borderRadius:{...e.borderRadius,...t.borderRadius},shadows:{...e.shadows,...t.shadows}}}function lI(e){var n;const{theme:t}=Tm();return((n=t.components)==null?void 0:n[e])||{}}const cI=ic("voice-modality","voice",{onActivate:async e=>{const t=e.config;t.enableTranscription&&uI(e),t.enableVoiceActivation&&dI(e,t),console.log("Voice modality activated",t)},onDeactivate:async e=>{console.log("Voice modality deactivated")},onMessage:async(e,t)=>{t.type==="audio"&&fI(e,t)}});function uI(e,t){e.on("participant.speaking.started",n=>{console.log("Transcription: Started for",n.name)}),e.on("participant.speaking.stopped",n=>{console.log("Transcription: Stopped for",n.name)})}function dI(e,t){const n=t.silenceThreshold||-50;console.log("Voice activation setup with threshold:",n)}function fI(e,t){console.log("Playing audio response:",t.content)}const hI=ic("chat-modality","chat",{onActivate:async e=>{const t=e.config;t.enableRichText&&pI(),t.enableFileUpload&&gI(e),t.enableCustomComponents&&mI(),console.log("Chat modality activated",t)},onDeactivate:async e=>{console.log("Chat modality deactivated")},onMessage:async(e,t)=>{const n=e.config;t.type==="ui_component"?bI(e,t):t.type==="text"&&n.enableRichText&&yI(e,t)}});function pI(e){console.log("Rich text support enabled")}function gI(e){console.log("File upload enabled"),e.on("chat.file.uploaded",t=>{console.log("File uploaded:",t.name)})}function mI(e){console.log("Custom components enabled");const t=new Map;t.set("quick-actions",xI),t.set("form",vI),t.set("card",wI),t.set("chart",EI)}function bI(e,t){const{componentType:n,props:r}=t.metadata;console.log("Rendering custom component:",n,r),e.emit("chat.component.render",{type:n,props:r,timestamp:new Date})}function yI(e,t){console.log("Processing rich text message:",t.content)}function xI(e){return{type:"quick-actions",actions:e.actions||[],layout:e.layout||"horizontal"}}function vI(e){return{type:"form",fields:e.fields||[],submitAction:e.submitAction,validation:e.validation}}function wI(e){return{type:"card",title:e.title,content:e.content,actions:e.actions,variant:e.variant||"default"}}function EI(e){return{type:"chart",chartType:e.chartType||"line",data:e.data,options:e.options}}function fo({track:e,participantName:t,showControls:n=!0,showName:r=!0,showMuteIndicator:i=!0,isPinned:o=!1,className:s="",onClick:a,onPin:l,onUnpin:c}){const u=N.useRef(null),[d,f]=N.useState(!1);N.useEffect(()=>{if(!u.current||!e.isEnabled)return;const v=u.current;return v.srcObject=null,()=>{v.srcObject&&(v.srcObject=null)}},[e]);const p=()=>{a==null||a(e)},m=v=>{v.stopPropagation(),o?c==null||c(e):l==null||l(e)},g=["voxket-video-tile",e.isLocal?"voxket-video-tile--local":"voxket-video-tile--remote",e.isScreenShare?"voxket-video-tile--screen-share":"voxket-video-tile--camera",o?"voxket-video-tile--pinned":"",e.isEnabled?"":"voxket-video-tile--disabled",d?"voxket-video-tile--hovered":"",s].filter(Boolean).join(" ");return h.jsxs("div",{className:g,onClick:p,onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),style:{aspectRatio:e.dimensions?`${e.dimensions.width} / ${e.dimensions.height}`:"16 / 9"},children:[h.jsx("video",{ref:u,className:"voxket-video-element",autoPlay:!0,playsInline:!0,muted:e.isLocal}),!e.isEnabled&&h.jsxs("div",{className:"voxket-video-placeholder",children:[h.jsx("div",{className:"voxket-video-placeholder-icon",children:e.isScreenShare?"🖥️":"📹"}),h.jsx("p",{className:"voxket-video-placeholder-text",children:e.isScreenShare?"Screen sharing paused":"Camera off"})]}),h.jsxs("div",{className:"voxket-video-overlay",children:[r&&t&&h.jsxs("div",{className:"voxket-video-name",children:[t,e.isLocal&&" (You)"]}),i&&!e.isEnabled&&h.jsx("div",{className:"voxket-video-mute-indicator",children:"🔇"}),n&&(d||o)&&h.jsxs("div",{className:"voxket-video-controls",children:[h.jsx("button",{className:`voxket-video-control-btn ${o?"voxket-video-control-btn--active":""}`,onClick:m,title:o?"Unpin video":"Pin video",children:"📌"}),e.isScreenShare&&h.jsx("div",{className:"voxket-video-indicator",children:"🖥️"}),e.source&&h.jsx("div",{className:"voxket-video-source",children:e.source})]})]}),!e.isEnabled&&h.jsx("div",{className:"voxket-video-loading",children:h.jsx("div",{className:"voxket-spinner"})})]})}function SI({tracks:e,layout:t,className:n="",onLayoutChange:r,onTrackClick:i,maxVisibleTracks:o=9,showPagination:s=!0}){const[a,l]=N.useState(0),[c,u]=N.useState(null),d=N.useMemo(()=>{let E=[...e];t.type==="speaker"&&c&&(E=[c,...e.filter(C=>C.id!==c.id)]);const w=a*o,_=w+o;return E.slice(w,_)},[e,t,c,a,o]),f=Math.ceil(e.length/o),p=N.useMemo(()=>{const E=d.length;switch(t.type){case"grid":const w=Math.ceil(Math.sqrt(E)),_=Math.ceil(E/w);return{display:"grid",gridTemplateColumns:`repeat(${w}, 1fr)`,gridTemplateRows:`repeat(${_}, 1fr)`,gap:"8px"};case"speaker":return{display:"flex",flexDirection:"column",gap:"8px"};case"sidebar":return{display:"flex",gap:"8px"};case"gallery":return{display:"flex",flexWrap:"wrap",gap:"8px",justifyContent:"center"};default:return{}}},[t.type,d.length]),m=E=>{u(E)},g=()=>{u(null)},v=E=>{r==null||r({...t,type:E})},y=["voxket-video-grid",`voxket-video-grid--${t.type}`,`voxket-video-grid--${d.length}-tracks`,n].filter(Boolean).join(" ");return e.length===0?h.jsx("div",{className:"voxket-video-grid-empty",children:h.jsxs("div",{className:"voxket-video-grid-empty-content",children:[h.jsx("div",{className:"voxket-video-grid-empty-icon",children:"📹"}),h.jsx("p",{children:"No video tracks available"})]})}):h.jsxs("div",{className:y,children:[h.jsxs("div",{className:"voxket-video-grid-controls",children:[h.jsx("div",{className:"voxket-video-layout-controls",children:["grid","speaker","sidebar","gallery"].map(E=>h.jsx("button",{className:`voxket-layout-btn ${t.type===E?"voxket-layout-btn--active":""}`,onClick:()=>v(E),title:`Switch to ${E} layout`,children:kI(E)},E))}),h.jsxs("div",{className:"voxket-video-count",children:[e.length," participant",e.length!==1?"s":""]})]}),h.jsx("div",{className:"voxket-video-grid-content",style:p,children:t.type==="speaker"&&c?h.jsxs(h.Fragment,{children:[h.jsx("div",{className:"voxket-video-speaker-main",children:h.jsx(fo,{track:c,participantName:`Participant ${c.participantId}`,isPinned:!0,onClick:i,onUnpin:g})}),h.jsx("div",{className:"voxket-video-speaker-sidebar",children:d.filter(E=>E.id!==c.id).map(E=>h.jsx(fo,{track:E,participantName:`Participant ${E.participantId}`,showControls:!1,onClick:i,onPin:m},E.id))})]}):d.map(E=>h.jsx(fo,{track:E,participantName:`Participant ${E.participantId}`,isPinned:(c==null?void 0:c.id)===E.id,onClick:i,onPin:m,onUnpin:g},E.id))}),s&&f>1&&h.jsxs("div",{className:"voxket-video-pagination",children:[h.jsx("button",{className:"voxket-pagination-btn",onClick:()=>l(Math.max(0,a-1)),disabled:a===0,children:"←"}),h.jsxs("span",{className:"voxket-pagination-info",children:["Page ",a+1," of ",f]}),h.jsx("button",{className:"voxket-pagination-btn",onClick:()=>l(Math.min(f-1,a+1)),disabled:a===f-1,children:"→"})]})]})}function kI(e){switch(e){case"grid":return"⊞";case"speaker":return"🎤";case"sidebar":return"⫸";case"gallery":return"⊡";case"picture-in-picture":return"⧉";default:return"⊞"}}function CI({localTrack:e,onToggleCamera:t,onToggleScreenShare:n,onLayoutChange:r,showLayoutControls:i=!0,showCameraControls:o=!0,showScreenShareControls:s=!0,className:a=""}){const l=["voxket-video-controls",a].filter(Boolean).join(" "),c=u=>{r==null||r({type:u,showLocalVideo:!0,aspectRatio:"16:9"})};return h.jsxs("div",{className:l,children:[o&&h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Camera"}),h.jsxs("button",{className:`voxket-control-btn ${e!=null&&e.isEnabled?"voxket-control-btn--active":""}`,onClick:t,title:e!=null&&e.isEnabled?"Turn off camera":"Turn on camera",children:[h.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isEnabled?"📹":"📷"}),h.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isEnabled?"Camera On":"Camera Off"})]}),(e==null?void 0:e.dimensions)&&h.jsxs("div",{className:"voxket-video-info",children:[e.dimensions.width," × ",e.dimensions.height]})]}),s&&h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Screen Share"}),h.jsxs("button",{className:`voxket-control-btn ${e!=null&&e.isScreenShare?"voxket-control-btn--active":""}`,onClick:n,title:e!=null&&e.isScreenShare?"Stop screen sharing":"Start screen sharing",children:[h.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isScreenShare?"🛑":"🖥️"}),h.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isScreenShare?"Stop Sharing":"Share Screen"})]})]}),i&&h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Layout"}),h.jsx("div",{className:"voxket-layout-buttons",children:[{type:"grid",icon:"⊞",label:"Grid"},{type:"speaker",icon:"🎤",label:"Speaker"},{type:"sidebar",icon:"⫸",label:"Sidebar"},{type:"gallery",icon:"⊡",label:"Gallery"}].map(({type:u,icon:d,label:f})=>h.jsxs("button",{className:"voxket-layout-control-btn",onClick:()=>c(u),title:`Switch to ${f} layout`,children:[h.jsx("span",{className:"voxket-control-icon",children:d}),h.jsx("span",{className:"voxket-control-label",children:f})]},u))})]}),h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Video Settings"}),h.jsxs("div",{className:"voxket-video-settings",children:[h.jsxs("div",{className:"voxket-setting-group",children:[h.jsx("label",{className:"voxket-setting-label",children:"Quality"}),h.jsxs("select",{className:"voxket-setting-select",children:[h.jsx("option",{value:"high",children:"High (720p)"}),h.jsx("option",{value:"medium",children:"Medium (480p)"}),h.jsx("option",{value:"low",children:"Low (240p)"})]})]}),h.jsxs("div",{className:"voxket-setting-group",children:[h.jsx("label",{className:"voxket-setting-label",children:"Frame Rate"}),h.jsxs("select",{className:"voxket-setting-select",children:[h.jsx("option",{value:"30",children:"30 fps"}),h.jsx("option",{value:"15",children:"15 fps"}),h.jsx("option",{value:"10",children:"10 fps"})]})]}),h.jsxs("div",{className:"voxket-setting-group",children:[h.jsx("label",{className:"voxket-setting-label",children:"Bandwidth"}),h.jsxs("select",{className:"voxket-setting-select",children:[h.jsx("option",{value:"unlimited",children:"Unlimited"}),h.jsx("option",{value:"1000",children:"1 Mbps"}),h.jsx("option",{value:"500",children:"500 Kbps"}),h.jsx("option",{value:"250",children:"250 Kbps"})]})]})]})]}),h.jsxs("div",{className:"voxket-video-controls-section",children:[h.jsx("h4",{className:"voxket-video-controls-title",children:"Statistics"}),h.jsxs("div",{className:"voxket-video-stats",children:[h.jsxs("div",{className:"voxket-stat-item",children:[h.jsx("span",{className:"voxket-stat-label",children:"Resolution:"}),h.jsx("span",{className:"voxket-stat-value",children:e!=null&&e.dimensions?`${e.dimensions.width}×${e.dimensions.height}`:"N/A"})]}),h.jsxs("div",{className:"voxket-stat-item",children:[h.jsx("span",{className:"voxket-stat-label",children:"Source:"}),h.jsx("span",{className:"voxket-stat-value",children:(e==null?void 0:e.source)||"None"})]}),h.jsxs("div",{className:"voxket-stat-item",children:[h.jsx("span",{className:"voxket-stat-label",children:"Status:"}),h.jsx("span",{className:`voxket-stat-value ${e!=null&&e.isEnabled?"voxket-stat-value--active":"voxket-stat-value--inactive"}`,children:e!=null&&e.isEnabled?"Active":"Inactive"})]})]})]})]})}const Am=({handler:e,loadData:t,data:n,client:r,addLocalMessage:i})=>{const[o,s]=D.useState(null),[a,l]=D.useState(!0),[c,u]=D.useState(!1),[d]=D.useState(Date.now()),[f,p]=D.useState("pending");D.useEffect(()=>{(async()=>{try{if(l(!0),n&&typeof n=="object"){const E={title:n.title||"Untitled Assignment",description:n.description||"No description provided",estimated_time_of_completion:n.estimated_time_of_completion||"Unknown"};s(E),console.log("📋 AssignmentView: Assignment loaded from RPC data:",E)}}catch(E){console.error("📋 AssignmentView: Error loading assignment:",E),s({title:"Assignment Loading Error",description:"There was an error loading the assignment details. Please try again.",estimated_time_of_completion:"Unknown"})}finally{l(!1)}})()},[n,t]);const m=({message:y,assignment:E})=>{const w=y.toLowerCase().includes("declined"),_=w?"bg-red-50 border-red-200":"bg-green-50 border-green-200",C=w?"text-red-700":"text-green-700",T=w?"❌":"🎉";return h.jsxs("div",{className:`max-w-sm mx-auto ${_} border rounded-lg shadow p-3 flex flex-col items-center`,children:[h.jsx("div",{className:"text-2xl mb-2",children:T}),h.jsx("div",{className:`${C} font-semibold text-sm mb-1`,children:y}),h.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:E.title}),h.jsx("div",{className:"text-xs text-gray-500",children:"Thank you for your response!"})]})},g=async()=>{if(!(!o||!e)){u(!0);try{const y={message:"accepted"};console.log("📋 AssignmentView: Assignment accepted:",y),e.didSuccess(y),p("accepted")}catch(y){console.error("📋 AssignmentView: Error accepting assignment:",y),e.didFail({error:"Failed to accept assignment"}),p("error")}finally{u(!1)}}},v=async()=>{if(!(!o||!e)){u(!0);try{const y={message:"declined"};console.log("📋 AssignmentView: Assignment declined:",y),e.didSuccess(y),p("declined")}catch(y){console.error("📋 AssignmentView: Error declining assignment:",y),e.didFail({error:"Failed to decline assignment"}),p("error")}finally{u(!1)}}};return a?h.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:h.jsxs("div",{className:"flex items-center justify-center py-4",children:[h.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-600"}),h.jsx("span",{className:"ml-2 text-xs text-gray-600",children:"Loading assignment..."})]})}):o?f==="accepted"||f==="declined"||f==="error"?h.jsx(m,{message:f==="accepted"?"Assignment accepted!":f==="declined"?"Assignment declined":"Assignment error occurred",assignment:o}):h.jsxs("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg overflow-hidden",children:[h.jsx("div",{className:"bg-gradient-to-r from-blue-600 to-purple-600 text-white p-3",children:h.jsx("div",{className:"flex items-center justify-between",children:h.jsx("h3",{className:"text-xs font-semibold text-white truncate",children:o.title})})}),h.jsxs("div",{className:"p-3 text-black",children:[h.jsx("div",{className:"bg-gray-50 rounded p-2 mb-3",children:h.jsx("p",{className:"text-xs text-black leading-snug",children:o.description})}),h.jsx("div",{className:"mb-3 text-black",children:h.jsxs("div",{className:"flex items-center text-xs text-gray-600",children:[h.jsx("span",{className:"text-xs mr-1",children:"📅"}),h.jsxs("span",{children:["Est: ",o.estimated_time_of_completion]})]})}),h.jsxs("div",{className:"flex gap-2",children:[h.jsx("button",{onClick:g,disabled:c,className:"flex-1 bg-green-600 text-white py-2 px-3 rounded text-xs font-medium hover:bg-green-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:c?h.jsxs("span",{className:"flex items-center justify-center",children:[h.jsx("div",{className:"animate-spin rounded-full h-2 w-2 border-b-2 border-white mr-1"}),h.jsx("span",{className:"text-xs",children:"Processing..."})]}):"Accept"}),h.jsx("button",{onClick:v,disabled:c,className:"flex-1 bg-red-600 text-white py-2 px-3 rounded text-xs font-medium hover:bg-red-700 transition-colors disabled:opacity-50 disabled:cursor-not-allowed",children:"Decline"})]})]})]}):h.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:h.jsxs("div",{className:"text-center py-4",children:[h.jsx("div",{className:"text-red-600 text-sm font-semibold mb-2",children:"⚠️ Assignment Error"}),h.jsx("p",{className:"text-xs text-gray-600 mb-3",children:"Failed to load assignment details."})]})})};function _I(){const[e,t]=D.useState(null),[n,r]=D.useState([]);D.useEffect(()=>{const a=new Ti({appId:"your-app-id",appSecret:"your-app-secret",baseUrl:"https://your-voxket-api.com",agentId:"your-agent-id",participantName:"User",modalities:["chat"]});return t(a),a.on("rpc.method.called",l=>{console.log("RPC Method Called:",l)}),a.on("rpc.interaction.completed",l=>{console.log("RPC Interaction Completed:",l)}),()=>{a.disconnect()}},[]);const i=async()=>{if(e)try{await e.registerFrontendRPC("give_assignment",Am,"embedded");const a=e.getRegisteredRpcMethods();r(a),console.log("✅ Assignment RPC registered successfully")}catch(a){console.error("❌ Failed to register assignment RPC:",a)}},o=async()=>{if(!e)return;const a=({handler:l,timeout:c})=>{const[u,d]=D.useState(""),f=[{id:"pro",name:"Pro Plan",price:"$29/month"},{id:"enterprise",name:"Enterprise Plan",price:"$99/month"},{id:"basic",name:"Basic Plan",price:"$9/month"}],p=g=>{d(g)},m=()=>{const g=f.find(v=>v.id===u);l==null||l.didSuccess({selectedProduct:u,productName:g==null?void 0:g.name,price:g==null?void 0:g.price,timestamp:new Date().toISOString()})};return h.jsxs("div",{className:"p-6 bg-white rounded-lg",children:[h.jsx("h3",{className:"text-xl font-bold mb-4",children:"Choose Your Plan"}),h.jsx("p",{className:"text-gray-600 mb-4",children:"Select the plan that best fits your needs:"}),h.jsx("div",{className:"space-y-3 mb-6",children:f.map(g=>h.jsx("div",{onClick:()=>p(g.id),className:`p-4 border rounded-lg cursor-pointer transition-all ${u===g.id?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300"}`,children:h.jsxs("div",{className:"flex justify-between items-center",children:[h.jsxs("div",{children:[h.jsx("h4",{className:"font-medium",children:g.name}),h.jsx("p",{className:"text-gray-600 text-sm",children:g.price})]}),h.jsx("div",{className:`w-4 h-4 rounded-full ${u===g.id?"bg-blue-500":"border-2 border-gray-300"}`})]})},g.id))}),h.jsxs("div",{className:"flex justify-end space-x-3",children:[h.jsx("button",{onClick:()=>l==null?void 0:l.dismissView(),className:"px-4 py-2 border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Cancel"}),h.jsx("button",{onClick:m,disabled:!u,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",children:"Select Plan"})]}),c&&h.jsxs("p",{className:"text-xs text-gray-500 mt-2",children:["Time remaining: ",c," seconds"]})]})};try{await e.registerFrontendRPC("recommend_product",a,"modal");const l=e.getRegisteredRpcMethods();r(l),console.log("✅ Product Recommendation RPC registered successfully")}catch(l){console.error("❌ Failed to register product recommendation RPC:",l)}},s=async()=>{if(!e)return;const a=({handler:l})=>{const[c,u]=D.useState(0),[d,f]=D.useState(""),p=()=>{l==null||l.didSuccess({rating:c,comment:d,timestamp:new Date().toISOString()})};return h.jsxs("div",{className:"p-4 bg-white rounded-lg",children:[h.jsx("h3",{className:"text-lg font-semibold mb-3",children:"How was your experience?"}),h.jsxs("div",{className:"mb-4",children:[h.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Rate your experience:"}),h.jsx("div",{className:"flex space-x-1",children:[1,2,3,4,5].map(m=>h.jsx("button",{onClick:()=>u(m),className:`text-2xl ${m<=c?"text-yellow-400":"text-gray-300"}`,children:"⭐"},m))})]}),h.jsxs("div",{className:"mb-4",children:[h.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Additional comments:"}),h.jsx("textarea",{value:d,onChange:m=>f(m.target.value),className:"w-full p-2 border border-gray-300 rounded text-sm",rows:3,placeholder:"Tell us more about your experience..."})]}),h.jsxs("div",{className:"flex justify-end space-x-2",children:[h.jsx("button",{onClick:()=>l==null?void 0:l.dismissView(),className:"px-3 py-1 text-sm border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Skip"}),h.jsx("button",{onClick:p,disabled:c===0,className:"px-3 py-1 text-sm bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",children:"Submit"})]})]})};try{await e.registerFrontendRPC("collect_feedback",a,"embedded");const l=e.getRegisteredRpcMethods();r(l),console.log("✅ Feedback RPC registered successfully")}catch(l){console.error("❌ Failed to register feedback RPC:",l)}};return h.jsxs("div",{className:"p-6",children:[h.jsx("h2",{className:"text-2xl font-bold mb-6",children:"Frontend RPC Examples"}),h.jsxs("div",{className:"space-y-4 mb-6",children:[h.jsxs("div",{children:[h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Register RPC Methods"}),h.jsxs("div",{className:"space-x-2",children:[h.jsx("button",{onClick:i,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600",children:"Register Assignment RPC"}),h.jsx("button",{onClick:o,className:"px-4 py-2 bg-green-500 text-white rounded hover:bg-green-600",children:"Register Product Recommendation RPC"}),h.jsx("button",{onClick:s,className:"px-4 py-2 bg-purple-500 text-white rounded hover:bg-purple-600",children:"Register Feedback RPC"})]})]}),h.jsxs("div",{children:[h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Registered Methods"}),n.length>0?h.jsx("ul",{className:"list-disc list-inside space-y-1",children:n.map(a=>h.jsx("li",{className:"text-gray-700",children:h.jsx("code",{className:"bg-gray-100 px-2 py-1 rounded",children:a})},a))}):h.jsx("p",{className:"text-gray-500",children:"No methods registered yet"})]})]}),h.jsxs("div",{className:"bg-gray-50 p-4 rounded-lg",children:[h.jsx("h3",{className:"text-lg font-semibold mb-2",children:"How it works"}),h.jsxs("ol",{className:"list-decimal list-inside space-y-2 text-sm text-gray-700",children:[h.jsxs("li",{children:["Register RPC methods with React components using ",h.jsx("code",{children:"client.registerFrontendRPC()"})]}),h.jsx("li",{children:"When the agent calls an RPC method, the corresponding component will be displayed"}),h.jsx("li",{children:"Users interact with the component, and the response is sent back to the agent"}),h.jsx("li",{children:"Components can be displayed in different modes: embedded, modal, or fullscreen"}),h.jsx("li",{children:"Each component has a timeout and can handle success/failure scenarios"})]})]}),h.jsxs("div",{className:"mt-6 bg-blue-50 p-4 rounded-lg",children:[h.jsx("h3",{className:"text-lg font-semibold mb-2 text-blue-800",children:"Agent Side"}),h.jsx("p",{className:"text-sm text-blue-700 mb-2",children:"On the agent side, you can call these RPC methods like this:"}),h.jsx("pre",{className:"bg-white p-3 rounded text-xs text-gray-800 overflow-x-auto",children:`// Agent calls RPC method
144
144
  const response = await participant.performRpc({
145
145
  method: 'give_assignment',
146
146
  data: JSON.stringify({