@voxket-ai/voxket-live 1.0.77 → 1.0.78

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.
Files changed (3) hide show
  1. package/dist/index.cjs +87 -14
  2. package/dist/index.js +9663 -6015
  3. package/package.json +1 -1
package/dist/index.cjs CHANGED
@@ -1,35 +1,108 @@
1
- "use strict";var rl=Object.defineProperty;var al=(e,t,n)=>t in e?rl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var me=(e,t,n)=>al(e,typeof t!="symbol"?t+"":t,n);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const y=require("react"),a=require("react/jsx-runtime"),I=require("livekit-client"),ue=require("@livekit/components-react"),Bi=require("sonner"),ll=require("@phosphor-icons/react"),un=require("class-variance-authority"),cl=require("clsx"),dl=require("@radix-ui/react-toggle"),ul=require("@radix-ui/react-select"),pe=require("lucide-react"),Be=require("@mui/icons-material"),hl=require("react-dom/client");function ps(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const h=ps(y),ml=ps(dl),Ee=ps(ul),gs=y.createContext({});function xs(e){const t=y.useRef(null);return t.current===null&&(t.current=e()),t.current}const ys=typeof window<"u",$i=ys?y.useLayoutEffect:y.useEffect,hn=y.createContext(null);function bs(e,t){e.indexOf(t)===-1&&e.push(t)}function vs(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const $e=(e,t,n)=>n>t?t:n<e?e:n;function Hn(e,t){return t?`${e}. For more information and steps for solving, visit https://motion.dev/troubleshooting/${t}`:e}let gt=()=>{},Oe=()=>{};process.env.NODE_ENV!=="production"&&(gt=(e,t,n)=>{!e&&typeof console<"u"&&console.warn(Hn(t,n))},Oe=(e,t,n)=>{if(!e)throw new Error(Hn(t,n))});const _e={},Oi=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function _i(e){return typeof e=="object"&&e!==null}const Hi=e=>/^0[^.\s]+$/u.test(e);function ws(e){let t;return()=>(t===void 0&&(t=e()),t)}const Ae=e=>e,fl=(e,t)=>n=>t(e(n)),Lt=(...e)=>e.reduce(fl),Nt=(e,t,n)=>{const s=t-e;return s===0?1:(n-e)/s};class Ss{constructor(){this.subscriptions=[]}add(t){return bs(this.subscriptions,t),()=>vs(this.subscriptions,t)}notify(t,n,s){const o=this.subscriptions.length;if(o)if(o===1)this.subscriptions[0](t,n,s);else for(let r=0;r<o;r++){const i=this.subscriptions[r];i&&i(t,n,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const Ve=e=>e*1e3,Pe=e=>e/1e3;function Zi(e,t){return t?e*(1e3/t):0}const ro=new Set;function Cs(e,t,n){e||ro.has(t)||(console.warn(Hn(t,n)),ro.add(t))}const Ui=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,pl=1e-7,gl=12;function xl(e,t,n,s,o){let r,i,l=0;do i=t+(n-t)/2,r=Ui(i,s,o)-e,r>0?n=i:t=i;while(Math.abs(r)>pl&&++l<gl);return i}function Bt(e,t,n,s){if(e===t&&n===s)return Ae;const o=r=>xl(r,0,1,e,n);return r=>r===0||r===1?r:Ui(o(r),t,s)}const zi=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,Wi=e=>t=>1-e(1-t),Ki=Bt(.33,1.53,.69,.99),ks=Wi(Ki),Gi=zi(ks),Yi=e=>(e*=2)<1?.5*ks(e):.5*(2-Math.pow(2,-10*(e-1))),js=e=>1-Math.sin(Math.acos(e)),qi=Wi(js),Xi=zi(js),yl=Bt(.42,0,1,1),bl=Bt(0,0,.58,1),Ji=Bt(.42,0,.58,1),vl=e=>Array.isArray(e)&&typeof e[0]!="number",Qi=e=>Array.isArray(e)&&typeof e[0]=="number",ao={linear:Ae,easeIn:yl,easeInOut:Ji,easeOut:bl,circIn:js,circInOut:Xi,circOut:qi,backIn:ks,backInOut:Gi,backOut:Ki,anticipate:Yi},wl=e=>typeof e=="string",lo=e=>{if(Qi(e)){Oe(e.length===4,"Cubic bezier arrays must contain four numerical values.","cubic-bezier-length");const[t,n,s,o]=e;return Bt(t,n,s,o)}else if(wl(e))return Oe(ao[e]!==void 0,`Invalid easing type '${e}'`,"invalid-easing-type"),ao[e];return e},zt=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function Sl(e,t){let n=new Set,s=new Set,o=!1,r=!1;const i=new WeakSet;let l={delta:0,timestamp:0,isProcessing:!1};function c(u){i.has(u)&&(d.schedule(u),e()),u(l)}const d={schedule:(u,m=!1,f=!1)=>{const g=f&&o?n:s;return m&&i.add(u),g.has(u)||g.add(u),u},cancel:u=>{s.delete(u),i.delete(u)},process:u=>{if(l=u,o){r=!0;return}o=!0,[n,s]=[s,n],n.forEach(c),n.clear(),o=!1,r&&(r=!1,d.process(u))}};return d}const Cl=40;function er(e,t){let n=!1,s=!0;const o={delta:0,timestamp:0,isProcessing:!1},r=()=>n=!0,i=zt.reduce((S,w)=>(S[w]=Sl(r),S),{}),{setup:l,read:c,resolveKeyframes:d,preUpdate:u,update:m,preRender:f,render:p,postRender:g}=i,x=()=>{const S=_e.useManualTiming?o.timestamp:performance.now();n=!1,_e.useManualTiming||(o.delta=s?1e3/60:Math.max(Math.min(S-o.timestamp,Cl),1)),o.timestamp=S,o.isProcessing=!0,l.process(o),c.process(o),d.process(o),u.process(o),m.process(o),f.process(o),p.process(o),g.process(o),o.isProcessing=!1,n&&t&&(s=!1,e(x))},v=()=>{n=!0,s=!0,o.isProcessing||e(x)};return{schedule:zt.reduce((S,w)=>{const C=i[w];return S[w]=(A,j=!1,k=!1)=>(n||v(),C.schedule(A,j,k)),S},{}),cancel:S=>{for(let w=0;w<zt.length;w++)i[zt[w]].cancel(S)},state:o,steps:i}}const{schedule:ie,cancel:ze,state:xe,steps:wn}=er(typeof requestAnimationFrame<"u"?requestAnimationFrame:Ae,!0);let Qt;function kl(){Qt=void 0}const Se={now:()=>(Qt===void 0&&Se.set(xe.isProcessing||_e.useManualTiming?xe.timestamp:performance.now()),Qt),set:e=>{Qt=e,queueMicrotask(kl)}},tr=e=>t=>typeof t=="string"&&t.startsWith(e),Es=tr("--"),jl=tr("var(--"),As=e=>jl(e)?El.test(e.split("/*")[0].trim()):!1,El=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,xt={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},Pt={...xt,transform:e=>$e(0,1,e)},Wt={...xt,default:1},At=e=>Math.round(e*1e5)/1e5,Ms=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function Al(e){return e==null}const Ml=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Ts=(e,t)=>n=>!!(typeof n=="string"&&Ml.test(n)&&n.startsWith(e)||t&&!Al(n)&&Object.prototype.hasOwnProperty.call(n,t)),nr=(e,t,n)=>s=>{if(typeof s!="string")return s;const[o,r,i,l]=s.match(Ms);return{[e]:parseFloat(o),[t]:parseFloat(r),[n]:parseFloat(i),alpha:l!==void 0?parseFloat(l):1}},Tl=e=>$e(0,255,e),Sn={...xt,transform:e=>Math.round(Tl(e))},Xe={test:Ts("rgb","red"),parse:nr("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:s=1})=>"rgba("+Sn.transform(e)+", "+Sn.transform(t)+", "+Sn.transform(n)+", "+At(Pt.transform(s))+")"};function Vl(e){let t="",n="",s="",o="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),s=e.substring(5,7),o=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),s=e.substring(3,4),o=e.substring(4,5),t+=t,n+=n,s+=s,o+=o),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(s,16),alpha:o?parseInt(o,16)/255:1}}const Zn={test:Ts("#"),parse:Vl,transform:Xe.transform},$t=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),Ue=$t("deg"),Re=$t("%"),U=$t("px"),Nl=$t("vh"),Pl=$t("vw"),co={...Re,parse:e=>Re.parse(e)/100,transform:e=>Re.transform(e*100)},it={test:Ts("hsl","hue"),parse:nr("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:s=1})=>"hsla("+Math.round(e)+", "+Re.transform(At(t))+", "+Re.transform(At(n))+", "+At(Pt.transform(s))+")"},fe={test:e=>Xe.test(e)||Zn.test(e)||it.test(e),parse:e=>Xe.test(e)?Xe.parse(e):it.test(e)?it.parse(e):Zn.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?Xe.transform(e):it.transform(e),getAnimatableNone:e=>{const t=fe.parse(e);return t.alpha=0,fe.transform(t)}},Rl=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function Il(e){var t,n;return isNaN(e)&&typeof e=="string"&&(((t=e.match(Ms))==null?void 0:t.length)||0)+(((n=e.match(Rl))==null?void 0:n.length)||0)>0}const sr="number",or="color",Dl="var",Fl="var(",uo="${}",Ll=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function Rt(e){const t=e.toString(),n=[],s={color:[],number:[],var:[]},o=[];let r=0;const l=t.replace(Ll,c=>(fe.test(c)?(s.color.push(r),o.push(or),n.push(fe.parse(c))):c.startsWith(Fl)?(s.var.push(r),o.push(Dl),n.push(c)):(s.number.push(r),o.push(sr),n.push(parseFloat(c))),++r,uo)).split(uo);return{values:n,split:l,indexes:s,types:o}}function ir(e){return Rt(e).values}function rr(e){const{split:t,types:n}=Rt(e),s=t.length;return o=>{let r="";for(let i=0;i<s;i++)if(r+=t[i],o[i]!==void 0){const l=n[i];l===sr?r+=At(o[i]):l===or?r+=fe.transform(o[i]):r+=o[i]}return r}}const Bl=e=>typeof e=="number"?0:fe.test(e)?fe.getAnimatableNone(e):e;function $l(e){const t=ir(e);return rr(e)(t.map(Bl))}const We={test:Il,parse:ir,createTransformer:rr,getAnimatableNone:$l};function Cn(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function Ol({hue:e,saturation:t,lightness:n,alpha:s}){e/=360,t/=100,n/=100;let o=0,r=0,i=0;if(!t)o=r=i=n;else{const l=n<.5?n*(1+t):n+t-n*t,c=2*n-l;o=Cn(c,l,e+1/3),r=Cn(c,l,e),i=Cn(c,l,e-1/3)}return{red:Math.round(o*255),green:Math.round(r*255),blue:Math.round(i*255),alpha:s}}function rn(e,t){return n=>n>0?t:e}const le=(e,t,n)=>e+(t-e)*n,kn=(e,t,n)=>{const s=e*e,o=n*(t*t-s)+s;return o<0?0:Math.sqrt(o)},_l=[Zn,Xe,it],Hl=e=>_l.find(t=>t.test(e));function ho(e){const t=Hl(e);if(gt(!!t,`'${e}' is not an animatable color. Use the equivalent color code instead.`,"color-not-animatable"),!t)return!1;let n=t.parse(e);return t===it&&(n=Ol(n)),n}const mo=(e,t)=>{const n=ho(e),s=ho(t);if(!n||!s)return rn(e,t);const o={...n};return r=>(o.red=kn(n.red,s.red,r),o.green=kn(n.green,s.green,r),o.blue=kn(n.blue,s.blue,r),o.alpha=le(n.alpha,s.alpha,r),Xe.transform(o))},Un=new Set(["none","hidden"]);function Zl(e,t){return Un.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function Ul(e,t){return n=>le(e,t,n)}function Vs(e){return typeof e=="number"?Ul:typeof e=="string"?As(e)?rn:fe.test(e)?mo:Kl:Array.isArray(e)?ar:typeof e=="object"?fe.test(e)?mo:zl:rn}function ar(e,t){const n=[...e],s=n.length,o=e.map((r,i)=>Vs(r)(r,t[i]));return r=>{for(let i=0;i<s;i++)n[i]=o[i](r);return n}}function zl(e,t){const n={...e,...t},s={};for(const o in n)e[o]!==void 0&&t[o]!==void 0&&(s[o]=Vs(e[o])(e[o],t[o]));return o=>{for(const r in s)n[r]=s[r](o);return n}}function Wl(e,t){const n=[],s={color:0,var:0,number:0};for(let o=0;o<t.values.length;o++){const r=t.types[o],i=e.indexes[r][s[r]],l=e.values[i]??0;n[o]=l,s[r]++}return n}const Kl=(e,t)=>{const n=We.createTransformer(t),s=Rt(e),o=Rt(t);return s.indexes.var.length===o.indexes.var.length&&s.indexes.color.length===o.indexes.color.length&&s.indexes.number.length>=o.indexes.number.length?Un.has(e)&&!o.values.length||Un.has(t)&&!s.values.length?Zl(e,t):Lt(ar(Wl(s,o),o.values),n):(gt(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,"complex-values-different"),rn(e,t))};function lr(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?le(e,t,n):Vs(e)(e,t)}const Gl=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>ie.update(t,n),stop:()=>ze(t),now:()=>xe.isProcessing?xe.timestamp:Se.now()}},cr=(e,t,n=10)=>{let s="";const o=Math.max(Math.round(t/n),2);for(let r=0;r<o;r++)s+=Math.round(e(r/(o-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},an=2e4;function Ns(e){let t=0;const n=50;let s=e.next(t);for(;!s.done&&t<an;)t+=n,s=e.next(t);return t>=an?1/0:t}function Yl(e,t=100,n){const s=n({...e,keyframes:[0,t]}),o=Math.min(Ns(s),an);return{type:"keyframes",ease:r=>s.next(o*r).value/t,duration:Pe(o)}}const ql=5;function dr(e,t,n){const s=Math.max(t-ql,0);return Zi(n-e(s),t-s)}const ae={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},jn=.001;function Xl({duration:e=ae.duration,bounce:t=ae.bounce,velocity:n=ae.velocity,mass:s=ae.mass}){let o,r;gt(e<=Ve(ae.maxDuration),"Spring duration must be 10 seconds or less","spring-duration-limit");let i=1-t;i=$e(ae.minDamping,ae.maxDamping,i),e=$e(ae.minDuration,ae.maxDuration,Pe(e)),i<1?(o=d=>{const u=d*i,m=u*e,f=u-n,p=zn(d,i),g=Math.exp(-m);return jn-f/p*g},r=d=>{const m=d*i*e,f=m*n+n,p=Math.pow(i,2)*Math.pow(d,2)*e,g=Math.exp(-m),x=zn(Math.pow(d,2),i);return(-o(d)+jn>0?-1:1)*((f-p)*g)/x}):(o=d=>{const u=Math.exp(-d*e),m=(d-n)*e+1;return-jn+u*m},r=d=>{const u=Math.exp(-d*e),m=(n-d)*(e*e);return u*m});const l=5/e,c=Ql(o,r,l);if(e=Ve(e),isNaN(c))return{stiffness:ae.stiffness,damping:ae.damping,duration:e};{const d=Math.pow(c,2)*s;return{stiffness:d,damping:i*2*Math.sqrt(s*d),duration:e}}}const Jl=12;function Ql(e,t,n){let s=n;for(let o=1;o<Jl;o++)s=s-e(s)/t(s);return s}function zn(e,t){return e*Math.sqrt(1-t*t)}const ec=["duration","bounce"],tc=["stiffness","damping","mass"];function fo(e,t){return t.some(n=>e[n]!==void 0)}function nc(e){let t={velocity:ae.velocity,stiffness:ae.stiffness,damping:ae.damping,mass:ae.mass,isResolvedFromDuration:!1,...e};if(!fo(e,tc)&&fo(e,ec))if(e.visualDuration){const n=e.visualDuration,s=2*Math.PI/(n*1.2),o=s*s,r=2*$e(.05,1,1-(e.bounce||0))*Math.sqrt(o);t={...t,mass:ae.mass,stiffness:o,damping:r}}else{const n=Xl(e);t={...t,...n,mass:ae.mass},t.isResolvedFromDuration=!0}return t}function ln(e=ae.visualDuration,t=ae.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:s,restDelta:o}=n;const r=n.keyframes[0],i=n.keyframes[n.keyframes.length-1],l={done:!1,value:r},{stiffness:c,damping:d,mass:u,duration:m,velocity:f,isResolvedFromDuration:p}=nc({...n,velocity:-Pe(n.velocity||0)}),g=f||0,x=d/(2*Math.sqrt(c*u)),v=i-r,E=Pe(Math.sqrt(c/u)),b=Math.abs(v)<5;s||(s=b?ae.restSpeed.granular:ae.restSpeed.default),o||(o=b?ae.restDelta.granular:ae.restDelta.default);let S;if(x<1){const C=zn(E,x);S=A=>{const j=Math.exp(-x*E*A);return i-j*((g+x*E*v)/C*Math.sin(C*A)+v*Math.cos(C*A))}}else if(x===1)S=C=>i-Math.exp(-E*C)*(v+(g+E*v)*C);else{const C=E*Math.sqrt(x*x-1);S=A=>{const j=Math.exp(-x*E*A),k=Math.min(C*A,300);return i-j*((g+x*E*v)*Math.sinh(k)+C*v*Math.cosh(k))/C}}const w={calculatedDuration:p&&m||null,next:C=>{const A=S(C);if(p)l.done=C>=m;else{let j=C===0?g:0;x<1&&(j=C===0?Ve(g):dr(S,C,A));const k=Math.abs(j)<=s,D=Math.abs(i-A)<=o;l.done=k&&D}return l.value=l.done?i:A,l},toString:()=>{const C=Math.min(Ns(w),an),A=cr(j=>w.next(C*j).value,C,30);return C+"ms "+A},toTransition:()=>{}};return w}ln.applyToOptions=e=>{const t=Yl(e,100,ln);return e.ease=t.ease,e.duration=Ve(t.duration),e.type="keyframes",e};function Wn({keyframes:e,velocity:t=0,power:n=.8,timeConstant:s=325,bounceDamping:o=10,bounceStiffness:r=500,modifyTarget:i,min:l,max:c,restDelta:d=.5,restSpeed:u}){const m=e[0],f={done:!1,value:m},p=k=>l!==void 0&&k<l||c!==void 0&&k>c,g=k=>l===void 0?c:c===void 0||Math.abs(l-k)<Math.abs(c-k)?l:c;let x=n*t;const v=m+x,E=i===void 0?v:i(v);E!==v&&(x=E-m);const b=k=>-x*Math.exp(-k/s),S=k=>E+b(k),w=k=>{const D=b(k),L=S(k);f.done=Math.abs(D)<=d,f.value=f.done?E:L};let C,A;const j=k=>{p(f.value)&&(C=k,A=ln({keyframes:[f.value,g(f.value)],velocity:dr(S,k,f.value),damping:o,stiffness:r,restDelta:d,restSpeed:u}))};return j(0),{calculatedDuration:null,next:k=>{let D=!1;return!A&&C===void 0&&(D=!0,w(k),j(k)),C!==void 0&&k>=C?A.next(k-C):(!D&&w(k),f)}}}function sc(e,t,n){const s=[],o=n||_e.mix||lr,r=e.length-1;for(let i=0;i<r;i++){let l=o(e[i],e[i+1]);if(t){const c=Array.isArray(t)?t[i]||Ae:t;l=Lt(c,l)}s.push(l)}return s}function oc(e,t,{clamp:n=!0,ease:s,mixer:o}={}){const r=e.length;if(Oe(r===t.length,"Both input and output ranges must be the same length","range-length"),r===1)return()=>t[0];if(r===2&&t[0]===t[1])return()=>t[1];const i=e[0]===e[1];e[0]>e[r-1]&&(e=[...e].reverse(),t=[...t].reverse());const l=sc(t,s,o),c=l.length,d=u=>{if(i&&u<e[0])return t[0];let m=0;if(c>1)for(;m<e.length-2&&!(u<e[m+1]);m++);const f=Nt(e[m],e[m+1],u);return l[m](f)};return n?u=>d($e(e[0],e[r-1],u)):d}function ic(e,t){const n=e[e.length-1];for(let s=1;s<=t;s++){const o=Nt(0,t,s);e.push(le(n,1,o))}}function rc(e){const t=[0];return ic(t,e.length-1),t}function ac(e,t){return e.map(n=>n*t)}function lc(e,t){return e.map(()=>t||Ji).splice(0,e.length-1)}function rt({duration:e=300,keyframes:t,times:n,ease:s="easeInOut"}){const o=vl(s)?s.map(lo):lo(s),r={done:!1,value:t[0]},i=ac(n&&n.length===t.length?n:rc(t),e),l=oc(i,t,{ease:Array.isArray(o)?o:lc(t,o)});return{calculatedDuration:e,next:c=>(r.value=l(c),r.done=c>=e,r)}}const cc=e=>e!==null;function Ps(e,{repeat:t,repeatType:n="loop"},s,o=1){const r=e.filter(cc),l=o<0||t&&n!=="loop"&&t%2===1?0:r.length-1;return!l||s===void 0?r[l]:s}const dc={decay:Wn,inertia:Wn,tween:rt,keyframes:rt,spring:ln};function ur(e){typeof e.type=="string"&&(e.type=dc[e.type])}class Rs{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const uc=e=>e/100;class Is extends Rs{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var s,o;const{motionValue:n}=this.options;n&&n.updatedAt!==Se.now()&&this.tick(Se.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(o=(s=this.options).onStop)==null||o.call(s))},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;ur(t);const{type:n=rt,repeat:s=0,repeatDelay:o=0,repeatType:r,velocity:i=0}=t;let{keyframes:l}=t;const c=n||rt;process.env.NODE_ENV!=="production"&&c!==rt&&Oe(l.length<=2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${l}`,"spring-two-frames"),c!==rt&&typeof l[0]!="number"&&(this.mixKeyframes=Lt(uc,lr(l[0],l[1])),l=[0,100]);const d=c({...t,keyframes:l});r==="mirror"&&(this.mirroredGenerator=c({...t,keyframes:[...l].reverse(),velocity:-i})),d.calculatedDuration===null&&(d.calculatedDuration=Ns(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+o,this.totalDuration=this.resolvedDuration*(s+1)-o,this.generator=d}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:s,totalDuration:o,mixKeyframes:r,mirroredGenerator:i,resolvedDuration:l,calculatedDuration:c}=this;if(this.startTime===null)return s.next(0);const{delay:d=0,keyframes:u,repeat:m,repeatType:f,repeatDelay:p,type:g,onUpdate:x,finalKeyframe:v}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-o/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const E=this.currentTime-d*(this.playbackSpeed>=0?1:-1),b=this.playbackSpeed>=0?E<0:E>o;this.currentTime=Math.max(E,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=o);let S=this.currentTime,w=s;if(m){const k=Math.min(this.currentTime,o)/l;let D=Math.floor(k),L=k%1;!L&&k>=1&&(L=1),L===1&&D--,D=Math.min(D,m+1),!!(D%2)&&(f==="reverse"?(L=1-L,p&&(L-=p/l)):f==="mirror"&&(w=i)),S=$e(0,1,L)*l}const C=b?{done:!1,value:u[0]}:w.next(S);r&&(C.value=r(C.value));let{done:A}=C;!b&&c!==null&&(A=this.playbackSpeed>=0?this.currentTime>=o:this.currentTime<=0);const j=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&A);return j&&g!==Wn&&(C.value=Ps(u,this.options,v,this.speed)),x&&x(C.value),j&&this.finish(),C}then(t,n){return this.finished.then(t,n)}get duration(){return Pe(this.calculatedDuration)}get time(){return Pe(this.currentTime)}set time(t){var n;t=Ve(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),(n=this.driver)==null||n.start(!1)}get speed(){return this.playbackSpeed}set speed(t){this.updateTime(Se.now());const n=this.playbackSpeed!==t;this.playbackSpeed=t,n&&(this.time=Pe(this.currentTime))}play(){var o,r;if(this.isStopped)return;const{driver:t=Gl,startTime:n}=this.options;this.driver||(this.driver=t(i=>this.tick(i))),(r=(o=this.options).onPlay)==null||r.call(o);const s=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=s):this.holdTime!==null?this.startTime=s-this.holdTime:this.startTime||(this.startTime=n??s),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(Se.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var t,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(t=this.options).onComplete)==null||n.call(t)}cancel(){var t,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(t=this.options).onCancel)==null||n.call(t)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),t.observe(this)}}function hc(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}const Je=e=>e*180/Math.PI,Kn=e=>{const t=Je(Math.atan2(e[1],e[0]));return Gn(t)},mc={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:Kn,rotateZ:Kn,skewX:e=>Je(Math.atan(e[1])),skewY:e=>Je(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},Gn=e=>(e=e%360,e<0&&(e+=360),e),po=Kn,go=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),xo=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),fc={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:go,scaleY:xo,scale:e=>(go(e)+xo(e))/2,rotateX:e=>Gn(Je(Math.atan2(e[6],e[5]))),rotateY:e=>Gn(Je(Math.atan2(-e[2],e[0]))),rotateZ:po,rotate:po,skewX:e=>Je(Math.atan(e[4])),skewY:e=>Je(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function Yn(e){return e.includes("scale")?1:0}function qn(e,t){if(!e||e==="none")return Yn(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,o;if(n)s=fc,o=n;else{const l=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=mc,o=l}if(!o)return Yn(t);const r=s[t],i=o[1].split(",").map(gc);return typeof r=="function"?r(i):i[r]}const pc=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return qn(n,t)};function gc(e){return parseFloat(e.trim())}const yt=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],bt=new Set(yt),yo=e=>e===xt||e===U,xc=new Set(["x","y","z"]),yc=yt.filter(e=>!xc.has(e));function bc(e){const t=[];return yc.forEach(n=>{const s=e.getValue(n);s!==void 0&&(t.push([n,s.get()]),s.set(n.startsWith("scale")?1:0))}),t}const Qe={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>qn(t,"x"),y:(e,{transform:t})=>qn(t,"y")};Qe.translateX=Qe.x;Qe.translateY=Qe.y;const et=new Set;let Xn=!1,Jn=!1,Qn=!1;function hr(){if(Jn){const e=Array.from(et).filter(s=>s.needsMeasurement),t=new Set(e.map(s=>s.element)),n=new Map;t.forEach(s=>{const o=bc(s);o.length&&(n.set(s,o),s.render())}),e.forEach(s=>s.measureInitialState()),t.forEach(s=>{s.render();const o=n.get(s);o&&o.forEach(([r,i])=>{var l;(l=s.getValue(r))==null||l.set(i)})}),e.forEach(s=>s.measureEndState()),e.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}Jn=!1,Xn=!1,et.forEach(e=>e.complete(Qn)),et.clear()}function mr(){et.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(Jn=!0)})}function vc(){Qn=!0,mr(),hr(),Qn=!1}class Ds{constructor(t,n,s,o,r,i=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=s,this.motionValue=o,this.element=r,this.isAsync=i}scheduleResolve(){this.state="scheduled",this.isAsync?(et.add(this),Xn||(Xn=!0,ie.read(mr),ie.resolveKeyframes(hr))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:s,motionValue:o}=this;if(t[0]===null){const r=o==null?void 0:o.get(),i=t[t.length-1];if(r!==void 0)t[0]=r;else if(s&&n){const l=s.readValue(n,i);l!=null&&(t[0]=l)}t[0]===void 0&&(t[0]=i),o&&r===void 0&&o.set(t[0])}hc(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),et.delete(this)}cancel(){this.state==="scheduled"&&(et.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const wc=e=>e.startsWith("--");function Sc(e,t,n){wc(t)?e.style.setProperty(t,n):e.style[t]=n}const Cc=ws(()=>window.ScrollTimeline!==void 0),kc={};function jc(e,t){const n=ws(e);return()=>kc[t]??n()}const fr=jc(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),Et=([e,t,n,s])=>`cubic-bezier(${e}, ${t}, ${n}, ${s})`,bo={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:Et([0,.65,.55,1]),circOut:Et([.55,0,1,.45]),backIn:Et([.31,.01,.66,-.59]),backOut:Et([.33,1.53,.69,.99])};function pr(e,t){if(e)return typeof e=="function"?fr()?cr(e,t):"ease-out":Qi(e)?Et(e):Array.isArray(e)?e.map(n=>pr(n,t)||bo.easeOut):bo[e]}function Ec(e,t,n,{delay:s=0,duration:o=300,repeat:r=0,repeatType:i="loop",ease:l="easeOut",times:c}={},d=void 0){const u={[t]:n};c&&(u.offset=c);const m=pr(l,o);Array.isArray(m)&&(u.easing=m);const f={delay:s,duration:o,easing:Array.isArray(m)?"linear":m,fill:"both",iterations:r+1,direction:i==="reverse"?"alternate":"normal"};return d&&(f.pseudoElement=d),e.animate(u,f)}function gr(e){return typeof e=="function"&&"applyToOptions"in e}function Ac({type:e,...t}){return gr(e)&&fr()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class Mc extends Rs{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,!t)return;const{element:n,name:s,keyframes:o,pseudoElement:r,allowFlatten:i=!1,finalKeyframe:l,onComplete:c}=t;this.isPseudoElement=!!r,this.allowFlatten=i,this.options=t,Oe(typeof t.type!="string",`Mini animate() doesn't support "type" as a string.`,"mini-spring");const d=Ac(t);this.animation=Ec(n,s,o,d,r),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!r){const u=Ps(o,this.options,l,this.speed);this.updateMotionValue?this.updateMotionValue(u):Sc(n,s,u),this.animation.cancel()}c==null||c(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var t,n;(n=(t=this.animation).finish)==null||n.call(t)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var t,n;this.isPseudoElement||(n=(t=this.animation).commitStyles)==null||n.call(t)}get duration(){var n,s;const t=((s=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:s.call(n).duration)||0;return Pe(Number(t))}get time(){return Pe(Number(this.animation.currentTime)||0)}set time(t){this.finishedTime=null,this.animation.currentTime=Ve(t)}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(t){this.animation.startTime=t}attachTimeline({timeline:t,observe:n}){var s;return this.allowFlatten&&((s=this.animation.effect)==null||s.updateTiming({easing:"linear"})),this.animation.onfinish=null,t&&Cc()?(this.animation.timeline=t,Ae):n(this)}}const xr={anticipate:Yi,backInOut:Gi,circInOut:Xi};function Tc(e){return e in xr}function Vc(e){typeof e.ease=="string"&&Tc(e.ease)&&(e.ease=xr[e.ease])}const vo=10;class Nc extends Mc{constructor(t){Vc(t),ur(t),super(t),t.startTime&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:s,onComplete:o,element:r,...i}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const l=new Is({...i,autoplay:!1}),c=Ve(this.finishedTime??this.time);n.setWithVelocity(l.sample(c-vo).value,l.sample(c).value,vo),l.stop()}}const wo=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(We.test(e)||e==="0")&&!e.startsWith("url("));function Pc(e){const t=e[0];if(e.length===1)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t)return!0}function Rc(e,t,n,s){const o=e[0];if(o===null)return!1;if(t==="display"||t==="visibility")return!0;const r=e[e.length-1],i=wo(o,t),l=wo(r,t);return gt(i===l,`You are trying to animate ${t} from "${o}" to "${r}". "${i?r:o}" is not an animatable value.`,"value-not-animatable"),!i||!l?!1:Pc(e)||(n==="spring"||gr(n))&&s}function es(e){e.duration=0,e.type}const Ic=new Set(["opacity","clipPath","filter","transform"]),Dc=ws(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function Fc(e){var u;const{motionValue:t,name:n,repeatDelay:s,repeatType:o,damping:r,type:i}=e;if(!(((u=t==null?void 0:t.owner)==null?void 0:u.current)instanceof HTMLElement))return!1;const{onUpdate:c,transformTemplate:d}=t.owner.getProps();return Dc()&&n&&Ic.has(n)&&(n!=="transform"||!d)&&!c&&!s&&o!=="mirror"&&r!==0&&i!=="inertia"}const Lc=40;class Bc extends Rs{constructor({autoplay:t=!0,delay:n=0,type:s="keyframes",repeat:o=0,repeatDelay:r=0,repeatType:i="loop",keyframes:l,name:c,motionValue:d,element:u,...m}){var g;super(),this.stop=()=>{var x,v;this._animation&&(this._animation.stop(),(x=this.stopTimeline)==null||x.call(this)),(v=this.keyframeResolver)==null||v.cancel()},this.createdAt=Se.now();const f={autoplay:t,delay:n,type:s,repeat:o,repeatDelay:r,repeatType:i,name:c,motionValue:d,element:u,...m},p=(u==null?void 0:u.KeyframeResolver)||Ds;this.keyframeResolver=new p(l,(x,v,E)=>this.onKeyframesResolved(x,v,f,!E),c,d,u),(g=this.keyframeResolver)==null||g.scheduleResolve()}onKeyframesResolved(t,n,s,o){this.keyframeResolver=void 0;const{name:r,type:i,velocity:l,delay:c,isHandoff:d,onUpdate:u}=s;this.resolvedAt=Se.now(),Rc(t,r,i,l)||((_e.instantAnimations||!c)&&(u==null||u(Ps(t,s,n))),t[0]=t[t.length-1],es(s),s.repeat=0);const f={startTime:o?this.resolvedAt?this.resolvedAt-this.createdAt>Lc?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...s,keyframes:t},p=!d&&Fc(f)?new Nc({...f,element:f.motionValue.owner.current}):new Is(f);p.finished.then(()=>this.notifyFinished()).catch(Ae),this.pendingTimeline&&(this.stopTimeline=p.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=p}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){var t;return this._animation||((t=this.keyframeResolver)==null||t.resume(),vc()),this._animation}get duration(){return this.animation.duration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var t;this._animation&&this.animation.cancel(),(t=this.keyframeResolver)==null||t.cancel()}}const $c=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function Oc(e){const t=$c.exec(e);if(!t)return[,];const[,n,s,o]=t;return[`--${n??s}`,o]}const _c=4;function yr(e,t,n=1){Oe(n<=_c,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`,"max-css-var-depth");const[s,o]=Oc(e);if(!s)return;const r=window.getComputedStyle(t).getPropertyValue(s);if(r){const i=r.trim();return Oi(i)?parseFloat(i):i}return As(o)?yr(o,t,n+1):o}function Fs(e,t){return(e==null?void 0:e[t])??(e==null?void 0:e.default)??e}const br=new Set(["width","height","top","left","right","bottom",...yt]),Hc={test:e=>e==="auto",parse:e=>e},vr=e=>t=>t.test(e),wr=[xt,U,Re,Ue,Pl,Nl,Hc],So=e=>wr.find(vr(e));function Zc(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||Hi(e):!0}const Uc=new Set(["brightness","contrast","saturate","opacity"]);function zc(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[s]=n.match(Ms)||[];if(!s)return e;const o=n.replace(s,"");let r=Uc.has(t)?1:0;return s!==n&&(r*=100),t+"("+r+o+")"}const Wc=/\b([a-z-]*)\(.*?\)/gu,ts={...We,getAnimatableNone:e=>{const t=e.match(Wc);return t?t.map(zc).join(" "):e}},Co={...xt,transform:Math.round},Kc={rotate:Ue,rotateX:Ue,rotateY:Ue,rotateZ:Ue,scale:Wt,scaleX:Wt,scaleY:Wt,scaleZ:Wt,skew:Ue,skewX:Ue,skewY:Ue,distance:U,translateX:U,translateY:U,translateZ:U,x:U,y:U,z:U,perspective:U,transformPerspective:U,opacity:Pt,originX:co,originY:co,originZ:U},Ls={borderWidth:U,borderTopWidth:U,borderRightWidth:U,borderBottomWidth:U,borderLeftWidth:U,borderRadius:U,radius:U,borderTopLeftRadius:U,borderTopRightRadius:U,borderBottomRightRadius:U,borderBottomLeftRadius:U,width:U,maxWidth:U,height:U,maxHeight:U,top:U,right:U,bottom:U,left:U,padding:U,paddingTop:U,paddingRight:U,paddingBottom:U,paddingLeft:U,margin:U,marginTop:U,marginRight:U,marginBottom:U,marginLeft:U,backgroundPositionX:U,backgroundPositionY:U,...Kc,zIndex:Co,fillOpacity:Pt,strokeOpacity:Pt,numOctaves:Co},Gc={...Ls,color:fe,backgroundColor:fe,outlineColor:fe,fill:fe,stroke:fe,borderColor:fe,borderTopColor:fe,borderRightColor:fe,borderBottomColor:fe,borderLeftColor:fe,filter:ts,WebkitFilter:ts},Sr=e=>Gc[e];function Cr(e,t){let n=Sr(e);return n!==ts&&(n=We),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const Yc=new Set(["auto","none","0"]);function qc(e,t,n){let s=0,o;for(;s<e.length&&!o;){const r=e[s];typeof r=="string"&&!Yc.has(r)&&Rt(r).values.length&&(o=e[s]),s++}if(o&&n)for(const r of t)e[r]=Cr(n,o)}class Xc extends Ds{constructor(t,n,s,o,r){super(t,n,s,o,r,!0)}readKeyframes(){const{unresolvedKeyframes:t,element:n,name:s}=this;if(!n||!n.current)return;super.readKeyframes();for(let c=0;c<t.length;c++){let d=t[c];if(typeof d=="string"&&(d=d.trim(),As(d))){const u=yr(d,n.current);u!==void 0&&(t[c]=u),c===t.length-1&&(this.finalKeyframe=d)}}if(this.resolveNoneKeyframes(),!br.has(s)||t.length!==2)return;const[o,r]=t,i=So(o),l=So(r);if(i!==l)if(yo(i)&&yo(l))for(let c=0;c<t.length;c++){const d=t[c];typeof d=="string"&&(t[c]=parseFloat(d))}else Qe[s]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:t,name:n}=this,s=[];for(let o=0;o<t.length;o++)(t[o]===null||Zc(t[o]))&&s.push(o);s.length&&qc(t,s,n)}measureInitialState(){const{element:t,unresolvedKeyframes:n,name:s}=this;if(!t||!t.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Qe[s](t.measureViewportBox(),window.getComputedStyle(t.current)),n[0]=this.measuredOrigin;const o=n[n.length-1];o!==void 0&&t.getValue(s,o).jump(o,!1)}measureEndState(){var l;const{element:t,name:n,unresolvedKeyframes:s}=this;if(!t||!t.current)return;const o=t.getValue(n);o&&o.jump(this.measuredOrigin,!1);const r=s.length-1,i=s[r];s[r]=Qe[n](t.measureViewportBox(),window.getComputedStyle(t.current)),i!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=i),(l=this.removedTransforms)!=null&&l.length&&this.removedTransforms.forEach(([c,d])=>{t.getValue(c).set(d)}),this.resolveNoneKeyframes()}}function Jc(e,t,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let s=document;const o=(n==null?void 0:n[e])??s.querySelectorAll(e);return o?Array.from(o):[]}return Array.from(e)}const kr=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function jr(e){return _i(e)&&"offsetHeight"in e}const ko=30,Qc=e=>!isNaN(parseFloat(e));class ed{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{var r;const o=Se.now();if(this.updatedAt!==o&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&((r=this.events.change)==null||r.notify(this.current),this.dependents))for(const i of this.dependents)i.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=Se.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=Qc(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return process.env.NODE_ENV!=="production"&&Cs(!1,'value.onChange(callback) is deprecated. Switch to value.on("change", callback).'),this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new Ss);const s=this.events[t].add(n);return t==="change"?()=>{s(),ie.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,s){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-s}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var t;(t=this.events.change)==null||t.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=Se.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>ko)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,ko);return Zi(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var t,n;(t=this.dependents)==null||t.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function mt(e,t){return new ed(e,t)}const{schedule:Bs}=er(queueMicrotask,!1),Te={x:!1,y:!1};function Er(){return Te.x||Te.y}function td(e){return e==="x"||e==="y"?Te[e]?null:(Te[e]=!0,()=>{Te[e]=!1}):Te.x||Te.y?null:(Te.x=Te.y=!0,()=>{Te.x=Te.y=!1})}function Ar(e,t){const n=Jc(e),s=new AbortController,o={passive:!0,...t,signal:s.signal};return[n,o,()=>s.abort()]}function jo(e){return!(e.pointerType==="touch"||Er())}function nd(e,t,n={}){const[s,o,r]=Ar(e,n),i=l=>{if(!jo(l))return;const{target:c}=l,d=t(c,l);if(typeof d!="function"||!c)return;const u=m=>{jo(m)&&(d(m),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,o)};return s.forEach(l=>{l.addEventListener("pointerenter",i,o)}),r}const Mr=(e,t)=>t?e===t?!0:Mr(e,t.parentElement):!1,$s=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,sd=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function od(e){return sd.has(e.tagName)||e.tabIndex!==-1}const en=new WeakSet;function Eo(e){return t=>{t.key==="Enter"&&e(t)}}function En(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const id=(e,t)=>{const n=e.currentTarget;if(!n)return;const s=Eo(()=>{if(en.has(n))return;En(n,"down");const o=Eo(()=>{En(n,"up")}),r=()=>En(n,"cancel");n.addEventListener("keyup",o,t),n.addEventListener("blur",r,t)});n.addEventListener("keydown",s,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",s),t)};function Ao(e){return $s(e)&&!Er()}function rd(e,t,n={}){const[s,o,r]=Ar(e,n),i=l=>{const c=l.currentTarget;if(!Ao(l))return;en.add(c);const d=t(c,l),u=(p,g)=>{window.removeEventListener("pointerup",m),window.removeEventListener("pointercancel",f),en.has(c)&&en.delete(c),Ao(p)&&typeof d=="function"&&d(p,{success:g})},m=p=>{u(p,c===window||c===document||n.useGlobalTarget||Mr(c,p.target))},f=p=>{u(p,!1)};window.addEventListener("pointerup",m,o),window.addEventListener("pointercancel",f,o)};return s.forEach(l=>{(n.useGlobalTarget?window:l).addEventListener("pointerdown",i,o),jr(l)&&(l.addEventListener("focus",d=>id(d,o)),!od(l)&&!l.hasAttribute("tabindex")&&(l.tabIndex=0))}),r}function Tr(e){return _i(e)&&"ownerSVGElement"in e}function ad(e){return Tr(e)&&e.tagName==="svg"}const be=e=>!!(e&&e.getVelocity),ld=[...wr,fe,We],cd=e=>ld.find(vr(e)),Os=y.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});class dd extends h.Component{getSnapshotBeforeUpdate(t){const n=this.props.childRef.current;if(n&&t.isPresent&&!this.props.isPresent){const s=n.offsetParent,o=jr(s)&&s.offsetWidth||0,r=this.props.sizeRef.current;r.height=n.offsetHeight||0,r.width=n.offsetWidth||0,r.top=n.offsetTop,r.left=n.offsetLeft,r.right=o-r.width-r.left}return null}componentDidUpdate(){}render(){return this.props.children}}function ud({children:e,isPresent:t,anchorX:n,root:s}){const o=y.useId(),r=y.useRef(null),i=y.useRef({width:0,height:0,top:0,left:0,right:0}),{nonce:l}=y.useContext(Os);return y.useInsertionEffect(()=>{const{width:c,height:d,top:u,left:m,right:f}=i.current;if(t||!r.current||!c||!d)return;const p=n==="left"?`left: ${m}`:`right: ${f}`;r.current.dataset.motionPopId=o;const g=document.createElement("style");l&&(g.nonce=l);const x=s??document.head;return x.appendChild(g),g.sheet&&g.sheet.insertRule(`
2
- [data-motion-pop-id="${o}"] {
1
+ "use strict";var Id=Object.defineProperty;var Dd=(e,t,n)=>t in e?Id(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ae=(e,t,n)=>Dd(e,typeof t!="symbol"?t+"":t,n);Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const C=require("react"),l=require("react/jsx-runtime"),K=require("livekit-client"),Ee=require("@livekit/components-react"),Wa=require("sonner"),$d=require("@phosphor-icons/react"),ls=require("class-variance-authority"),$r=require("clsx"),Fd=require("@radix-ui/react-toggle"),Od=require("@radix-ui/react-select"),Me=require("lucide-react"),Ld=require("@emotion/styled");require("@emotion/react");const _d=require("react-dom/client");function Fr(e){const t=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const n in e)if(n!=="default"){const s=Object.getOwnPropertyDescriptor(e,n);Object.defineProperty(t,n,s.get?s:{enumerable:!0,get:()=>e[n]})}}return t.default=e,Object.freeze(t)}const p=Fr(C),Bd=Fr(Fd),ze=Fr(Od),Or=C.createContext({});function Lr(e){const t=C.useRef(null);return t.current===null&&(t.current=e()),t.current}const _r=typeof window<"u",Ga=_r?C.useLayoutEffect:C.useEffect,cs=C.createContext(null);function Br(e,t){e.indexOf(t)===-1&&e.push(t)}function zr(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const st=(e,t,n)=>n>t?t:n<e?e:n;function ir(e,t){return t?`${e}. For more information and steps for solving, visit https://motion.dev/troubleshooting/${t}`:e}let Yt=()=>{},rt=()=>{};process.env.NODE_ENV!=="production"&&(Yt=(e,t,n)=>{!e&&typeof console<"u"&&console.warn(ir(t,n))},rt=(e,t,n)=>{if(!e)throw new Error(ir(t,n))});const ot={},Ka=e=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(e);function Ya(e){return typeof e=="object"&&e!==null}const qa=e=>/^0[^.\s]+$/u.test(e);function Hr(e){let t;return()=>(t===void 0&&(t=e()),t)}const He=e=>e,zd=(e,t)=>n=>t(e(n)),Cn=(...e)=>e.reduce(zd),gn=(e,t,n)=>{const s=t-e;return s===0?1:(n-e)/s};class Ur{constructor(){this.subscriptions=[]}add(t){return Br(this.subscriptions,t),()=>zr(this.subscriptions,t)}notify(t,n,s){const r=this.subscriptions.length;if(r)if(r===1)this.subscriptions[0](t,n,s);else for(let o=0;o<r;o++){const i=this.subscriptions[o];i&&i(t,n,s)}}getSize(){return this.subscriptions.length}clear(){this.subscriptions.length=0}}const Ge=e=>e*1e3,qe=e=>e/1e3;function Xa(e,t){return t?e*(1e3/t):0}const Fo=new Set;function Zr(e,t,n){e||Fo.has(t)||(console.warn(ir(t,n)),Fo.add(t))}const Ja=(e,t,n)=>(((1-3*n+3*t)*e+(3*n-6*t))*e+3*t)*e,Hd=1e-7,Ud=12;function Zd(e,t,n,s,r){let o,i,a=0;do i=t+(n-t)/2,o=Ja(i,s,r)-e,o>0?n=i:t=i;while(Math.abs(o)>Hd&&++a<Ud);return i}function En(e,t,n,s){if(e===t&&n===s)return He;const r=o=>Zd(o,0,1,e,n);return o=>o===0||o===1?o:Ja(r(o),t,s)}const Qa=e=>t=>t<=.5?e(2*t)/2:(2-e(2*(1-t)))/2,el=e=>t=>1-e(1-t),tl=En(.33,1.53,.69,.99),Wr=el(tl),nl=Qa(Wr),sl=e=>(e*=2)<1?.5*Wr(e):.5*(2-Math.pow(2,-10*(e-1))),Gr=e=>1-Math.sin(Math.acos(e)),rl=el(Gr),ol=Qa(Gr),Wd=En(.42,0,1,1),Gd=En(0,0,.58,1),il=En(.42,0,.58,1),Kd=e=>Array.isArray(e)&&typeof e[0]!="number",al=e=>Array.isArray(e)&&typeof e[0]=="number",Oo={linear:He,easeIn:Wd,easeInOut:il,easeOut:Gd,circIn:Gr,circInOut:ol,circOut:rl,backIn:Wr,backInOut:nl,backOut:tl,anticipate:sl},Yd=e=>typeof e=="string",Lo=e=>{if(al(e)){rt(e.length===4,"Cubic bezier arrays must contain four numerical values.","cubic-bezier-length");const[t,n,s,r]=e;return En(t,n,s,r)}else if(Yd(e))return rt(Oo[e]!==void 0,`Invalid easing type '${e}'`,"invalid-easing-type"),Oo[e];return e},Rn=["setup","read","resolveKeyframes","preUpdate","update","preRender","render","postRender"];function qd(e,t){let n=new Set,s=new Set,r=!1,o=!1;const i=new WeakSet;let a={delta:0,timestamp:0,isProcessing:!1};function c(u){i.has(u)&&(d.schedule(u),e()),u(a)}const d={schedule:(u,f=!1,h=!1)=>{const g=h&&r?n:s;return f&&i.add(u),g.has(u)||g.add(u),u},cancel:u=>{s.delete(u),i.delete(u)},process:u=>{if(a=u,r){o=!0;return}r=!0,[n,s]=[s,n],n.forEach(c),n.clear(),r=!1,o&&(o=!1,d.process(u))}};return d}const Xd=40;function ll(e,t){let n=!1,s=!0;const r={delta:0,timestamp:0,isProcessing:!1},o=()=>n=!0,i=Rn.reduce((E,w)=>(E[w]=qd(o),E),{}),{setup:a,read:c,resolveKeyframes:d,preUpdate:u,update:f,preRender:h,render:y,postRender:g}=i,m=()=>{const E=ot.useManualTiming?r.timestamp:performance.now();n=!1,ot.useManualTiming||(r.delta=s?1e3/60:Math.max(Math.min(E-r.timestamp,Xd),1)),r.timestamp=E,r.isProcessing=!0,a.process(r),c.process(r),d.process(r),u.process(r),f.process(r),h.process(r),y.process(r),g.process(r),r.isProcessing=!1,n&&t&&(s=!1,e(m))},b=()=>{n=!0,s=!0,r.isProcessing||e(m)};return{schedule:Rn.reduce((E,w)=>{const v=i[w];return E[w]=(A,T=!1,j=!1)=>(n||b(),v.schedule(A,T,j)),E},{}),cancel:E=>{for(let w=0;w<Rn.length;w++)i[Rn[w]].cancel(E)},state:r,steps:i}}const{schedule:ye,cancel:ut,state:Ne,steps:Ms}=ll(typeof requestAnimationFrame<"u"?requestAnimationFrame:He,!0);let Wn;function Jd(){Wn=void 0}const De={now:()=>(Wn===void 0&&De.set(Ne.isProcessing||ot.useManualTiming?Ne.timestamp:performance.now()),Wn),set:e=>{Wn=e,queueMicrotask(Jd)}},cl=e=>t=>typeof t=="string"&&t.startsWith(e),Kr=cl("--"),Qd=cl("var(--"),Yr=e=>Qd(e)?eu.test(e.split("/*")[0].trim()):!1,eu=/var\(--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)$/iu,qt={test:e=>typeof e=="number",parse:parseFloat,transform:e=>e},yn={...qt,transform:e=>st(0,1,e)},In={...qt,default:1},un=e=>Math.round(e*1e5)/1e5,qr=/-?(?:\d+(?:\.\d+)?|\.\d+)/gu;function tu(e){return e==null}const nu=/^(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))$/iu,Xr=(e,t)=>n=>!!(typeof n=="string"&&nu.test(n)&&n.startsWith(e)||t&&!tu(n)&&Object.prototype.hasOwnProperty.call(n,t)),dl=(e,t,n)=>s=>{if(typeof s!="string")return s;const[r,o,i,a]=s.match(qr);return{[e]:parseFloat(r),[t]:parseFloat(o),[n]:parseFloat(i),alpha:a!==void 0?parseFloat(a):1}},su=e=>st(0,255,e),Ps={...qt,transform:e=>Math.round(su(e))},vt={test:Xr("rgb","red"),parse:dl("red","green","blue"),transform:({red:e,green:t,blue:n,alpha:s=1})=>"rgba("+Ps.transform(e)+", "+Ps.transform(t)+", "+Ps.transform(n)+", "+un(yn.transform(s))+")"};function ru(e){let t="",n="",s="",r="";return e.length>5?(t=e.substring(1,3),n=e.substring(3,5),s=e.substring(5,7),r=e.substring(7,9)):(t=e.substring(1,2),n=e.substring(2,3),s=e.substring(3,4),r=e.substring(4,5),t+=t,n+=n,s+=s,r+=r),{red:parseInt(t,16),green:parseInt(n,16),blue:parseInt(s,16),alpha:r?parseInt(r,16)/255:1}}const ar={test:Xr("#"),parse:ru,transform:vt.transform},kn=e=>({test:t=>typeof t=="string"&&t.endsWith(e)&&t.split(" ").length===1,parse:parseFloat,transform:t=>`${t}${e}`}),ct=kn("deg"),Xe=kn("%"),Q=kn("px"),ou=kn("vh"),iu=kn("vw"),_o={...Xe,parse:e=>Xe.parse(e)/100,transform:e=>Xe.transform(e*100)},$t={test:Xr("hsl","hue"),parse:dl("hue","saturation","lightness"),transform:({hue:e,saturation:t,lightness:n,alpha:s=1})=>"hsla("+Math.round(e)+", "+Xe.transform(un(t))+", "+Xe.transform(un(n))+", "+un(yn.transform(s))+")"},je={test:e=>vt.test(e)||ar.test(e)||$t.test(e),parse:e=>vt.test(e)?vt.parse(e):$t.test(e)?$t.parse(e):ar.parse(e),transform:e=>typeof e=="string"?e:e.hasOwnProperty("red")?vt.transform(e):$t.transform(e),getAnimatableNone:e=>{const t=je.parse(e);return t.alpha=0,je.transform(t)}},au=/(?:#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\))/giu;function lu(e){var t,n;return isNaN(e)&&typeof e=="string"&&(((t=e.match(qr))==null?void 0:t.length)||0)+(((n=e.match(au))==null?void 0:n.length)||0)>0}const ul="number",fl="color",cu="var",du="var(",Bo="${}",uu=/var\s*\(\s*--(?:[\w-]+\s*|[\w-]+\s*,(?:\s*[^)(\s]|\s*\((?:[^)(]|\([^)(]*\))*\))+\s*)\)|#[\da-f]{3,8}|(?:rgb|hsl)a?\((?:-?[\d.]+%?[,\s]+){2}-?[\d.]+%?\s*(?:[,/]\s*)?(?:\b\d+(?:\.\d+)?|\.\d+)?%?\)|-?(?:\d+(?:\.\d+)?|\.\d+)/giu;function xn(e){const t=e.toString(),n=[],s={color:[],number:[],var:[]},r=[];let o=0;const a=t.replace(uu,c=>(je.test(c)?(s.color.push(o),r.push(fl),n.push(je.parse(c))):c.startsWith(du)?(s.var.push(o),r.push(cu),n.push(c)):(s.number.push(o),r.push(ul),n.push(parseFloat(c))),++o,Bo)).split(Bo);return{values:n,split:a,indexes:s,types:r}}function hl(e){return xn(e).values}function ml(e){const{split:t,types:n}=xn(e),s=t.length;return r=>{let o="";for(let i=0;i<s;i++)if(o+=t[i],r[i]!==void 0){const a=n[i];a===ul?o+=un(r[i]):a===fl?o+=je.transform(r[i]):o+=r[i]}return o}}const fu=e=>typeof e=="number"?0:je.test(e)?je.getAnimatableNone(e):e;function hu(e){const t=hl(e);return ml(e)(t.map(fu))}const ft={test:lu,parse:hl,createTransformer:ml,getAnimatableNone:hu};function Ns(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*6*n:n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function mu({hue:e,saturation:t,lightness:n,alpha:s}){e/=360,t/=100,n/=100;let r=0,o=0,i=0;if(!t)r=o=i=n;else{const a=n<.5?n*(1+t):n+t-n*t,c=2*n-a;r=Ns(c,a,e+1/3),o=Ns(c,a,e),i=Ns(c,a,e-1/3)}return{red:Math.round(r*255),green:Math.round(o*255),blue:Math.round(i*255),alpha:s}}function Qn(e,t){return n=>n>0?t:e}const be=(e,t,n)=>e+(t-e)*n,Vs=(e,t,n)=>{const s=e*e,r=n*(t*t-s)+s;return r<0?0:Math.sqrt(r)},pu=[ar,vt,$t],gu=e=>pu.find(t=>t.test(e));function zo(e){const t=gu(e);if(Yt(!!t,`'${e}' is not an animatable color. Use the equivalent color code instead.`,"color-not-animatable"),!t)return!1;let n=t.parse(e);return t===$t&&(n=mu(n)),n}const Ho=(e,t)=>{const n=zo(e),s=zo(t);if(!n||!s)return Qn(e,t);const r={...n};return o=>(r.red=Vs(n.red,s.red,o),r.green=Vs(n.green,s.green,o),r.blue=Vs(n.blue,s.blue,o),r.alpha=be(n.alpha,s.alpha,o),vt.transform(r))},lr=new Set(["none","hidden"]);function yu(e,t){return lr.has(e)?n=>n<=0?e:t:n=>n>=1?t:e}function xu(e,t){return n=>be(e,t,n)}function Jr(e){return typeof e=="number"?xu:typeof e=="string"?Yr(e)?Qn:je.test(e)?Ho:wu:Array.isArray(e)?pl:typeof e=="object"?je.test(e)?Ho:bu:Qn}function pl(e,t){const n=[...e],s=n.length,r=e.map((o,i)=>Jr(o)(o,t[i]));return o=>{for(let i=0;i<s;i++)n[i]=r[i](o);return n}}function bu(e,t){const n={...e,...t},s={};for(const r in n)e[r]!==void 0&&t[r]!==void 0&&(s[r]=Jr(e[r])(e[r],t[r]));return r=>{for(const o in s)n[o]=s[o](r);return n}}function vu(e,t){const n=[],s={color:0,var:0,number:0};for(let r=0;r<t.values.length;r++){const o=t.types[r],i=e.indexes[o][s[o]],a=e.values[i]??0;n[r]=a,s[o]++}return n}const wu=(e,t)=>{const n=ft.createTransformer(t),s=xn(e),r=xn(t);return s.indexes.var.length===r.indexes.var.length&&s.indexes.color.length===r.indexes.color.length&&s.indexes.number.length>=r.indexes.number.length?lr.has(e)&&!r.values.length||lr.has(t)&&!s.values.length?yu(e,t):Cn(pl(vu(s,r),r.values),n):(Yt(!0,`Complex values '${e}' and '${t}' too different to mix. Ensure all colors are of the same type, and that each contains the same quantity of number and color values. Falling back to instant transition.`,"complex-values-different"),Qn(e,t))};function gl(e,t,n){return typeof e=="number"&&typeof t=="number"&&typeof n=="number"?be(e,t,n):Jr(e)(e,t)}const Su=e=>{const t=({timestamp:n})=>e(n);return{start:(n=!0)=>ye.update(t,n),stop:()=>ut(t),now:()=>Ne.isProcessing?Ne.timestamp:De.now()}},yl=(e,t,n=10)=>{let s="";const r=Math.max(Math.round(t/n),2);for(let o=0;o<r;o++)s+=Math.round(e(o/(r-1))*1e4)/1e4+", ";return`linear(${s.substring(0,s.length-2)})`},es=2e4;function Qr(e){let t=0;const n=50;let s=e.next(t);for(;!s.done&&t<es;)t+=n,s=e.next(t);return t>=es?1/0:t}function Cu(e,t=100,n){const s=n({...e,keyframes:[0,t]}),r=Math.min(Qr(s),es);return{type:"keyframes",ease:o=>s.next(r*o).value/t,duration:qe(r)}}const Eu=5;function xl(e,t,n){const s=Math.max(t-Eu,0);return Xa(n-e(s),t-s)}const xe={stiffness:100,damping:10,mass:1,velocity:0,duration:800,bounce:.3,visualDuration:.3,restSpeed:{granular:.01,default:2},restDelta:{granular:.005,default:.5},minDuration:.01,maxDuration:10,minDamping:.05,maxDamping:1},Rs=.001;function ku({duration:e=xe.duration,bounce:t=xe.bounce,velocity:n=xe.velocity,mass:s=xe.mass}){let r,o;Yt(e<=Ge(xe.maxDuration),"Spring duration must be 10 seconds or less","spring-duration-limit");let i=1-t;i=st(xe.minDamping,xe.maxDamping,i),e=st(xe.minDuration,xe.maxDuration,qe(e)),i<1?(r=d=>{const u=d*i,f=u*e,h=u-n,y=cr(d,i),g=Math.exp(-f);return Rs-h/y*g},o=d=>{const f=d*i*e,h=f*n+n,y=Math.pow(i,2)*Math.pow(d,2)*e,g=Math.exp(-f),m=cr(Math.pow(d,2),i);return(-r(d)+Rs>0?-1:1)*((h-y)*g)/m}):(r=d=>{const u=Math.exp(-d*e),f=(d-n)*e+1;return-Rs+u*f},o=d=>{const u=Math.exp(-d*e),f=(n-d)*(e*e);return u*f});const a=5/e,c=Au(r,o,a);if(e=Ge(e),isNaN(c))return{stiffness:xe.stiffness,damping:xe.damping,duration:e};{const d=Math.pow(c,2)*s;return{stiffness:d,damping:i*2*Math.sqrt(s*d),duration:e}}}const Tu=12;function Au(e,t,n){let s=n;for(let r=1;r<Tu;r++)s=s-e(s)/t(s);return s}function cr(e,t){return e*Math.sqrt(1-t*t)}const ju=["duration","bounce"],Mu=["stiffness","damping","mass"];function Uo(e,t){return t.some(n=>e[n]!==void 0)}function Pu(e){let t={velocity:xe.velocity,stiffness:xe.stiffness,damping:xe.damping,mass:xe.mass,isResolvedFromDuration:!1,...e};if(!Uo(e,Mu)&&Uo(e,ju))if(e.visualDuration){const n=e.visualDuration,s=2*Math.PI/(n*1.2),r=s*s,o=2*st(.05,1,1-(e.bounce||0))*Math.sqrt(r);t={...t,mass:xe.mass,stiffness:r,damping:o}}else{const n=ku(e);t={...t,...n,mass:xe.mass},t.isResolvedFromDuration=!0}return t}function ts(e=xe.visualDuration,t=xe.bounce){const n=typeof e!="object"?{visualDuration:e,keyframes:[0,1],bounce:t}:e;let{restSpeed:s,restDelta:r}=n;const o=n.keyframes[0],i=n.keyframes[n.keyframes.length-1],a={done:!1,value:o},{stiffness:c,damping:d,mass:u,duration:f,velocity:h,isResolvedFromDuration:y}=Pu({...n,velocity:-qe(n.velocity||0)}),g=h||0,m=d/(2*Math.sqrt(c*u)),b=i-o,k=qe(Math.sqrt(c/u)),S=Math.abs(b)<5;s||(s=S?xe.restSpeed.granular:xe.restSpeed.default),r||(r=S?xe.restDelta.granular:xe.restDelta.default);let E;if(m<1){const v=cr(k,m);E=A=>{const T=Math.exp(-m*k*A);return i-T*((g+m*k*b)/v*Math.sin(v*A)+b*Math.cos(v*A))}}else if(m===1)E=v=>i-Math.exp(-k*v)*(b+(g+k*b)*v);else{const v=k*Math.sqrt(m*m-1);E=A=>{const T=Math.exp(-m*k*A),j=Math.min(v*A,300);return i-T*((g+m*k*b)*Math.sinh(j)+v*b*Math.cosh(j))/v}}const w={calculatedDuration:y&&f||null,next:v=>{const A=E(v);if(y)a.done=v>=f;else{let T=v===0?g:0;m<1&&(T=v===0?Ge(g):xl(E,v,A));const j=Math.abs(T)<=s,z=Math.abs(i-A)<=r;a.done=j&&z}return a.value=a.done?i:A,a},toString:()=>{const v=Math.min(Qr(w),es),A=yl(T=>w.next(v*T).value,v,30);return v+"ms "+A},toTransition:()=>{}};return w}ts.applyToOptions=e=>{const t=Cu(e,100,ts);return e.ease=t.ease,e.duration=Ge(t.duration),e.type="keyframes",e};function dr({keyframes:e,velocity:t=0,power:n=.8,timeConstant:s=325,bounceDamping:r=10,bounceStiffness:o=500,modifyTarget:i,min:a,max:c,restDelta:d=.5,restSpeed:u}){const f=e[0],h={done:!1,value:f},y=j=>a!==void 0&&j<a||c!==void 0&&j>c,g=j=>a===void 0?c:c===void 0||Math.abs(a-j)<Math.abs(c-j)?a:c;let m=n*t;const b=f+m,k=i===void 0?b:i(b);k!==b&&(m=k-f);const S=j=>-m*Math.exp(-j/s),E=j=>k+S(j),w=j=>{const z=S(j),x=E(j);h.done=Math.abs(z)<=d,h.value=h.done?k:x};let v,A;const T=j=>{y(h.value)&&(v=j,A=ts({keyframes:[h.value,g(h.value)],velocity:xl(E,j,h.value),damping:r,stiffness:o,restDelta:d,restSpeed:u}))};return T(0),{calculatedDuration:null,next:j=>{let z=!1;return!A&&v===void 0&&(z=!0,w(j),T(j)),v!==void 0&&j>=v?A.next(j-v):(!z&&w(j),h)}}}function Nu(e,t,n){const s=[],r=n||ot.mix||gl,o=e.length-1;for(let i=0;i<o;i++){let a=r(e[i],e[i+1]);if(t){const c=Array.isArray(t)?t[i]||He:t;a=Cn(c,a)}s.push(a)}return s}function Vu(e,t,{clamp:n=!0,ease:s,mixer:r}={}){const o=e.length;if(rt(o===t.length,"Both input and output ranges must be the same length","range-length"),o===1)return()=>t[0];if(o===2&&t[0]===t[1])return()=>t[1];const i=e[0]===e[1];e[0]>e[o-1]&&(e=[...e].reverse(),t=[...t].reverse());const a=Nu(t,s,r),c=a.length,d=u=>{if(i&&u<e[0])return t[0];let f=0;if(c>1)for(;f<e.length-2&&!(u<e[f+1]);f++);const h=gn(e[f],e[f+1],u);return a[f](h)};return n?u=>d(st(e[0],e[o-1],u)):d}function Ru(e,t){const n=e[e.length-1];for(let s=1;s<=t;s++){const r=gn(0,t,s);e.push(be(n,1,r))}}function Iu(e){const t=[0];return Ru(t,e.length-1),t}function Du(e,t){return e.map(n=>n*t)}function $u(e,t){return e.map(()=>t||il).splice(0,e.length-1)}function Ft({duration:e=300,keyframes:t,times:n,ease:s="easeInOut"}){const r=Kd(s)?s.map(Lo):Lo(s),o={done:!1,value:t[0]},i=Du(n&&n.length===t.length?n:Iu(t),e),a=Vu(i,t,{ease:Array.isArray(r)?r:$u(t,r)});return{calculatedDuration:e,next:c=>(o.value=a(c),o.done=c>=e,o)}}const Fu=e=>e!==null;function eo(e,{repeat:t,repeatType:n="loop"},s,r=1){const o=e.filter(Fu),a=r<0||t&&n!=="loop"&&t%2===1?0:o.length-1;return!a||s===void 0?o[a]:s}const Ou={decay:dr,inertia:dr,tween:Ft,keyframes:Ft,spring:ts};function bl(e){typeof e.type=="string"&&(e.type=Ou[e.type])}class to{constructor(){this.updateFinished()}get finished(){return this._finished}updateFinished(){this._finished=new Promise(t=>{this.resolve=t})}notifyFinished(){this.resolve()}then(t,n){return this.finished.then(t,n)}}const Lu=e=>e/100;class no extends to{constructor(t){super(),this.state="idle",this.startTime=null,this.isStopped=!1,this.currentTime=0,this.holdTime=null,this.playbackSpeed=1,this.stop=()=>{var s,r;const{motionValue:n}=this.options;n&&n.updatedAt!==De.now()&&this.tick(De.now()),this.isStopped=!0,this.state!=="idle"&&(this.teardown(),(r=(s=this.options).onStop)==null||r.call(s))},this.options=t,this.initAnimation(),this.play(),t.autoplay===!1&&this.pause()}initAnimation(){const{options:t}=this;bl(t);const{type:n=Ft,repeat:s=0,repeatDelay:r=0,repeatType:o,velocity:i=0}=t;let{keyframes:a}=t;const c=n||Ft;process.env.NODE_ENV!=="production"&&c!==Ft&&rt(a.length<=2,`Only two keyframes currently supported with spring and inertia animations. Trying to animate ${a}`,"spring-two-frames"),c!==Ft&&typeof a[0]!="number"&&(this.mixKeyframes=Cn(Lu,gl(a[0],a[1])),a=[0,100]);const d=c({...t,keyframes:a});o==="mirror"&&(this.mirroredGenerator=c({...t,keyframes:[...a].reverse(),velocity:-i})),d.calculatedDuration===null&&(d.calculatedDuration=Qr(d));const{calculatedDuration:u}=d;this.calculatedDuration=u,this.resolvedDuration=u+r,this.totalDuration=this.resolvedDuration*(s+1)-r,this.generator=d}updateTime(t){const n=Math.round(t-this.startTime)*this.playbackSpeed;this.holdTime!==null?this.currentTime=this.holdTime:this.currentTime=n}tick(t,n=!1){const{generator:s,totalDuration:r,mixKeyframes:o,mirroredGenerator:i,resolvedDuration:a,calculatedDuration:c}=this;if(this.startTime===null)return s.next(0);const{delay:d=0,keyframes:u,repeat:f,repeatType:h,repeatDelay:y,type:g,onUpdate:m,finalKeyframe:b}=this.options;this.speed>0?this.startTime=Math.min(this.startTime,t):this.speed<0&&(this.startTime=Math.min(t-r/this.speed,this.startTime)),n?this.currentTime=t:this.updateTime(t);const k=this.currentTime-d*(this.playbackSpeed>=0?1:-1),S=this.playbackSpeed>=0?k<0:k>r;this.currentTime=Math.max(k,0),this.state==="finished"&&this.holdTime===null&&(this.currentTime=r);let E=this.currentTime,w=s;if(f){const j=Math.min(this.currentTime,r)/a;let z=Math.floor(j),x=j%1;!x&&j>=1&&(x=1),x===1&&z--,z=Math.min(z,f+1),!!(z%2)&&(h==="reverse"?(x=1-x,y&&(x-=y/a)):h==="mirror"&&(w=i)),E=st(0,1,x)*a}const v=S?{done:!1,value:u[0]}:w.next(E);o&&(v.value=o(v.value));let{done:A}=v;!S&&c!==null&&(A=this.playbackSpeed>=0?this.currentTime>=r:this.currentTime<=0);const T=this.holdTime===null&&(this.state==="finished"||this.state==="running"&&A);return T&&g!==dr&&(v.value=eo(u,this.options,b,this.speed)),m&&m(v.value),T&&this.finish(),v}then(t,n){return this.finished.then(t,n)}get duration(){return qe(this.calculatedDuration)}get time(){return qe(this.currentTime)}set time(t){var n;t=Ge(t),this.currentTime=t,this.startTime===null||this.holdTime!==null||this.playbackSpeed===0?this.holdTime=t:this.driver&&(this.startTime=this.driver.now()-t/this.playbackSpeed),(n=this.driver)==null||n.start(!1)}get speed(){return this.playbackSpeed}set speed(t){this.updateTime(De.now());const n=this.playbackSpeed!==t;this.playbackSpeed=t,n&&(this.time=qe(this.currentTime))}play(){var r,o;if(this.isStopped)return;const{driver:t=Su,startTime:n}=this.options;this.driver||(this.driver=t(i=>this.tick(i))),(o=(r=this.options).onPlay)==null||o.call(r);const s=this.driver.now();this.state==="finished"?(this.updateFinished(),this.startTime=s):this.holdTime!==null?this.startTime=s-this.holdTime:this.startTime||(this.startTime=n??s),this.state==="finished"&&this.speed<0&&(this.startTime+=this.calculatedDuration),this.holdTime=null,this.state="running",this.driver.start()}pause(){this.state="paused",this.updateTime(De.now()),this.holdTime=this.currentTime}complete(){this.state!=="running"&&this.play(),this.state="finished",this.holdTime=null}finish(){var t,n;this.notifyFinished(),this.teardown(),this.state="finished",(n=(t=this.options).onComplete)==null||n.call(t)}cancel(){var t,n;this.holdTime=null,this.startTime=0,this.tick(0),this.teardown(),(n=(t=this.options).onCancel)==null||n.call(t)}teardown(){this.state="idle",this.stopDriver(),this.startTime=this.holdTime=null}stopDriver(){this.driver&&(this.driver.stop(),this.driver=void 0)}sample(t){return this.startTime=0,this.tick(t,!0)}attachTimeline(t){var n;return this.options.allowFlatten&&(this.options.type="keyframes",this.options.ease="linear",this.initAnimation()),(n=this.driver)==null||n.stop(),t.observe(this)}}function _u(e){for(let t=1;t<e.length;t++)e[t]??(e[t]=e[t-1])}const wt=e=>e*180/Math.PI,ur=e=>{const t=wt(Math.atan2(e[1],e[0]));return fr(t)},Bu={x:4,y:5,translateX:4,translateY:5,scaleX:0,scaleY:3,scale:e=>(Math.abs(e[0])+Math.abs(e[3]))/2,rotate:ur,rotateZ:ur,skewX:e=>wt(Math.atan(e[1])),skewY:e=>wt(Math.atan(e[2])),skew:e=>(Math.abs(e[1])+Math.abs(e[2]))/2},fr=e=>(e=e%360,e<0&&(e+=360),e),Zo=ur,Wo=e=>Math.sqrt(e[0]*e[0]+e[1]*e[1]),Go=e=>Math.sqrt(e[4]*e[4]+e[5]*e[5]),zu={x:12,y:13,z:14,translateX:12,translateY:13,translateZ:14,scaleX:Wo,scaleY:Go,scale:e=>(Wo(e)+Go(e))/2,rotateX:e=>fr(wt(Math.atan2(e[6],e[5]))),rotateY:e=>fr(wt(Math.atan2(-e[2],e[0]))),rotateZ:Zo,rotate:Zo,skewX:e=>wt(Math.atan(e[4])),skewY:e=>wt(Math.atan(e[1])),skew:e=>(Math.abs(e[1])+Math.abs(e[4]))/2};function hr(e){return e.includes("scale")?1:0}function mr(e,t){if(!e||e==="none")return hr(t);const n=e.match(/^matrix3d\(([-\d.e\s,]+)\)$/u);let s,r;if(n)s=zu,r=n;else{const a=e.match(/^matrix\(([-\d.e\s,]+)\)$/u);s=Bu,r=a}if(!r)return hr(t);const o=s[t],i=r[1].split(",").map(Uu);return typeof o=="function"?o(i):i[o]}const Hu=(e,t)=>{const{transform:n="none"}=getComputedStyle(e);return mr(n,t)};function Uu(e){return parseFloat(e.trim())}const Xt=["transformPerspective","x","y","z","translateX","translateY","translateZ","scale","scaleX","scaleY","rotate","rotateX","rotateY","rotateZ","skew","skewX","skewY"],Jt=new Set(Xt),Ko=e=>e===qt||e===Q,Zu=new Set(["x","y","z"]),Wu=Xt.filter(e=>!Zu.has(e));function Gu(e){const t=[];return Wu.forEach(n=>{const s=e.getValue(n);s!==void 0&&(t.push([n,s.get()]),s.set(n.startsWith("scale")?1:0))}),t}const Ct={width:({x:e},{paddingLeft:t="0",paddingRight:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),height:({y:e},{paddingTop:t="0",paddingBottom:n="0"})=>e.max-e.min-parseFloat(t)-parseFloat(n),top:(e,{top:t})=>parseFloat(t),left:(e,{left:t})=>parseFloat(t),bottom:({y:e},{top:t})=>parseFloat(t)+(e.max-e.min),right:({x:e},{left:t})=>parseFloat(t)+(e.max-e.min),x:(e,{transform:t})=>mr(t,"x"),y:(e,{transform:t})=>mr(t,"y")};Ct.translateX=Ct.x;Ct.translateY=Ct.y;const Et=new Set;let pr=!1,gr=!1,yr=!1;function vl(){if(gr){const e=Array.from(Et).filter(s=>s.needsMeasurement),t=new Set(e.map(s=>s.element)),n=new Map;t.forEach(s=>{const r=Gu(s);r.length&&(n.set(s,r),s.render())}),e.forEach(s=>s.measureInitialState()),t.forEach(s=>{s.render();const r=n.get(s);r&&r.forEach(([o,i])=>{var a;(a=s.getValue(o))==null||a.set(i)})}),e.forEach(s=>s.measureEndState()),e.forEach(s=>{s.suspendedScrollY!==void 0&&window.scrollTo(0,s.suspendedScrollY)})}gr=!1,pr=!1,Et.forEach(e=>e.complete(yr)),Et.clear()}function wl(){Et.forEach(e=>{e.readKeyframes(),e.needsMeasurement&&(gr=!0)})}function Ku(){yr=!0,wl(),vl(),yr=!1}class so{constructor(t,n,s,r,o,i=!1){this.state="pending",this.isAsync=!1,this.needsMeasurement=!1,this.unresolvedKeyframes=[...t],this.onComplete=n,this.name=s,this.motionValue=r,this.element=o,this.isAsync=i}scheduleResolve(){this.state="scheduled",this.isAsync?(Et.add(this),pr||(pr=!0,ye.read(wl),ye.resolveKeyframes(vl))):(this.readKeyframes(),this.complete())}readKeyframes(){const{unresolvedKeyframes:t,name:n,element:s,motionValue:r}=this;if(t[0]===null){const o=r==null?void 0:r.get(),i=t[t.length-1];if(o!==void 0)t[0]=o;else if(s&&n){const a=s.readValue(n,i);a!=null&&(t[0]=a)}t[0]===void 0&&(t[0]=i),r&&o===void 0&&r.set(t[0])}_u(t)}setFinalKeyframe(){}measureInitialState(){}renderEndStyles(){}measureEndState(){}complete(t=!1){this.state="complete",this.onComplete(this.unresolvedKeyframes,this.finalKeyframe,t),Et.delete(this)}cancel(){this.state==="scheduled"&&(Et.delete(this),this.state="pending")}resume(){this.state==="pending"&&this.scheduleResolve()}}const Yu=e=>e.startsWith("--");function qu(e,t,n){Yu(t)?e.style.setProperty(t,n):e.style[t]=n}const Xu=Hr(()=>window.ScrollTimeline!==void 0),Ju={};function Qu(e,t){const n=Hr(e);return()=>Ju[t]??n()}const Sl=Qu(()=>{try{document.createElement("div").animate({opacity:0},{easing:"linear(0, 1)"})}catch{return!1}return!0},"linearEasing"),ln=([e,t,n,s])=>`cubic-bezier(${e}, ${t}, ${n}, ${s})`,Yo={linear:"linear",ease:"ease",easeIn:"ease-in",easeOut:"ease-out",easeInOut:"ease-in-out",circIn:ln([0,.65,.55,1]),circOut:ln([.55,0,1,.45]),backIn:ln([.31,.01,.66,-.59]),backOut:ln([.33,1.53,.69,.99])};function Cl(e,t){if(e)return typeof e=="function"?Sl()?yl(e,t):"ease-out":al(e)?ln(e):Array.isArray(e)?e.map(n=>Cl(n,t)||Yo.easeOut):Yo[e]}function ef(e,t,n,{delay:s=0,duration:r=300,repeat:o=0,repeatType:i="loop",ease:a="easeOut",times:c}={},d=void 0){const u={[t]:n};c&&(u.offset=c);const f=Cl(a,r);Array.isArray(f)&&(u.easing=f);const h={delay:s,duration:r,easing:Array.isArray(f)?"linear":f,fill:"both",iterations:o+1,direction:i==="reverse"?"alternate":"normal"};return d&&(h.pseudoElement=d),e.animate(u,h)}function El(e){return typeof e=="function"&&"applyToOptions"in e}function tf({type:e,...t}){return El(e)&&Sl()?e.applyToOptions(t):(t.duration??(t.duration=300),t.ease??(t.ease="easeOut"),t)}class nf extends to{constructor(t){if(super(),this.finishedTime=null,this.isStopped=!1,!t)return;const{element:n,name:s,keyframes:r,pseudoElement:o,allowFlatten:i=!1,finalKeyframe:a,onComplete:c}=t;this.isPseudoElement=!!o,this.allowFlatten=i,this.options=t,rt(typeof t.type!="string",`Mini animate() doesn't support "type" as a string.`,"mini-spring");const d=tf(t);this.animation=ef(n,s,r,d,o),d.autoplay===!1&&this.animation.pause(),this.animation.onfinish=()=>{if(this.finishedTime=this.time,!o){const u=eo(r,this.options,a,this.speed);this.updateMotionValue?this.updateMotionValue(u):qu(n,s,u),this.animation.cancel()}c==null||c(),this.notifyFinished()}}play(){this.isStopped||(this.animation.play(),this.state==="finished"&&this.updateFinished())}pause(){this.animation.pause()}complete(){var t,n;(n=(t=this.animation).finish)==null||n.call(t)}cancel(){try{this.animation.cancel()}catch{}}stop(){if(this.isStopped)return;this.isStopped=!0;const{state:t}=this;t==="idle"||t==="finished"||(this.updateMotionValue?this.updateMotionValue():this.commitStyles(),this.isPseudoElement||this.cancel())}commitStyles(){var t,n;this.isPseudoElement||(n=(t=this.animation).commitStyles)==null||n.call(t)}get duration(){var n,s;const t=((s=(n=this.animation.effect)==null?void 0:n.getComputedTiming)==null?void 0:s.call(n).duration)||0;return qe(Number(t))}get time(){return qe(Number(this.animation.currentTime)||0)}set time(t){this.finishedTime=null,this.animation.currentTime=Ge(t)}get speed(){return this.animation.playbackRate}set speed(t){t<0&&(this.finishedTime=null),this.animation.playbackRate=t}get state(){return this.finishedTime!==null?"finished":this.animation.playState}get startTime(){return Number(this.animation.startTime)}set startTime(t){this.animation.startTime=t}attachTimeline({timeline:t,observe:n}){var s;return this.allowFlatten&&((s=this.animation.effect)==null||s.updateTiming({easing:"linear"})),this.animation.onfinish=null,t&&Xu()?(this.animation.timeline=t,He):n(this)}}const kl={anticipate:sl,backInOut:nl,circInOut:ol};function sf(e){return e in kl}function rf(e){typeof e.ease=="string"&&sf(e.ease)&&(e.ease=kl[e.ease])}const qo=10;class of extends nf{constructor(t){rf(t),bl(t),super(t),t.startTime&&(this.startTime=t.startTime),this.options=t}updateMotionValue(t){const{motionValue:n,onUpdate:s,onComplete:r,element:o,...i}=this.options;if(!n)return;if(t!==void 0){n.set(t);return}const a=new no({...i,autoplay:!1}),c=Ge(this.finishedTime??this.time);n.setWithVelocity(a.sample(c-qo).value,a.sample(c).value,qo),a.stop()}}const Xo=(e,t)=>t==="zIndex"?!1:!!(typeof e=="number"||Array.isArray(e)||typeof e=="string"&&(ft.test(e)||e==="0")&&!e.startsWith("url("));function af(e){const t=e[0];if(e.length===1)return!0;for(let n=0;n<e.length;n++)if(e[n]!==t)return!0}function lf(e,t,n,s){const r=e[0];if(r===null)return!1;if(t==="display"||t==="visibility")return!0;const o=e[e.length-1],i=Xo(r,t),a=Xo(o,t);return Yt(i===a,`You are trying to animate ${t} from "${r}" to "${o}". "${i?o:r}" is not an animatable value.`,"value-not-animatable"),!i||!a?!1:af(e)||(n==="spring"||El(n))&&s}function xr(e){e.duration=0,e.type}const cf=new Set(["opacity","clipPath","filter","transform"]),df=Hr(()=>Object.hasOwnProperty.call(Element.prototype,"animate"));function uf(e){var u;const{motionValue:t,name:n,repeatDelay:s,repeatType:r,damping:o,type:i}=e;if(!(((u=t==null?void 0:t.owner)==null?void 0:u.current)instanceof HTMLElement))return!1;const{onUpdate:c,transformTemplate:d}=t.owner.getProps();return df()&&n&&cf.has(n)&&(n!=="transform"||!d)&&!c&&!s&&r!=="mirror"&&o!==0&&i!=="inertia"}const ff=40;class hf extends to{constructor({autoplay:t=!0,delay:n=0,type:s="keyframes",repeat:r=0,repeatDelay:o=0,repeatType:i="loop",keyframes:a,name:c,motionValue:d,element:u,...f}){var g;super(),this.stop=()=>{var m,b;this._animation&&(this._animation.stop(),(m=this.stopTimeline)==null||m.call(this)),(b=this.keyframeResolver)==null||b.cancel()},this.createdAt=De.now();const h={autoplay:t,delay:n,type:s,repeat:r,repeatDelay:o,repeatType:i,name:c,motionValue:d,element:u,...f},y=(u==null?void 0:u.KeyframeResolver)||so;this.keyframeResolver=new y(a,(m,b,k)=>this.onKeyframesResolved(m,b,h,!k),c,d,u),(g=this.keyframeResolver)==null||g.scheduleResolve()}onKeyframesResolved(t,n,s,r){this.keyframeResolver=void 0;const{name:o,type:i,velocity:a,delay:c,isHandoff:d,onUpdate:u}=s;this.resolvedAt=De.now(),lf(t,o,i,a)||((ot.instantAnimations||!c)&&(u==null||u(eo(t,s,n))),t[0]=t[t.length-1],xr(s),s.repeat=0);const h={startTime:r?this.resolvedAt?this.resolvedAt-this.createdAt>ff?this.resolvedAt:this.createdAt:this.createdAt:void 0,finalKeyframe:n,...s,keyframes:t},y=!d&&uf(h)?new of({...h,element:h.motionValue.owner.current}):new no(h);y.finished.then(()=>this.notifyFinished()).catch(He),this.pendingTimeline&&(this.stopTimeline=y.attachTimeline(this.pendingTimeline),this.pendingTimeline=void 0),this._animation=y}get finished(){return this._animation?this.animation.finished:this._finished}then(t,n){return this.finished.finally(t).then(()=>{})}get animation(){var t;return this._animation||((t=this.keyframeResolver)==null||t.resume(),Ku()),this._animation}get duration(){return this.animation.duration}get time(){return this.animation.time}set time(t){this.animation.time=t}get speed(){return this.animation.speed}get state(){return this.animation.state}set speed(t){this.animation.speed=t}get startTime(){return this.animation.startTime}attachTimeline(t){return this._animation?this.stopTimeline=this.animation.attachTimeline(t):this.pendingTimeline=t,()=>this.stop()}play(){this.animation.play()}pause(){this.animation.pause()}complete(){this.animation.complete()}cancel(){var t;this._animation&&this.animation.cancel(),(t=this.keyframeResolver)==null||t.cancel()}}const mf=/^var\(--(?:([\w-]+)|([\w-]+), ?([a-zA-Z\d ()%#.,-]+))\)/u;function pf(e){const t=mf.exec(e);if(!t)return[,];const[,n,s,r]=t;return[`--${n??s}`,r]}const gf=4;function Tl(e,t,n=1){rt(n<=gf,`Max CSS variable fallback depth detected in property "${e}". This may indicate a circular fallback dependency.`,"max-css-var-depth");const[s,r]=pf(e);if(!s)return;const o=window.getComputedStyle(t).getPropertyValue(s);if(o){const i=o.trim();return Ka(i)?parseFloat(i):i}return Yr(r)?Tl(r,t,n+1):r}function ro(e,t){return(e==null?void 0:e[t])??(e==null?void 0:e.default)??e}const Al=new Set(["width","height","top","left","right","bottom",...Xt]),yf={test:e=>e==="auto",parse:e=>e},jl=e=>t=>t.test(e),Ml=[qt,Q,Xe,ct,iu,ou,yf],Jo=e=>Ml.find(jl(e));function xf(e){return typeof e=="number"?e===0:e!==null?e==="none"||e==="0"||qa(e):!0}const bf=new Set(["brightness","contrast","saturate","opacity"]);function vf(e){const[t,n]=e.slice(0,-1).split("(");if(t==="drop-shadow")return e;const[s]=n.match(qr)||[];if(!s)return e;const r=n.replace(s,"");let o=bf.has(t)?1:0;return s!==n&&(o*=100),t+"("+o+r+")"}const wf=/\b([a-z-]*)\(.*?\)/gu,br={...ft,getAnimatableNone:e=>{const t=e.match(wf);return t?t.map(vf).join(" "):e}},Qo={...qt,transform:Math.round},Sf={rotate:ct,rotateX:ct,rotateY:ct,rotateZ:ct,scale:In,scaleX:In,scaleY:In,scaleZ:In,skew:ct,skewX:ct,skewY:ct,distance:Q,translateX:Q,translateY:Q,translateZ:Q,x:Q,y:Q,z:Q,perspective:Q,transformPerspective:Q,opacity:yn,originX:_o,originY:_o,originZ:Q},oo={borderWidth:Q,borderTopWidth:Q,borderRightWidth:Q,borderBottomWidth:Q,borderLeftWidth:Q,borderRadius:Q,radius:Q,borderTopLeftRadius:Q,borderTopRightRadius:Q,borderBottomRightRadius:Q,borderBottomLeftRadius:Q,width:Q,maxWidth:Q,height:Q,maxHeight:Q,top:Q,right:Q,bottom:Q,left:Q,padding:Q,paddingTop:Q,paddingRight:Q,paddingBottom:Q,paddingLeft:Q,margin:Q,marginTop:Q,marginRight:Q,marginBottom:Q,marginLeft:Q,backgroundPositionX:Q,backgroundPositionY:Q,...Sf,zIndex:Qo,fillOpacity:yn,strokeOpacity:yn,numOctaves:Qo},Cf={...oo,color:je,backgroundColor:je,outlineColor:je,fill:je,stroke:je,borderColor:je,borderTopColor:je,borderRightColor:je,borderBottomColor:je,borderLeftColor:je,filter:br,WebkitFilter:br},Pl=e=>Cf[e];function Nl(e,t){let n=Pl(e);return n!==br&&(n=ft),n.getAnimatableNone?n.getAnimatableNone(t):void 0}const Ef=new Set(["auto","none","0"]);function kf(e,t,n){let s=0,r;for(;s<e.length&&!r;){const o=e[s];typeof o=="string"&&!Ef.has(o)&&xn(o).values.length&&(r=e[s]),s++}if(r&&n)for(const o of t)e[o]=Nl(n,r)}class Tf extends so{constructor(t,n,s,r,o){super(t,n,s,r,o,!0)}readKeyframes(){const{unresolvedKeyframes:t,element:n,name:s}=this;if(!n||!n.current)return;super.readKeyframes();for(let c=0;c<t.length;c++){let d=t[c];if(typeof d=="string"&&(d=d.trim(),Yr(d))){const u=Tl(d,n.current);u!==void 0&&(t[c]=u),c===t.length-1&&(this.finalKeyframe=d)}}if(this.resolveNoneKeyframes(),!Al.has(s)||t.length!==2)return;const[r,o]=t,i=Jo(r),a=Jo(o);if(i!==a)if(Ko(i)&&Ko(a))for(let c=0;c<t.length;c++){const d=t[c];typeof d=="string"&&(t[c]=parseFloat(d))}else Ct[s]&&(this.needsMeasurement=!0)}resolveNoneKeyframes(){const{unresolvedKeyframes:t,name:n}=this,s=[];for(let r=0;r<t.length;r++)(t[r]===null||xf(t[r]))&&s.push(r);s.length&&kf(t,s,n)}measureInitialState(){const{element:t,unresolvedKeyframes:n,name:s}=this;if(!t||!t.current)return;s==="height"&&(this.suspendedScrollY=window.pageYOffset),this.measuredOrigin=Ct[s](t.measureViewportBox(),window.getComputedStyle(t.current)),n[0]=this.measuredOrigin;const r=n[n.length-1];r!==void 0&&t.getValue(s,r).jump(r,!1)}measureEndState(){var a;const{element:t,name:n,unresolvedKeyframes:s}=this;if(!t||!t.current)return;const r=t.getValue(n);r&&r.jump(this.measuredOrigin,!1);const o=s.length-1,i=s[o];s[o]=Ct[n](t.measureViewportBox(),window.getComputedStyle(t.current)),i!==null&&this.finalKeyframe===void 0&&(this.finalKeyframe=i),(a=this.removedTransforms)!=null&&a.length&&this.removedTransforms.forEach(([c,d])=>{t.getValue(c).set(d)}),this.resolveNoneKeyframes()}}function Af(e,t,n){if(e instanceof EventTarget)return[e];if(typeof e=="string"){let s=document;const r=(n==null?void 0:n[e])??s.querySelectorAll(e);return r?Array.from(r):[]}return Array.from(e)}const Vl=(e,t)=>t&&typeof e=="number"?t.transform(e):e;function Rl(e){return Ya(e)&&"offsetHeight"in e}const ei=30,jf=e=>!isNaN(parseFloat(e));class Mf{constructor(t,n={}){this.canTrackVelocity=null,this.events={},this.updateAndNotify=s=>{var o;const r=De.now();if(this.updatedAt!==r&&this.setPrevFrameValue(),this.prev=this.current,this.setCurrent(s),this.current!==this.prev&&((o=this.events.change)==null||o.notify(this.current),this.dependents))for(const i of this.dependents)i.dirty()},this.hasAnimated=!1,this.setCurrent(t),this.owner=n.owner}setCurrent(t){this.current=t,this.updatedAt=De.now(),this.canTrackVelocity===null&&t!==void 0&&(this.canTrackVelocity=jf(this.current))}setPrevFrameValue(t=this.current){this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt}onChange(t){return process.env.NODE_ENV!=="production"&&Zr(!1,'value.onChange(callback) is deprecated. Switch to value.on("change", callback).'),this.on("change",t)}on(t,n){this.events[t]||(this.events[t]=new Ur);const s=this.events[t].add(n);return t==="change"?()=>{s(),ye.read(()=>{this.events.change.getSize()||this.stop()})}:s}clearListeners(){for(const t in this.events)this.events[t].clear()}attach(t,n){this.passiveEffect=t,this.stopPassiveEffect=n}set(t){this.passiveEffect?this.passiveEffect(t,this.updateAndNotify):this.updateAndNotify(t)}setWithVelocity(t,n,s){this.set(n),this.prev=void 0,this.prevFrameValue=t,this.prevUpdatedAt=this.updatedAt-s}jump(t,n=!0){this.updateAndNotify(t),this.prev=t,this.prevUpdatedAt=this.prevFrameValue=void 0,n&&this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}dirty(){var t;(t=this.events.change)==null||t.notify(this.current)}addDependent(t){this.dependents||(this.dependents=new Set),this.dependents.add(t)}removeDependent(t){this.dependents&&this.dependents.delete(t)}get(){return this.current}getPrevious(){return this.prev}getVelocity(){const t=De.now();if(!this.canTrackVelocity||this.prevFrameValue===void 0||t-this.updatedAt>ei)return 0;const n=Math.min(this.updatedAt-this.prevUpdatedAt,ei);return Xa(parseFloat(this.current)-parseFloat(this.prevFrameValue),n)}start(t){return this.stop(),new Promise(n=>{this.hasAnimated=!0,this.animation=t(n),this.events.animationStart&&this.events.animationStart.notify()}).then(()=>{this.events.animationComplete&&this.events.animationComplete.notify(),this.clearAnimation()})}stop(){this.animation&&(this.animation.stop(),this.events.animationCancel&&this.events.animationCancel.notify()),this.clearAnimation()}isAnimating(){return!!this.animation}clearAnimation(){delete this.animation}destroy(){var t,n;(t=this.dependents)==null||t.clear(),(n=this.events.destroy)==null||n.notify(),this.clearListeners(),this.stop(),this.stopPassiveEffect&&this.stopPassiveEffect()}}function Zt(e,t){return new Mf(e,t)}const{schedule:io}=ll(queueMicrotask,!1),We={x:!1,y:!1};function Il(){return We.x||We.y}function Pf(e){return e==="x"||e==="y"?We[e]?null:(We[e]=!0,()=>{We[e]=!1}):We.x||We.y?null:(We.x=We.y=!0,()=>{We.x=We.y=!1})}function Dl(e,t){const n=Af(e),s=new AbortController,r={passive:!0,...t,signal:s.signal};return[n,r,()=>s.abort()]}function ti(e){return!(e.pointerType==="touch"||Il())}function Nf(e,t,n={}){const[s,r,o]=Dl(e,n),i=a=>{if(!ti(a))return;const{target:c}=a,d=t(c,a);if(typeof d!="function"||!c)return;const u=f=>{ti(f)&&(d(f),c.removeEventListener("pointerleave",u))};c.addEventListener("pointerleave",u,r)};return s.forEach(a=>{a.addEventListener("pointerenter",i,r)}),o}const $l=(e,t)=>t?e===t?!0:$l(e,t.parentElement):!1,ao=e=>e.pointerType==="mouse"?typeof e.button!="number"||e.button<=0:e.isPrimary!==!1,Vf=new Set(["BUTTON","INPUT","SELECT","TEXTAREA","A"]);function Rf(e){return Vf.has(e.tagName)||e.tabIndex!==-1}const Gn=new WeakSet;function ni(e){return t=>{t.key==="Enter"&&e(t)}}function Is(e,t){e.dispatchEvent(new PointerEvent("pointer"+t,{isPrimary:!0,bubbles:!0}))}const If=(e,t)=>{const n=e.currentTarget;if(!n)return;const s=ni(()=>{if(Gn.has(n))return;Is(n,"down");const r=ni(()=>{Is(n,"up")}),o=()=>Is(n,"cancel");n.addEventListener("keyup",r,t),n.addEventListener("blur",o,t)});n.addEventListener("keydown",s,t),n.addEventListener("blur",()=>n.removeEventListener("keydown",s),t)};function si(e){return ao(e)&&!Il()}function Df(e,t,n={}){const[s,r,o]=Dl(e,n),i=a=>{const c=a.currentTarget;if(!si(a))return;Gn.add(c);const d=t(c,a),u=(y,g)=>{window.removeEventListener("pointerup",f),window.removeEventListener("pointercancel",h),Gn.has(c)&&Gn.delete(c),si(y)&&typeof d=="function"&&d(y,{success:g})},f=y=>{u(y,c===window||c===document||n.useGlobalTarget||$l(c,y.target))},h=y=>{u(y,!1)};window.addEventListener("pointerup",f,r),window.addEventListener("pointercancel",h,r)};return s.forEach(a=>{(n.useGlobalTarget?window:a).addEventListener("pointerdown",i,r),Rl(a)&&(a.addEventListener("focus",d=>If(d,r)),!Rf(a)&&!a.hasAttribute("tabindex")&&(a.tabIndex=0))}),o}function Fl(e){return Ya(e)&&"ownerSVGElement"in e}function $f(e){return Fl(e)&&e.tagName==="svg"}const Re=e=>!!(e&&e.getVelocity),Ff=[...Ml,je,ft],Of=e=>Ff.find(jl(e)),lo=C.createContext({transformPagePoint:e=>e,isStatic:!1,reducedMotion:"never"});class Lf extends p.Component{getSnapshotBeforeUpdate(t){const n=this.props.childRef.current;if(n&&t.isPresent&&!this.props.isPresent){const s=n.offsetParent,r=Rl(s)&&s.offsetWidth||0,o=this.props.sizeRef.current;o.height=n.offsetHeight||0,o.width=n.offsetWidth||0,o.top=n.offsetTop,o.left=n.offsetLeft,o.right=r-o.width-o.left}return null}componentDidUpdate(){}render(){return this.props.children}}function _f({children:e,isPresent:t,anchorX:n,root:s}){const r=C.useId(),o=C.useRef(null),i=C.useRef({width:0,height:0,top:0,left:0,right:0}),{nonce:a}=C.useContext(lo);return C.useInsertionEffect(()=>{const{width:c,height:d,top:u,left:f,right:h}=i.current;if(t||!o.current||!c||!d)return;const y=n==="left"?`left: ${f}`:`right: ${h}`;o.current.dataset.motionPopId=r;const g=document.createElement("style");a&&(g.nonce=a);const m=s??document.head;return m.appendChild(g),g.sheet&&g.sheet.insertRule(`
2
+ [data-motion-pop-id="${r}"] {
3
3
  position: absolute !important;
4
4
  width: ${c}px !important;
5
5
  height: ${d}px !important;
6
- ${p}px !important;
6
+ ${y}px !important;
7
7
  top: ${u}px !important;
8
8
  }
9
- `),()=>{x.contains(g)&&x.removeChild(g)}},[t]),a.jsx(dd,{isPresent:t,childRef:r,sizeRef:i,children:h.cloneElement(e,{ref:r})})}const hd=({children:e,initial:t,isPresent:n,onExitComplete:s,custom:o,presenceAffectsLayout:r,mode:i,anchorX:l,root:c})=>{const d=xs(md),u=y.useId();let m=!0,f=y.useMemo(()=>(m=!1,{id:u,initial:t,isPresent:n,custom:o,onExitComplete:p=>{d.set(p,!0);for(const g of d.values())if(!g)return;s&&s()},register:p=>(d.set(p,!1),()=>d.delete(p))}),[n,d,s]);return r&&m&&(f={...f}),y.useMemo(()=>{d.forEach((p,g)=>d.set(g,!1))},[n]),h.useEffect(()=>{!n&&!d.size&&s&&s()},[n]),i==="popLayout"&&(e=a.jsx(ud,{isPresent:n,anchorX:l,root:c,children:e})),a.jsx(hn.Provider,{value:f,children:e})};function md(){return new Map}function Vr(e=!0){const t=y.useContext(hn);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:s,register:o}=t,r=y.useId();y.useEffect(()=>{if(e)return o(r)},[e]);const i=y.useCallback(()=>e&&s&&s(r),[r,s,e]);return!n&&s?[!1,i]:[!0]}const Kt=e=>e.key||"";function Mo(e){const t=[];return y.Children.forEach(e,n=>{y.isValidElement(n)&&t.push(n)}),t}const ut=({children:e,custom:t,initial:n=!0,onExitComplete:s,presenceAffectsLayout:o=!0,mode:r="sync",propagate:i=!1,anchorX:l="left",root:c})=>{const[d,u]=Vr(i),m=y.useMemo(()=>Mo(e),[e]),f=i&&!d?[]:m.map(Kt),p=y.useRef(!0),g=y.useRef(m),x=xs(()=>new Map),[v,E]=y.useState(m),[b,S]=y.useState(m);$i(()=>{p.current=!1,g.current=m;for(let A=0;A<b.length;A++){const j=Kt(b[A]);f.includes(j)?x.delete(j):x.get(j)!==!0&&x.set(j,!1)}},[b,f.length,f.join("-")]);const w=[];if(m!==v){let A=[...m];for(let j=0;j<b.length;j++){const k=b[j],D=Kt(k);f.includes(D)||(A.splice(j,0,k),w.push(k))}return r==="wait"&&w.length&&(A=w),S(Mo(A)),E(m),null}process.env.NODE_ENV!=="production"&&r==="wait"&&b.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}=y.useContext(gs);return a.jsx(a.Fragment,{children:b.map(A=>{const j=Kt(A),k=i&&!d?!1:m===b||f.includes(j),D=()=>{if(x.has(j))x.set(j,!0);else return;let L=!0;x.forEach(W=>{W||(L=!1)}),L&&(C==null||C(),S(g.current),i&&(u==null||u()),s&&s())};return a.jsx(hd,{isPresent:k,initial:!p.current||n?void 0:!1,custom:t,presenceAffectsLayout:o,mode:r,root:c,onExitComplete:k?void 0:D,anchorX:l,children:A},j)})})},Nr=y.createContext({strict:!1}),To={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"]},ft={};for(const e in To)ft[e]={isEnabled:t=>To[e].some(n=>!!t[n])};function fd(e){for(const t in e)ft[t]={...ft[t],...e[t]}}const pd=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 cn(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||pd.has(e)}let Pr=e=>!cn(e);function gd(e){typeof e=="function"&&(Pr=t=>t.startsWith("on")?!cn(t):e(t))}try{gd(require("@emotion/is-prop-valid").default)}catch{}function xd(e,t,n){const s={};for(const o in e)o==="values"&&typeof e.values=="object"||(Pr(o)||n===!0&&cn(o)||!t&&!cn(o)||e.draggable&&o.startsWith("onDrag"))&&(s[o]=e[o]);return s}const mn=y.createContext({});function fn(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function It(e){return typeof e=="string"||Array.isArray(e)}const _s=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],Hs=["initial",..._s];function pn(e){return fn(e.animate)||Hs.some(t=>It(e[t]))}function Rr(e){return!!(pn(e)||e.variants)}function yd(e,t){if(pn(e)){const{initial:n,animate:s}=e;return{initial:n===!1||It(n)?n:void 0,animate:It(s)?s:void 0}}return e.inherit!==!1?t:{}}function bd(e){const{initial:t,animate:n}=yd(e,y.useContext(mn));return y.useMemo(()=>({initial:t,animate:n}),[Vo(t),Vo(n)])}function Vo(e){return Array.isArray(e)?e.join(" "):e}const Dt={};function vd(e){for(const t in e)Dt[t]=e[t],Es(t)&&(Dt[t].isCSSVariable=!0)}function Ir(e,{layout:t,layoutId:n}){return bt.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!Dt[e]||e==="opacity")}const wd={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Sd=yt.length;function Cd(e,t,n){let s="",o=!0;for(let r=0;r<Sd;r++){const i=yt[r],l=e[i];if(l===void 0)continue;let c=!0;if(typeof l=="number"?c=l===(i.startsWith("scale")?1:0):c=parseFloat(l)===0,!c||n){const d=kr(l,Ls[i]);if(!c){o=!1;const u=wd[i]||i;s+=`${u}(${d}) `}n&&(t[i]=d)}}return s=s.trim(),n?s=n(t,o?"":s):o&&(s="none"),s}function Zs(e,t,n){const{style:s,vars:o,transformOrigin:r}=e;let i=!1,l=!1;for(const c in t){const d=t[c];if(bt.has(c)){i=!0;continue}else if(Es(c)){o[c]=d;continue}else{const u=kr(d,Ls[c]);c.startsWith("origin")?(l=!0,r[c]=u):s[c]=u}}if(t.transform||(i||n?s.transform=Cd(t,e.transform,n):s.transform&&(s.transform="none")),l){const{originX:c="50%",originY:d="50%",originZ:u=0}=r;s.transformOrigin=`${c} ${d} ${u}`}}const Us=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function Dr(e,t,n){for(const s in t)!be(t[s])&&!Ir(s,n)&&(e[s]=t[s])}function kd({transformTemplate:e},t){return y.useMemo(()=>{const n=Us();return Zs(n,t,e),Object.assign({},n.vars,n.style)},[t])}function jd(e,t){const n=e.style||{},s={};return Dr(s,n,e),Object.assign(s,kd(e,t)),s}function Ed(e,t){const n={},s=jd(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.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=s,n}const Ad={offset:"stroke-dashoffset",array:"stroke-dasharray"},Md={offset:"strokeDashoffset",array:"strokeDasharray"};function Td(e,t,n=1,s=0,o=!0){e.pathLength=1;const r=o?Ad:Md;e[r.offset]=U.transform(-s);const i=U.transform(t),l=U.transform(n);e[r.array]=`${i} ${l}`}function Fr(e,{attrX:t,attrY:n,attrScale:s,pathLength:o,pathSpacing:r=1,pathOffset:i=0,...l},c,d,u){if(Zs(e,l,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:m,style:f}=e;m.transform&&(f.transform=m.transform,delete m.transform),(f.transform||m.transformOrigin)&&(f.transformOrigin=m.transformOrigin??"50% 50%",delete m.transformOrigin),f.transform&&(f.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete m.transformBox),t!==void 0&&(m.x=t),n!==void 0&&(m.y=n),s!==void 0&&(m.scale=s),o!==void 0&&Td(m,o,r,i,!1)}const Lr=()=>({...Us(),attrs:{}}),Br=e=>typeof e=="string"&&e.toLowerCase()==="svg";function Vd(e,t,n,s){const o=y.useMemo(()=>{const r=Lr();return Fr(r,t,Br(s),e.transformTemplate,e.style),{...r.attrs,style:{...r.style}}},[t]);if(e.style){const r={};Dr(r,e.style,e),o.style={...r,...o.style}}return o}const Nd=["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 zs(e){return typeof e!="string"||e.includes("-")?!1:!!(Nd.indexOf(e)>-1||/[A-Z]/u.test(e))}function Pd(e,t,n,{latestValues:s},o,r=!1){const l=(zs(e)?Vd:Ed)(t,s,o,e),c=xd(t,typeof e=="string",r),d=e!==y.Fragment?{...c,...l,ref:n}:{},{children:u}=t,m=y.useMemo(()=>be(u)?u.get():u,[u]);return y.createElement(e,{...d,children:m})}function No(e){const t=[{},{}];return e==null||e.values.forEach((n,s)=>{t[0][s]=n.get(),t[1][s]=n.getVelocity()}),t}function Ws(e,t,n,s){if(typeof t=="function"){const[o,r]=No(s);t=t(n!==void 0?n:e.custom,o,r)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[o,r]=No(s);t=t(n!==void 0?n:e.custom,o,r)}return t}function tn(e){return be(e)?e.get():e}function Rd({scrapeMotionValuesFromProps:e,createRenderState:t},n,s,o){return{latestValues:Id(n,s,o,e),renderState:t()}}function Id(e,t,n,s){const o={},r=s(e,{});for(const f in r)o[f]=tn(r[f]);let{initial:i,animate:l}=e;const c=pn(e),d=Rr(e);t&&d&&!c&&e.inherit!==!1&&(i===void 0&&(i=t.initial),l===void 0&&(l=t.animate));let u=n?n.initial===!1:!1;u=u||i===!1;const m=u?l:i;if(m&&typeof m!="boolean"&&!fn(m)){const f=Array.isArray(m)?m:[m];for(let p=0;p<f.length;p++){const g=Ws(e,f[p]);if(g){const{transitionEnd:x,transition:v,...E}=g;for(const b in E){let S=E[b];if(Array.isArray(S)){const w=u?S.length-1:0;S=S[w]}S!==null&&(o[b]=S)}for(const b in x)o[b]=x[b]}}}return o}const $r=e=>(t,n)=>{const s=y.useContext(mn),o=y.useContext(hn),r=()=>Rd(e,t,s,o);return n?r():xs(r)};function Ks(e,t,n){var r;const{style:s}=e,o={};for(const i in s)(be(s[i])||t.style&&be(t.style[i])||Ir(i,e)||((r=n==null?void 0:n.getValue(i))==null?void 0:r.liveStyle)!==void 0)&&(o[i]=s[i]);return o}const Dd=$r({scrapeMotionValuesFromProps:Ks,createRenderState:Us});function Or(e,t,n){const s=Ks(e,t,n);for(const o in e)if(be(e[o])||be(t[o])){const r=yt.indexOf(o)!==-1?"attr"+o.charAt(0).toUpperCase()+o.substring(1):o;s[r]=e[o]}return s}const Fd=$r({scrapeMotionValuesFromProps:Or,createRenderState:Lr}),Ld=Symbol.for("motionComponentSymbol");function at(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function Bd(e,t,n){return y.useCallback(s=>{s&&e.onMount&&e.onMount(s),t&&(s?t.mount(s):t.unmount()),n&&(typeof n=="function"?n(s):at(n)&&(n.current=s))},[t])}const Gs=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),$d="framerAppearId",_r="data-"+Gs($d),Hr=y.createContext({});function Od(e,t,n,s,o){var x,v;const{visualElement:r}=y.useContext(mn),i=y.useContext(Nr),l=y.useContext(hn),c=y.useContext(Os).reducedMotion,d=y.useRef(null);s=s||i.renderer,!d.current&&s&&(d.current=s(e,{visualState:t,parent:r,props:n,presenceContext:l,blockInitialAnimation:l?l.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,m=y.useContext(Hr);u&&!u.projection&&o&&(u.type==="html"||u.type==="svg")&&_d(d.current,n,o,m);const f=y.useRef(!1);y.useInsertionEffect(()=>{u&&f.current&&u.update(n,l)});const p=n[_r],g=y.useRef(!!p&&!((x=window.MotionHandoffIsComplete)!=null&&x.call(window,p))&&((v=window.MotionHasOptimisedAnimation)==null?void 0:v.call(window,p)));return $i(()=>{u&&(f.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),g.current&&u.animationState&&u.animationState.animateChanges())}),y.useEffect(()=>{u&&(!g.current&&u.animationState&&u.animationState.animateChanges(),g.current&&(queueMicrotask(()=>{var E;(E=window.MotionHandoffMarkAsComplete)==null||E.call(window,p)}),g.current=!1),u.enteringChildren=void 0)}),u}function _d(e,t,n,s){const{layoutId:o,layout:r,drag:i,dragConstraints:l,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:Zr(e.parent)),e.projection.setOptions({layoutId:o,layout:r,alwaysMeasureLayout:!!i||l&&at(l),visualElement:e,animationType:typeof r=="string"?r:"both",initialPromotionConfig:s,crossfade:u,layoutScroll:c,layoutRoot:d})}function Zr(e){if(e)return e.options.allowProjection!==!1?e.projection:Zr(e.parent)}function An(e,{forwardMotionProps:t=!1}={},n,s){n&&fd(n);const o=zs(e)?Fd:Dd;function r(l,c){let d;const u={...y.useContext(Os),...l,layoutId:Hd(l)},{isStatic:m}=u,f=bd(l),p=o(l,m);if(!m&&ys){Zd(u,n);const g=Ud(u);d=g.MeasureLayout,f.visualElement=Od(e,p,u,s,g.ProjectionNode)}return a.jsxs(mn.Provider,{value:f,children:[d&&f.visualElement?a.jsx(d,{visualElement:f.visualElement,...u}):null,Pd(e,l,Bd(p,f.visualElement,c),p,m,t)]})}r.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const i=y.forwardRef(r);return i[Ld]=e,i}function Hd({layoutId:e}){const t=y.useContext(gs).id;return t&&e!==void 0?t+"-"+e:e}function Zd(e,t){const n=y.useContext(Nr).strict;if(process.env.NODE_ENV!=="production"&&t&&n){const s="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";e.ignoreStrict?gt(!1,s,"lazy-strict-mode"):Oe(!1,s,"lazy-strict-mode")}}function Ud(e){const{drag:t,layout:n}=ft;if(!t&&!n)return{};const s={...t,...n};return{MeasureLayout:t!=null&&t.isEnabled(e)||n!=null&&n.isEnabled(e)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function zd(e,t){if(typeof Proxy>"u")return An;const n=new Map,s=(r,i)=>An(r,i,e,t),o=(r,i)=>(process.env.NODE_ENV!=="production"&&Cs(!1,"motion() is deprecated. Use motion.create() instead."),s(r,i));return new Proxy(o,{get:(r,i)=>i==="create"?s:(n.has(i)||n.set(i,An(i,void 0,e,t)),n.get(i))})}function Ur({top:e,left:t,right:n,bottom:s}){return{x:{min:t,max:n},y:{min:e,max:s}}}function Wd({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Kd(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),s=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:s.y,right:s.x}}function Mn(e){return e===void 0||e===1}function ns({scale:e,scaleX:t,scaleY:n}){return!Mn(e)||!Mn(t)||!Mn(n)}function qe(e){return ns(e)||zr(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function zr(e){return Po(e.x)||Po(e.y)}function Po(e){return e&&e!=="0%"}function dn(e,t,n){const s=e-n,o=t*s;return n+o}function Ro(e,t,n,s,o){return o!==void 0&&(e=dn(e,o,s)),dn(e,n,s)+t}function ss(e,t=0,n=1,s,o){e.min=Ro(e.min,t,n,s,o),e.max=Ro(e.max,t,n,s,o)}function Wr(e,{x:t,y:n}){ss(e.x,t.translate,t.scale,t.originPoint),ss(e.y,n.translate,n.scale,n.originPoint)}const Io=.999999999999,Do=1.0000000000001;function Gd(e,t,n,s=!1){const o=n.length;if(!o)return;t.x=t.y=1;let r,i;for(let l=0;l<o;l++){r=n[l],i=r.projectionDelta;const{visualElement:c}=r.options;c&&c.props.style&&c.props.style.display==="contents"||(s&&r.options.layoutScroll&&r.scroll&&r!==r.root&&ct(e,{x:-r.scroll.offset.x,y:-r.scroll.offset.y}),i&&(t.x*=i.x.scale,t.y*=i.y.scale,Wr(e,i)),s&&qe(r.latestValues)&&ct(e,r.latestValues))}t.x<Do&&t.x>Io&&(t.x=1),t.y<Do&&t.y>Io&&(t.y=1)}function lt(e,t){e.min=e.min+t,e.max=e.max+t}function Fo(e,t,n,s,o=.5){const r=le(e.min,e.max,o);ss(e,t,n,r,s)}function ct(e,t){Fo(e.x,t.x,t.scaleX,t.scale,t.originX),Fo(e.y,t.y,t.scaleY,t.scale,t.originY)}function Kr(e,t){return Ur(Kd(e.getBoundingClientRect(),t))}function Yd(e,t,n){const s=Kr(e,n),{scroll:o}=t;return o&&(lt(s.x,o.offset.x),lt(s.y,o.offset.y)),s}const Lo=()=>({translate:0,scale:1,origin:0,originPoint:0}),dt=()=>({x:Lo(),y:Lo()}),Bo=()=>({min:0,max:0}),de=()=>({x:Bo(),y:Bo()}),os={current:null},Gr={current:!1};function qd(){if(Gr.current=!0,!!ys)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>os.current=e.matches;e.addEventListener("change",t),t()}else os.current=!1}const Xd=new WeakMap;function Jd(e,t,n){for(const s in t){const o=t[s],r=n[s];if(be(o))e.addValue(s,o);else if(be(r))e.addValue(s,mt(o,{owner:e}));else if(r!==o)if(e.hasValue(s)){const i=e.getValue(s);i.liveStyle===!0?i.jump(o):i.hasAnimated||i.set(o)}else{const i=e.getStaticValue(s);e.addValue(s,mt(i!==void 0?i:o,{owner:e}))}}for(const s in n)t[s]===void 0&&e.removeValue(s);return t}const $o=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class Qd{scrapeMotionValuesFromProps(t,n,s){return{}}constructor({parent:t,props:n,presenceContext:s,reducedMotionConfig:o,blockInitialAnimation:r,visualState:i},l={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=Ds,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=Se.now();this.renderScheduledAt<f&&(this.renderScheduledAt=f,ie.render(this.render,!1,!0))};const{latestValues:c,renderState:d}=i;this.latestValues=c,this.baseTarget={...c},this.initialValues=n.initial?{...c}:{},this.renderState=d,this.parent=t,this.props=n,this.presenceContext=s,this.depth=t?t.depth+1:0,this.reducedMotionConfig=o,this.options=l,this.blockInitialAnimation=!!r,this.isControllingVariants=pn(n),this.isVariantNode=Rr(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:u,...m}=this.scrapeMotionValuesFromProps(n,{},this);for(const f in m){const p=m[f];c[f]!==void 0&&be(p)&&p.set(c[f])}}mount(t){var n;this.current=t,Xd.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((s,o)=>this.bindToMotionValue(o,s)),Gr.current||qd(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:os.current,process.env.NODE_ENV!=="production"&&Cs(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(),ze(this.notifyUpdate),ze(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 s=this.features[n];s&&(s.unmount(),s.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 s=bt.has(t);s&&this.onBindTransform&&this.onBindTransform();const o=n.on("change",i=>{this.latestValues[t]=i,this.props.onUpdate&&ie.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let r;window.MotionCheckAppearSync&&(r=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{o(),r&&r(),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 ft){const n=ft[t];if(!n)continue;const{isEnabled:s,Feature:o}=n;if(!this.features[t]&&o&&s(this.props)&&(this.features[t]=new o(this)),this.features[t]){const r=this.features[t];r.isMounted?r.update():(r.mount(),r.isMounted=!0)}}}triggerBuild(){this.build(this.renderState,this.latestValues,this.props)}measureViewportBox(){return this.current?this.measureInstanceViewportBox(this.current,this.props):de()}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 s=0;s<$o.length;s++){const o=$o[s];this.propEventSubscriptions[o]&&(this.propEventSubscriptions[o](),delete this.propEventSubscriptions[o]);const r="on"+o,i=t[r];i&&(this.propEventSubscriptions[o]=this.on(o,i))}this.prevMotionValues=Jd(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 s=this.values.get(t);n!==s&&(s&&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 s=this.values.get(t);return s===void 0&&n!==void 0&&(s=mt(n===null?void 0:n,{owner:this}),this.addValue(t,s)),s}readValue(t,n){let s=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return s!=null&&(typeof s=="string"&&(Oi(s)||Hi(s))?s=parseFloat(s):!cd(s)&&We.test(n)&&(s=Cr(t,n)),this.setBaseTarget(t,be(s)?s.get():s)),be(s)?s.get():s}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var r;const{initial:n}=this.props;let s;if(typeof n=="string"||typeof n=="object"){const i=Ws(this.props,n,(r=this.presenceContext)==null?void 0:r.custom);i&&(s=i[t])}if(n&&s!==void 0)return s;const o=this.getBaseTargetFromProps(this.props,t);return o!==void 0&&!be(o)?o:this.initialValues[t]!==void 0&&s===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new Ss),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){Bs.render(this.render)}}class Yr extends Qd{constructor(){super(...arguments),this.KeyframeResolver=Xc}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:s}){delete n[t],delete s[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;be(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function qr(e,{style:t,vars:n},s,o){const r=e.style;let i;for(i in t)r[i]=t[i];o==null||o.applyProjectionStyles(r,s);for(i in n)r.setProperty(i,n[i])}function eu(e){return window.getComputedStyle(e)}class tu extends Yr{constructor(){super(...arguments),this.type="html",this.renderInstance=qr}readValueFromInstance(t,n){var s;if(bt.has(n))return(s=this.projection)!=null&&s.isProjecting?Yn(n):pc(t,n);{const o=eu(t),r=(Es(n)?o.getPropertyValue(n):o[n])||0;return typeof r=="string"?r.trim():r}}measureInstanceViewportBox(t,{transformPagePoint:n}){return Kr(t,n)}build(t,n,s){Zs(t,n,s.transformTemplate)}scrapeMotionValuesFromProps(t,n,s){return Ks(t,n,s)}}const Xr=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 nu(e,t,n,s){qr(e,t,void 0,s);for(const o in t.attrs)e.setAttribute(Xr.has(o)?o:Gs(o),t.attrs[o])}class su extends Yr{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=de}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(bt.has(n)){const s=Sr(n);return s&&s.default||0}return n=Xr.has(n)?n:Gs(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,s){return Or(t,n,s)}build(t,n,s){Fr(t,n,this.isSVGTag,s.transformTemplate,s.style)}renderInstance(t,n,s,o){nu(t,n,s,o)}mount(t){this.isSVGTag=Br(t.tagName),super.mount(t)}}const ou=(e,t)=>zs(e)?new su(t):new tu(t,{allowProjection:e!==y.Fragment});function ht(e,t,n){const s=e.getProps();return Ws(s,t,n!==void 0?n:s.custom,e)}const is=e=>Array.isArray(e);function iu(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,mt(n))}function ru(e){return is(e)?e[e.length-1]||0:e}function au(e,t){const n=ht(e,t);let{transitionEnd:s={},transition:o={},...r}=n||{};r={...r,...s};for(const i in r){const l=ru(r[i]);iu(e,i,l)}}function lu(e){return!!(be(e)&&e.add)}function rs(e,t){const n=e.getValue("willChange");if(lu(n))return n.add(t);if(!n&&_e.WillChange){const s=new _e.WillChange("auto");e.addValue("willChange",s),s.add(t)}}function Jr(e){return e.props[_r]}const cu=e=>e!==null;function du(e,{repeat:t,repeatType:n="loop"},s){const o=e.filter(cu),r=t&&n!=="loop"&&t%2===1?0:o.length-1;return o[r]}const uu={type:"spring",stiffness:500,damping:25,restSpeed:10},hu=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),mu={type:"keyframes",duration:.8},fu={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},pu=(e,{keyframes:t})=>t.length>2?mu:bt.has(e)?e.startsWith("scale")?hu(t[1]):uu:fu;function gu({when:e,delay:t,delayChildren:n,staggerChildren:s,staggerDirection:o,repeat:r,repeatType:i,repeatDelay:l,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const Ys=(e,t,n,s={},o,r)=>i=>{const l=Fs(s,e)||{},c=l.delay||s.delay||0;let{elapsed:d=0}=s;d=d-Ve(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...l,delay:-d,onUpdate:f=>{t.set(f),l.onUpdate&&l.onUpdate(f)},onComplete:()=>{i(),l.onComplete&&l.onComplete()},name:e,motionValue:t,element:r?void 0:o};gu(l)||Object.assign(u,pu(e,u)),u.duration&&(u.duration=Ve(u.duration)),u.repeatDelay&&(u.repeatDelay=Ve(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let m=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(es(u),u.delay===0&&(m=!0)),(_e.instantAnimations||_e.skipAnimations)&&(m=!0,es(u),u.delay=0),u.allowFlatten=!l.type&&!l.ease,m&&!r&&t.get()!==void 0){const f=du(u.keyframes,l);if(f!==void 0){ie.update(()=>{u.onUpdate(f),u.onComplete()});return}}return l.isSync?new Is(u):new Bc(u)};function xu({protectedKeys:e,needsAnimating:t},n){const s=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,s}function Qr(e,t,{delay:n=0,transitionOverride:s,type:o}={}){let{transition:r=e.getDefaultTransition(),transitionEnd:i,...l}=t;s&&(r=s);const c=[],d=o&&e.animationState&&e.animationState.getState()[o];for(const u in l){const m=e.getValue(u,e.latestValues[u]??null),f=l[u];if(f===void 0||d&&xu(d,u))continue;const p={delay:n,...Fs(r||{},u)},g=m.get();if(g!==void 0&&!m.isAnimating&&!Array.isArray(f)&&f===g&&!p.velocity)continue;let x=!1;if(window.MotionHandoffAnimation){const E=Jr(e);if(E){const b=window.MotionHandoffAnimation(E,u,ie);b!==null&&(p.startTime=b,x=!0)}}rs(e,u),m.start(Ys(u,m,f,e.shouldReduceMotion&&br.has(u)?{type:!1}:p,e,x));const v=m.animation;v&&c.push(v)}return i&&Promise.all(c).then(()=>{ie.update(()=>{i&&au(e,i)})}),c}function ea(e,t,n,s=0,o=1){const r=Array.from(e).sort((d,u)=>d.sortNodePosition(u)).indexOf(t),i=e.size,l=(i-1)*s;return typeof n=="function"?n(r,i):o===1?r*s:l-r*s}function as(e,t,n={}){var c;const s=ht(e,t,n.type==="exit"?(c=e.presenceContext)==null?void 0:c.custom:void 0);let{transition:o=e.getDefaultTransition()||{}}=s||{};n.transitionOverride&&(o=n.transitionOverride);const r=s?()=>Promise.all(Qr(e,s,n)):()=>Promise.resolve(),i=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:u=0,staggerChildren:m,staggerDirection:f}=o;return yu(e,t,d,u,m,f,n)}:()=>Promise.resolve(),{when:l}=o;if(l){const[d,u]=l==="beforeChildren"?[r,i]:[i,r];return d().then(()=>u())}else return Promise.all([r(),i(n.delay)])}function yu(e,t,n=0,s=0,o=0,r=1,i){const l=[];for(const c of e.variantChildren)c.notify("AnimationStart",t),l.push(as(c,t,{...i,delay:n+(typeof s=="function"?0:s)+ea(e.variantChildren,c,s,o,r)}).then(()=>c.notify("AnimationComplete",t)));return Promise.all(l)}function bu(e,t,n={}){e.notify("AnimationStart",t);let s;if(Array.isArray(t)){const o=t.map(r=>as(e,r,n));s=Promise.all(o)}else if(typeof t=="string")s=as(e,t,n);else{const o=typeof t=="function"?ht(e,t,n.custom):t;s=Promise.all(Qr(e,o,n))}return s.then(()=>{e.notify("AnimationComplete",t)})}function ta(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let s=0;s<n;s++)if(t[s]!==e[s])return!1;return!0}const vu=Hs.length;function na(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?na(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;n<vu;n++){const s=Hs[n],o=e.props[s];(It(o)||o===!1)&&(t[s]=o)}return t}const wu=[..._s].reverse(),Su=_s.length;function Cu(e){return t=>Promise.all(t.map(({animation:n,options:s})=>bu(e,n,s)))}function ku(e){let t=Cu(e),n=Oo(),s=!0;const o=c=>(d,u)=>{var f;const m=ht(e,u,c==="exit"?(f=e.presenceContext)==null?void 0:f.custom:void 0);if(m){const{transition:p,transitionEnd:g,...x}=m;d={...d,...x,...g}}return d};function r(c){t=c(e)}function i(c){const{props:d}=e,u=na(e.parent)||{},m=[],f=new Set;let p={},g=1/0;for(let v=0;v<Su;v++){const E=wu[v],b=n[E],S=d[E]!==void 0?d[E]:u[E],w=It(S),C=E===c?b.isActive:null;C===!1&&(g=v);let A=S===u[E]&&S!==d[E]&&w;if(A&&s&&e.manuallyAnimateOnMount&&(A=!1),b.protectedKeys={...p},!b.isActive&&C===null||!S&&!b.prevProp||fn(S)||typeof S=="boolean")continue;const j=ju(b.prevProp,S);let k=j||E===c&&b.isActive&&!A&&w||v>g&&w,D=!1;const L=Array.isArray(S)?S:[S];let W=L.reduce(o(E),{});C===!1&&(W={});const{prevResolvedValues:H={}}=b,Ce={...H,...W},ne=z=>{k=!0,f.has(z)&&(D=!0,f.delete(z)),b.needsAnimating[z]=!0;const M=e.getValue(z);M&&(M.liveStyle=!1)};for(const z in Ce){const M=W[z],G=H[z];if(p.hasOwnProperty(z))continue;let Y=!1;is(M)&&is(G)?Y=!ta(M,G):Y=M!==G,Y?M!=null?ne(z):f.add(z):M!==void 0&&f.has(z)?ne(z):b.protectedKeys[z]=!0}b.prevProp=S,b.prevResolvedValues=W,b.isActive&&(p={...p,...W}),s&&e.blockInitialAnimation&&(k=!1);const te=A&&j;k&&(!te||D)&&m.push(...L.map(z=>{const M={type:E};if(typeof z=="string"&&s&&!te&&e.manuallyAnimateOnMount&&e.parent){const{parent:G}=e,Y=ht(G,z);if(G.enteringChildren&&Y){const{delayChildren:V}=Y.transition||{};M.delay=ea(G.enteringChildren,e,V)}}return{animation:z,options:M}}))}if(f.size){const v={};if(typeof d.initial!="boolean"){const E=ht(e,Array.isArray(d.initial)?d.initial[0]:d.initial);E&&E.transition&&(v.transition=E.transition)}f.forEach(E=>{const b=e.getBaseTarget(E),S=e.getValue(E);S&&(S.liveStyle=!0),v[E]=b??null}),m.push({animation:v})}let x=!!m.length;return s&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(x=!1),s=!1,x?t(m):Promise.resolve()}function l(c,d){var m;if(n[c].isActive===d)return Promise.resolve();(m=e.variantChildren)==null||m.forEach(f=>{var p;return(p=f.animationState)==null?void 0:p.setActive(c,d)}),n[c].isActive=d;const u=i(c);for(const f in n)n[f].protectedKeys={};return u}return{animateChanges:i,setActive:l,setAnimateFunction:r,getState:()=>n,reset:()=>{n=Oo(),s=!0}}}function ju(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!ta(t,e):!1}function Ge(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function Oo(){return{animate:Ge(!0),whileInView:Ge(),whileHover:Ge(),whileTap:Ge(),whileDrag:Ge(),whileFocus:Ge(),exit:Ge()}}class Ke{constructor(t){this.isMounted=!1,this.node=t}update(){}}class Eu extends Ke{constructor(t){super(t),t.animationState||(t.animationState=ku(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();fn(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 Au=0;class Mu extends Ke{constructor(){super(...arguments),this.id=Au++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===s)return;const o=this.node.animationState.setActive("exit",!t);n&&!t&&o.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 Tu={animation:{Feature:Eu},exit:{Feature:Mu}};function Ft(e,t,n,s={passive:!0}){return e.addEventListener(t,n,s),()=>e.removeEventListener(t,n)}function Ot(e){return{point:{x:e.pageX,y:e.pageY}}}const Vu=e=>t=>$s(t)&&e(t,Ot(t));function Mt(e,t,n,s){return Ft(e,t,Vu(n),s)}const sa=1e-4,Nu=1-sa,Pu=1+sa,oa=.01,Ru=0-oa,Iu=0+oa;function we(e){return e.max-e.min}function Du(e,t,n){return Math.abs(e-t)<=n}function _o(e,t,n,s=.5){e.origin=s,e.originPoint=le(t.min,t.max,e.origin),e.scale=we(n)/we(t),e.translate=le(n.min,n.max,e.origin)-e.originPoint,(e.scale>=Nu&&e.scale<=Pu||isNaN(e.scale))&&(e.scale=1),(e.translate>=Ru&&e.translate<=Iu||isNaN(e.translate))&&(e.translate=0)}function Tt(e,t,n,s){_o(e.x,t.x,n.x,s?s.originX:void 0),_o(e.y,t.y,n.y,s?s.originY:void 0)}function Ho(e,t,n){e.min=n.min+t.min,e.max=e.min+we(t)}function Fu(e,t,n){Ho(e.x,t.x,n.x),Ho(e.y,t.y,n.y)}function Zo(e,t,n){e.min=t.min-n.min,e.max=e.min+we(t)}function Vt(e,t,n){Zo(e.x,t.x,n.x),Zo(e.y,t.y,n.y)}function je(e){return[e("x"),e("y")]}const ia=({current:e})=>e?e.ownerDocument.defaultView:null,Uo=(e,t)=>Math.abs(e-t);function Lu(e,t){const n=Uo(e.x,t.x),s=Uo(e.y,t.y);return Math.sqrt(n**2+s**2)}class ra{constructor(t,n,{transformPagePoint:s,contextWindow:o=window,dragSnapToOrigin:r=!1,distanceThreshold:i=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=Vn(this.lastMoveEventInfo,this.history),p=this.startEvent!==null,g=Lu(f.offset,{x:0,y:0})>=this.distanceThreshold;if(!p&&!g)return;const{point:x}=f,{timestamp:v}=xe;this.history.push({...x,timestamp:v});const{onStart:E,onMove:b}=this.handlers;p||(E&&E(this.lastMoveEvent,f),this.startEvent=this.lastMoveEvent),b&&b(this.lastMoveEvent,f)},this.handlePointerMove=(f,p)=>{this.lastMoveEvent=f,this.lastMoveEventInfo=Tn(p,this.transformPagePoint),ie.update(this.updatePoint,!0)},this.handlePointerUp=(f,p)=>{this.end();const{onEnd:g,onSessionEnd:x,resumeAnimation:v}=this.handlers;if(this.dragSnapToOrigin&&v&&v(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const E=Vn(f.type==="pointercancel"?this.lastMoveEventInfo:Tn(p,this.transformPagePoint),this.history);this.startEvent&&g&&g(f,E),x&&x(f,E)},!$s(t))return;this.dragSnapToOrigin=r,this.handlers=n,this.transformPagePoint=s,this.distanceThreshold=i,this.contextWindow=o||window;const l=Ot(t),c=Tn(l,this.transformPagePoint),{point:d}=c,{timestamp:u}=xe;this.history=[{...d,timestamp:u}];const{onSessionStart:m}=n;m&&m(t,Vn(c,this.history)),this.removeListeners=Lt(Mt(this.contextWindow,"pointermove",this.handlePointerMove),Mt(this.contextWindow,"pointerup",this.handlePointerUp),Mt(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),ze(this.updatePoint)}}function Tn(e,t){return t?{point:t(e.point)}:e}function zo(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Vn({point:e},t){return{point:e,delta:zo(e,aa(t)),offset:zo(e,Bu(t)),velocity:$u(t,.1)}}function Bu(e){return e[0]}function aa(e){return e[e.length-1]}function $u(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,s=null;const o=aa(e);for(;n>=0&&(s=e[n],!(o.timestamp-s.timestamp>Ve(t)));)n--;if(!s)return{x:0,y:0};const r=Pe(o.timestamp-s.timestamp);if(r===0)return{x:0,y:0};const i={x:(o.x-s.x)/r,y:(o.y-s.y)/r};return i.x===1/0&&(i.x=0),i.y===1/0&&(i.y=0),i}function Ou(e,{min:t,max:n},s){return t!==void 0&&e<t?e=s?le(t,e,s.min):Math.max(e,t):n!==void 0&&e>n&&(e=s?le(n,e,s.max):Math.min(e,n)),e}function Wo(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 _u(e,{top:t,left:n,bottom:s,right:o}){return{x:Wo(e.x,n,o),y:Wo(e.y,t,s)}}function Ko(e,t){let n=t.min-e.min,s=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,s]=[s,n]),{min:n,max:s}}function Hu(e,t){return{x:Ko(e.x,t.x),y:Ko(e.y,t.y)}}function Zu(e,t){let n=.5;const s=we(e),o=we(t);return o>s?n=Nt(t.min,t.max-s,e.min):s>o&&(n=Nt(e.min,e.max-o,t.min)),$e(0,1,n)}function Uu(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 ls=.35;function zu(e=ls){return e===!1?e=0:e===!0&&(e=ls),{x:Go(e,"left","right"),y:Go(e,"top","bottom")}}function Go(e,t,n){return{min:Yo(e,t),max:Yo(e,n)}}function Yo(e,t){return typeof e=="number"?e:e[t]||0}const Wu=new WeakMap;class Ku{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=de(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:s}={}){const{presenceContext:o}=this.visualElement;if(o&&o.isPresent===!1)return;const r=m=>{const{dragSnapToOrigin:f}=this.getProps();f?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Ot(m).point)},i=(m,f)=>{const{drag:p,dragPropagation:g,onDragStart:x}=this.getProps();if(p&&!g&&(this.openDragLock&&this.openDragLock(),this.openDragLock=td(p),!this.openDragLock))return;this.latestPointerEvent=m,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),je(E=>{let b=this.getAxisMotionValue(E).get()||0;if(Re.test(b)){const{projection:S}=this.visualElement;if(S&&S.layout){const w=S.layout.layoutBox[E];w&&(b=we(w)*(parseFloat(b)/100))}}this.originPoint[E]=b}),x&&ie.postRender(()=>x(m,f)),rs(this.visualElement,"transform");const{animationState:v}=this.visualElement;v&&v.setActive("whileDrag",!0)},l=(m,f)=>{this.latestPointerEvent=m,this.latestPanInfo=f;const{dragPropagation:p,dragDirectionLock:g,onDirectionLock:x,onDrag:v}=this.getProps();if(!p&&!this.openDragLock)return;const{offset:E}=f;if(g&&this.currentDirection===null){this.currentDirection=Gu(E),this.currentDirection!==null&&x&&x(this.currentDirection);return}this.updateAxis("x",f.point,E),this.updateAxis("y",f.point,E),this.visualElement.render(),v&&v(m,f)},c=(m,f)=>{this.latestPointerEvent=m,this.latestPanInfo=f,this.stop(m,f),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>je(m=>{var f;return this.getAnimationState(m)==="paused"&&((f=this.getAxisMotionValue(m).animation)==null?void 0:f.play())}),{dragSnapToOrigin:u}=this.getProps();this.panSession=new ra(t,{onSessionStart:r,onStart:i,onMove:l,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:s,contextWindow:ia(this.visualElement)})}stop(t,n){const s=t||this.latestPointerEvent,o=n||this.latestPanInfo,r=this.isDragging;if(this.cancel(),!r||!o||!s)return;const{velocity:i}=o;this.startAnimation(i);const{onDragEnd:l}=this.getProps();l&&ie.postRender(()=>l(s,o))}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:s}=this.getProps();!s&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(t,n,s){const{drag:o}=this.getProps();if(!s||!Gt(t,o,this.currentDirection))return;const r=this.getAxisMotionValue(t);let i=this.originPoint[t]+s[t];this.constraints&&this.constraints[t]&&(i=Ou(i,this.constraints[t],this.elastic[t])),r.set(i)}resolveConstraints(){var r;const{dragConstraints:t,dragElastic:n}=this.getProps(),s=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(r=this.visualElement.projection)==null?void 0:r.layout,o=this.constraints;t&&at(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&s?this.constraints=_u(s.layoutBox,t):this.constraints=!1,this.elastic=zu(n),o!==this.constraints&&s&&this.constraints&&!this.hasMutatedConstraints&&je(i=>{this.constraints!==!1&&this.getAxisMotionValue(i)&&(this.constraints[i]=Uu(s.layoutBox[i],this.constraints[i]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!at(t))return!1;const s=t.current;Oe(s!==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:o}=this.visualElement;if(!o||!o.layout)return!1;const r=Yd(s,o.root,this.visualElement.getTransformPagePoint());let i=Hu(o.layout.layoutBox,r);if(n){const l=n(Wd(i));this.hasMutatedConstraints=!!l,l&&(i=Ur(l))}return i}startAnimation(t){const{drag:n,dragMomentum:s,dragElastic:o,dragTransition:r,dragSnapToOrigin:i,onDragTransitionEnd:l}=this.getProps(),c=this.constraints||{},d=je(u=>{if(!Gt(u,n,this.currentDirection))return;let m=c&&c[u]||{};i&&(m={min:0,max:0});const f=o?200:1e6,p=o?40:1e7,g={type:"inertia",velocity:s?t[u]:0,bounceStiffness:f,bounceDamping:p,timeConstant:750,restDelta:1,restSpeed:10,...r,...m};return this.startAxisValueAnimation(u,g)});return Promise.all(d).then(l)}startAxisValueAnimation(t,n){const s=this.getAxisMotionValue(t);return rs(this.visualElement,t),s.start(Ys(t,s,0,n,this.visualElement,!1))}stopAnimation(){je(t=>this.getAxisMotionValue(t).stop())}pauseAnimation(){je(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()}`,s=this.visualElement.getProps(),o=s[n];return o||this.visualElement.getValue(t,(s.initial?s.initial[t]:void 0)||0)}snapToCursor(t){je(n=>{const{drag:s}=this.getProps();if(!Gt(n,s,this.currentDirection))return;const{projection:o}=this.visualElement,r=this.getAxisMotionValue(n);if(o&&o.layout){const{min:i,max:l}=o.layout.layoutBox[n];r.set(t[n]-le(i,l,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:s}=this.visualElement;if(!at(n)||!s||!this.constraints)return;this.stopAnimation();const o={x:0,y:0};je(i=>{const l=this.getAxisMotionValue(i);if(l&&this.constraints!==!1){const c=l.get();o[i]=Zu({min:c,max:c},this.constraints[i])}});const{transformTemplate:r}=this.visualElement.getProps();this.visualElement.current.style.transform=r?r({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),je(i=>{if(!Gt(i,t,null))return;const l=this.getAxisMotionValue(i),{min:c,max:d}=this.constraints[i];l.set(le(c,d,o[i]))})}addListeners(){if(!this.visualElement.current)return;Wu.set(this.visualElement,this);const t=this.visualElement.current,n=Mt(t,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),s=()=>{const{dragConstraints:c}=this.getProps();at(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:o}=this.visualElement,r=o.addEventListener("measure",s);o&&!o.layout&&(o.root&&o.root.updateScroll(),o.updateLayout()),ie.read(s);const i=Ft(window,"resize",()=>this.scalePositionWithinConstraints()),l=o.addEventListener("didUpdate",({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(je(u=>{const m=this.getAxisMotionValue(u);m&&(this.originPoint[u]+=c[u].translate,m.set(m.get()+c[u].translate))}),this.visualElement.render())});return()=>{i(),n(),r(),l&&l()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:s=!1,dragPropagation:o=!1,dragConstraints:r=!1,dragElastic:i=ls,dragMomentum:l=!0}=t;return{...t,drag:n,dragDirectionLock:s,dragPropagation:o,dragConstraints:r,dragElastic:i,dragMomentum:l}}}function Gt(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function Gu(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class Yu extends Ke{constructor(t){super(t),this.removeGroupControls=Ae,this.removeListeners=Ae,this.controls=new Ku(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||Ae}unmount(){this.removeGroupControls(),this.removeListeners()}}const qo=e=>(t,n)=>{e&&ie.postRender(()=>e(t,n))};class qu extends Ke{constructor(){super(...arguments),this.removePointerDownListener=Ae}onPointerDown(t){this.session=new ra(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:ia(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:s,onPanEnd:o}=this.node.getProps();return{onSessionStart:qo(t),onStart:qo(n),onMove:s,onEnd:(r,i)=>{delete this.session,o&&ie.postRender(()=>o(r,i))}}}mount(){this.removePointerDownListener=Mt(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 nn={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Xo(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const kt={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(U.test(e))e=parseFloat(e);else return e;const n=Xo(e,t.target.x),s=Xo(e,t.target.y);return`${n}% ${s}%`}},Xu={correct:(e,{treeScale:t,projectionDelta:n})=>{const s=e,o=We.parse(e);if(o.length>5)return s;const r=We.createTransformer(e),i=typeof o[0]!="number"?1:0,l=n.x.scale*t.x,c=n.y.scale*t.y;o[0+i]/=l,o[1+i]/=c;const d=le(l,c,.5);return typeof o[2+i]=="number"&&(o[2+i]/=d),typeof o[3+i]=="number"&&(o[3+i]/=d),r(o)}};let Nn=!1;class Ju extends y.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:s,layoutId:o}=this.props,{projection:r}=t;vd(Qu),r&&(n.group&&n.group.add(r),s&&s.register&&o&&s.register(r),Nn&&r.root.didUpdate(),r.addEventListener("animationComplete",()=>{this.safeToRemove()}),r.setOptions({...r.options,onExitComplete:()=>this.safeToRemove()})),nn.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:s,drag:o,isPresent:r}=this.props,{projection:i}=s;return i&&(i.isPresent=r,Nn=!0,o||t.layoutDependency!==n||n===void 0||t.isPresent!==r?i.willUpdate():this.safeToRemove(),t.isPresent!==r&&(r?i.promote():i.relegate()||ie.postRender(()=>{const l=i.getStack();(!l||!l.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),Bs.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:s}=this.props,{projection:o}=t;Nn=!0,o&&(o.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(o),s&&s.deregister&&s.deregister(o))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function la(e){const[t,n]=Vr(),s=y.useContext(gs);return a.jsx(Ju,{...e,layoutGroup:s,switchLayoutGroup:y.useContext(Hr),isPresent:t,safeToRemove:n})}const Qu={borderRadius:{...kt,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:kt,borderTopRightRadius:kt,borderBottomLeftRadius:kt,borderBottomRightRadius:kt,boxShadow:Xu};function eh(e,t,n){const s=be(e)?e:mt(e);return s.start(Ys("",s,t,n)),s.animation}const th=(e,t)=>e.depth-t.depth;class nh{constructor(){this.children=[],this.isDirty=!1}add(t){bs(this.children,t),this.isDirty=!0}remove(t){vs(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(th),this.isDirty=!1,this.children.forEach(t)}}function sh(e,t){const n=Se.now(),s=({timestamp:o})=>{const r=o-n;r>=t&&(ze(s),e(r-t))};return ie.setup(s,!0),()=>ze(s)}const ca=["TopLeft","TopRight","BottomLeft","BottomRight"],oh=ca.length,Jo=e=>typeof e=="string"?parseFloat(e):e,Qo=e=>typeof e=="number"||U.test(e);function ih(e,t,n,s,o,r){o?(e.opacity=le(0,n.opacity??1,rh(s)),e.opacityExit=le(t.opacity??1,0,ah(s))):r&&(e.opacity=le(t.opacity??1,n.opacity??1,s));for(let i=0;i<oh;i++){const l=`border${ca[i]}Radius`;let c=ei(t,l),d=ei(n,l);if(c===void 0&&d===void 0)continue;c||(c=0),d||(d=0),c===0||d===0||Qo(c)===Qo(d)?(e[l]=Math.max(le(Jo(c),Jo(d),s),0),(Re.test(d)||Re.test(c))&&(e[l]+="%")):e[l]=d}(t.rotate||n.rotate)&&(e.rotate=le(t.rotate||0,n.rotate||0,s))}function ei(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const rh=da(0,.5,qi),ah=da(.5,.95,Ae);function da(e,t,n){return s=>s<e?0:s>t?1:n(Nt(e,t,s))}function ti(e,t){e.min=t.min,e.max=t.max}function ke(e,t){ti(e.x,t.x),ti(e.y,t.y)}function ni(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function si(e,t,n,s,o){return e-=t,e=dn(e,1/n,s),o!==void 0&&(e=dn(e,1/o,s)),e}function lh(e,t=0,n=1,s=.5,o,r=e,i=e){if(Re.test(t)&&(t=parseFloat(t),t=le(i.min,i.max,t/100)-i.min),typeof t!="number")return;let l=le(r.min,r.max,s);e===r&&(l-=t),e.min=si(e.min,t,n,l,o),e.max=si(e.max,t,n,l,o)}function oi(e,t,[n,s,o],r,i){lh(e,t[n],t[s],t[o],t.scale,r,i)}const ch=["x","scaleX","originX"],dh=["y","scaleY","originY"];function ii(e,t,n,s){oi(e.x,t,ch,n?n.x:void 0,s?s.x:void 0),oi(e.y,t,dh,n?n.y:void 0,s?s.y:void 0)}function ri(e){return e.translate===0&&e.scale===1}function ua(e){return ri(e.x)&&ri(e.y)}function ai(e,t){return e.min===t.min&&e.max===t.max}function uh(e,t){return ai(e.x,t.x)&&ai(e.y,t.y)}function li(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function ha(e,t){return li(e.x,t.x)&&li(e.y,t.y)}function ci(e){return we(e.x)/we(e.y)}function di(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class hh{constructor(){this.members=[]}add(t){bs(this.members,t),t.scheduleRender()}remove(t){if(vs(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(o=>t===o);if(n===0)return!1;let s;for(let o=n;o>=0;o--){const r=this.members[o];if(r.isPresent!==!1){s=r;break}}return s?(this.promote(s),!0):!1}promote(t,n){const s=this.lead;if(t!==s&&(this.prevLead=s,this.lead=t,t.show(),s)){s.instance&&s.scheduleRender(),t.scheduleRender(),t.resumeFrom=s,n&&(t.resumeFrom.preserveOpacity=!0),s.snapshot&&(t.snapshot=s.snapshot,t.snapshot.latestValues=s.animationValues||s.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:o}=t.options;o===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:s}=t;n.onExitComplete&&n.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function mh(e,t,n){let s="";const o=e.x.translate/t.x,r=e.y.translate/t.y,i=(n==null?void 0:n.z)||0;if((o||r||i)&&(s=`translate3d(${o}px, ${r}px, ${i}px) `),(t.x!==1||t.y!==1)&&(s+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:d,rotate:u,rotateX:m,rotateY:f,skewX:p,skewY:g}=n;d&&(s=`perspective(${d}px) ${s}`),u&&(s+=`rotate(${u}deg) `),m&&(s+=`rotateX(${m}deg) `),f&&(s+=`rotateY(${f}deg) `),p&&(s+=`skewX(${p}deg) `),g&&(s+=`skewY(${g}deg) `)}const l=e.x.scale*t.x,c=e.y.scale*t.y;return(l!==1||c!==1)&&(s+=`scale(${l}, ${c})`),s||"none"}const Pn=["","X","Y","Z"],fh=1e3;let ph=0;function Rn(e,t,n,s){const{latestValues:o}=t;o[e]&&(n[e]=o[e],t.setStaticValue(e,0),s&&(s[e]=0))}function ma(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=Jr(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:o,layoutId:r}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",ie,!(o||r))}const{parent:s}=e;s&&!s.hasCheckedOptimisedAppear&&ma(s)}function fa({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:s,resetTransform:o}){return class{constructor(i={},l=t==null?void 0:t()){this.id=ph++,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(yh),this.nodes.forEach(Sh),this.nodes.forEach(Ch),this.nodes.forEach(bh)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=i,this.root=l?l.root||l:this,this.path=l?[...l.path,l]:[],this.parent=l,this.depth=l?l.depth+1:0;for(let c=0;c<this.path.length;c++)this.path[c].shouldResetTransform=!0;this.root===this&&(this.nodes=new nh)}addEventListener(i,l){return this.eventHandlers.has(i)||this.eventHandlers.set(i,new Ss),this.eventHandlers.get(i).add(l)}notifyListeners(i,...l){const c=this.eventHandlers.get(i);c&&c.notify(...l)}hasListeners(i){return this.eventHandlers.has(i)}mount(i){if(this.instance)return;this.isSVG=Tr(i)&&!ad(i),this.instance=i;const{layoutId:l,layout:c,visualElement:d}=this.options;if(d&&!d.current&&d.mount(i),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||l)&&(this.isLayoutDirty=!0),e){let u,m=0;const f=()=>this.root.updateBlockedByResize=!1;ie.read(()=>{m=window.innerWidth}),e(i,()=>{const p=window.innerWidth;p!==m&&(m=p,this.root.updateBlockedByResize=!0,u&&u(),u=sh(f,250),nn.hasAnimatedSinceResize&&(nn.hasAnimatedSinceResize=!1,this.nodes.forEach(mi)))})}l&&this.root.registerSharedNode(l,this),this.options.animate!==!1&&d&&(l||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:m,hasRelativeLayoutChanged:f,layout:p})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||d.getDefaultTransition()||Mh,{onLayoutAnimationStart:x,onLayoutAnimationComplete:v}=d.getProps(),E=!this.targetLayout||!ha(this.targetLayout,p),b=!m&&f;if(this.options.layoutRoot||this.resumeFrom||b||m&&(E||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const S={...Fs(g,"layout"),onPlay:x,onComplete:v};(d.shouldReduceMotion||this.options.layoutRoot)&&(S.delay=0,S.type=!1),this.startAnimation(S),this.setAnimationOrigin(u,b)}else m||mi(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=p})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const i=this.getStack();i&&i.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),ze(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(kh),this.animationId++)}getTransformTemplate(){const{visualElement:i}=this.options;return i&&i.getProps().transformTemplate}willUpdate(i=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&ma(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const m=this.path[u];m.shouldResetTransform=!0,m.updateScroll("snapshot"),m.options.layoutRoot&&m.willUpdate(!1)}const{layoutId:l,layout:c}=this.options;if(l===void 0&&!c)return;const d=this.getTransformTemplate();this.prevTransformTemplateValue=d?d(this.latestValues,""):void 0,this.updateSnapshot(),i&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(ui);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(hi);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(wh),this.nodes.forEach(gh),this.nodes.forEach(xh)):this.nodes.forEach(hi),this.clearAllSnapshots();const l=Se.now();xe.delta=$e(0,1e3/60,l-xe.timestamp),xe.timestamp=l,xe.isProcessing=!0,wn.update.process(xe),wn.preRender.process(xe),wn.render.process(xe),xe.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,Bs.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(vh),this.sharedNodes.forEach(jh)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,ie.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){ie.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!we(this.snapshot.measuredBox.x)&&!we(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 c=0;c<this.path.length;c++)this.path[c].updateScroll();const i=this.layout;this.layout=this.measure(!1),this.layoutCorrected=de(),this.isLayoutDirty=!1,this.projectionDelta=void 0,this.notifyListeners("measure",this.layout.layoutBox);const{visualElement:l}=this.options;l&&l.notify("LayoutMeasure",this.layout.layoutBox,i?i.layoutBox:void 0)}updateScroll(i="measure"){let l=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===i&&(l=!1),l&&this.instance){const c=s(this.instance);this.scroll={animationId:this.root.animationId,phase:i,isRoot:c,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!o)return;const i=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,l=this.projectionDelta&&!ua(this.projectionDelta),c=this.getTransformTemplate(),d=c?c(this.latestValues,""):void 0,u=d!==this.prevTransformTemplateValue;i&&this.instance&&(l||qe(this.latestValues)||u)&&(o(this.instance,d),this.shouldResetTransform=!1,this.scheduleRender())}measure(i=!0){const l=this.measurePageBox();let c=this.removeElementScroll(l);return i&&(c=this.removeTransform(c)),Th(c),{animationId:this.root.animationId,measuredBox:l,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var d;const{visualElement:i}=this.options;if(!i)return de();const l=i.measureViewportBox();if(!(((d=this.scroll)==null?void 0:d.wasRoot)||this.path.some(Vh))){const{scroll:u}=this.root;u&&(lt(l.x,u.offset.x),lt(l.y,u.offset.y))}return l}removeElementScroll(i){var c;const l=de();if(ke(l,i),(c=this.scroll)!=null&&c.wasRoot)return l;for(let d=0;d<this.path.length;d++){const u=this.path[d],{scroll:m,options:f}=u;u!==this.root&&m&&f.layoutScroll&&(m.wasRoot&&ke(l,i),lt(l.x,m.offset.x),lt(l.y,m.offset.y))}return l}applyTransform(i,l=!1){const c=de();ke(c,i);for(let d=0;d<this.path.length;d++){const u=this.path[d];!l&&u.options.layoutScroll&&u.scroll&&u!==u.root&&ct(c,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),qe(u.latestValues)&&ct(c,u.latestValues)}return qe(this.latestValues)&&ct(c,this.latestValues),c}removeTransform(i){const l=de();ke(l,i);for(let c=0;c<this.path.length;c++){const d=this.path[c];if(!d.instance||!qe(d.latestValues))continue;ns(d.latestValues)&&d.updateSnapshot();const u=de(),m=d.measurePageBox();ke(u,m),ii(l,d.latestValues,d.snapshot?d.snapshot.layoutBox:void 0,u)}return qe(this.latestValues)&&ii(l,this.latestValues),l}setTargetDelta(i){this.targetDelta=i,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(i){this.options={...this.options,...i,crossfade:i.crossfade!==void 0?i.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!==xe.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(i=!1){var f;const l=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=l.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=l.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=l.isSharedProjectionDirty);const c=!!this.resumingFrom||this!==l;if(!(i||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(f=this.parent)!=null&&f.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:m}=this.options;if(!(!this.layout||!(u||m))){if(this.resolvedRelativeTargetAt=xe.timestamp,!this.targetDelta&&!this.relativeTarget){const p=this.getClosestProjectingParent();p&&p.layout&&this.animationProgress!==1?(this.relativeParent=p,this.forceRelativeParentToResolveTarget(),this.relativeTarget=de(),this.relativeTargetOrigin=de(),Vt(this.relativeTargetOrigin,this.layout.layoutBox,p.layout.layoutBox),ke(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=de(),this.targetWithTransforms=de()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),Fu(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):ke(this.target,this.layout.layoutBox),Wr(this.target,this.targetDelta)):ke(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=de(),this.relativeTargetOrigin=de(),Vt(this.relativeTargetOrigin,this.target,p.target),ke(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||ns(this.parent.latestValues)||zr(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 g;const i=this.getLead(),l=!!this.resumingFrom||this!==i;let c=!0;if((this.isProjectionDirty||(g=this.parent)!=null&&g.isProjectionDirty)&&(c=!1),l&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===xe.timestamp&&(c=!1),c)return;const{layout:d,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||!(d||u))return;ke(this.layoutCorrected,this.layout.layoutBox);const m=this.treeScale.x,f=this.treeScale.y;Gd(this.layoutCorrected,this.treeScale,this.path,l),i.layout&&!i.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(i.target=i.layout.layoutBox,i.targetWithTransforms=de());const{target:p}=i;if(!p){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(ni(this.prevProjectionDelta.x,this.projectionDelta.x),ni(this.prevProjectionDelta.y,this.projectionDelta.y)),Tt(this.projectionDelta,this.layoutCorrected,p,this.latestValues),(this.treeScale.x!==m||this.treeScale.y!==f||!di(this.projectionDelta.x,this.prevProjectionDelta.x)||!di(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",p))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(i=!0){var l;if((l=this.options.visualElement)==null||l.scheduleRender(),i){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=dt(),this.projectionDelta=dt(),this.projectionDeltaWithTransform=dt()}setAnimationOrigin(i,l=!1){const c=this.snapshot,d=c?c.latestValues:{},u={...this.latestValues},m=dt();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!l;const f=de(),p=c?c.source:void 0,g=this.layout?this.layout.source:void 0,x=p!==g,v=this.getStack(),E=!v||v.members.length<=1,b=!!(x&&!E&&this.options.crossfade===!0&&!this.path.some(Ah));this.animationProgress=0;let S;this.mixTargetDelta=w=>{const C=w/1e3;fi(m.x,i.x,C),fi(m.y,i.y,C),this.setTargetDelta(m),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(Vt(f,this.layout.layoutBox,this.relativeParent.layout.layoutBox),Eh(this.relativeTarget,this.relativeTargetOrigin,f,C),S&&uh(this.relativeTarget,S)&&(this.isProjectionDirty=!1),S||(S=de()),ke(S,this.relativeTarget)),x&&(this.animationValues=u,ih(u,d,this.latestValues,C,b,E)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=C},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(i){var l,c,d;this.notifyListeners("animationStart"),(l=this.currentAnimation)==null||l.stop(),(d=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||d.stop(),this.pendingAnimation&&(ze(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=ie.update(()=>{nn.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=mt(0)),this.currentAnimation=eh(this.motionValue,[0,1e3],{...i,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),i.onUpdate&&i.onUpdate(u)},onStop:()=>{},onComplete:()=>{i.onComplete&&i.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 i=this.getStack();i&&i.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(fh),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const i=this.getLead();let{targetWithTransforms:l,target:c,layout:d,latestValues:u}=i;if(!(!l||!c||!d)){if(this!==i&&this.layout&&d&&pa(this.options.animationType,this.layout.layoutBox,d.layoutBox)){c=this.target||de();const m=we(this.layout.layoutBox.x);c.x.min=i.target.x.min,c.x.max=c.x.min+m;const f=we(this.layout.layoutBox.y);c.y.min=i.target.y.min,c.y.max=c.y.min+f}ke(l,c),ct(l,u),Tt(this.projectionDeltaWithTransform,this.layoutCorrected,l,u)}}registerSharedNode(i,l){this.sharedNodes.has(i)||this.sharedNodes.set(i,new hh),this.sharedNodes.get(i).add(l);const d=l.options.initialPromotionConfig;l.promote({transition:d?d.transition:void 0,preserveFollowOpacity:d&&d.shouldPreserveFollowOpacity?d.shouldPreserveFollowOpacity(l):void 0})}isLead(){const i=this.getStack();return i?i.lead===this:!0}getLead(){var l;const{layoutId:i}=this.options;return i?((l=this.getStack())==null?void 0:l.lead)||this:this}getPrevLead(){var l;const{layoutId:i}=this.options;return i?(l=this.getStack())==null?void 0:l.prevLead:void 0}getStack(){const{layoutId:i}=this.options;if(i)return this.root.sharedNodes.get(i)}promote({needsReset:i,transition:l,preserveFollowOpacity:c}={}){const d=this.getStack();d&&d.promote(this,c),i&&(this.projectionDelta=void 0,this.needsReset=!0),l&&this.setOptions({transition:l})}relegate(){const i=this.getStack();return i?i.relegate(this):!1}resetSkewAndRotation(){const{visualElement:i}=this.options;if(!i)return;let l=!1;const{latestValues:c}=i;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(l=!0),!l)return;const d={};c.z&&Rn("z",i,d,this.animationValues);for(let u=0;u<Pn.length;u++)Rn(`rotate${Pn[u]}`,i,d,this.animationValues),Rn(`skew${Pn[u]}`,i,d,this.animationValues);i.render();for(const u in d)i.setStaticValue(u,d[u]),this.animationValues&&(this.animationValues[u]=d[u]);i.scheduleRender()}applyProjectionStyles(i,l){if(!this.instance||this.isSVG)return;if(!this.isVisible){i.visibility="hidden";return}const c=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,i.visibility="",i.opacity="",i.pointerEvents=tn(l==null?void 0:l.pointerEvents)||"",i.transform=c?c(this.latestValues,""):"none";return}const d=this.getLead();if(!this.projectionDelta||!this.layout||!d.target){this.options.layoutId&&(i.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,i.pointerEvents=tn(l==null?void 0:l.pointerEvents)||""),this.hasProjected&&!qe(this.latestValues)&&(i.transform=c?c({},""):"none",this.hasProjected=!1);return}i.visibility="";const u=d.animationValues||d.latestValues;this.applyTransformsToTarget();let m=mh(this.projectionDeltaWithTransform,this.treeScale,u);c&&(m=c(u,m)),i.transform=m;const{x:f,y:p}=this.projectionDelta;i.transformOrigin=`${f.origin*100}% ${p.origin*100}% 0`,d.animationValues?i.opacity=d===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:i.opacity=d===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const g in Dt){if(u[g]===void 0)continue;const{correct:x,applyTo:v,isCSSVariable:E}=Dt[g],b=m==="none"?u[g]:x(u[g],d);if(v){const S=v.length;for(let w=0;w<S;w++)i[v[w]]=b}else E?this.options.visualElement.renderState.vars[g]=b:i[g]=b}this.options.layoutId&&(i.pointerEvents=d===this?tn(l==null?void 0:l.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(i=>{var l;return(l=i.currentAnimation)==null?void 0:l.stop()}),this.root.nodes.forEach(ui),this.root.sharedNodes.clear()}}}function gh(e){e.updateLayout()}function xh(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:s,measuredBox:o}=e.layout,{animationType:r}=e.options,i=t.source!==e.layout.source;r==="size"?je(m=>{const f=i?t.measuredBox[m]:t.layoutBox[m],p=we(f);f.min=s[m].min,f.max=f.min+p}):pa(r,t.layoutBox,s)&&je(m=>{const f=i?t.measuredBox[m]:t.layoutBox[m],p=we(s[m]);f.max=f.min+p,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[m].max=e.relativeTarget[m].min+p)});const l=dt();Tt(l,s,t.layoutBox);const c=dt();i?Tt(c,e.applyTransform(o,!0),t.measuredBox):Tt(c,s,t.layoutBox);const d=!ua(l);let u=!1;if(!e.resumeFrom){const m=e.getClosestProjectingParent();if(m&&!m.resumeFrom){const{snapshot:f,layout:p}=m;if(f&&p){const g=de();Vt(g,t.layoutBox,f.layoutBox);const x=de();Vt(x,s,p.layoutBox),ha(g,x)||(u=!0),m.options.layoutRoot&&(e.relativeTarget=x,e.relativeTargetOrigin=g,e.relativeParent=m)}}}e.notifyListeners("didUpdate",{layout:s,snapshot:t,delta:c,layoutDelta:l,hasLayoutChanged:d,hasRelativeLayoutChanged:u})}else if(e.isLead()){const{onExitComplete:s}=e.options;s&&s()}e.options.transition=void 0}function yh(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 bh(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function vh(e){e.clearSnapshot()}function ui(e){e.clearMeasurements()}function hi(e){e.isLayoutDirty=!1}function wh(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function mi(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function Sh(e){e.resolveTargetDelta()}function Ch(e){e.calcProjection()}function kh(e){e.resetSkewAndRotation()}function jh(e){e.removeLeadSnapshot()}function fi(e,t,n){e.translate=le(t.translate,0,n),e.scale=le(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function pi(e,t,n,s){e.min=le(t.min,n.min,s),e.max=le(t.max,n.max,s)}function Eh(e,t,n,s){pi(e.x,t.x,n.x,s),pi(e.y,t.y,n.y,s)}function Ah(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const Mh={duration:.45,ease:[.4,0,.1,1]},gi=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),xi=gi("applewebkit/")&&!gi("chrome/")?Math.round:Ae;function yi(e){e.min=xi(e.min),e.max=xi(e.max)}function Th(e){yi(e.x),yi(e.y)}function pa(e,t,n){return e==="position"||e==="preserve-aspect"&&!Du(ci(t),ci(n),.2)}function Vh(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const Nh=fa({attachResizeListener:(e,t)=>Ft(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),In={current:void 0},ga=fa({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!In.current){const e=new Nh({});e.mount(window),e.setOptions({layoutScroll:!0}),In.current=e}return In.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),Ph={pan:{Feature:qu},drag:{Feature:Yu,ProjectionNode:ga,MeasureLayout:la}};function bi(e,t,n){const{props:s}=e;e.animationState&&s.whileHover&&e.animationState.setActive("whileHover",n==="Start");const o="onHover"+n,r=s[o];r&&ie.postRender(()=>r(t,Ot(t)))}class Rh extends Ke{mount(){const{current:t}=this.node;t&&(this.unmount=nd(t,(n,s)=>(bi(this.node,s,"Start"),o=>bi(this.node,o,"End"))))}unmount(){}}class Ih extends Ke{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=Lt(Ft(this.node.current,"focus",()=>this.onFocus()),Ft(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function vi(e,t,n){const{props:s}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&s.whileTap&&e.animationState.setActive("whileTap",n==="Start");const o="onTap"+(n==="End"?"":n),r=s[o];r&&ie.postRender(()=>r(t,Ot(t)))}class Dh extends Ke{mount(){const{current:t}=this.node;t&&(this.unmount=rd(t,(n,s)=>(vi(this.node,s,"Start"),(o,{success:r})=>vi(this.node,o,r?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const cs=new WeakMap,Dn=new WeakMap,Fh=e=>{const t=cs.get(e.target);t&&t(e)},Lh=e=>{e.forEach(Fh)};function Bh({root:e,...t}){const n=e||document;Dn.has(n)||Dn.set(n,{});const s=Dn.get(n),o=JSON.stringify(t);return s[o]||(s[o]=new IntersectionObserver(Lh,{root:e,...t})),s[o]}function $h(e,t,n){const s=Bh(t);return cs.set(e,n),s.observe(e),()=>{cs.delete(e),s.unobserve(e)}}const Oh={some:0,all:1};class _h extends Ke{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:s,amount:o="some",once:r}=t,i={root:n?n.current:void 0,rootMargin:s,threshold:typeof o=="number"?o:Oh[o]},l=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,r&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:u,onViewportLeave:m}=this.node.getProps(),f=d?u:m;f&&f(c)};return $h(this.node.current,i,l)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(Hh(t,n))&&this.startObserver()}unmount(){}}function Hh({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const Zh={inView:{Feature:_h},tap:{Feature:Dh},focus:{Feature:Ih},hover:{Feature:Rh}},Uh={layout:{ProjectionNode:ga,MeasureLayout:la}},zh={...Tu,...Zh,...Ph,...Uh},Q=zd(zh,ou),qs="-",Wh=e=>{const t=Gh(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:s}=e;return{getClassGroupId:i=>{const l=i.split(qs);return l[0]===""&&l.length!==1&&l.shift(),xa(l,t)||Kh(i)},getConflictingClassGroupIds:(i,l)=>{const c=n[i]||[];return l&&s[i]?[...c,...s[i]]:c}}},xa=(e,t)=>{var i;if(e.length===0)return t.classGroupId;const n=e[0],s=t.nextPart.get(n),o=s?xa(e.slice(1),s):void 0;if(o)return o;if(t.validators.length===0)return;const r=e.join(qs);return(i=t.validators.find(({validator:l})=>l(r)))==null?void 0:i.classGroupId},wi=/^\[(.+)\]$/,Kh=e=>{if(wi.test(e)){const t=wi.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},Gh=e=>{const{theme:t,classGroups:n}=e,s={nextPart:new Map,validators:[]};for(const o in n)ds(n[o],s,o,t);return s},ds=(e,t,n,s)=>{e.forEach(o=>{if(typeof o=="string"){const r=o===""?t:Si(t,o);r.classGroupId=n;return}if(typeof o=="function"){if(Yh(o)){ds(o(s),t,n,s);return}t.validators.push({validator:o,classGroupId:n});return}Object.entries(o).forEach(([r,i])=>{ds(i,Si(t,r),n,s)})})},Si=(e,t)=>{let n=e;return t.split(qs).forEach(s=>{n.nextPart.has(s)||n.nextPart.set(s,{nextPart:new Map,validators:[]}),n=n.nextPart.get(s)}),n},Yh=e=>e.isThemeGetter,qh=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,s=new Map;const o=(r,i)=>{n.set(r,i),t++,t>e&&(t=0,s=n,n=new Map)};return{get(r){let i=n.get(r);if(i!==void 0)return i;if((i=s.get(r))!==void 0)return o(r,i),i},set(r,i){n.has(r)?n.set(r,i):o(r,i)}}},us="!",hs=":",Xh=hs.length,Jh=e=>{const{prefix:t,experimentalParseClassName:n}=e;let s=o=>{const r=[];let i=0,l=0,c=0,d;for(let g=0;g<o.length;g++){let x=o[g];if(i===0&&l===0){if(x===hs){r.push(o.slice(c,g)),c=g+Xh;continue}if(x==="/"){d=g;continue}}x==="["?i++:x==="]"?i--:x==="("?l++:x===")"&&l--}const u=r.length===0?o:o.substring(c),m=Qh(u),f=m!==u,p=d&&d>c?d-c:void 0;return{modifiers:r,hasImportantModifier:f,baseClassName:m,maybePostfixModifierPosition:p}};if(t){const o=t+hs,r=s;s=i=>i.startsWith(o)?r(i.substring(o.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:i,maybePostfixModifierPosition:void 0}}if(n){const o=s;s=r=>n({className:r,parseClassName:o})}return s},Qh=e=>e.endsWith(us)?e.substring(0,e.length-1):e.startsWith(us)?e.substring(1):e,em=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(s=>[s,!0]));return s=>{if(s.length<=1)return s;const o=[];let r=[];return s.forEach(i=>{i[0]==="["||t[i]?(o.push(...r.sort(),i),r=[]):r.push(i)}),o.push(...r.sort()),o}},tm=e=>({cache:qh(e.cacheSize),parseClassName:Jh(e),sortModifiers:em(e),...Wh(e)}),nm=/\s+/,sm=(e,t)=>{const{parseClassName:n,getClassGroupId:s,getConflictingClassGroupIds:o,sortModifiers:r}=t,i=[],l=e.trim().split(nm);let c="";for(let d=l.length-1;d>=0;d-=1){const u=l[d],{isExternal:m,modifiers:f,hasImportantModifier:p,baseClassName:g,maybePostfixModifierPosition:x}=n(u);if(m){c=u+(c.length>0?" "+c:c);continue}let v=!!x,E=s(v?g.substring(0,x):g);if(!E){if(!v){c=u+(c.length>0?" "+c:c);continue}if(E=s(g),!E){c=u+(c.length>0?" "+c:c);continue}v=!1}const b=r(f).join(":"),S=p?b+us:b,w=S+E;if(i.includes(w))continue;i.push(w);const C=o(E,v);for(let A=0;A<C.length;++A){const j=C[A];i.push(S+j)}c=u+(c.length>0?" "+c:c)}return c};function om(){let e=0,t,n,s="";for(;e<arguments.length;)(t=arguments[e++])&&(n=ya(t))&&(s&&(s+=" "),s+=n);return s}const ya=e=>{if(typeof e=="string")return e;let t,n="";for(let s=0;s<e.length;s++)e[s]&&(t=ya(e[s]))&&(n&&(n+=" "),n+=t);return n};function im(e,...t){let n,s,o,r=i;function i(c){const d=t.reduce((u,m)=>m(u),e());return n=tm(d),s=n.cache.get,o=n.cache.set,r=l,l(c)}function l(c){const d=s(c);if(d)return d;const u=sm(c,n);return o(c,u),u}return function(){return r(om.apply(null,arguments))}}const ge=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},ba=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,va=/^\((?:(\w[\w-]*):)?(.+)\)$/i,rm=/^\d+\/\d+$/,am=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,lm=/\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$/,cm=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,dm=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,um=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,st=e=>rm.test(e),X=e=>!!e&&!Number.isNaN(Number(e)),Ze=e=>!!e&&Number.isInteger(Number(e)),Fn=e=>e.endsWith("%")&&X(e.slice(0,-1)),Fe=e=>am.test(e),hm=()=>!0,mm=e=>lm.test(e)&&!cm.test(e),wa=()=>!1,fm=e=>dm.test(e),pm=e=>um.test(e),gm=e=>!N(e)&&!P(e),xm=e=>vt(e,ka,wa),N=e=>ba.test(e),Ye=e=>vt(e,ja,mm),Ln=e=>vt(e,Sm,X),Ci=e=>vt(e,Sa,wa),ym=e=>vt(e,Ca,pm),Yt=e=>vt(e,Ea,fm),P=e=>va.test(e),jt=e=>wt(e,ja),bm=e=>wt(e,Cm),ki=e=>wt(e,Sa),vm=e=>wt(e,ka),wm=e=>wt(e,Ca),qt=e=>wt(e,Ea,!0),vt=(e,t,n)=>{const s=ba.exec(e);return s?s[1]?t(s[1]):n(s[2]):!1},wt=(e,t,n=!1)=>{const s=va.exec(e);return s?s[1]?t(s[1]):n:!1},Sa=e=>e==="position"||e==="percentage",Ca=e=>e==="image"||e==="url",ka=e=>e==="length"||e==="size"||e==="bg-size",ja=e=>e==="length",Sm=e=>e==="number",Cm=e=>e==="family-name",Ea=e=>e==="shadow",km=()=>{const e=ge("color"),t=ge("font"),n=ge("text"),s=ge("font-weight"),o=ge("tracking"),r=ge("leading"),i=ge("breakpoint"),l=ge("container"),c=ge("spacing"),d=ge("radius"),u=ge("shadow"),m=ge("inset-shadow"),f=ge("text-shadow"),p=ge("drop-shadow"),g=ge("blur"),x=ge("perspective"),v=ge("aspect"),E=ge("ease"),b=ge("animate"),S=()=>["auto","avoid","all","avoid-page","page","left","right","column"],w=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],C=()=>[...w(),P,N],A=()=>["auto","hidden","clip","visible","scroll"],j=()=>["auto","contain","none"],k=()=>[P,N,c],D=()=>[st,"full","auto",...k()],L=()=>[Ze,"none","subgrid",P,N],W=()=>["auto",{span:["full",Ze,P,N]},Ze,P,N],H=()=>[Ze,"auto",P,N],Ce=()=>["auto","min","max","fr",P,N],ne=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],te=()=>["start","end","center","stretch","center-safe","end-safe"],se=()=>["auto",...k()],z=()=>[st,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...k()],M=()=>[e,P,N],G=()=>[...w(),ki,Ci,{position:[P,N]}],Y=()=>["no-repeat",{repeat:["","x","y","space","round"]}],V=()=>["auto","cover","contain",vm,xm,{size:[P,N]}],q=()=>[Fn,jt,Ye],T=()=>["","none","full",d,P,N],F=()=>["",X,jt,Ye],Z=()=>["solid","dashed","dotted","double"],B=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],R=()=>[X,Fn,ki,Ci],_=()=>["","none",g,P,N],K=()=>["none",X,P,N],O=()=>["none",X,P,N],re=()=>[X,P,N],oe=()=>[st,"full",...k()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Fe],breakpoint:[Fe],color:[hm],container:[Fe],"drop-shadow":[Fe],ease:["in","out","in-out"],font:[gm],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Fe],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Fe],shadow:[Fe],spacing:["px",X],text:[Fe],"text-shadow":[Fe],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",st,N,P,v]}],container:["container"],columns:[{columns:[X,N,P,l]}],"break-after":[{"break-after":S()}],"break-before":[{"break-before":S()}],"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:A()}],"overflow-x":[{"overflow-x":A()}],"overflow-y":[{"overflow-y":A()}],overscroll:[{overscroll:j()}],"overscroll-x":[{"overscroll-x":j()}],"overscroll-y":[{"overscroll-y":j()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:D()}],"inset-x":[{"inset-x":D()}],"inset-y":[{"inset-y":D()}],start:[{start:D()}],end:[{end:D()}],top:[{top:D()}],right:[{right:D()}],bottom:[{bottom:D()}],left:[{left:D()}],visibility:["visible","invisible","collapse"],z:[{z:[Ze,"auto",P,N]}],basis:[{basis:[st,"full","auto",l,...k()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[X,st,"auto","initial","none",N]}],grow:[{grow:["",X,P,N]}],shrink:[{shrink:["",X,P,N]}],order:[{order:[Ze,"first","last","none",P,N]}],"grid-cols":[{"grid-cols":L()}],"col-start-end":[{col:W()}],"col-start":[{"col-start":H()}],"col-end":[{"col-end":H()}],"grid-rows":[{"grid-rows":L()}],"row-start-end":[{row:W()}],"row-start":[{"row-start":H()}],"row-end":[{"row-end":H()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":Ce()}],"auto-rows":[{"auto-rows":Ce()}],gap:[{gap:k()}],"gap-x":[{"gap-x":k()}],"gap-y":[{"gap-y":k()}],"justify-content":[{justify:[...ne(),"normal"]}],"justify-items":[{"justify-items":[...te(),"normal"]}],"justify-self":[{"justify-self":["auto",...te()]}],"align-content":[{content:["normal",...ne()]}],"align-items":[{items:[...te(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...te(),{baseline:["","last"]}]}],"place-content":[{"place-content":ne()}],"place-items":[{"place-items":[...te(),"baseline"]}],"place-self":[{"place-self":["auto",...te()]}],p:[{p:k()}],px:[{px:k()}],py:[{py:k()}],ps:[{ps:k()}],pe:[{pe:k()}],pt:[{pt:k()}],pr:[{pr:k()}],pb:[{pb:k()}],pl:[{pl:k()}],m:[{m:se()}],mx:[{mx:se()}],my:[{my:se()}],ms:[{ms:se()}],me:[{me:se()}],mt:[{mt:se()}],mr:[{mr:se()}],mb:[{mb:se()}],ml:[{ml:se()}],"space-x":[{"space-x":k()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":k()}],"space-y-reverse":["space-y-reverse"],size:[{size:z()}],w:[{w:[l,"screen",...z()]}],"min-w":[{"min-w":[l,"screen","none",...z()]}],"max-w":[{"max-w":[l,"screen","none","prose",{screen:[i]},...z()]}],h:[{h:["screen","lh",...z()]}],"min-h":[{"min-h":["screen","lh","none",...z()]}],"max-h":[{"max-h":["screen","lh",...z()]}],"font-size":[{text:["base",n,jt,Ye]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[s,P,Ln]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Fn,N]}],"font-family":[{font:[bm,N,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:[o,P,N]}],"line-clamp":[{"line-clamp":[X,"none",P,Ln]}],leading:[{leading:[r,...k()]}],"list-image":[{"list-image":["none",P,N]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",P,N]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:M()}],"text-color":[{text:M()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...Z(),"wavy"]}],"text-decoration-thickness":[{decoration:[X,"from-font","auto",P,Ye]}],"text-decoration-color":[{decoration:M()}],"underline-offset":[{"underline-offset":[X,"auto",P,N]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:k()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",P,N]}],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",P,N]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:G()}],"bg-repeat":[{bg:Y()}],"bg-size":[{bg:V()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Ze,P,N],radial:["",P,N],conic:[Ze,P,N]},wm,ym]}],"bg-color":[{bg:M()}],"gradient-from-pos":[{from:q()}],"gradient-via-pos":[{via:q()}],"gradient-to-pos":[{to:q()}],"gradient-from":[{from:M()}],"gradient-via":[{via:M()}],"gradient-to":[{to:M()}],rounded:[{rounded:T()}],"rounded-s":[{"rounded-s":T()}],"rounded-e":[{"rounded-e":T()}],"rounded-t":[{"rounded-t":T()}],"rounded-r":[{"rounded-r":T()}],"rounded-b":[{"rounded-b":T()}],"rounded-l":[{"rounded-l":T()}],"rounded-ss":[{"rounded-ss":T()}],"rounded-se":[{"rounded-se":T()}],"rounded-ee":[{"rounded-ee":T()}],"rounded-es":[{"rounded-es":T()}],"rounded-tl":[{"rounded-tl":T()}],"rounded-tr":[{"rounded-tr":T()}],"rounded-br":[{"rounded-br":T()}],"rounded-bl":[{"rounded-bl":T()}],"border-w":[{border:F()}],"border-w-x":[{"border-x":F()}],"border-w-y":[{"border-y":F()}],"border-w-s":[{"border-s":F()}],"border-w-e":[{"border-e":F()}],"border-w-t":[{"border-t":F()}],"border-w-r":[{"border-r":F()}],"border-w-b":[{"border-b":F()}],"border-w-l":[{"border-l":F()}],"divide-x":[{"divide-x":F()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":F()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...Z(),"hidden","none"]}],"divide-style":[{divide:[...Z(),"hidden","none"]}],"border-color":[{border:M()}],"border-color-x":[{"border-x":M()}],"border-color-y":[{"border-y":M()}],"border-color-s":[{"border-s":M()}],"border-color-e":[{"border-e":M()}],"border-color-t":[{"border-t":M()}],"border-color-r":[{"border-r":M()}],"border-color-b":[{"border-b":M()}],"border-color-l":[{"border-l":M()}],"divide-color":[{divide:M()}],"outline-style":[{outline:[...Z(),"none","hidden"]}],"outline-offset":[{"outline-offset":[X,P,N]}],"outline-w":[{outline:["",X,jt,Ye]}],"outline-color":[{outline:M()}],shadow:[{shadow:["","none",u,qt,Yt]}],"shadow-color":[{shadow:M()}],"inset-shadow":[{"inset-shadow":["none",m,qt,Yt]}],"inset-shadow-color":[{"inset-shadow":M()}],"ring-w":[{ring:F()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:M()}],"ring-offset-w":[{"ring-offset":[X,Ye]}],"ring-offset-color":[{"ring-offset":M()}],"inset-ring-w":[{"inset-ring":F()}],"inset-ring-color":[{"inset-ring":M()}],"text-shadow":[{"text-shadow":["none",f,qt,Yt]}],"text-shadow-color":[{"text-shadow":M()}],opacity:[{opacity:[X,P,N]}],"mix-blend":[{"mix-blend":[...B(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":B()}],"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":[X]}],"mask-image-linear-from-pos":[{"mask-linear-from":R()}],"mask-image-linear-to-pos":[{"mask-linear-to":R()}],"mask-image-linear-from-color":[{"mask-linear-from":M()}],"mask-image-linear-to-color":[{"mask-linear-to":M()}],"mask-image-t-from-pos":[{"mask-t-from":R()}],"mask-image-t-to-pos":[{"mask-t-to":R()}],"mask-image-t-from-color":[{"mask-t-from":M()}],"mask-image-t-to-color":[{"mask-t-to":M()}],"mask-image-r-from-pos":[{"mask-r-from":R()}],"mask-image-r-to-pos":[{"mask-r-to":R()}],"mask-image-r-from-color":[{"mask-r-from":M()}],"mask-image-r-to-color":[{"mask-r-to":M()}],"mask-image-b-from-pos":[{"mask-b-from":R()}],"mask-image-b-to-pos":[{"mask-b-to":R()}],"mask-image-b-from-color":[{"mask-b-from":M()}],"mask-image-b-to-color":[{"mask-b-to":M()}],"mask-image-l-from-pos":[{"mask-l-from":R()}],"mask-image-l-to-pos":[{"mask-l-to":R()}],"mask-image-l-from-color":[{"mask-l-from":M()}],"mask-image-l-to-color":[{"mask-l-to":M()}],"mask-image-x-from-pos":[{"mask-x-from":R()}],"mask-image-x-to-pos":[{"mask-x-to":R()}],"mask-image-x-from-color":[{"mask-x-from":M()}],"mask-image-x-to-color":[{"mask-x-to":M()}],"mask-image-y-from-pos":[{"mask-y-from":R()}],"mask-image-y-to-pos":[{"mask-y-to":R()}],"mask-image-y-from-color":[{"mask-y-from":M()}],"mask-image-y-to-color":[{"mask-y-to":M()}],"mask-image-radial":[{"mask-radial":[P,N]}],"mask-image-radial-from-pos":[{"mask-radial-from":R()}],"mask-image-radial-to-pos":[{"mask-radial-to":R()}],"mask-image-radial-from-color":[{"mask-radial-from":M()}],"mask-image-radial-to-color":[{"mask-radial-to":M()}],"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":w()}],"mask-image-conic-pos":[{"mask-conic":[X]}],"mask-image-conic-from-pos":[{"mask-conic-from":R()}],"mask-image-conic-to-pos":[{"mask-conic-to":R()}],"mask-image-conic-from-color":[{"mask-conic-from":M()}],"mask-image-conic-to-color":[{"mask-conic-to":M()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:G()}],"mask-repeat":[{mask:Y()}],"mask-size":[{mask:V()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",P,N]}],filter:[{filter:["","none",P,N]}],blur:[{blur:_()}],brightness:[{brightness:[X,P,N]}],contrast:[{contrast:[X,P,N]}],"drop-shadow":[{"drop-shadow":["","none",p,qt,Yt]}],"drop-shadow-color":[{"drop-shadow":M()}],grayscale:[{grayscale:["",X,P,N]}],"hue-rotate":[{"hue-rotate":[X,P,N]}],invert:[{invert:["",X,P,N]}],saturate:[{saturate:[X,P,N]}],sepia:[{sepia:["",X,P,N]}],"backdrop-filter":[{"backdrop-filter":["","none",P,N]}],"backdrop-blur":[{"backdrop-blur":_()}],"backdrop-brightness":[{"backdrop-brightness":[X,P,N]}],"backdrop-contrast":[{"backdrop-contrast":[X,P,N]}],"backdrop-grayscale":[{"backdrop-grayscale":["",X,P,N]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[X,P,N]}],"backdrop-invert":[{"backdrop-invert":["",X,P,N]}],"backdrop-opacity":[{"backdrop-opacity":[X,P,N]}],"backdrop-saturate":[{"backdrop-saturate":[X,P,N]}],"backdrop-sepia":[{"backdrop-sepia":["",X,P,N]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":k()}],"border-spacing-x":[{"border-spacing-x":k()}],"border-spacing-y":[{"border-spacing-y":k()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",P,N]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[X,"initial",P,N]}],ease:[{ease:["linear","initial",E,P,N]}],delay:[{delay:[X,P,N]}],animate:[{animate:["none",b,P,N]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[x,P,N]}],"perspective-origin":[{"perspective-origin":C()}],rotate:[{rotate:K()}],"rotate-x":[{"rotate-x":K()}],"rotate-y":[{"rotate-y":K()}],"rotate-z":[{"rotate-z":K()}],scale:[{scale:O()}],"scale-x":[{"scale-x":O()}],"scale-y":[{"scale-y":O()}],"scale-z":[{"scale-z":O()}],"scale-3d":["scale-3d"],skew:[{skew:re()}],"skew-x":[{"skew-x":re()}],"skew-y":[{"skew-y":re()}],transform:[{transform:[P,N,"","none","gpu","cpu"]}],"transform-origin":[{origin:C()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:oe()}],"translate-x":[{"translate-x":oe()}],"translate-y":[{"translate-y":oe()}],"translate-z":[{"translate-z":oe()}],"translate-none":["translate-none"],accent:[{accent:M()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:M()}],"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",P,N]}],"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":k()}],"scroll-mx":[{"scroll-mx":k()}],"scroll-my":[{"scroll-my":k()}],"scroll-ms":[{"scroll-ms":k()}],"scroll-me":[{"scroll-me":k()}],"scroll-mt":[{"scroll-mt":k()}],"scroll-mr":[{"scroll-mr":k()}],"scroll-mb":[{"scroll-mb":k()}],"scroll-ml":[{"scroll-ml":k()}],"scroll-p":[{"scroll-p":k()}],"scroll-px":[{"scroll-px":k()}],"scroll-py":[{"scroll-py":k()}],"scroll-ps":[{"scroll-ps":k()}],"scroll-pe":[{"scroll-pe":k()}],"scroll-pt":[{"scroll-pt":k()}],"scroll-pr":[{"scroll-pr":k()}],"scroll-pb":[{"scroll-pb":k()}],"scroll-pl":[{"scroll-pl":k()}],"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",P,N]}],fill:[{fill:["none",...M()]}],"stroke-w":[{stroke:[X,jt,Ye,Ln]}],stroke:[{stroke:["none",...M()]}],"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"]}},jm=im(km);function $(...e){return jm(cl.clsx(e))}function Em(e,t){return{id:e.streamInfo.id,timestamp:e.streamInfo.timestamp,message:e.text,from:e.participantInfo.identity===t.localParticipant.identity?t.localParticipant:Array.from(t.remoteParticipants.values()).find(n=>n.identity===e.participantInfo.identity)}}const Am=un.cva(["relative w-full rounded-lg border px-4 py-3 text-sm grid grid-cols-[0_1fr] gap-y-0.5 items-start","has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] has-[>svg]:gap-x-3 [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current"],{variants:{variant:{default:"bg-card text-card-foreground",destructive:["text-destructive-foreground bg-destructive border-destructive-border","[&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/90"]}},defaultVariants:{variant:"default"}});function Mm({className:e,variant:t,...n}){return a.jsx("div",{"data-slot":"alert",role:"alert",className:$(Am({variant:t}),e),...n})}function Tm({className:e,...t}){return a.jsx("div",{"data-slot":"alert-title",className:$("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",e),...t})}function Vm({className:e,...t}){return a.jsx("div",{"data-slot":"alert-description",className:$("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",e),...t})}function Xt(e){return Bi.toast.custom(t=>a.jsx(Nm,{id:t,title:e.title,description:e.description}),{duration:1e4})}function Nm(e){const{title:t,id:n,description:s}=e;return a.jsxs(Mm,{onClick:()=>Bi.toast.dismiss(n),className:"bg-gradient-to-br from-[#181825] to-[#232336] border border-[#232336] shadow-lg shadow-black/40 rounded-xl px-4 py-3 flex items-start gap-3 hover:shadow-xl transition-all duration-200",style:{color:"#F3F4F6"},children:[a.jsx(ll.WarningIcon,{weight:"bold",className:"text-yellow-400 mt-1 flex-shrink-0",size:24}),a.jsxs("div",{className:"flex flex-col",children:[a.jsx(Tm,{className:"text-base font-semibold text-white mb-1",children:t}),a.jsx(Vm,{className:"text-sm text-gray-300 leading-snug",children:s})]})]})}const Ne=h.forwardRef((e,t)=>{const{alt:n,color:s="currentColor",size:o="1em",weight:r="regular",mirrored:i=!1,children:l,weights:c,...d}=e;return h.createElement("svg",{ref:t,xmlns:"http://www.w3.org/2000/svg",width:o,height:o,fill:s,viewBox:"0 0 256 256",transform:i?"scale(-1, 1)":void 0,...d},!!n&&h.createElement("title",null,n),l,c.get(r))});Ne.displayName="SSRBase";const Pm=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,96l-80,80L48,96Z",opacity:"0.2"}),h.createElement("path",{d:"M215.39,92.94A8,8,0,0,0,208,88H48a8,8,0,0,0-5.66,13.66l80,80a8,8,0,0,0,11.32,0l80-80A8,8,0,0,0,215.39,92.94ZM128,164.69,67.31,104H188.69Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,48,88H208a8,8,0,0,1,5.66,13.66Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,100.24l-80,80a6,6,0,0,1-8.48,0l-80-80a6,6,0,0,1,8.48-8.48L128,167.51l75.76-75.75a6,6,0,0,1,8.48,8.48Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,98.83l-80,80a4,4,0,0,1-5.66,0l-80-80a4,4,0,0,1,5.66-5.66L128,170.34l77.17-77.17a4,4,0,1,1,5.66,5.66Z"}))]]),Xs=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Pm}));Xs.displayName="CaretDownIcon";const Rm=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216.49,168.49a12,12,0,0,1-17,0L128,97,56.49,168.49a12,12,0,0,1-17-17l80-80a12,12,0,0,1,17,0l80,80A12,12,0,0,1,216.49,168.49Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,160H48l80-80Z",opacity:"0.2"}),h.createElement("path",{d:"M213.66,154.34l-80-80a8,8,0,0,0-11.32,0l-80,80A8,8,0,0,0,48,168H208a8,8,0,0,0,5.66-13.66ZM67.31,152,128,91.31,188.69,152Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M215.39,163.06A8,8,0,0,1,208,168H48a8,8,0,0,1-5.66-13.66l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,215.39,163.06Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.24,164.24a6,6,0,0,1-8.48,0L128,88.49,52.24,164.24a6,6,0,0,1-8.48-8.48l80-80a6,6,0,0,1,8.48,0l80,80A6,6,0,0,1,212.24,164.24Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.66,165.66a8,8,0,0,1-11.32,0L128,91.31,53.66,165.66a8,8,0,0,1-11.32-11.32l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,213.66,165.66Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M210.83,162.83a4,4,0,0,1-5.66,0L128,85.66,50.83,162.83a4,4,0,0,1-5.66-5.66l80-80a4,4,0,0,1,5.66,0l80,80A4,4,0,0,1,210.83,162.83Z"}))]]),Aa=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Rm}));Aa.displayName="CaretUpIcon";const Im=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,44H40A20,20,0,0,0,20,64V224A19.82,19.82,0,0,0,31.56,242.1a20.14,20.14,0,0,0,8.49,1.9,19.91,19.91,0,0,0,12.82-4.72l.12-.11L84.47,212H216a20,20,0,0,0,20-20V64A20,20,0,0,0,216,44Zm-4,144H80a11.93,11.93,0,0,0-7.84,2.92L44,215.23V68H212ZM84,108A12,12,0,0,1,96,96h64a12,12,0,1,1,0,24H96A12,12,0,0,1,84,108Zm0,40a12,12,0,0,1,12-12h64a12,12,0,0,1,0,24H96A12,12,0,0,1,84,148Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,64V192a8,8,0,0,1-8,8H80L45.15,230.11A8,8,0,0,1,32,224V64a8,8,0,0,1,8-8H216A8,8,0,0,1,224,64Z",opacity:"0.2"}),h.createElement("path",{d:"M216,48H40A16,16,0,0,0,24,64V224a15.85,15.85,0,0,0,9.24,14.5A16.13,16.13,0,0,0,40,240a15.89,15.89,0,0,0,10.25-3.78l.09-.07L83,208H216a16,16,0,0,0,16-16V64A16,16,0,0,0,216,48ZM40,224h0ZM216,192H80a8,8,0,0,0-5.23,1.95L40,224V64H216ZM88,112a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,112Zm0,32a8,8,0,0,1,8-8h64a8,8,0,1,1,0,16H96A8,8,0,0,1,88,144Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,48H40A16,16,0,0,0,24,64V224a15.84,15.84,0,0,0,9.25,14.5A16.05,16.05,0,0,0,40,240a15.89,15.89,0,0,0,10.25-3.78l.09-.07L83,208H216a16,16,0,0,0,16-16V64A16,16,0,0,0,216,48ZM160,152H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Zm0-32H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,50H40A14,14,0,0,0,26,64V224a13.88,13.88,0,0,0,8.09,12.69A14.11,14.11,0,0,0,40,238a13.87,13.87,0,0,0,9-3.31l.06-.05L82.23,206H216a14,14,0,0,0,14-14V64A14,14,0,0,0,216,50Zm2,142a2,2,0,0,1-2,2H80a6,6,0,0,0-3.92,1.46L41.26,225.53A2,2,0,0,1,38,224V64a2,2,0,0,1,2-2H216a2,2,0,0,1,2,2Zm-52-80a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,112Zm0,32a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,144Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,48H40A16,16,0,0,0,24,64V224a15.85,15.85,0,0,0,9.24,14.5A16.13,16.13,0,0,0,40,240a15.89,15.89,0,0,0,10.25-3.78l.09-.07L83,208H216a16,16,0,0,0,16-16V64A16,16,0,0,0,216,48ZM40,224h0ZM216,192H80a8,8,0,0,0-5.23,1.95L40,224V64H216ZM88,112a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,112Zm0,32a8,8,0,0,1,8-8h64a8,8,0,1,1,0,16H96A8,8,0,0,1,88,144Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,52H40A12,12,0,0,0,28,64V224a11.89,11.89,0,0,0,6.93,10.88A12.17,12.17,0,0,0,40,236a11.89,11.89,0,0,0,7.69-2.83l0,0L81.49,204H216a12,12,0,0,0,12-12V64A12,12,0,0,0,216,52Zm4,140a4,4,0,0,1-4,4H80a4,4,0,0,0-2.62,1L42.56,227.06A4,4,0,0,1,36,224V64a4,4,0,0,1,4-4H216a4,4,0,0,1,4,4Zm-56-80a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,112Zm0,32a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,144Z"}))]]),Ma=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Im}));Ma.displayName="ChatTextIcon";const Dm=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z",opacity:"0.2"}),h.createElement("path",{d:"M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z"}))]]),Ta=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Dm}));Ta.displayName="CheckIcon";const Fm=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,180a52.06,52.06,0,0,0,52-52V64A52,52,0,0,0,76,64v64A52.06,52.06,0,0,0,128,180ZM100,64a28,28,0,0,1,56,0v64a28,28,0,0,1-56,0Zm40,155.22V240a12,12,0,0,1-24,0V219.22A92.14,92.14,0,0,1,36,128a12,12,0,0,1,24,0,68,68,0,0,0,136,0,12,12,0,0,1,24,0A92.14,92.14,0,0,1,140,219.22Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z",opacity:"0.2"}),h.createElement("path",{d:"M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M80,128V64a48,48,0,0,1,96,0v64a48,48,0,0,1-96,0Zm128,0a8,8,0,0,0-16,0,64,64,0,0,1-128,0,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.6A80.11,80.11,0,0,0,208,128Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,174a46.06,46.06,0,0,0,46-46V64a46,46,0,0,0-92,0v64A46.06,46.06,0,0,0,128,174ZM94,64a34,34,0,0,1,68,0v64a34,34,0,0,1-68,0Zm40,141.75V240a6,6,0,0,1-12,0V205.75A78.09,78.09,0,0,1,50,128a6,6,0,0,1,12,0,66,66,0,0,0,132,0,6,6,0,0,1,12,0A78.09,78.09,0,0,1,134,205.75Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M128,172a44.05,44.05,0,0,0,44-44V64a44,44,0,0,0-88,0v64A44.05,44.05,0,0,0,128,172ZM92,64a36,36,0,0,1,72,0v64a36,36,0,0,1-72,0Zm40,139.89V240a4,4,0,0,1-8,0V203.89A76.09,76.09,0,0,1,52,128a4,4,0,0,1,8,0,68,68,0,0,0,136,0,4,4,0,0,1,8,0A76.09,76.09,0,0,1,132,203.89Z"}))]]),Va=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Fm}));Va.displayName="MicrophoneIcon";const Lm=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M56.88,39.93A12,12,0,1,0,39.12,56.07L76,96.64V128a52,52,0,0,0,72.11,48l11.26,12.39A67.34,67.34,0,0,1,128,196a68.07,68.07,0,0,1-68-68,12,12,0,0,0-24,0,92.14,92.14,0,0,0,80,91.22V240a12,12,0,0,0,24,0V219.23a90.39,90.39,0,0,0,35.92-12.68l23.2,25.52a12,12,0,0,0,17.76-16.14ZM128,156a28,28,0,0,1-28-28v-5l29.9,32.89C129.27,156,128.64,156,128,156Zm63-2.42A67.63,67.63,0,0,0,196,128a12,12,0,0,1,24,0,91.48,91.48,0,0,1-6.74,34.61,12,12,0,0,1-22.23-9ZM85.7,33.75A52,52,0,0,1,180,64v56.54a12,12,0,0,1-24,0V64a28,28,0,0,0-50.79-16.28,12,12,0,0,1-19.51-14Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z",opacity:"0.2"}),h.createElement("path",{d:"M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.38,229.92a8,8,0,0,1-11.3-.54l-30.92-34A78.83,78.83,0,0,1,136,207.59V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64.07,64.07,0,0,0,64,64,63.41,63.41,0,0,0,32.21-8.68l-11.1-12.2A48,48,0,0,1,80,128V95.09L42.08,53.38A8,8,0,0,1,53.92,42.62l160,176A8,8,0,0,1,213.38,229.92Zm-24.19-63.13a7.88,7.88,0,0,0,3.51.82,8,8,0,0,0,7.19-4.49A79.16,79.16,0,0,0,208,128a8,8,0,0,0-16,0,63.32,63.32,0,0,1-6.48,28.09A8,8,0,0,0,189.19,166.79Zm-27.33-29.22A8,8,0,0,0,175.74,133a49.49,49.49,0,0,0,.26-5V64A48,48,0,0,0,84,44.87a8,8,0,0,0,1.41,8.57Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M212.44,220,52.44,44A6,6,0,0,0,43.56,52L82,94.32V128a46,46,0,0,0,67.56,40.64l13.75,15.12A65.26,65.26,0,0,1,128,194a66.08,66.08,0,0,1-66-66,6,6,0,0,0-12,0,78.09,78.09,0,0,0,72,77.75V240a6,6,0,0,0,12,0V205.77a76.93,76.93,0,0,0,37.48-13L203.56,228a6,6,0,0,0,8.88-8.08ZM128,162a34,34,0,0,1-34-34V107.52l47.12,51.84A33.82,33.82,0,0,1,128,162Zm59.32-5A65.38,65.38,0,0,0,194,128a6,6,0,0,1,12,0,77.33,77.33,0,0,1-7.9,34.25A6,6,0,1,1,187.32,157ZM85.8,45.67A46,46,0,0,1,174,64v64a45.17,45.17,0,0,1-.25,4.81,6,6,0,0,1-6,5.38q-.31,0-.63,0a6,6,0,0,1-5.34-6.59A35.41,35.41,0,0,0,162,128V64A34,34,0,0,0,96.8,50.45a6,6,0,0,1-11-4.78Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M211,221.31,51,45.31A4,4,0,0,0,45,50.69L84,93.55V128a44,44,0,0,0,66,38.12l16.38,18A67.21,67.21,0,0,1,128,196a68.07,68.07,0,0,1-68-68,4,4,0,0,0-8,0,76.09,76.09,0,0,0,72,75.89V240a4,4,0,0,0,8,0V203.89a75.1,75.1,0,0,0,39.79-13.77L205,226.69a4,4,0,1,0,5.92-5.38ZM128,164a36,36,0,0,1-36-36V102.35L144.43,160A35.83,35.83,0,0,1,128,164Zm61.12-6.15A67.44,67.44,0,0,0,196,128a4,4,0,0,1,8,0,75.28,75.28,0,0,1-7.7,33.37,4,4,0,0,1-7.18-3.52ZM87.63,46.46A44,44,0,0,1,172,64v64a44.2,44.2,0,0,1-.24,4.61,4,4,0,0,1-4,3.58l-.42,0a4,4,0,0,1-3.57-4.39A36.67,36.67,0,0,0,164,128V64A36,36,0,0,0,95,49.66a4,4,0,0,1-7.34-3.2Z"}))]]),Na=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Lm}));Na.displayName="MicrophoneSlashIcon";const Bm=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,36H48A28,28,0,0,0,20,64V176a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V64A28,28,0,0,0,208,36Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Zm-40,52a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,228ZM160.49,103.51a12,12,0,0,1-17,17L140,117v35a12,12,0,0,1-24,0V117l-3.51,3.52a12,12,0,0,1-17-17l24-24a12,12,0,0,1,17,0Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,64V176a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V64A16,16,0,0,1,48,48H208A16,16,0,0,1,224,64Z",opacity:"0.2"}),h.createElement("path",{d:"M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM157.66,106.34a8,8,0,0,1-11.32,11.32L136,107.31V152a8,8,0,0,1-16,0V107.31l-10.34,10.35a8,8,0,0,1-11.32-11.32l24-24a8,8,0,0,1,11.32,0Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M168,224a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM232,64V176a24,24,0,0,1-24,24H48a24,24,0,0,1-24-24V64A24,24,0,0,1,48,40H208A24,24,0,0,1,232,64Zm-74.34,42.34-24-24a8,8,0,0,0-11.32,0l-24,24a8,8,0,0,0,11.32,11.32L120,107.31V152a8,8,0,0,0,16,0V107.31l10.34,10.35a8,8,0,0,0,11.32-11.32Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,42H48A22,22,0,0,0,26,64V176a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V64A22,22,0,0,0,208,42Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V64A10,10,0,0,1,48,54H208a10,10,0,0,1,10,10Zm-52,48a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,224Zm-9.76-116.24a6,6,0,1,1-8.48,8.48L134,102.49V152a6,6,0,0,1-12,0V102.49l-13.76,13.75a6,6,0,0,1-8.48-8.48l24-24a6,6,0,0,1,8.48,0Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM157.66,106.34a8,8,0,0,1-11.32,11.32L136,107.31V152a8,8,0,0,1-16,0V107.31l-10.34,10.35a8,8,0,0,1-11.32-11.32l24-24a8,8,0,0,1,11.32,0Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M208,44H48A20,20,0,0,0,28,64V176a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V64A20,20,0,0,0,208,44Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V64A12,12,0,0,1,48,52H208a12,12,0,0,1,12,12Zm-56,48a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,224Zm-9.17-114.83a4,4,0,0,1-5.66,5.66L132,97.66V152a4,4,0,0,1-8,0V97.66l-17.17,17.17a4,4,0,0,1-5.66-5.66l24-24a4,4,0,0,1,5.66,0Z"}))]]),Pa=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Bm}));Pa.displayName="MonitorArrowUpIcon";const $m=new Map([["bold",h.createElement(h.Fragment,null,h.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",h.createElement(h.Fragment,null,h.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),h.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",h.createElement(h.Fragment,null,h.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",h.createElement(h.Fragment,null,h.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",h.createElement(h.Fragment,null,h.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",h.createElement(h.Fragment,null,h.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"}))]]),Js=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:$m}));Js.displayName="SpinnerIcon";const Om=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M249.45,69.31a12,12,0,0,0-12.51,1L212,88.43V72a20,20,0,0,0-20-20H32A20,20,0,0,0,12,72V184a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V167.57l24.94,18.14A12,12,0,0,0,256,176V80A12,12,0,0,0,249.45,69.31ZM188,180H36V76H188Zm44-27.57-20-14.54V118.11l20-14.54Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200,72V184a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V72a8,8,0,0,1,8-8H192A8,8,0,0,1,200,72Z",opacity:"0.2"}),h.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M192,72V184a16,16,0,0,1-16,16H32a16,16,0,0,1-16-16V72A16,16,0,0,1,32,56H176A16,16,0,0,1,192,72Zm58,.25a8.23,8.23,0,0,0-6.63,1.22L209.78,95.86A4,4,0,0,0,208,99.19v57.62a4,4,0,0,0,1.78,3.33l33.78,22.52a8,8,0,0,0,8.58.19,8.33,8.33,0,0,0,3.86-7.17V80A8,8,0,0,0,250,72.25Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M250.83,74.71a6,6,0,0,0-6.16.3L206,100.79V72a14,14,0,0,0-14-14H32A14,14,0,0,0,18,72V184a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V155.21L244.67,181a6,6,0,0,0,9.33-5V80A6,6,0,0,0,250.83,74.71ZM194,184a2,2,0,0,1-2,2H32a2,2,0,0,1-2-2V72a2,2,0,0,1,2-2H192a2,2,0,0,1,2,2Zm48-19.21-36-24V115.21l36-24Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M249.89,76.47a4,4,0,0,0-4.11.2L204,104.53V72a12,12,0,0,0-12-12H32A12,12,0,0,0,20,72V184a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V151.47l41.78,27.86A4,4,0,0,0,252,176V80A4,4,0,0,0,249.89,76.47ZM196,184a4,4,0,0,1-4,4H32a4,4,0,0,1-4-4V72a4,4,0,0,1,4-4H192a4,4,0,0,1,4,4Zm48-15.47-40-26.67V114.14l40-26.67Z"}))]]),Ra=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:Om}));Ra.displayName="VideoCameraIcon";const _m=new Map([["bold",h.createElement(h.Fragment,null,h.createElement("path",{d:"M249.45,69.31a12,12,0,0,0-12.51,1L212,88.43V72a20,20,0,0,0-20-20H123.88a12,12,0,0,0,0,24H188v68a12,12,0,0,0,4.46,9.33c.15.13.31.25.48.38l44,32A12,12,0,0,0,256,176V80A12,12,0,0,0,249.45,69.31ZM232,152.43l-20-14.54V118.11l20-14.54ZM56.88,31.93A12,12,0,1,0,39.12,48.07L42.69,52H32A20,20,0,0,0,12,72V184a20,20,0,0,0,20,20H180.87l18.25,20.07a12,12,0,0,0,17.76-16.14ZM36,180V76H64.51l94.55,104Z"}))],["duotone",h.createElement(h.Fragment,null,h.createElement("path",{d:"M200,72V184a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V72a8,8,0,0,1,8-8H192A8,8,0,0,1,200,72Z",opacity:"0.2"}),h.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H113.06a8,8,0,0,0,0,16H192v87.63a8,8,0,0,0,16,0V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM240,161.05l-32-21.33V116.28L240,95ZM53.92,34.62A8,8,0,1,0,42.08,45.38L51.73,56H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H182.64l19.44,21.38a8,8,0,1,0,11.84-10.76ZM32,184V72H66.28L168.1,184Z"}))],["fill",h.createElement(h.Fragment,null,h.createElement("path",{d:"M256,80.23v95.45a8.33,8.33,0,0,1-3.86,7.17,8,8,0,0,1-8.58-.19l-33.78-22.52a4,4,0,0,1-1.78-3.33V99.19a4,4,0,0,1,1.78-3.32l33.78-22.53a8,8,0,0,1,9.73.66A8.23,8.23,0,0,1,256,80.23ZM53.92,34.62A8,8,0,1,0,42.08,45.38L51.73,56H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H182.64l19.44,21.38a8,8,0,1,0,11.84-10.76ZM185,155.07a4,4,0,0,0,7-2.7V72a16,16,0,0,0-16-16H104a4,4,0,0,0-3,6.69Z"}))],["light",h.createElement(h.Fragment,null,h.createElement("path",{d:"M250.83,74.71a6,6,0,0,0-6.16.3L206,100.79V72a14,14,0,0,0-14-14H113.06a6,6,0,0,0,0,12H192a2,2,0,0,1,2,2v87.63a6,6,0,0,0,12,0v-4.42L244.67,181a6,6,0,0,0,9.33-5V80A6,6,0,0,0,250.83,74.71ZM242,164.79l-36-24V115.21l36-24ZM52.44,36A6,6,0,0,0,43.56,44L56.25,58H32A14,14,0,0,0,18,72V184a14,14,0,0,0,14,14H183.53l20,22a6,6,0,0,0,8.88-8.08ZM32,186a2,2,0,0,1-2-2V72a2,2,0,0,1,2-2H67.16L172.62,186Z"}))],["regular",h.createElement(h.Fragment,null,h.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H113.06a8,8,0,0,0,0,16H192v87.63a8,8,0,0,0,16,0V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM240,161.05l-32-21.33V116.28L240,95ZM53.92,34.62A8,8,0,1,0,42.08,45.38L51.73,56H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H182.64l19.44,21.38a8,8,0,1,0,11.84-10.76ZM32,184V72H66.28L168.1,184Z"}))],["thin",h.createElement(h.Fragment,null,h.createElement("path",{d:"M249.89,76.47a4,4,0,0,0-4.11.2L204,104.53V72a12,12,0,0,0-12-12H113.06a4,4,0,0,0,0,8H192a4,4,0,0,1,4,4v87.63a4,4,0,0,0,8,0v-8.16l41.78,27.86A4,4,0,0,0,252,176V80A4,4,0,0,0,249.89,76.47ZM244,168.53l-40-26.67V114.14l40-26.67ZM51,37.31A4,4,0,0,0,45,42.69L60.78,60H32A12,12,0,0,0,20,72V184a12,12,0,0,0,12,12H184.41L205,218.69a4,4,0,1,0,5.92-5.38ZM32,188a4,4,0,0,1-4-4V72a4,4,0,0,1,4-4H68.05L177.14,188Z"}))]]),Ia=h.forwardRef((e,t)=>h.createElement(Ne,{ref:t,...e,weights:_m}));Ia.displayName="VideoCameraSlashIcon";function ji(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function Hm(...e){return t=>{let n=!1;const s=e.map(o=>{const r=ji(o,t);return!n&&typeof r=="function"&&(n=!0),r});if(n)return()=>{for(let o=0;o<s.length;o++){const r=s[o];typeof r=="function"?r():ji(e[o],null)}}}}function Zm(e){const t=zm(e),n=h.forwardRef((s,o)=>{const{children:r,...i}=s,l=h.Children.toArray(r),c=l.find(Km);if(c){const d=c.props.children,u=l.map(m=>m===c?h.Children.count(d)>1?h.Children.only(null):h.isValidElement(d)?d.props.children:null:m);return a.jsx(t,{...i,ref:o,children:h.isValidElement(d)?h.cloneElement(d,void 0,u):null})}return a.jsx(t,{...i,ref:o,children:r})});return n.displayName=`${e}.Slot`,n}var Um=Zm("Slot");function zm(e){const t=h.forwardRef((n,s)=>{const{children:o,...r}=n;if(h.isValidElement(o)){const i=Ym(o),l=Gm(r,o.props);return o.type!==h.Fragment&&(l.ref=s?Hm(s,i):i),h.cloneElement(o,l)}return h.Children.count(o)>1?h.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var Wm=Symbol("radix.slottable");function Km(e){return h.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===Wm}function Gm(e,t){const n={...t};for(const s in t){const o=e[s],r=t[s];/^on[A-Z]/.test(s)?o&&r?n[s]=(...l)=>{const c=r(...l);return o(...l),c}:o&&(n[s]=o):s==="style"?n[s]={...o,...r}:s==="className"&&(n[s]=[o,r].filter(Boolean).join(" "))}return{...e,...n}}function Ym(e){var s,o;let t=(s=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:s.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(o=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:o.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}const qm=un.cva(["text-xs font-bold tracking-wider uppercase whitespace-nowrap","inline-flex items-center justify-center gap-2 shrink-0 rounded-full cursor-pointer outline-none transition-colors duration-300","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","disabled:pointer-events-none disabled:opacity-50","aria-invalid:ring-destructive/20 aria-invalid:border-destructive dark:aria-invalid:ring-destructive/40 ","[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0"],{variants:{variant:{default:"bg-button text-button-foreground hover:bg-muted focus:bg-muted",destructive:["bg-destructive text-destructive-foreground","hover:bg-destructive-hover focus:bg-destructive-hover focus-visible:ring-destructive-foreground/20","dark:focus-visible:ring-destructive-foreground/40"],outline:["border bg-background","hover:bg-accent hover:text-accent-foreground","dark:bg-input/30 dark:border-input dark:hover:bg-input/50"],primary:"",secondary:"bg-secondary text-secondary-foregroun hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function Xm({className:e,variant:t,size:n,asChild:s=!1,...o}){const r=s?Um:"button";return a.jsx(r,{"data-slot":"button",className:$(qm({variant:t,size:n,className:e})),...o})}function Jm({onSend:e,className:t,disabled:n,...s}){const o=y.useRef(null),[r,i]=y.useState(""),l=d=>{var u,m;d.preventDefault(),(u=s.onSubmit)==null||u.call(s,d),e==null||e(r),i(""),(m=o.current)==null||m.focus({preventScroll:!0})},c=n||r.trim().length===0;return a.jsxs("form",{...s,onSubmit:l,className:$("flex items-center rounded-md pl-1 text-sm",t),children:[a.jsx("input",{ref:o,type:"text",className:"flex-1 focus:outline-none",placeholder:"Type something...",value:r,onChange:d=>i(d.target.value),disabled:n}),a.jsx(Xm,{size:"sm",type:"submit",variant:c?"secondary":"primary",disabled:c,className:"font-mono",children:"SEND"})]})}const Qm=un.cva(["inline-flex items-center justify-center gap-2 rounded-full","text-sm font-medium whitespace-nowrap","cursor-pointer outline-none transition-[color,border,background-color]","!focus:ring-0 !focus-visible:ring-0 !focus:border-none !focus-visible:border-none !ring-0 !border-none !outline-none","aria-invalid:ring-0 dark:aria-invalid:ring-0 aria-invalid:border-0","disabled:pointer-events-none disabled:opacity-50 disabled:not-allowed","data-[state=on]:bg-button-selected data-[state=on]:border-button-border-selected","[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0"],{variants:{variant:{default:"bg-button hover:bg-muted focus:bg-muted hover:text-muted-foreground focus:text-muted-foreground",primary:"text-fg1 bg-button hover:bg-button-hover focus:bg-button-hover data-[state=off]:bg-button-primary hover:data-[state=off]:bg-button-hover data-[state=off]:text-button-primary-foreground",secondary:"text-fg1 bg-button hover:bg-button-hover focus:bg-button-hover data-[state=on]:bg-button-secondary hover:data-[state=on]:bg-button-secondary data-[state=on]:text-button-secondary-foreground",outline:["border border-button-border bg-button text-button-foreground","hover:bg-background focus:bg-background"]},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}});function Da({className:e,variant:t,size:n,...s}){return a.jsx(ml.Root,{"data-slot":"toggle",className:$(Qm({variant:t,size:n,className:e})),...s})}function ef(e){const[t,n]=y.useState(()=>e.getPublishPermissions());return y.useEffect(()=>{const s=()=>{n(e.getPublishPermissions())},o=()=>{s()};return e.on("connection.connected",o),e.on("connection.disconnected",o),()=>{e.off("connection.connected",o),e.off("connection.disconnected",o)}},[e]),t}function tf(e){const[t,n]=y.useState(()=>e.getLocalParticipant()),[s,o]=y.useState(()=>e.getMicrophoneTrack());return y.useEffect(()=>{const r=()=>{const l=e.getLocalParticipant(),c=e.getMicrophoneTrack();console.log("🎤 useVoxketLocalParticipant: Updating state:",{hasParticipant:!!l,hasMicTrack:!!c,isMicEnabled:e.isMicrophoneEnabled,trackPublications:l?l.trackPublications.size:0}),n(l),o(c)};r(),e.on("connection.connected",r),e.on("connection.disconnected",r),e.on("track.muted",r),e.on("track.unmuted",r);const i=e.getRoom();if(i){const l=()=>{console.log("🎤 Track published, updating participant state"),r()},c=()=>{console.log("🎤 Track unpublished, updating participant state"),r()};return i.on("localTrackPublished",l),i.on("localTrackUnpublished",c),()=>{e.off("connection.connected",r),e.off("connection.disconnected",r),e.off("track.muted",r),e.off("track.unmuted",r),i.off("localTrackPublished",l),i.off("localTrackUnpublished",c)}}else return()=>{e.off("connection.connected",r),e.off("connection.disconnected",r),e.off("track.muted",r),e.off("track.unmuted",r)}},[e]),{localParticipant:t,microphoneTrack:s}}function Bn(e,t,n){const[s,o]=y.useState(!1),[r,i]=y.useState(!1);return y.useEffect(()=>{const c=()=>{let d=!1;switch(t){case"microphone":d=e.isMicrophoneEnabled;break;case"camera":d=e.isCameraEnabled;break;case"screenShare":d=e.isScreenShareEnabled;break}console.log(`useVoxketTrackToggle: ${t} enabled state updated to:`,d),o(d)};return c(),e.on("track.muted",c),e.on("track.unmuted",c),e.on("connection.connected",c),()=>{e.off("track.muted",c),e.off("track.unmuted",c),e.off("connection.connected",c)}},[e,t]),{enabled:s,pending:r,toggle:async c=>{var d;try{i(!0);const u=c!==void 0?c:!s;switch(t){case"microphone":await e.toggleMicrophone(u);break;case"camera":await e.toggleCamera(u);break;case"screenShare":u?await e.startScreenShare():await e.stopScreenShare();break}}catch(u){(d=n==null?void 0:n.onDeviceError)==null||d.call(n,u)}finally{i(!1)}}}}function nf(e){const[t,n]=y.useState(()=>e.getRoom()),[s,o]=y.useState(()=>e.getConnectionState());return y.useEffect(()=>{const r=()=>{n(e.getRoom()),o(e.getConnectionState())};return e.on("connection.connected",r),e.on("connection.disconnected",r),e.on("connection.connecting",r),()=>{e.off("connection.connected",r),e.off("connection.disconnected",r),e.off("connection.connecting",r)}},[e]),t}function sf(e,t){const[n,s]=y.useState([]),[o,r]=y.useState("");return y.useEffect(()=>{var d;const l=async()=>{try{const u=t==="audioinput"?await e.getAudioInputDevices():await e.getVideoInputDevices();s(u)}catch(u){console.error("Failed to load devices:",u)}};l();const c=()=>{l()};return(d=navigator.mediaDevices)==null||d.addEventListener("devicechange",c),()=>{var u;(u=navigator.mediaDevices)==null||u.removeEventListener("devicechange",c)}},[e,t]),{devices:n,activeDeviceId:o,setActiveMediaDevice:async l=>{try{t==="audioinput"?await e.setAudioInputDevice(l):await e.setVideoInputDevice(l),r(l)}catch(c){console.error("Failed to set device:",c)}}}}function of(e){const{preventSave:t=!1}=e||{};return{saveAudioInputEnabled:i=>{t||localStorage.setItem("voxket-audio-input-enabled",i.toString())},saveAudioInputDeviceId:i=>{t||localStorage.setItem("voxket-audio-input-device-id",i)},saveVideoInputEnabled:i=>{t||localStorage.setItem("voxket-video-input-enabled",i.toString())},saveVideoInputDeviceId:i=>{t||localStorage.setItem("voxket-video-input-device-id",i)}}}function Ei({...e}){return a.jsx(Ee.Root,{"data-slot":"select",...e})}function Ai({...e}){return a.jsx(Ee.Value,{"data-slot":"select-value",...e})}function Mi({className:e,size:t="default",children:n,...s}){return a.jsxs(Ee.Trigger,{"data-slot":"select-trigger","data-size":t,className:$(["flex w-fit cursor-pointer items-center justify-between gap-2","rounded-full px-3 py-2 text-sm whitespace-nowrap","bg-button transition-[color,border,background-color]","disabled:cursor-not-allowed disabled:opacity-50","hover:bg-muted hover:text-muted-foreground","!focus:ring-0 !focus-visible:ring-0 !focus:border-none !focus-visible:border-none !ring-0 !border-none !outline-none","aria-invalid:ring-0 dark:aria-invalid:ring-0","data-[placeholder]:text-muted-foreground","data-[size=default]:h-9 data-[size=sm]:h-8","*:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2","[&:not([class*='text-'])_svg:not([class*='text-'])]:text-muted-foreground","[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4"],e),...s,children:[n,a.jsx(Ee.Icon,{asChild:!0,children:a.jsx(Xs,{weight:"bold",className:"size-4 transition-colors"})})]})}function Ti({className:e,children:t,position:n="popper",...s}){return a.jsx(Ee.Portal,{children:a.jsxs(Ee.Content,{"data-slot":"select-content",className:$(["bg-[#18182a]/90 backdrop-blur-md text-white border border-[#23233a] shadow-2xl","relative z-50 overflow-x-hidden overflow-y-auto rounded-xl","max-h-(--radix-select-content-available-height) min-w-[8rem]","origin-(--radix-select-content-transform-origin)","data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95","data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95","data-[side=top]:slide-in-from-bottom-2","data-[side=right]:slide-in-from-left-2","data-[side=bottom]:slide-in-from-top-2","data-[side=left]:slide-in-from-right-2"],n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:n,...s,children:[a.jsx(rf,{}),a.jsx(Ee.Viewport,{className:$("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:t}),a.jsx(af,{})]})})}function Vi({className:e,children:t,...n}){return a.jsxs(Ee.Item,{"data-slot":"select-item",className:$(["relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none","cursor-pointer disabled:cursor-not-allowed","focus:bg-accent focus:text-accent-foreground","data-[disabled]:pointer-events-none data-[disabled]:opacity-50","*:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2","[&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4"],e),...n,children:[a.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:a.jsx(Ee.ItemIndicator,{children:a.jsx(Ta,{className:"size-4",weight:"bold"})})}),a.jsx(Ee.ItemText,{children:t})]})}function rf({className:e,...t}){return a.jsx(Ee.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:$("flex cursor-default items-center justify-center py-1",e),...t,children:a.jsx(Aa,{className:"size-4",weight:"bold"})})}function af({className:e,...t}){return a.jsx(Ee.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:$("flex cursor-default items-center justify-center py-1",e),...t,children:a.jsx(Xs,{className:"size-4",weight:"bold"})})}const Ni=un.cva(["w-full rounded-full px-3 py-2 text-sm cursor-pointer","disabled:not-allowed hover:bg-button-hover focus:bg-button-hover"],{variants:{size:{default:"w-[180px]",sm:"w-auto"}},defaultVariants:{size:"default"}});function Pi({kind:e,track:t,requestPermissions:n,onError:s,client:o,...r}){const i=r.size||"default";if(!o)return a.jsxs(Ei,{disabled:!0,children:[a.jsx(Mi,{className:$(Ni({size:i}),r.className),children:a.jsx(Ai,{placeholder:`Select a ${e}`})}),a.jsx(Ti,{children:a.jsx(Vi,{value:"none",children:"No devices available"})})]});const{devices:l,activeDeviceId:c,setActiveMediaDevice:d}=sf(o,e==="audioinput"?"audioinput":"videoinput");return a.jsxs(Ei,{value:c,onValueChange:d,children:[a.jsx(Mi,{className:$(Ni({size:i}),r.className,"hover:bg"),children:i!=="sm"&&a.jsx(Ai,{className:"font-mono text-sm",placeholder:`Select a ${e}`})}),a.jsx(Ti,{children:l.map(u=>a.jsx(Vi,{value:u.deviceId,className:"font-mono text-xs",children:u.label},u.deviceId))})]})}function lf(e,t,n=!1){if(n)return Js;switch(e){case I.Track.Source.Microphone:return t?Va:Na;case I.Track.Source.Camera:return t?Ra:Ia;case I.Track.Source.ScreenShare:return Pa;default:return h.Fragment}}function $n({source:e,pressed:t,pending:n,className:s,...o}){const r=lf(e,t??!1,n),i=e===I.Track.Source.Microphone&&!(t??!1)&&!n,l=e===I.Track.Source.Camera&&!(t??!1)&&!n;return h.useEffect(()=>{console.log(`TrackToggle for ${e} changed: pressed=${t}, pending=${n}, actualState=${t?"enabled":"disabled"}`)},[e,t,n]),a.jsxs(Da,{pressed:t,"aria-label":`Toggle ${e}`,className:$(s),...o,children:[a.jsx(r,{weight:"bold",className:$(n&&"animate-spin",i||l?"text-red-500":void 0)}),o.children]})}function cf(e){return e?ef(e):{camera:!0,microphone:!0,screenShare:!0,data:!0}}function df(e={}){const{controls:t,saveUserChoices:n=!0,client:s}=e,o={leave:!0,...t};if(!s)return{micTrackRef:{participant:void 0,source:I.Track.Source.Microphone,publication:void 0},visibleControls:o,microphoneToggle:{enabled:!1,pending:!1,toggle:async()=>{}},cameraToggle:{enabled:!1,pending:!1,toggle:async()=>{}},screenShareToggle:{enabled:!1,pending:!1,toggle:async()=>{}},handleDisconnect:()=>{},handleAudioDeviceChange:()=>{},handleVideoDeviceChange:()=>{}};const{microphoneTrack:r,localParticipant:i}=tf(s),l=cf(s);nf(s);const c=Bn(s,"microphone",{onDeviceError:A=>{var j;return(j=e.onDeviceError)==null?void 0:j.call(e,{source:I.Track.Source.Microphone,error:A})}}),d=Bn(s,"camera",{onDeviceError:A=>{var j;return(j=e.onDeviceError)==null?void 0:j.call(e,{source:I.Track.Source.Camera,error:A})}}),u=Bn(s,"screenShare",{onDeviceError:A=>{var j;return(j=e.onDeviceError)==null?void 0:j.call(e,{source:I.Track.Source.ScreenShare,error:A})}}),m=h.useMemo(()=>{let A;if(i){for(const[,j]of i.trackPublications)if(j.source===I.Track.Source.Microphone){A=j;break}}return console.log("🎤 Creating micTrackRef:",{hasParticipant:!!i,hasPublication:!!A,isTrackSubscribed:A==null?void 0:A.isSubscribed,isMuted:A==null?void 0:A.isMuted,trackSid:A==null?void 0:A.trackSid}),{participant:i??void 0,source:I.Track.Source.Microphone,publication:A}},[i,r]);o.microphone??(o.microphone=l.microphone),o.screenShare??(o.screenShare=l.screenShare),o.camera??(o.camera=l.camera),o.chat??(o.chat=l.data);const{saveAudioInputEnabled:f,saveAudioInputDeviceId:p,saveVideoInputEnabled:g,saveVideoInputDeviceId:x}=of({preventSave:!n}),v=h.useCallback(()=>{s&&s.disconnect()},[s]),E=h.useCallback(A=>{p(A??"default"),s&&s.setAudioInputDevice(A)},[p,s]),b=h.useCallback(A=>{x(A??"default"),s&&s.setVideoInputDevice(A)},[x,s]),S=h.useCallback(async A=>{u.enabled&&await u.toggle(!1),await d.toggle(A),g(!d.enabled)},[d,g,u]),w=h.useCallback(async A=>{await c.toggle(A),f(!c.enabled)},[c,f]),C=h.useCallback(async A=>{d.enabled&&await d.toggle(!1),await u.toggle(A)},[d,u]);return{micTrackRef:m,visibleControls:o,cameraToggle:{...d,toggle:S},microphoneToggle:{...c,toggle:w},screenShareToggle:{...u,toggle:C},handleDisconnect:v,handleAudioDeviceChange:E,handleVideoDeviceChange:b}}const uf={card:" bg-gradient-to-br from-black to-gray-900 border border-gray-900 w-full h-full flex flex-col justify-between overflow-hidden mx-auto my-auto rounded-2xl shadow-lg",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-10 z-10 bg-gradient-to-b from-black/90 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_center,_var(--tw-gradient-stops))] from-gray-800/20 via-transparent to-transparent",cardPurpleBlur:"absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-gray-600/10 to-transparent rounded-full blur-2xl",cardPinkBlur:"absolute bottom-0 left-0 w-24 h-24 bg-gradient-to-tr from-gray-500/8 to-transparent rounded-full blur-xl",cardPulse1:"absolute -top-2 -left-2 w-6 h-6 bg-gradient-to-br from-gray-400 to-gray-500 rounded-full blur-sm opacity-20 animate-pulse",cardPulse2:"absolute -bottom-2 -right-2 w-4 h-4 bg-gradient-to-br from-gray-500 to-gray-600 rounded-full blur-sm opacity-15 animate-pulse",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-br from-black to-gray-900 rounded-2xl shadow-xl p-0 overflow-hidden h-full",text:{primary:"text-white",secondary:"text-gray-300",muted:"text-gray-400",accent:"bg-clip-text text-transparent bg-gradient-to-r from-white via-gray-200 to-gray-300"},micButton:"absolute 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:"absolute 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:"absolute 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",promptSlider:"absolute w-full py-3 px-2 bg-gray-900 rounded-xl text-center text-white text-sm transition-opacity duration-700 ease-in-out border border-gray-600",statusIndicator:"w-2 h-2 bg-gray-400 rounded-full animate-pulse",pulseRings:{ring1:"w-32 h-32 rounded-full border-2 border-gray-600/30 pulse-ring",ring2:"absolute w-28 h-28 rounded-full border-2 border-gray-500/20 pulse-ring",ring3:"absolute w-24 h-24 rounded-full border-2 border-gray-400/15 pulse-ring"},controlBar:"border border-gray-600 rounded-3xl py-4 flex flex-col justify-end h-full bg-gray-900/50 backdrop-blur-sm",chatInput:{container:"bg-gray-900 w-full border-gray-600",textarea:"bg-gray-800 border-none text-white placeholder-gray-400",sendButton:"bg-blue-600 hover:bg-blue-700 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-gray-600 text-white",other:"bg-gray-700 text-white"},chatHeader:{container:"bg-gray-900 border-gray-600",backButton:"text-gray-400 hover:text-white hover:bg-gray-700"},spinner:"w-10 h-10 animate-spin text-gray-400 mb-2",suggestedResponse:{container:"bg-gray-800 text-blue-300 border-gray-700 hover:bg-gray-700 hover:text-white"},video:{container:"bg-gradient-to-br from-black to-gray-900 text-white",header:"border-gray-700 bg-gray-900/50",headerButton:"bg-gray-800 hover:bg-gray-700 text-gray-300",statusDot:"bg-green-500 animate-pulse",controlsBackground:"bg-gray-900/80 backdrop-blur-sm border-t border-gray-700",controlEnabled:"bg-blue-600 hover:bg-blue-700 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-gray-800 border border-gray-700 shadow-lg",placeholder:"bg-gray-800 text-gray-300",avatar:"bg-gray-700 text-gray-300",nameOverlay:"bg-black/70 text-white",mutedIndicator:"bg-red-600/80 text-white"}},hf={card:" bg-gradient-to-br from-white to-gray-50 border border-gray-200 w-full h-full flex flex-col justify-between overflow-hidden mx-auto my-auto shadow-lg",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-10 z-10 bg-gradient-to-b from-white/90 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_center,_var(--tw-gradient-stops))] from-blue-500/5 via-transparent to-transparent",cardPurpleBlur:"absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-purple-500/10 to-transparent rounded-full blur-2xl",cardPinkBlur:"absolute bottom-0 left-0 w-24 h-24 bg-gradient-to-tr from-pink-500/8 to-transparent rounded-full blur-xl",cardPulse1:"absolute -top-2 -left-2 w-6 h-6 bg-gradient-to-br from-blue-500 to-purple-500 rounded-full blur-sm opacity-30 animate-pulse",cardPulse2:"absolute -bottom-2 -right-2 w-4 h-4 bg-gradient-to-br from-pink-500 to-purple-500 rounded-full blur-sm opacity-20 animate-pulse",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-br from-white to-gray-50 rounded-2xl shadow-xl p-0 overflow-hidden h-full",text:{primary:"text-gray-900",secondary:"text-gray-700",muted:"text-gray-500",accent:"bg-clip-text text-transparent bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600"},micButton:"absolute text-white 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:"absolute text-white 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:"absolute text-white 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-white",promptSlider:"absolute w-full py-3 px-2 bg-gray-100 rounded-xl text-center text-gray-700 text-sm transition-opacity duration-700 ease-in-out border border-gray-200",statusIndicator:"w-2 h-2 bg-green-500 rounded-full animate-pulse",pulseRings:{ring1:"w-32 h-32 rounded-full border-2 border-blue-500/20 pulse-ring",ring2:"absolute w-28 h-28 rounded-full border-2 border-purple-500/15 pulse-ring",ring3:"absolute w-24 h-24 rounded-full border-2 border-pink-500/10 pulse-ring"},controlBar:"border border-gray-200 rounded-3xl py-4 flex flex-col justify-end h-full bg-white/80 backdrop-blur-sm",chatInput:{container:"bg-white/90 border-gray-200 shadow-sm",textarea:"bg-white border-none text-gray-900 placeholder-gray-500 ",sendButton:"bg-blue-600 hover:bg-blue-700 disabled:bg-gray-300 disabled:opacity-50 text-white",attachButton:"text-gray-500 hover:text-gray-700 hover:bg-gray-100 bg-blue-50",endButton:"bg-red-50 hover:bg-red-100 text-red-600 border-red-200"},chatMessage:{own:"bg-blue-50 text-gray-900 border border-blue-100",other:"bg-gray-50 text-gray-900 border border-gray-200"},chatHeader:{container:"bg-white border-gray-200",backButton:"text-gray-500 hover:text-gray-700 hover:bg-gray-100"},spinner:"w-10 h-10 animate-spin text-blue-500 mb-2",suggestedResponse:{container:"bg-white text-blue-700 border-blue-200 hover:bg-blue-50 hover:text-blue-900"},video:{container:"bg-gradient-to-br from-white to-gray-50 text-gray-900",header:"border-gray-200 bg-white/80",headerButton:"bg-gray-100 hover:bg-gray-200 text-gray-600",statusDot:"bg-green-500 animate-pulse",controlsBackground:"bg-white/90 backdrop-blur-sm border-t border-gray-200",controlEnabled:"bg-blue-600 hover:bg-blue-700 text-white",controlDisabled:"bg-gray-200 hover:bg-gray-300 text-gray-600",endCall:"bg-red-600 hover:bg-red-700 text-white",tile:"bg-white border border-gray-200 shadow-sm",placeholder:"bg-gray-50 text-gray-600",avatar:"bg-gray-200 text-gray-600",nameOverlay:"bg-black/70 text-white",mutedIndicator:"bg-red-600/80 text-white"}},mf={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 mx-auto my-auto",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",secondary:"text-gray-300",muted:"text-gray-400",accent:"bg-clip-text text-transparent bg-gradient-to-r from-[#3B82F6] via-[#8B5CF6] to-[#EC4899]"},micButton:"absolute 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:"absolute 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:"absolute 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",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"}},Ri={dark:uf,light:hf,vox:mf};function ye(e){return Ri[e]||Ri.vox}function ff({controls:e,saveUserChoices:t=!0,capabilities:n,className:s,onSendMessage:o,onChatOpenChange:r,onDisconnect:i,onDeviceError:l,theme:c="vox",client:d,...u}){const[m,f]=h.useState(!1),[p,g]=h.useState(!1),x=ye(c),{micTrackRef:v,visibleControls:E,cameraToggle:b,microphoneToggle:S,screenShareToggle:w,handleAudioDeviceChange:C,handleVideoDeviceChange:A,handleDisconnect:j}=df({controls:e,saveUserChoices:t,client:d}),k=async D=>{g(!0);try{await(o==null?void 0:o(D))}finally{g(!1)}};return h.useEffect(()=>{r==null||r(m)},[m,r]),h.useEffect(()=>{var D,L,W,H;console.log("🎤 AgentControlBar: micTrackRef changed:",{hasParticipant:!!v.participant,hasPublication:!!v.publication,source:v.source,isSubscribed:(D=v.publication)==null?void 0:D.isSubscribed,isMuted:(L=v.publication)==null?void 0:L.isMuted,trackSid:(W=v.publication)==null?void 0:W.trackSid,hasTrack:!!((H=v.publication)!=null&&H.track)})},[v]),a.jsxs("div",{"aria-label":"Voice assistant controls",className:$(x.controlBar,s),...u,children:[n.suportsChatInput&&a.jsxs("div",{inert:!m,className:$("overflow-hidden transition-[height] relative duration-300 ease-in-out",m?"h-[64px] mb-3":"h-0"),children:[a.jsx("div",{className:"flex h-9 px-4 w-full",children:a.jsx(Jm,{onSend:k,disabled:p,className:$("w-full",x.chatInput)})}),a.jsx("hr",{className:"border-border my-2 mx-5"})]}),a.jsxs("div",{className:$("flex flex-row items-center gap-2 rounded-2xl mx-auto border-none backdrop-blur-lg px-2 py-2",c==="light"?"bg-white/80":"bg-[#18182a]/80"),children:[a.jsxs("div",{className:"flex gap-y-2 justify-start",children:[E.microphone&&a.jsxs("div",{className:"flex gap-y-2 items-center rounded-full overflow-hidden border-none ",children:[a.jsx($n,{variant:"primary",source:I.Track.Source.Microphone,pressed:S.enabled,disabled:S.pending,onPressedChange:S.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),a.jsx(ue.BarVisualizer,{barCount:3,trackRef:v,options:{minHeight:5},className:"flex h-full w-auto items-center justify-center gap-x-0.5",children:a.jsx("span",{className:$(["h-full w-0.5 origin-center rounded-2xl","bg-white","group-data-[state=on]/track:bg-white group-data-[state=off]/track:bg-white","data-lk-muted:bg-muted"])})}),a.jsx(Pi,{size:"sm",kind:"audioinput",client:d,onError:l?D=>D instanceof Error?l({source:I.Track.Source.Microphone,error:D}):void 0:void 0,onActiveDeviceChange:C,className:$(["h-full py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/30 transition-colors","min-w-[2.5rem]"])})]}),n.suportsVideoInput&&E.camera&&a.jsxs("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:[a.jsx($n,{variant:"primary",source:I.Track.Source.Camera,pressed:b.enabled,pending:b.pending,disabled:b.pending,onPressedChange:b.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),a.jsx(Pi,{size:"sm",kind:"videoinput",client:d,onError:l?D=>D instanceof Error?l({source:I.Track.Source.Camera,error:D}):void 0:void 0,onActiveDeviceChange:A,className:$(["h-full py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors","min-w-[2.5rem]"])})]}),n.suportsScreenShare&&E.screenShare&&a.jsx("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:a.jsx($n,{variant:"secondary",source:I.Track.Source.ScreenShare,pressed:w.enabled,disabled:w.pending,onPressedChange:w.toggle,className:"w-auto py-2 disabled:opacity-70 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"})})]}),E.chat&&a.jsx("div",{className:"flex items-center rounded-full overflow-hidden bg-secondary text-secondary-foreground border-none ",children:a.jsx(Da,{variant:"secondary","aria-label":"Toggle chat",pressed:m,onPressedChange:D=>{f(D)},className:"aspect-square h-full py-3 rounded-none border-none bg-transparent text-inherit focus:bg-secondary/80 hover:bg-secondary/80 transition-colors flex items-center",children:a.jsx(Ma,{weight:"bold",className:"h-5 w-5"})})})]})]})}const pf=(e,t)=>{var l,c;const n=h.useMemo(()=>t?t(e.message):e.message,[e.message,t]),s=!!e.editTimestamp,o=new Date(e.timestamp),r=typeof navigator<"u"?navigator.language:"en-US",i=(l=e.from)!=null&&l.name&&e.from.name!==""?e.from.name:(c=e.from)==null?void 0:c.identity;return{message:n,hasBeenEdited:s,time:o,locale:r,name:i}},gf=({entry:e,messageFormatter:t,className:n,participantName:s,...o})=>{var u,m;const{message:r,time:i,locale:l}=pf(e,t),c=((u=e.from)==null?void 0:u.isLocal)??!1;$("w-full px-3 py-2 rounded-2xl text-xs break-words whitespace-pre-line",c?" text-end border border-[#5078F2]/30":"bg-muted text-foreground border border-[#813aa7]/30","text-left");const d=$("inline-flex items-center justify-center w-6 h-6 rounded-full text-xs font-bold flex-shrink-0",c?"bg-[#5078F2] text-white":"bg-[#813aa7] ml-1 text-white");return a.jsx("li",{title:i.toLocaleTimeString(l,{timeStyle:"full"}),className:$("group flex mb-2",c?"justify-end":"justify-start",n),...o,children:a.jsxs("div",{className:$("flex w-fit max-w-full rounded-2xl border",c?"flex-row-reverse items-center border-[#5078F2]/30":"flex-row items-center border-[#813aa7]/30 bg-muted text-foreground"),children:[a.jsx("span",{className:d,children:c?((m=s==null?void 0:s[0])==null?void 0:m.toUpperCase())||"U":"A"}),a.jsx("span",{className:$("flex items-center text-xs break-words whitespace-pre-line",c?"ml-auto justify-end text-right":"justify-start text-left","px-3 py-2"),children:r})]})})};function xf(e){y.useEffect(()=>{function t(){const n=e.current;n&&(n.scrollTop=n.scrollHeight)}if(e.current){const n=new ResizeObserver(t);return n.observe(e.current),t(),()=>n.disconnect()}},[e])}const yf=({className:e,children:t,...n})=>{const s=y.useRef(null);return xf(s),a.jsx("div",{ref:s,className:$("flex flex-col justify-end",e),...n,children:t})},bf=({state:e,audioTrack:t,className:n,ref:s})=>a.jsx("div",{ref:s,className:$("",n),children:a.jsx(ue.BarVisualizer,{barCount:5,state:e,options:{minHeight:5},trackRef:t,className:$("flex aspect-video w-40 items-center justify-center gap-1"),children:a.jsx("span",{className:$(["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]"])})})}),vf=({videoTrack:e,className:t,ref:n})=>{var s,o;return a.jsx("div",{ref:n,className:$(t),children:a.jsx(ue.VideoTrack,{trackRef:e,width:((s=e==null?void 0:e.publication.dimensions)==null?void 0:s.width)??0,height:((o=e==null?void 0:e.publication.dimensions)==null?void 0:o.height)??0,className:"rounded-md"})})},wf=Q.create(ue.VideoTrack),Sf=({trackRef:e,className:t,ref:n})=>{var s,o;return a.jsx("div",{className:$("bg-muted overflow-hidden rounded-md",t),children:a.jsx(wf,{ref:n,trackRef:e,width:((s=e==null?void 0:e.publication.dimensions)==null?void 0:s.width)??0,height:((o=e==null?void 0:e.publication.dimensions)==null?void 0:o.height)??0,className:$("h-full w-auto")})})},Ii=Q.create(Sf),Cf=Q.create(bf),kf=Q.create(vf),Le={initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},exit:{opacity:0,scale:0},transition:{type:"spring",stiffness:675,damping:75,mass:1}},ot={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 row-span-3","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 jf(e){const{localParticipant:t}=ue.useLocalParticipant(),n=t.getTrackPublication(e);return y.useMemo(()=>n?{source:e,participant:t,publication:n}:void 0,[e,n,t])}function Ef({chatOpen:e}){const{state:t,audioTrack:n,videoTrack:s,agent:{isActive:o=!1}={}}=ue.useVoiceAssistant(),[r]=ue.useTracks([I.Track.Source.ScreenShare]),i=jf(I.Track.Source.Camera),l=i&&!i.publication.isMuted,c=r&&!r.publication.isMuted,d=l||c,u={...Le.transition,delay:e?0:.15},m={...Le.animate,scale:e?1:3,transition:u},f={...Le.animate,transition:u},p=u,g=u,x=s!==void 0;return a.jsx("div",{className:"relative w-full h-full z-10 flex items-center justify-center",children:a.jsx("div",{className:"relative w-full h-full max-w-2xl px-4 md:px-0",children:a.jsxs("div",{className:$(ot.grid),children:[o&&a.jsx("div",{className:$(["grid",!e&&ot.agentChatClosed,e&&d&&ot.agentChatOpenWithSecondTile,e&&!d&&ot.agentChatOpenWithoutSecondTile]),children:a.jsxs("div",{className:"h-full flex items-center justify-center",children:[!x&&a.jsx(Cf,{layoutId:"agent",...Le,animate:m,transition:p,state:t,audioTrack:n,className:$(e?"h-[90px]":"h-auto w-full")},"agent"),x&&a.jsx(kf,{layoutId:"avatar",...Le,animate:f,transition:g,videoTrack:s,className:$(e?"h-[90px] [&>video]:h-[90px] [&>video]:w-auto":"h-auto w-full")},"avatar")]})}),a.jsx("div",{className:$(["grid",e&&ot.secondTileChatOpen,!e&&ot.secondTileChatClosed]),children:a.jsxs("div",{className:"w-full px-10 flex items-center shadow-2xl justify-between",children:[i&&l&&a.jsx(Ii,{layout:"position",layoutId:"camera",...Le,trackRef:i,transition:{...Le.transition,delay:e?0:.15},className:"h-[60px] order-1"},"camera"),c&&a.jsx(Ii,{layout:"position",layoutId:"screen",...Le,trackRef:r,transition:{...Le.transition,delay:e?0:.15},className:"h-[70px] order-2"},"screen")]})})]})})})}function Di({timeout:e}){const[t,n]=y.useState(100),s=y.useRef(null),o=y.useRef(null);return y.useEffect(()=>{if(!e||e<=0)return;n(100),o.current=Date.now();const r=()=>{if(!e||o.current===null)return;const i=Date.now()-o.current,l=Math.max(0,100-i/e*100);n(l),l>0&&(s.current=requestAnimationFrame(r))};return s.current=requestAnimationFrame(r),()=>{s.current&&cancelAnimationFrame(s.current)}},[e]),!e||e<=0?null:a.jsx("div",{className:"w-full h-1 relative top-1 rounded-t-4xl bg-gray-700 overflow-hidden",children:a.jsx(Q.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 pt({interaction:e,theme:t,onDismiss:n,client:s,addLocalMessage:o}){var l;if(!e||!e.isVisible||!e.component)return null;const[r]=h.useState(()=>Date.now()),i=()=>e.component?h.createElement(e.component,{handler:e.handler||void 0,timeout:e.timeout,loadData:async d=>{console.log("InteractiveComponent: Loading data:",d)},presentationMode:e.presentationMode,data:e.data,client:s,addLocalMessage:o}):a.jsx("div",{className:"p-4 text-red-500",children:"Component not found"});switch(e.presentationMode){case"fullscreen":return a.jsx(ut,{children:a.jsxs(Q.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"fixed inset-0 z-[9999] bg-black",children:[a.jsxs("div",{className:"flex flex-col",children:[a.jsx(Di,{timeout:e.timeout}),a.jsxs("div",{className:"flex items-center justify-between p-4 bg-black/80 text-white border-b border-gray-700",children:[a.jsx("h3",{className:"text-lg font-semibold",children:e.methodName.replace(/_/g," ").replace(/\b\w/g,c=>c.toUpperCase())}),a.jsx("button",{onClick:n||((l=e.handler)==null?void 0:l.dismissView),className:"p-2 rounded-full bg-white/20 hover:bg-white/30 text-white transition-colors",children:a.jsx(pe.X,{className:"w-5 h-5"})})]})]}),a.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:i()})]})});case"embedded":default:return a.jsx(ut,{children:a.jsx(Q.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},className:"w-fit rounded-lg ",children:a.jsxs("div",{children:[a.jsx(Di,{timeout:e.timeout}),i()]})})})}}function Af(){const e=ue.useTranscriptions(),t=ue.useChat(),n=ue.useRoomContext();return{messages:y.useMemo(()=>[...e.map(r=>Em(r,n)),...t.chatMessages].sort((r,i)=>r.timestamp-i.timestamp),[e,t.chatMessages,n]),send:t.send}}const Mf=({logLevel:e}={})=>{const t=ue.useRoomContext();h.useEffect(()=>(I.setLogLevel(e??"debug"),window.__lk_room=t,()=>{window.__lk_room=void 0}),[t,e])},Tf=({disabled:e,capabilities:t,sessionStarted:n,ref:s,participantName:o="User",loadingText:r="Waiting for agent to connect...",theme:i="vox",client:l,displayType:c="widget",onBack:d})=>{var ne,te,se,z,M,G,Y;const[u,m]=y.useState(!1),[f,p]=y.useState(!1),[g,x]=y.useState(()=>{var q;const V=(q=l==null?void 0:l.getCurrentInteraction)==null?void 0:q.call(l);return console.log("SessionView: Initializing with existing interaction:",(V==null?void 0:V.methodName)||"none"),V||null}),{messages:v,send:E}=Af(),b=y.useRef(null),S=y.useRef(null),{agent:{isActive:w=!1}={}}=ue.useVoiceAssistant(),C=ye(i),A=y.useMemo(()=>l&&typeof l.getCurrentSession=="function"?!!l.getCurrentSession():!1,[l]),j=w||A;y.useEffect(()=>{var V,q;console.log("🤖 SessionView agent state:",{isAgentActive:w,hasActiveSession:A,effectiveAgentActive:j,sessionStarted:n,clientSession:(q=(V=l==null?void 0:l.getCurrentSession)==null?void 0:V.call(l))==null?void 0:q.id})},[w,A,j,n,l]),y.useEffect(()=>{console.log("🤖 Agent active state changed:",w)},[w]),y.useEffect(()=>{console.log("📋 Session state changed:",{sessionStarted:n,disabled:e,participantName:o,effectiveAgentActive:j,chatOpen:u,currentInteraction:(g==null?void 0:g.methodName)||"none"})},[n,e,o,j,u,g]),y.useEffect(()=>{if(n&&!w){console.log("⏰ Starting agent timeout detection...");const V=setTimeout(()=>{console.log("⚠️ Agent timeout: Agent did not become active within 30 seconds"),p(!0)},3e4);return()=>{clearTimeout(V)}}else w&&(console.log("✅ Agent is active, clearing timeout"),p(!1))},[n,w]),y.useEffect(()=>{if(!l)return;const V=()=>{console.log("🔄 Client connection state changed:",l.connected)},q=T=>{console.log("🔴 Client disconnected:",T),x(null),m(!1),p(!1)};return l.on("connection.connected",V),l.on("connection.disconnected",q),()=>{l.off("connection.connected",V),l.off("connection.disconnected",q)}},[l]),y.useEffect(()=>{if(!l)return;const V=Z=>{console.log("🎯 SessionView: RPC Interaction started:",Z);const B=l.getCurrentInteraction();B&&(console.log("📱 SessionView: Setting current interaction:",B.methodName,"mode:",B.presentationMode),x(B))},q=Z=>{console.log("✅ SessionView: RPC Interaction completed:",Z),x(null)},T=async Z=>{console.log("⏰ SessionView: RPC Interaction timeout:",Z),x(null)},F=async Z=>{console.log("❌ SessionView: RPC Interaction dismissed:",Z),x(null)};return l.on("rpc.interaction.started",V),l.on("rpc.interaction.completed",q),l.on("rpc.interaction.timeout",T),l.on("rpc.interaction.dismissed",F),()=>{l.off("rpc.interaction.started",V),l.off("rpc.interaction.completed",q),l.off("rpc.interaction.timeout",T),l.off("rpc.interaction.dismissed",F)}},[l]),y.useEffect(()=>{if(!l)return;const V=l.getCurrentInteraction();V?(console.log("🔄 SessionView: Syncing with existing interaction:",V.methodName),x(V)):x(null)},[l]),y.useEffect(()=>{console.log("🎭 SessionView: Current interaction changed:",(g==null?void 0:g.methodName)||"none","mode:",(g==null?void 0:g.presentationMode)||"none")},[g]),y.useEffect(()=>{var V,q,T;console.log("📱 SessionView: Display type changed to:",c),console.log("📱 SessionView: Current session state during display change:",{sessionStarted:n,effectiveAgentActive:j,hasSession:!!((V=l==null?void 0:l.getCurrentSession)!=null&&V.call(l)),sessionId:(T=(q=l==null?void 0:l.getCurrentSession)==null?void 0:q.call(l))==null?void 0:T.id})},[c,n,j,l]),y.useEffect(()=>{console.log("💬 SessionView: Chat open state changed:",u)},[u]),y.useEffect(()=>{g&&u&&(console.log("🎭 SessionView: Interactive UI appeared, closing chat"),m(!1))},[g,u]),Mf(),y.useEffect(()=>{b.current&&u&&v.length>0&&(console.log("📜 SessionView: Auto-scrolling to latest message, count:",v.length),setTimeout(()=>{if(b.current){let V=b.current.parentElement;for(;V&&V.scrollHeight<=V.clientHeight;)V=V.parentElement;V?(console.log("📜 SessionView: Scrolling container found, scrolling to bottom"),V.scrollTo({top:V.scrollHeight,behavior:"smooth"})):(console.log("📜 SessionView: Using fallback scroll method"),b.current.scrollIntoView({behavior:"smooth",block:"end",inline:"nearest"}))}},100))},[v.length,u]),y.useEffect(()=>{var T,F;console.log("📝 SessionView: Messages updated, count:",v.length),v.length>0&&console.log("📝 SessionView: Latest messages:",v.slice(-3).map(Z=>{var B,R,_,K,O,re,oe;return{id:Z.id,message:Z.message,timestamp:Z.timestamp,from:((B=Z.from)==null?void 0:B.name)||((R=Z.from)==null?void 0:R.identity),fromType:Z.from===void 0?"unknown":"participant",isLocal:((_=Z.from)==null?void 0:_.identity)===((re=(O=(K=l==null?void 0:l.getCurrentSession)==null?void 0:K.call(l))==null?void 0:O.localParticipant)==null?void 0:re.identity),messageLength:((oe=Z.message)==null?void 0:oe.length)||0}}));const V=((T=l==null?void 0:l.getTranscriptions)==null?void 0:T.call(l))||[],q=((F=l==null?void 0:l.getChatMessages)==null?void 0:F.call(l))||[];console.log("📝 SessionView: Raw transcriptions count:",V.length),console.log("📝 SessionView: Raw chat messages count:",q.length)},[v.length,v,l]),y.useEffect(()=>{console.log("💬 SessionView: Chat state changed:",{chatOpen:u,messagesCount:v.length,displayType:c,hasMessages:v.length>0})},[u,v.length,c]);async function k(V){await E(V)}const D=y.useCallback(V=>{console.log("📝 SessionView: Adding local message for voice session context:",V)},[]),L=y.useCallback(async V=>{try{l&&typeof l.sendAttachments=="function"&&(await l.sendAttachments(V),console.log("📎 SessionView: Attachments sent successfully:",V.map(q=>q.name)))}catch(q){console.error("❌ SessionView: Failed to send attachments:",q)}},[l]),W=y.useCallback(()=>{try{console.log("📞 SessionView: Ending call..."),console.log("📞 SessionView: Current state before ending:",{sessionStarted:n,effectiveAgentActive:j,chatOpen:u,currentInteraction:g==null?void 0:g.methodName,hasOnBack:!!d}),g&&(console.log("🎭 SessionView: Dismissing current interaction:",g.methodName),x(null),l&&typeof l.dismissCurrentInteraction=="function"&&l.dismissCurrentInteraction()),m(!1),p(!1),console.log("✅ SessionView: Local state reset"),l&&typeof l.endSession=="function"&&(l.endSession(),console.log("✅ SessionView: Session ended via client.endSession()")),l&&typeof l.disconnect=="function"&&(l.disconnect(),console.log("✅ SessionView: Client disconnected")),d?(console.log("🔄 SessionView: Calling onBack to return to welcome..."),setTimeout(()=>{d(),console.log("✅ SessionView: onBack called")},150)):console.warn("⚠️ SessionView: No onBack function provided - cannot return to welcome"),console.log("🏁 SessionView: Call ended and cleanup completed")}catch(V){console.error("❌ SessionView: Failed to end call:",V),x(null),m(!1),p(!1),d&&(console.log("🔄 SessionView: Error occurred, still calling onBack..."),d())}},[l,d,g,n,j,u]);y.useEffect(()=>(console.log("🔄 SessionView: Component mounted/props changed:",{sessionStarted:n,disabled:e,participantName:o,displayType:c,hasOnBack:!!d,hasClient:!!l}),()=>{console.log("🧹 SessionView: Component unmounting or props changing")}),[n,e,o,c,d,l]),y.useEffect(()=>{console.log("🔗 SessionView: onBack prop:",{hasOnBack:!!d,onBackType:typeof d})},[d]),y.useEffect(()=>{var q,T;const V=((T=(q=l==null?void 0:l.getCurrentSession)==null?void 0:q.call(l))==null?void 0:T.id)||null;S.current&&!V&&console.warn("⚠️ SessionView: Session was lost unexpectedly!",{previousSession:S.current,currentSession:V,displayType:c,sessionStarted:n,effectiveAgentActive:j}),S.current=V},[l,c,n,j]);const H=$("w-full flex flex-col items-center justify-center",c==="fullscreen"?"w-full max-w-none mx-0 h-full":"w-full mx-auto",C.main,c==="fullscreen"?"max-w-none":"","overflow-hidden","h-full"),Ce=d&&(c==="popup"||c==="fullscreen");return a.jsxs("main",{ref:s,inert:e,className:$(H,"relative"),style:{minHeight:0},children:[Ce&&a.jsx("div",{className:`flex items-center justify-between w-full p-4 border-b ${((ne=C.chatHeader)==null?void 0:ne.container)||"border-gray-200"}`,children:a.jsx("div",{className:"flex items-center",children:a.jsxs("div",{children:[a.jsx("h3",{className:`font-semibold ${C.text.primary}`,children:"Voice Session"}),a.jsx("p",{className:`text-sm ${C.text.muted}`,children:o})]})})}),a.jsxs("div",{className:"w-full flex-1 flex flex-col items-center px-0 min-h-0 overflow-hidden",children:[!j&&a.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[a.jsx(Q.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:a.jsx(Js,{className:C.spinner,weight:"bold"})}),a.jsx(Q.span,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`text-sm opacity-80 ${C.text.muted} text-center max-w-xs`,children:f?"Agent is taking longer than expected...":r}),a.jsx(Q.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:2},className:`text-xs ${C.text.muted} mt-2 text-center opacity-60`,children:f?"Please check your connection or try again.":"Agent is connecting... This may take a moment."}),f&&d&&a.jsx(Q.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:d,className:`mt-4 px-4 py-2 rounded-lg ${((te=C.chatHeader)==null?void 0:te.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]}),j&&a.jsxs(a.Fragment,{children:[u&&a.jsxs("div",{className:$("absolute inset-0 w-full h-full flex flex-col transition-[opacity,translate] duration-300 ease-out z-10",i==="light"?"bg-white":"bg-gray-900/95 backdrop-blur-sm",u?"translate-y-0 opacity-100 delay-200":"translate-y-10 opacity-0"),children:[a.jsxs("div",{className:$("flex-shrink-0 px-4 py-3 border-b",c==="fullscreen"?"px-8":"px-5",((se=C.chatHeader)==null?void 0:se.container)||"border-gray-200 dark:border-gray-700"),children:[a.jsx("h3",{className:$("font-semibold text-lg",((z=C.text)==null?void 0:z.primary)||"text-gray-900 dark:text-white"),children:"Transcription & Chat"}),a.jsxs("p",{className:$("text-sm",((M=C.text)==null?void 0:M.muted)||"text-gray-600 dark:text-gray-400"),children:[v.length," messages"]})]}),a.jsx("div",{className:$("flex-1 flex flex-col min-h-0",c==="fullscreen"?"px-8":"px-5"),children:a.jsx(yf,{className:"flex-1 flex flex-col min-h-0 h-full",children:a.jsxs("div",{className:`flex-1 flex flex-col h-full ${$("overflow-y-auto scrollbar-hide py-4")}`,style:{scrollbarWidth:"none",scrollBehavior:"smooth",paddingBottom:"120px"},children:[v.length===0&&a.jsx("div",{className:"flex-1 flex items-center justify-center",children:a.jsxs("div",{className:"text-center",children:[a.jsx("p",{className:$("text-lg font-medium mb-2",((G=C.text)==null?void 0:G.primary)||"text-gray-900 dark:text-white"),children:"Start Speaking"}),a.jsx("p",{className:$("text-sm",((Y=C.text)==null?void 0:Y.muted)||"text-gray-600 dark:text-gray-400"),children:"Your conversation will appear here"})]})}),v.length>0&&a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"flex-1 min-h-4"}),a.jsx("div",{ref:b,className:"space-y-4 relative whitespace-pre-wrap z-0",children:a.jsx(ut,{mode:"popLayout",children:v.map((V,q)=>a.jsx(Q.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.3,ease:"easeOut",delay:q*.02},layout:!0,children:a.jsx(gf,{participantName:o,entry:V})},V.id||`message-${q}`))})})]})]})})})]}),!u&&a.jsxs("div",{className:$("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:[a.jsx(Q.div,{className:"w-full flex justify-center",animate:{y:(g==null?void 0:g.presentationMode)==="embedded"?-8:0},transition:{duration:.3,ease:"easeOut"},children:a.jsx(Ef,{chatOpen:u})}),a.jsx(ut,{mode:"wait",children:g&&g.presentationMode==="embedded"&&a.jsx(Q.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:$("w-full relative mt-4 flex justify-center",c==="fullscreen"?"max-w-4xl":"max-w-md"),children:a.jsx("div",{className:"bg-white/10 backdrop-blur-sm rounded-xl border border-white/20 shadow-lg overflow-hidden",children:a.jsx(pt,{interaction:g,theme:i,onDismiss:()=>{var V;return(V=l==null?void 0:l.dismissCurrentInteraction)==null?void 0:V.call(l)},client:l,addLocalMessage:D})})},`embedded-${g.methodName}`)})]})]})]}),a.jsx(ut,{mode:"wait",children:g&&g.presentationMode!=="embedded"&&!u&&a.jsx("div",{className:$("absolute inset-0 z-50 flex items-center justify-center backdrop-blur-sm",c==="fullscreen"?"bg-black/70":"bg-black/50"),children:a.jsx(Q.div,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.2,ease:"easeOut"},className:$("relative w-full overflow-hidden",c==="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:a.jsx(pt,{interaction:g,theme:i,onDismiss:()=>{var V;return(V=l==null?void 0:l.dismissCurrentInteraction)==null?void 0:V.call(l)},client:l,addLocalMessage:D})},`modal-${g.methodName}`)})}),a.jsx(Q.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.2},className:"absolute bottom-0 left-0 right-0 flex-shrink-0 w-full z-20",children:a.jsx(Vf,{capabilities:t,onSendMessage:k,onSendAttachments:L,onEndCall:W,onChatOpenChange:m,disabled:e,theme:i,client:l,sessionStarted:n})})]})};function Vf({capabilities:e,onSendMessage:t,onSendAttachments:n,onEndCall:s,onChatOpenChange:o,disabled:r=!1,theme:i,client:l,sessionStarted:c=!1}){const[d,u]=y.useState(!1),m=y.useRef(null),f=y.useRef(null);y.useEffect(()=>{const b=()=>{const S=navigator.userAgent.toLowerCase(),C=["android","iphone","ipad","mobile","tablet"].some(k=>S.includes(k)),A="ontouchstart"in window||navigator.maxTouchPoints>0,j=window.innerWidth<=768;u(C||A&&j)};return b(),window.addEventListener("resize",b),()=>window.removeEventListener("resize",b)},[]);const p=b=>{const S=b.target.files;if(S&&S.length>0){const C=Array.from(S).filter(A=>A.type.startsWith("image/"));if(C.length===0){console.warn("No valid image files selected");return}n&&n(C),m.current&&(m.current.value="")}},g=b=>{const S=b.target.files;if(S&&S.length>0){const w=S[0];w.type.startsWith("image/")&&n&&n([w]),f.current&&(f.current.value="")}},x=()=>{!r&&m.current&&m.current.click()},v=()=>{!r&&d&&f.current&&f.current.click()},E=()=>{console.log("🔴 VoiceControlPanel: End call button clicked"),console.log("🔴 VoiceControlPanel: Current state:",{disabled:r,sessionStarted:c,hasOnEndCall:!!s}),s?s():console.warn("⚠️ VoiceControlPanel: No onEndCall function provided")};return a.jsx("div",{className:$("px-4 py-3 !w-full backdrop-blur-xl border-0 shadow-lg",i==="light"?"bg-white/95 border-t border-gray-200":"bg-gray-900/95 border-t border-gray-700"),children:a.jsxs("div",{className:"flex items-center justify-between !w-full mx-auto max-w-4xl",children:[a.jsx("input",{ref:m,type:"file",multiple:!0,onChange:p,className:"hidden",accept:"image/*"}),a.jsx("input",{ref:f,type:"file",onChange:g,className:"hidden",accept:"image/*",capture:"environment"}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("button",{onClick:x,disabled:r,className:$("p-3 rounded-full transition-all duration-200 hover:scale-105 active:scale-95",r?"opacity-50 cursor-not-allowed":"hover:shadow-md",i==="light"?"bg-gray-100 hover:bg-gray-200 text-gray-600":"bg-gray-700/50 hover:bg-gray-600/50 text-gray-300"),title:"Attach files",children:a.jsx(Be.AttachFile,{className:"w-5 h-5"})}),d&&a.jsx("button",{onClick:v,disabled:r,className:$("p-3 rounded-full transition-all duration-200 hover:scale-105 active:scale-95",r?"opacity-50 cursor-not-allowed":"hover:shadow-md",i==="light"?"bg-gray-100 hover:bg-gray-200 text-gray-600":"bg-gray-700/50 hover:bg-gray-600/50 text-gray-300"),title:"Take photo",children:a.jsx(Be.CameraAlt,{className:"w-5 h-5"})})]}),a.jsx("div",{className:"flex-1 flex justify-center px-4",children:a.jsx(ff,{capabilities:e,onChatOpenChange:o,onSendMessage:t,theme:i,client:l,className:"border-none py-1 rounded-xl max-w-md w-full"})}),a.jsx("div",{className:"flex items-center",children:a.jsx("button",{onClick:E,disabled:r||!c,className:$("p-3 rounded-full transition-all duration-200 hover:scale-105 active:scale-95",r||!c?"opacity-50 cursor-not-allowed":"hover:shadow-md","bg-red-500 hover:bg-red-600 text-white"),title:"End call",children:a.jsx(Be.CallEnd,{className:"w-5 h-5"})})})]})})}function Nf({onSendMessage:e,onSendAttachments:t,disabled:n,theme:s,onEndChat:o}){const[r,i]=h.useState(""),[l,c]=h.useState(!1),d=h.useRef(null),u=h.useRef(null),[m,f]=h.useState(!1),p=ye(s);h.useEffect(()=>{const w=()=>{const C=navigator.userAgent.toLowerCase(),j=["android","iphone","ipad","mobile","tablet"].some(L=>C.includes(L)),k="ontouchstart"in window||navigator.maxTouchPoints>0,D=window.innerWidth<=768;f(j||k&&D)};return w(),window.addEventListener("resize",w),()=>window.removeEventListener("resize",w)},[]);const g=w=>{w.preventDefault(),r.trim()&&!n&&(e(r.trim()),i(""))},x=w=>{w.key==="Enter"&&!w.shiftKey&&(w.preventDefault(),g(w))},v=w=>{const C=w.target.files;if(C&&C.length>0){const A=Array.from(C),j=A.filter(k=>k.type.startsWith("image/"));if(j.length===0){console.warn("No valid image files selected");return}j.length!==A.length&&console.warn("Some non-image files were filtered out"),console.log("Selected image files:",j),t(j),d.current&&(d.current.value="")}},E=()=>{!n&&d.current&&d.current.click()},b=()=>{!n&&m&&u.current&&u.current.click()},S=w=>{const C=w.target.files;if(C&&C.length>0){const A=C[0];A.type.startsWith("image/")?t([A]):console.warn("Selected file is not an image"),u.current&&(u.current.value="")}};return a.jsx("div",{className:"px-4 py-3 !w-full backdrop-blur-xl border-0 shadow-lg ",children:a.jsx("form",{onSubmit:g,className:"flex items-center !w-full mx-auto max-w-4xl",children:a.jsxs("div",{className:`flex items-center gap-2 !w-full backdrop-blur-md rounded-full px-3 py-2 shadow-sm hover:shadow-md focus-within:shadow-lg focus-within:ring-2 focus-within:ring-blue-500/30 focus-within:border-blue-500/50 transition-all duration-200 border ${s==="light"?"bg-white/90 border-gray-200":p.chatInput.container}`,children:[a.jsx(Q.button,{type:"button",onClick:E,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 ${p.chatInput.attachButton}`,disabled:n,"aria-label":"Attach file",children:a.jsx(pe.Paperclip,{className:"w-4 h-4"})}),m&&a.jsx(Q.button,{type:"button",onClick:b,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 ${p.chatInput.attachButton}`,disabled:n,"aria-label":"Take photo",children:a.jsx(pe.Camera,{className:"w-4 h-4"})}),a.jsx("input",{ref:d,type:"file",multiple:!0,onChange:v,className:"hidden",accept:"image/*"}),a.jsx("input",{ref:u,type:"file",onChange:S,className:"hidden",accept:"image/*",capture:"environment"}),a.jsx("textarea",{value:r,onChange:w=>i(w.target.value),onKeyDown:x,onFocus:()=>c(!0),onBlur:()=>c(!1),placeholder:"Type your message...",disabled:n,className:`flex-1 px-2 py-1 bg-transparent resize-none min-h-[32px] max-h-20 focus:outline-none text-sm border-0 ${p.chatInput.textarea}`,rows:1,style:{height:"auto",minHeight:"32px"},onInput:w=>{const C=w.target;C.style.height="auto",C.style.height=`${Math.min(C.scrollHeight,80)}px`}}),a.jsx(Q.button,{type:"submit",disabled:n||!r.trim(),whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 flex-shrink-0 ${r.trim()&&!n?p.chatInput.sendButton:s==="light"?"bg-gray-200 text-gray-400 cursor-not-allowed opacity-70":"bg-gray-600/50 text-gray-500 cursor-not-allowed opacity-50"}`,"aria-label":"Send message",children:a.jsx(pe.SendHorizontal,{className:"w-4 h-4"})}),o&&a.jsx(Q.button,{type:"button",onClick:o,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 flex-shrink-0 ${p.chatInput.endButton}`,"aria-label":"End chat",children:a.jsx(pe.PhoneOff,{className:"w-4 h-4"})})]})})})}function Pf({text:e,isComplete:t,isRealTimeStream:n=!1,speed:s=50}){const[o,r]=h.useState(""),[i,l]=h.useState(0);return h.useEffect(()=>{if(n){r(e);return}if(t){r(e);return}if(i<e.length){const c=setTimeout(()=>{r(e.slice(0,i+1)),l(i+1)},s);return()=>clearTimeout(c)}},[e,i,t,s,n]),h.useEffect(()=>{n||(l(0),r(""))},[e,n]),a.jsxs("span",{className:"relative",children:[a.jsx("span",{className:"inline-block",children:o}),!t&&a.jsx("span",{className:"inline-flex items-center ml-1",children:[0,1,2].map(c=>a.jsx(Q.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:c*.2,ease:"easeInOut"}},c))})]})}function Rf({message:e,theme:t,isOwn:n,isStreaming:s=!1}){var i,l;const o=ye(t),r=e.sender.name?e.sender.name.split(" ").map(c=>c[0]).join("").toUpperCase().slice(0,2):"U";return a.jsx("div",{className:`flex w-full ${n?"justify-end":"justify-start"} mb-4 px-1`,children:a.jsxs("div",{className:`relative group ${n?"flex-row-reverse":"flex-row"} flex items-end gap-3 max-w-[85%]`,children:[a.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:r}),a.jsxs("div",{className:`
9
+ `),()=>{m.contains(g)&&m.removeChild(g)}},[t]),l.jsx(Lf,{isPresent:t,childRef:o,sizeRef:i,children:p.cloneElement(e,{ref:o})})}const Bf=({children:e,initial:t,isPresent:n,onExitComplete:s,custom:r,presenceAffectsLayout:o,mode:i,anchorX:a,root:c})=>{const d=Lr(zf),u=C.useId();let f=!0,h=C.useMemo(()=>(f=!1,{id:u,initial:t,isPresent:n,custom:r,onExitComplete:y=>{d.set(y,!0);for(const g of d.values())if(!g)return;s&&s()},register:y=>(d.set(y,!1),()=>d.delete(y))}),[n,d,s]);return o&&f&&(h={...h}),C.useMemo(()=>{d.forEach((y,g)=>d.set(g,!1))},[n]),p.useEffect(()=>{!n&&!d.size&&s&&s()},[n]),i==="popLayout"&&(e=l.jsx(_f,{isPresent:n,anchorX:a,root:c,children:e})),l.jsx(cs.Provider,{value:h,children:e})};function zf(){return new Map}function Ol(e=!0){const t=C.useContext(cs);if(t===null)return[!0,null];const{isPresent:n,onExitComplete:s,register:r}=t,o=C.useId();C.useEffect(()=>{if(e)return r(o)},[e]);const i=C.useCallback(()=>e&&s&&s(o),[o,s,e]);return!n&&s?[!1,i]:[!0]}const Dn=e=>e.key||"";function ri(e){const t=[];return C.Children.forEach(e,n=>{C.isValidElement(n)&&t.push(n)}),t}const zt=({children:e,custom:t,initial:n=!0,onExitComplete:s,presenceAffectsLayout:r=!0,mode:o="sync",propagate:i=!1,anchorX:a="left",root:c})=>{const[d,u]=Ol(i),f=C.useMemo(()=>ri(e),[e]),h=i&&!d?[]:f.map(Dn),y=C.useRef(!0),g=C.useRef(f),m=Lr(()=>new Map),[b,k]=C.useState(f),[S,E]=C.useState(f);Ga(()=>{y.current=!1,g.current=f;for(let A=0;A<S.length;A++){const T=Dn(S[A]);h.includes(T)?m.delete(T):m.get(T)!==!0&&m.set(T,!1)}},[S,h.length,h.join("-")]);const w=[];if(f!==b){let A=[...f];for(let T=0;T<S.length;T++){const j=S[T],z=Dn(j);h.includes(z)||(A.splice(T,0,j),w.push(j))}return o==="wait"&&w.length&&(A=w),E(ri(A)),k(f),null}process.env.NODE_ENV!=="production"&&o==="wait"&&S.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:v}=C.useContext(Or);return l.jsx(l.Fragment,{children:S.map(A=>{const T=Dn(A),j=i&&!d?!1:f===S||h.includes(T),z=()=>{if(m.has(T))m.set(T,!0);else return;let x=!0;m.forEach(I=>{I||(x=!1)}),x&&(v==null||v(),E(g.current),i&&(u==null||u()),s&&s())};return l.jsx(Bf,{isPresent:j,initial:!y.current||n?void 0:!1,custom:t,presenceAffectsLayout:r,mode:o,root:c,onExitComplete:j?void 0:z,anchorX:a,children:A},T)})})},Ll=C.createContext({strict:!1}),oi={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"]},Wt={};for(const e in oi)Wt[e]={isEnabled:t=>oi[e].some(n=>!!t[n])};function Hf(e){for(const t in e)Wt[t]={...Wt[t],...e[t]}}const Uf=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 ns(e){return e.startsWith("while")||e.startsWith("drag")&&e!=="draggable"||e.startsWith("layout")||e.startsWith("onTap")||e.startsWith("onPan")||e.startsWith("onLayout")||Uf.has(e)}let _l=e=>!ns(e);function Zf(e){typeof e=="function"&&(_l=t=>t.startsWith("on")?!ns(t):e(t))}try{Zf(require("@emotion/is-prop-valid").default)}catch{}function Wf(e,t,n){const s={};for(const r in e)r==="values"&&typeof e.values=="object"||(_l(r)||n===!0&&ns(r)||!t&&!ns(r)||e.draggable&&r.startsWith("onDrag"))&&(s[r]=e[r]);return s}const ds=C.createContext({});function us(e){return e!==null&&typeof e=="object"&&typeof e.start=="function"}function bn(e){return typeof e=="string"||Array.isArray(e)}const co=["animate","whileInView","whileFocus","whileHover","whileTap","whileDrag","exit"],uo=["initial",...co];function fs(e){return us(e.animate)||uo.some(t=>bn(e[t]))}function Bl(e){return!!(fs(e)||e.variants)}function Gf(e,t){if(fs(e)){const{initial:n,animate:s}=e;return{initial:n===!1||bn(n)?n:void 0,animate:bn(s)?s:void 0}}return e.inherit!==!1?t:{}}function Kf(e){const{initial:t,animate:n}=Gf(e,C.useContext(ds));return C.useMemo(()=>({initial:t,animate:n}),[ii(t),ii(n)])}function ii(e){return Array.isArray(e)?e.join(" "):e}const vn={};function Yf(e){for(const t in e)vn[t]=e[t],Kr(t)&&(vn[t].isCSSVariable=!0)}function zl(e,{layout:t,layoutId:n}){return Jt.has(e)||e.startsWith("origin")||(t||n!==void 0)&&(!!vn[e]||e==="opacity")}const qf={x:"translateX",y:"translateY",z:"translateZ",transformPerspective:"perspective"},Xf=Xt.length;function Jf(e,t,n){let s="",r=!0;for(let o=0;o<Xf;o++){const i=Xt[o],a=e[i];if(a===void 0)continue;let c=!0;if(typeof a=="number"?c=a===(i.startsWith("scale")?1:0):c=parseFloat(a)===0,!c||n){const d=Vl(a,oo[i]);if(!c){r=!1;const u=qf[i]||i;s+=`${u}(${d}) `}n&&(t[i]=d)}}return s=s.trim(),n?s=n(t,r?"":s):r&&(s="none"),s}function fo(e,t,n){const{style:s,vars:r,transformOrigin:o}=e;let i=!1,a=!1;for(const c in t){const d=t[c];if(Jt.has(c)){i=!0;continue}else if(Kr(c)){r[c]=d;continue}else{const u=Vl(d,oo[c]);c.startsWith("origin")?(a=!0,o[c]=u):s[c]=u}}if(t.transform||(i||n?s.transform=Jf(t,e.transform,n):s.transform&&(s.transform="none")),a){const{originX:c="50%",originY:d="50%",originZ:u=0}=o;s.transformOrigin=`${c} ${d} ${u}`}}const ho=()=>({style:{},transform:{},transformOrigin:{},vars:{}});function Hl(e,t,n){for(const s in t)!Re(t[s])&&!zl(s,n)&&(e[s]=t[s])}function Qf({transformTemplate:e},t){return C.useMemo(()=>{const n=ho();return fo(n,t,e),Object.assign({},n.vars,n.style)},[t])}function eh(e,t){const n=e.style||{},s={};return Hl(s,n,e),Object.assign(s,Qf(e,t)),s}function th(e,t){const n={},s=eh(e,t);return e.drag&&e.dragListener!==!1&&(n.draggable=!1,s.userSelect=s.WebkitUserSelect=s.WebkitTouchCallout="none",s.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=s,n}const nh={offset:"stroke-dashoffset",array:"stroke-dasharray"},sh={offset:"strokeDashoffset",array:"strokeDasharray"};function rh(e,t,n=1,s=0,r=!0){e.pathLength=1;const o=r?nh:sh;e[o.offset]=Q.transform(-s);const i=Q.transform(t),a=Q.transform(n);e[o.array]=`${i} ${a}`}function Ul(e,{attrX:t,attrY:n,attrScale:s,pathLength:r,pathSpacing:o=1,pathOffset:i=0,...a},c,d,u){if(fo(e,a,d),c){e.style.viewBox&&(e.attrs.viewBox=e.style.viewBox);return}e.attrs=e.style,e.style={};const{attrs:f,style:h}=e;f.transform&&(h.transform=f.transform,delete f.transform),(h.transform||f.transformOrigin)&&(h.transformOrigin=f.transformOrigin??"50% 50%",delete f.transformOrigin),h.transform&&(h.transformBox=(u==null?void 0:u.transformBox)??"fill-box",delete f.transformBox),t!==void 0&&(f.x=t),n!==void 0&&(f.y=n),s!==void 0&&(f.scale=s),r!==void 0&&rh(f,r,o,i,!1)}const Zl=()=>({...ho(),attrs:{}}),Wl=e=>typeof e=="string"&&e.toLowerCase()==="svg";function oh(e,t,n,s){const r=C.useMemo(()=>{const o=Zl();return Ul(o,t,Wl(s),e.transformTemplate,e.style),{...o.attrs,style:{...o.style}}},[t]);if(e.style){const o={};Hl(o,e.style,e),r.style={...o,...r.style}}return r}const ih=["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 mo(e){return typeof e!="string"||e.includes("-")?!1:!!(ih.indexOf(e)>-1||/[A-Z]/u.test(e))}function ah(e,t,n,{latestValues:s},r,o=!1){const a=(mo(e)?oh:th)(t,s,r,e),c=Wf(t,typeof e=="string",o),d=e!==C.Fragment?{...c,...a,ref:n}:{},{children:u}=t,f=C.useMemo(()=>Re(u)?u.get():u,[u]);return C.createElement(e,{...d,children:f})}function ai(e){const t=[{},{}];return e==null||e.values.forEach((n,s)=>{t[0][s]=n.get(),t[1][s]=n.getVelocity()}),t}function po(e,t,n,s){if(typeof t=="function"){const[r,o]=ai(s);t=t(n!==void 0?n:e.custom,r,o)}if(typeof t=="string"&&(t=e.variants&&e.variants[t]),typeof t=="function"){const[r,o]=ai(s);t=t(n!==void 0?n:e.custom,r,o)}return t}function Kn(e){return Re(e)?e.get():e}function lh({scrapeMotionValuesFromProps:e,createRenderState:t},n,s,r){return{latestValues:ch(n,s,r,e),renderState:t()}}function ch(e,t,n,s){const r={},o=s(e,{});for(const h in o)r[h]=Kn(o[h]);let{initial:i,animate:a}=e;const c=fs(e),d=Bl(e);t&&d&&!c&&e.inherit!==!1&&(i===void 0&&(i=t.initial),a===void 0&&(a=t.animate));let u=n?n.initial===!1:!1;u=u||i===!1;const f=u?a:i;if(f&&typeof f!="boolean"&&!us(f)){const h=Array.isArray(f)?f:[f];for(let y=0;y<h.length;y++){const g=po(e,h[y]);if(g){const{transitionEnd:m,transition:b,...k}=g;for(const S in k){let E=k[S];if(Array.isArray(E)){const w=u?E.length-1:0;E=E[w]}E!==null&&(r[S]=E)}for(const S in m)r[S]=m[S]}}}return r}const Gl=e=>(t,n)=>{const s=C.useContext(ds),r=C.useContext(cs),o=()=>lh(e,t,s,r);return n?o():Lr(o)};function go(e,t,n){var o;const{style:s}=e,r={};for(const i in s)(Re(s[i])||t.style&&Re(t.style[i])||zl(i,e)||((o=n==null?void 0:n.getValue(i))==null?void 0:o.liveStyle)!==void 0)&&(r[i]=s[i]);return r}const dh=Gl({scrapeMotionValuesFromProps:go,createRenderState:ho});function Kl(e,t,n){const s=go(e,t,n);for(const r in e)if(Re(e[r])||Re(t[r])){const o=Xt.indexOf(r)!==-1?"attr"+r.charAt(0).toUpperCase()+r.substring(1):r;s[o]=e[r]}return s}const uh=Gl({scrapeMotionValuesFromProps:Kl,createRenderState:Zl}),fh=Symbol.for("motionComponentSymbol");function Ot(e){return e&&typeof e=="object"&&Object.prototype.hasOwnProperty.call(e,"current")}function hh(e,t,n){return C.useCallback(s=>{s&&e.onMount&&e.onMount(s),t&&(s?t.mount(s):t.unmount()),n&&(typeof n=="function"?n(s):Ot(n)&&(n.current=s))},[t])}const yo=e=>e.replace(/([a-z])([A-Z])/gu,"$1-$2").toLowerCase(),mh="framerAppearId",Yl="data-"+yo(mh),ql=C.createContext({});function ph(e,t,n,s,r){var m,b;const{visualElement:o}=C.useContext(ds),i=C.useContext(Ll),a=C.useContext(cs),c=C.useContext(lo).reducedMotion,d=C.useRef(null);s=s||i.renderer,!d.current&&s&&(d.current=s(e,{visualState:t,parent:o,props:n,presenceContext:a,blockInitialAnimation:a?a.initial===!1:!1,reducedMotionConfig:c}));const u=d.current,f=C.useContext(ql);u&&!u.projection&&r&&(u.type==="html"||u.type==="svg")&&gh(d.current,n,r,f);const h=C.useRef(!1);C.useInsertionEffect(()=>{u&&h.current&&u.update(n,a)});const y=n[Yl],g=C.useRef(!!y&&!((m=window.MotionHandoffIsComplete)!=null&&m.call(window,y))&&((b=window.MotionHasOptimisedAnimation)==null?void 0:b.call(window,y)));return Ga(()=>{u&&(h.current=!0,window.MotionIsMounted=!0,u.updateFeatures(),u.scheduleRenderMicrotask(),g.current&&u.animationState&&u.animationState.animateChanges())}),C.useEffect(()=>{u&&(!g.current&&u.animationState&&u.animationState.animateChanges(),g.current&&(queueMicrotask(()=>{var k;(k=window.MotionHandoffMarkAsComplete)==null||k.call(window,y)}),g.current=!1),u.enteringChildren=void 0)}),u}function gh(e,t,n,s){const{layoutId:r,layout:o,drag:i,dragConstraints:a,layoutScroll:c,layoutRoot:d,layoutCrossfade:u}=t;e.projection=new n(e.latestValues,t["data-framer-portal-id"]?void 0:Xl(e.parent)),e.projection.setOptions({layoutId:r,layout:o,alwaysMeasureLayout:!!i||a&&Ot(a),visualElement:e,animationType:typeof o=="string"?o:"both",initialPromotionConfig:s,crossfade:u,layoutScroll:c,layoutRoot:d})}function Xl(e){if(e)return e.options.allowProjection!==!1?e.projection:Xl(e.parent)}function Ds(e,{forwardMotionProps:t=!1}={},n,s){n&&Hf(n);const r=mo(e)?uh:dh;function o(a,c){let d;const u={...C.useContext(lo),...a,layoutId:yh(a)},{isStatic:f}=u,h=Kf(a),y=r(a,f);if(!f&&_r){xh(u,n);const g=bh(u);d=g.MeasureLayout,h.visualElement=ph(e,y,u,s,g.ProjectionNode)}return l.jsxs(ds.Provider,{value:h,children:[d&&h.visualElement?l.jsx(d,{visualElement:h.visualElement,...u}):null,ah(e,a,hh(y,h.visualElement,c),y,f,t)]})}o.displayName=`motion.${typeof e=="string"?e:`create(${e.displayName??e.name??""})`}`;const i=C.forwardRef(o);return i[fh]=e,i}function yh({layoutId:e}){const t=C.useContext(Or).id;return t&&e!==void 0?t+"-"+e:e}function xh(e,t){const n=C.useContext(Ll).strict;if(process.env.NODE_ENV!=="production"&&t&&n){const s="You have rendered a `motion` component within a `LazyMotion` component. This will break tree shaking. Import and render a `m` component instead.";e.ignoreStrict?Yt(!1,s,"lazy-strict-mode"):rt(!1,s,"lazy-strict-mode")}}function bh(e){const{drag:t,layout:n}=Wt;if(!t&&!n)return{};const s={...t,...n};return{MeasureLayout:t!=null&&t.isEnabled(e)||n!=null&&n.isEnabled(e)?s.MeasureLayout:void 0,ProjectionNode:s.ProjectionNode}}function vh(e,t){if(typeof Proxy>"u")return Ds;const n=new Map,s=(o,i)=>Ds(o,i,e,t),r=(o,i)=>(process.env.NODE_ENV!=="production"&&Zr(!1,"motion() is deprecated. Use motion.create() instead."),s(o,i));return new Proxy(r,{get:(o,i)=>i==="create"?s:(n.has(i)||n.set(i,Ds(i,void 0,e,t)),n.get(i))})}function Jl({top:e,left:t,right:n,bottom:s}){return{x:{min:t,max:n},y:{min:e,max:s}}}function wh({x:e,y:t}){return{top:t.min,right:e.max,bottom:t.max,left:e.min}}function Sh(e,t){if(!t)return e;const n=t({x:e.left,y:e.top}),s=t({x:e.right,y:e.bottom});return{top:n.y,left:n.x,bottom:s.y,right:s.x}}function $s(e){return e===void 0||e===1}function vr({scale:e,scaleX:t,scaleY:n}){return!$s(e)||!$s(t)||!$s(n)}function bt(e){return vr(e)||Ql(e)||e.z||e.rotate||e.rotateX||e.rotateY||e.skewX||e.skewY}function Ql(e){return li(e.x)||li(e.y)}function li(e){return e&&e!=="0%"}function ss(e,t,n){const s=e-n,r=t*s;return n+r}function ci(e,t,n,s,r){return r!==void 0&&(e=ss(e,r,s)),ss(e,n,s)+t}function wr(e,t=0,n=1,s,r){e.min=ci(e.min,t,n,s,r),e.max=ci(e.max,t,n,s,r)}function ec(e,{x:t,y:n}){wr(e.x,t.translate,t.scale,t.originPoint),wr(e.y,n.translate,n.scale,n.originPoint)}const di=.999999999999,ui=1.0000000000001;function Ch(e,t,n,s=!1){const r=n.length;if(!r)return;t.x=t.y=1;let o,i;for(let a=0;a<r;a++){o=n[a],i=o.projectionDelta;const{visualElement:c}=o.options;c&&c.props.style&&c.props.style.display==="contents"||(s&&o.options.layoutScroll&&o.scroll&&o!==o.root&&_t(e,{x:-o.scroll.offset.x,y:-o.scroll.offset.y}),i&&(t.x*=i.x.scale,t.y*=i.y.scale,ec(e,i)),s&&bt(o.latestValues)&&_t(e,o.latestValues))}t.x<ui&&t.x>di&&(t.x=1),t.y<ui&&t.y>di&&(t.y=1)}function Lt(e,t){e.min=e.min+t,e.max=e.max+t}function fi(e,t,n,s,r=.5){const o=be(e.min,e.max,r);wr(e,t,n,o,s)}function _t(e,t){fi(e.x,t.x,t.scaleX,t.scale,t.originX),fi(e.y,t.y,t.scaleY,t.scale,t.originY)}function tc(e,t){return Jl(Sh(e.getBoundingClientRect(),t))}function Eh(e,t,n){const s=tc(e,n),{scroll:r}=t;return r&&(Lt(s.x,r.offset.x),Lt(s.y,r.offset.y)),s}const hi=()=>({translate:0,scale:1,origin:0,originPoint:0}),Bt=()=>({x:hi(),y:hi()}),mi=()=>({min:0,max:0}),Ce=()=>({x:mi(),y:mi()}),Sr={current:null},nc={current:!1};function kh(){if(nc.current=!0,!!_r)if(window.matchMedia){const e=window.matchMedia("(prefers-reduced-motion)"),t=()=>Sr.current=e.matches;e.addEventListener("change",t),t()}else Sr.current=!1}const Th=new WeakMap;function Ah(e,t,n){for(const s in t){const r=t[s],o=n[s];if(Re(r))e.addValue(s,r);else if(Re(o))e.addValue(s,Zt(r,{owner:e}));else if(o!==r)if(e.hasValue(s)){const i=e.getValue(s);i.liveStyle===!0?i.jump(r):i.hasAnimated||i.set(r)}else{const i=e.getStaticValue(s);e.addValue(s,Zt(i!==void 0?i:r,{owner:e}))}}for(const s in n)t[s]===void 0&&e.removeValue(s);return t}const pi=["AnimationStart","AnimationComplete","Update","BeforeLayoutMeasure","LayoutMeasure","LayoutAnimationStart","LayoutAnimationComplete"];class jh{scrapeMotionValuesFromProps(t,n,s){return{}}constructor({parent:t,props:n,presenceContext:s,reducedMotionConfig:r,blockInitialAnimation:o,visualState:i},a={}){this.current=null,this.children=new Set,this.isVariantNode=!1,this.isControllingVariants=!1,this.shouldReduceMotion=null,this.values=new Map,this.KeyframeResolver=so,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 h=De.now();this.renderScheduledAt<h&&(this.renderScheduledAt=h,ye.render(this.render,!1,!0))};const{latestValues:c,renderState:d}=i;this.latestValues=c,this.baseTarget={...c},this.initialValues=n.initial?{...c}:{},this.renderState=d,this.parent=t,this.props=n,this.presenceContext=s,this.depth=t?t.depth+1:0,this.reducedMotionConfig=r,this.options=a,this.blockInitialAnimation=!!o,this.isControllingVariants=fs(n),this.isVariantNode=Bl(n),this.isVariantNode&&(this.variantChildren=new Set),this.manuallyAnimateOnMount=!!(t&&t.current);const{willChange:u,...f}=this.scrapeMotionValuesFromProps(n,{},this);for(const h in f){const y=f[h];c[h]!==void 0&&Re(y)&&y.set(c[h])}}mount(t){var n;this.current=t,Th.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((s,r)=>this.bindToMotionValue(r,s)),nc.current||kh(),this.shouldReduceMotion=this.reducedMotionConfig==="never"?!1:this.reducedMotionConfig==="always"?!0:Sr.current,process.env.NODE_ENV!=="production"&&Zr(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(),ut(this.notifyUpdate),ut(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 s=this.features[n];s&&(s.unmount(),s.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 s=Jt.has(t);s&&this.onBindTransform&&this.onBindTransform();const r=n.on("change",i=>{this.latestValues[t]=i,this.props.onUpdate&&ye.preRender(this.notifyUpdate),s&&this.projection&&(this.projection.isTransformDirty=!0),this.scheduleRender()});let o;window.MotionCheckAppearSync&&(o=window.MotionCheckAppearSync(this,t,n)),this.valueSubscriptions.set(t,()=>{r(),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 Wt){const n=Wt[t];if(!n)continue;const{isEnabled:s,Feature:r}=n;if(!this.features[t]&&r&&s(this.props)&&(this.features[t]=new r(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):Ce()}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 s=0;s<pi.length;s++){const r=pi[s];this.propEventSubscriptions[r]&&(this.propEventSubscriptions[r](),delete this.propEventSubscriptions[r]);const o="on"+r,i=t[o];i&&(this.propEventSubscriptions[r]=this.on(r,i))}this.prevMotionValues=Ah(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 s=this.values.get(t);n!==s&&(s&&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 s=this.values.get(t);return s===void 0&&n!==void 0&&(s=Zt(n===null?void 0:n,{owner:this}),this.addValue(t,s)),s}readValue(t,n){let s=this.latestValues[t]!==void 0||!this.current?this.latestValues[t]:this.getBaseTargetFromProps(this.props,t)??this.readValueFromInstance(this.current,t,this.options);return s!=null&&(typeof s=="string"&&(Ka(s)||qa(s))?s=parseFloat(s):!Of(s)&&ft.test(n)&&(s=Nl(t,n)),this.setBaseTarget(t,Re(s)?s.get():s)),Re(s)?s.get():s}setBaseTarget(t,n){this.baseTarget[t]=n}getBaseTarget(t){var o;const{initial:n}=this.props;let s;if(typeof n=="string"||typeof n=="object"){const i=po(this.props,n,(o=this.presenceContext)==null?void 0:o.custom);i&&(s=i[t])}if(n&&s!==void 0)return s;const r=this.getBaseTargetFromProps(this.props,t);return r!==void 0&&!Re(r)?r:this.initialValues[t]!==void 0&&s===void 0?void 0:this.baseTarget[t]}on(t,n){return this.events[t]||(this.events[t]=new Ur),this.events[t].add(n)}notify(t,...n){this.events[t]&&this.events[t].notify(...n)}scheduleRenderMicrotask(){io.render(this.render)}}class sc extends jh{constructor(){super(...arguments),this.KeyframeResolver=Tf}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:s}){delete n[t],delete s[t]}handleChildMotionValue(){this.childSubscription&&(this.childSubscription(),delete this.childSubscription);const{children:t}=this.props;Re(t)&&(this.childSubscription=t.on("change",n=>{this.current&&(this.current.textContent=`${n}`)}))}}function rc(e,{style:t,vars:n},s,r){const o=e.style;let i;for(i in t)o[i]=t[i];r==null||r.applyProjectionStyles(o,s);for(i in n)o.setProperty(i,n[i])}function Mh(e){return window.getComputedStyle(e)}class Ph extends sc{constructor(){super(...arguments),this.type="html",this.renderInstance=rc}readValueFromInstance(t,n){var s;if(Jt.has(n))return(s=this.projection)!=null&&s.isProjecting?hr(n):Hu(t,n);{const r=Mh(t),o=(Kr(n)?r.getPropertyValue(n):r[n])||0;return typeof o=="string"?o.trim():o}}measureInstanceViewportBox(t,{transformPagePoint:n}){return tc(t,n)}build(t,n,s){fo(t,n,s.transformTemplate)}scrapeMotionValuesFromProps(t,n,s){return go(t,n,s)}}const oc=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 Nh(e,t,n,s){rc(e,t,void 0,s);for(const r in t.attrs)e.setAttribute(oc.has(r)?r:yo(r),t.attrs[r])}class Vh extends sc{constructor(){super(...arguments),this.type="svg",this.isSVGTag=!1,this.measureInstanceViewportBox=Ce}getBaseTargetFromProps(t,n){return t[n]}readValueFromInstance(t,n){if(Jt.has(n)){const s=Pl(n);return s&&s.default||0}return n=oc.has(n)?n:yo(n),t.getAttribute(n)}scrapeMotionValuesFromProps(t,n,s){return Kl(t,n,s)}build(t,n,s){Ul(t,n,this.isSVGTag,s.transformTemplate,s.style)}renderInstance(t,n,s,r){Nh(t,n,s,r)}mount(t){this.isSVGTag=Wl(t.tagName),super.mount(t)}}const Rh=(e,t)=>mo(e)?new Vh(t):new Ph(t,{allowProjection:e!==C.Fragment});function Ht(e,t,n){const s=e.getProps();return po(s,t,n!==void 0?n:s.custom,e)}const Cr=e=>Array.isArray(e);function Ih(e,t,n){e.hasValue(t)?e.getValue(t).set(n):e.addValue(t,Zt(n))}function Dh(e){return Cr(e)?e[e.length-1]||0:e}function $h(e,t){const n=Ht(e,t);let{transitionEnd:s={},transition:r={},...o}=n||{};o={...o,...s};for(const i in o){const a=Dh(o[i]);Ih(e,i,a)}}function Fh(e){return!!(Re(e)&&e.add)}function Er(e,t){const n=e.getValue("willChange");if(Fh(n))return n.add(t);if(!n&&ot.WillChange){const s=new ot.WillChange("auto");e.addValue("willChange",s),s.add(t)}}function ic(e){return e.props[Yl]}const Oh=e=>e!==null;function Lh(e,{repeat:t,repeatType:n="loop"},s){const r=e.filter(Oh),o=t&&n!=="loop"&&t%2===1?0:r.length-1;return r[o]}const _h={type:"spring",stiffness:500,damping:25,restSpeed:10},Bh=e=>({type:"spring",stiffness:550,damping:e===0?2*Math.sqrt(550):30,restSpeed:10}),zh={type:"keyframes",duration:.8},Hh={type:"keyframes",ease:[.25,.1,.35,1],duration:.3},Uh=(e,{keyframes:t})=>t.length>2?zh:Jt.has(e)?e.startsWith("scale")?Bh(t[1]):_h:Hh;function Zh({when:e,delay:t,delayChildren:n,staggerChildren:s,staggerDirection:r,repeat:o,repeatType:i,repeatDelay:a,from:c,elapsed:d,...u}){return!!Object.keys(u).length}const xo=(e,t,n,s={},r,o)=>i=>{const a=ro(s,e)||{},c=a.delay||s.delay||0;let{elapsed:d=0}=s;d=d-Ge(c);const u={keyframes:Array.isArray(n)?n:[null,n],ease:"easeOut",velocity:t.getVelocity(),...a,delay:-d,onUpdate:h=>{t.set(h),a.onUpdate&&a.onUpdate(h)},onComplete:()=>{i(),a.onComplete&&a.onComplete()},name:e,motionValue:t,element:o?void 0:r};Zh(a)||Object.assign(u,Uh(e,u)),u.duration&&(u.duration=Ge(u.duration)),u.repeatDelay&&(u.repeatDelay=Ge(u.repeatDelay)),u.from!==void 0&&(u.keyframes[0]=u.from);let f=!1;if((u.type===!1||u.duration===0&&!u.repeatDelay)&&(xr(u),u.delay===0&&(f=!0)),(ot.instantAnimations||ot.skipAnimations)&&(f=!0,xr(u),u.delay=0),u.allowFlatten=!a.type&&!a.ease,f&&!o&&t.get()!==void 0){const h=Lh(u.keyframes,a);if(h!==void 0){ye.update(()=>{u.onUpdate(h),u.onComplete()});return}}return a.isSync?new no(u):new hf(u)};function Wh({protectedKeys:e,needsAnimating:t},n){const s=e.hasOwnProperty(n)&&t[n]!==!0;return t[n]=!1,s}function ac(e,t,{delay:n=0,transitionOverride:s,type:r}={}){let{transition:o=e.getDefaultTransition(),transitionEnd:i,...a}=t;s&&(o=s);const c=[],d=r&&e.animationState&&e.animationState.getState()[r];for(const u in a){const f=e.getValue(u,e.latestValues[u]??null),h=a[u];if(h===void 0||d&&Wh(d,u))continue;const y={delay:n,...ro(o||{},u)},g=f.get();if(g!==void 0&&!f.isAnimating&&!Array.isArray(h)&&h===g&&!y.velocity)continue;let m=!1;if(window.MotionHandoffAnimation){const k=ic(e);if(k){const S=window.MotionHandoffAnimation(k,u,ye);S!==null&&(y.startTime=S,m=!0)}}Er(e,u),f.start(xo(u,f,h,e.shouldReduceMotion&&Al.has(u)?{type:!1}:y,e,m));const b=f.animation;b&&c.push(b)}return i&&Promise.all(c).then(()=>{ye.update(()=>{i&&$h(e,i)})}),c}function lc(e,t,n,s=0,r=1){const o=Array.from(e).sort((d,u)=>d.sortNodePosition(u)).indexOf(t),i=e.size,a=(i-1)*s;return typeof n=="function"?n(o,i):r===1?o*s:a-o*s}function kr(e,t,n={}){var c;const s=Ht(e,t,n.type==="exit"?(c=e.presenceContext)==null?void 0:c.custom:void 0);let{transition:r=e.getDefaultTransition()||{}}=s||{};n.transitionOverride&&(r=n.transitionOverride);const o=s?()=>Promise.all(ac(e,s,n)):()=>Promise.resolve(),i=e.variantChildren&&e.variantChildren.size?(d=0)=>{const{delayChildren:u=0,staggerChildren:f,staggerDirection:h}=r;return Gh(e,t,d,u,f,h,n)}:()=>Promise.resolve(),{when:a}=r;if(a){const[d,u]=a==="beforeChildren"?[o,i]:[i,o];return d().then(()=>u())}else return Promise.all([o(),i(n.delay)])}function Gh(e,t,n=0,s=0,r=0,o=1,i){const a=[];for(const c of e.variantChildren)c.notify("AnimationStart",t),a.push(kr(c,t,{...i,delay:n+(typeof s=="function"?0:s)+lc(e.variantChildren,c,s,r,o)}).then(()=>c.notify("AnimationComplete",t)));return Promise.all(a)}function Kh(e,t,n={}){e.notify("AnimationStart",t);let s;if(Array.isArray(t)){const r=t.map(o=>kr(e,o,n));s=Promise.all(r)}else if(typeof t=="string")s=kr(e,t,n);else{const r=typeof t=="function"?Ht(e,t,n.custom):t;s=Promise.all(ac(e,r,n))}return s.then(()=>{e.notify("AnimationComplete",t)})}function cc(e,t){if(!Array.isArray(t))return!1;const n=t.length;if(n!==e.length)return!1;for(let s=0;s<n;s++)if(t[s]!==e[s])return!1;return!0}const Yh=uo.length;function dc(e){if(!e)return;if(!e.isControllingVariants){const n=e.parent?dc(e.parent)||{}:{};return e.props.initial!==void 0&&(n.initial=e.props.initial),n}const t={};for(let n=0;n<Yh;n++){const s=uo[n],r=e.props[s];(bn(r)||r===!1)&&(t[s]=r)}return t}const qh=[...co].reverse(),Xh=co.length;function Jh(e){return t=>Promise.all(t.map(({animation:n,options:s})=>Kh(e,n,s)))}function Qh(e){let t=Jh(e),n=gi(),s=!0;const r=c=>(d,u)=>{var h;const f=Ht(e,u,c==="exit"?(h=e.presenceContext)==null?void 0:h.custom:void 0);if(f){const{transition:y,transitionEnd:g,...m}=f;d={...d,...m,...g}}return d};function o(c){t=c(e)}function i(c){const{props:d}=e,u=dc(e.parent)||{},f=[],h=new Set;let y={},g=1/0;for(let b=0;b<Xh;b++){const k=qh[b],S=n[k],E=d[k]!==void 0?d[k]:u[k],w=bn(E),v=k===c?S.isActive:null;v===!1&&(g=b);let A=E===u[k]&&E!==d[k]&&w;if(A&&s&&e.manuallyAnimateOnMount&&(A=!1),S.protectedKeys={...y},!S.isActive&&v===null||!E&&!S.prevProp||us(E)||typeof E=="boolean")continue;const T=em(S.prevProp,E);let j=T||k===c&&S.isActive&&!A&&w||b>g&&w,z=!1;const x=Array.isArray(E)?E:[E];let I=x.reduce(r(k),{});v===!1&&(I={});const{prevResolvedValues:L={}}=S,J={...L,...I},te=Y=>{j=!0,h.has(Y)&&(z=!0,h.delete(Y)),S.needsAnimating[Y]=!0;const R=e.getValue(Y);R&&(R.liveStyle=!1)};for(const Y in J){const R=I[Y],X=L[Y];if(y.hasOwnProperty(Y))continue;let P=!1;Cr(R)&&Cr(X)?P=!cc(R,X):P=R!==X,P?R!=null?te(Y):h.add(Y):R!==void 0&&h.has(Y)?te(Y):S.protectedKeys[Y]=!0}S.prevProp=E,S.prevResolvedValues=I,S.isActive&&(y={...y,...I}),s&&e.blockInitialAnimation&&(j=!1);const ee=A&&T;j&&(!ee||z)&&f.push(...x.map(Y=>{const R={type:k};if(typeof Y=="string"&&s&&!ee&&e.manuallyAnimateOnMount&&e.parent){const{parent:X}=e,P=Ht(X,Y);if(X.enteringChildren&&P){const{delayChildren:N}=P.transition||{};R.delay=lc(X.enteringChildren,e,N)}}return{animation:Y,options:R}}))}if(h.size){const b={};if(typeof d.initial!="boolean"){const k=Ht(e,Array.isArray(d.initial)?d.initial[0]:d.initial);k&&k.transition&&(b.transition=k.transition)}h.forEach(k=>{const S=e.getBaseTarget(k),E=e.getValue(k);E&&(E.liveStyle=!0),b[k]=S??null}),f.push({animation:b})}let m=!!f.length;return s&&(d.initial===!1||d.initial===d.animate)&&!e.manuallyAnimateOnMount&&(m=!1),s=!1,m?t(f):Promise.resolve()}function a(c,d){var f;if(n[c].isActive===d)return Promise.resolve();(f=e.variantChildren)==null||f.forEach(h=>{var y;return(y=h.animationState)==null?void 0:y.setActive(c,d)}),n[c].isActive=d;const u=i(c);for(const h in n)n[h].protectedKeys={};return u}return{animateChanges:i,setActive:a,setAnimateFunction:o,getState:()=>n,reset:()=>{n=gi(),s=!0}}}function em(e,t){return typeof t=="string"?t!==e:Array.isArray(t)?!cc(t,e):!1}function yt(e=!1){return{isActive:e,protectedKeys:{},needsAnimating:{},prevResolvedValues:{}}}function gi(){return{animate:yt(!0),whileInView:yt(),whileHover:yt(),whileTap:yt(),whileDrag:yt(),whileFocus:yt(),exit:yt()}}class pt{constructor(t){this.isMounted=!1,this.node=t}update(){}}class tm extends pt{constructor(t){super(t),t.animationState||(t.animationState=Qh(t))}updateAnimationControlsSubscription(){const{animate:t}=this.node.getProps();us(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 nm=0;class sm extends pt{constructor(){super(...arguments),this.id=nm++}update(){if(!this.node.presenceContext)return;const{isPresent:t,onExitComplete:n}=this.node.presenceContext,{isPresent:s}=this.node.prevPresenceContext||{};if(!this.node.animationState||t===s)return;const r=this.node.animationState.setActive("exit",!t);n&&!t&&r.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 rm={animation:{Feature:tm},exit:{Feature:sm}};function wn(e,t,n,s={passive:!0}){return e.addEventListener(t,n,s),()=>e.removeEventListener(t,n)}function Tn(e){return{point:{x:e.pageX,y:e.pageY}}}const om=e=>t=>ao(t)&&e(t,Tn(t));function fn(e,t,n,s){return wn(e,t,om(n),s)}const uc=1e-4,im=1-uc,am=1+uc,fc=.01,lm=0-fc,cm=0+fc;function Ie(e){return e.max-e.min}function dm(e,t,n){return Math.abs(e-t)<=n}function yi(e,t,n,s=.5){e.origin=s,e.originPoint=be(t.min,t.max,e.origin),e.scale=Ie(n)/Ie(t),e.translate=be(n.min,n.max,e.origin)-e.originPoint,(e.scale>=im&&e.scale<=am||isNaN(e.scale))&&(e.scale=1),(e.translate>=lm&&e.translate<=cm||isNaN(e.translate))&&(e.translate=0)}function hn(e,t,n,s){yi(e.x,t.x,n.x,s?s.originX:void 0),yi(e.y,t.y,n.y,s?s.originY:void 0)}function xi(e,t,n){e.min=n.min+t.min,e.max=e.min+Ie(t)}function um(e,t,n){xi(e.x,t.x,n.x),xi(e.y,t.y,n.y)}function bi(e,t,n){e.min=t.min-n.min,e.max=e.min+Ie(t)}function mn(e,t,n){bi(e.x,t.x,n.x),bi(e.y,t.y,n.y)}function _e(e){return[e("x"),e("y")]}const hc=({current:e})=>e?e.ownerDocument.defaultView:null,vi=(e,t)=>Math.abs(e-t);function fm(e,t){const n=vi(e.x,t.x),s=vi(e.y,t.y);return Math.sqrt(n**2+s**2)}class mc{constructor(t,n,{transformPagePoint:s,contextWindow:r=window,dragSnapToOrigin:o=!1,distanceThreshold:i=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 h=Os(this.lastMoveEventInfo,this.history),y=this.startEvent!==null,g=fm(h.offset,{x:0,y:0})>=this.distanceThreshold;if(!y&&!g)return;const{point:m}=h,{timestamp:b}=Ne;this.history.push({...m,timestamp:b});const{onStart:k,onMove:S}=this.handlers;y||(k&&k(this.lastMoveEvent,h),this.startEvent=this.lastMoveEvent),S&&S(this.lastMoveEvent,h)},this.handlePointerMove=(h,y)=>{this.lastMoveEvent=h,this.lastMoveEventInfo=Fs(y,this.transformPagePoint),ye.update(this.updatePoint,!0)},this.handlePointerUp=(h,y)=>{this.end();const{onEnd:g,onSessionEnd:m,resumeAnimation:b}=this.handlers;if(this.dragSnapToOrigin&&b&&b(),!(this.lastMoveEvent&&this.lastMoveEventInfo))return;const k=Os(h.type==="pointercancel"?this.lastMoveEventInfo:Fs(y,this.transformPagePoint),this.history);this.startEvent&&g&&g(h,k),m&&m(h,k)},!ao(t))return;this.dragSnapToOrigin=o,this.handlers=n,this.transformPagePoint=s,this.distanceThreshold=i,this.contextWindow=r||window;const a=Tn(t),c=Fs(a,this.transformPagePoint),{point:d}=c,{timestamp:u}=Ne;this.history=[{...d,timestamp:u}];const{onSessionStart:f}=n;f&&f(t,Os(c,this.history)),this.removeListeners=Cn(fn(this.contextWindow,"pointermove",this.handlePointerMove),fn(this.contextWindow,"pointerup",this.handlePointerUp),fn(this.contextWindow,"pointercancel",this.handlePointerUp))}updateHandlers(t){this.handlers=t}end(){this.removeListeners&&this.removeListeners(),ut(this.updatePoint)}}function Fs(e,t){return t?{point:t(e.point)}:e}function wi(e,t){return{x:e.x-t.x,y:e.y-t.y}}function Os({point:e},t){return{point:e,delta:wi(e,pc(t)),offset:wi(e,hm(t)),velocity:mm(t,.1)}}function hm(e){return e[0]}function pc(e){return e[e.length-1]}function mm(e,t){if(e.length<2)return{x:0,y:0};let n=e.length-1,s=null;const r=pc(e);for(;n>=0&&(s=e[n],!(r.timestamp-s.timestamp>Ge(t)));)n--;if(!s)return{x:0,y:0};const o=qe(r.timestamp-s.timestamp);if(o===0)return{x:0,y:0};const i={x:(r.x-s.x)/o,y:(r.y-s.y)/o};return i.x===1/0&&(i.x=0),i.y===1/0&&(i.y=0),i}function pm(e,{min:t,max:n},s){return t!==void 0&&e<t?e=s?be(t,e,s.min):Math.max(e,t):n!==void 0&&e>n&&(e=s?be(n,e,s.max):Math.min(e,n)),e}function Si(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 gm(e,{top:t,left:n,bottom:s,right:r}){return{x:Si(e.x,n,r),y:Si(e.y,t,s)}}function Ci(e,t){let n=t.min-e.min,s=t.max-e.max;return t.max-t.min<e.max-e.min&&([n,s]=[s,n]),{min:n,max:s}}function ym(e,t){return{x:Ci(e.x,t.x),y:Ci(e.y,t.y)}}function xm(e,t){let n=.5;const s=Ie(e),r=Ie(t);return r>s?n=gn(t.min,t.max-s,e.min):s>r&&(n=gn(e.min,e.max-r,t.min)),st(0,1,n)}function bm(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 Tr=.35;function vm(e=Tr){return e===!1?e=0:e===!0&&(e=Tr),{x:Ei(e,"left","right"),y:Ei(e,"top","bottom")}}function Ei(e,t,n){return{min:ki(e,t),max:ki(e,n)}}function ki(e,t){return typeof e=="number"?e:e[t]||0}const wm=new WeakMap;class Sm{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=Ce(),this.latestPointerEvent=null,this.latestPanInfo=null,this.visualElement=t}start(t,{snapToCursor:n=!1,distanceThreshold:s}={}){const{presenceContext:r}=this.visualElement;if(r&&r.isPresent===!1)return;const o=f=>{const{dragSnapToOrigin:h}=this.getProps();h?this.pauseAnimation():this.stopAnimation(),n&&this.snapToCursor(Tn(f).point)},i=(f,h)=>{const{drag:y,dragPropagation:g,onDragStart:m}=this.getProps();if(y&&!g&&(this.openDragLock&&this.openDragLock(),this.openDragLock=Pf(y),!this.openDragLock))return;this.latestPointerEvent=f,this.latestPanInfo=h,this.isDragging=!0,this.currentDirection=null,this.resolveConstraints(),this.visualElement.projection&&(this.visualElement.projection.isAnimationBlocked=!0,this.visualElement.projection.target=void 0),_e(k=>{let S=this.getAxisMotionValue(k).get()||0;if(Xe.test(S)){const{projection:E}=this.visualElement;if(E&&E.layout){const w=E.layout.layoutBox[k];w&&(S=Ie(w)*(parseFloat(S)/100))}}this.originPoint[k]=S}),m&&ye.postRender(()=>m(f,h)),Er(this.visualElement,"transform");const{animationState:b}=this.visualElement;b&&b.setActive("whileDrag",!0)},a=(f,h)=>{this.latestPointerEvent=f,this.latestPanInfo=h;const{dragPropagation:y,dragDirectionLock:g,onDirectionLock:m,onDrag:b}=this.getProps();if(!y&&!this.openDragLock)return;const{offset:k}=h;if(g&&this.currentDirection===null){this.currentDirection=Cm(k),this.currentDirection!==null&&m&&m(this.currentDirection);return}this.updateAxis("x",h.point,k),this.updateAxis("y",h.point,k),this.visualElement.render(),b&&b(f,h)},c=(f,h)=>{this.latestPointerEvent=f,this.latestPanInfo=h,this.stop(f,h),this.latestPointerEvent=null,this.latestPanInfo=null},d=()=>_e(f=>{var h;return this.getAnimationState(f)==="paused"&&((h=this.getAxisMotionValue(f).animation)==null?void 0:h.play())}),{dragSnapToOrigin:u}=this.getProps();this.panSession=new mc(t,{onSessionStart:o,onStart:i,onMove:a,onSessionEnd:c,resumeAnimation:d},{transformPagePoint:this.visualElement.getTransformPagePoint(),dragSnapToOrigin:u,distanceThreshold:s,contextWindow:hc(this.visualElement)})}stop(t,n){const s=t||this.latestPointerEvent,r=n||this.latestPanInfo,o=this.isDragging;if(this.cancel(),!o||!r||!s)return;const{velocity:i}=r;this.startAnimation(i);const{onDragEnd:a}=this.getProps();a&&ye.postRender(()=>a(s,r))}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:s}=this.getProps();!s&&this.openDragLock&&(this.openDragLock(),this.openDragLock=null),n&&n.setActive("whileDrag",!1)}updateAxis(t,n,s){const{drag:r}=this.getProps();if(!s||!$n(t,r,this.currentDirection))return;const o=this.getAxisMotionValue(t);let i=this.originPoint[t]+s[t];this.constraints&&this.constraints[t]&&(i=pm(i,this.constraints[t],this.elastic[t])),o.set(i)}resolveConstraints(){var o;const{dragConstraints:t,dragElastic:n}=this.getProps(),s=this.visualElement.projection&&!this.visualElement.projection.layout?this.visualElement.projection.measure(!1):(o=this.visualElement.projection)==null?void 0:o.layout,r=this.constraints;t&&Ot(t)?this.constraints||(this.constraints=this.resolveRefConstraints()):t&&s?this.constraints=gm(s.layoutBox,t):this.constraints=!1,this.elastic=vm(n),r!==this.constraints&&s&&this.constraints&&!this.hasMutatedConstraints&&_e(i=>{this.constraints!==!1&&this.getAxisMotionValue(i)&&(this.constraints[i]=bm(s.layoutBox[i],this.constraints[i]))})}resolveRefConstraints(){const{dragConstraints:t,onMeasureDragConstraints:n}=this.getProps();if(!t||!Ot(t))return!1;const s=t.current;rt(s!==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:r}=this.visualElement;if(!r||!r.layout)return!1;const o=Eh(s,r.root,this.visualElement.getTransformPagePoint());let i=ym(r.layout.layoutBox,o);if(n){const a=n(wh(i));this.hasMutatedConstraints=!!a,a&&(i=Jl(a))}return i}startAnimation(t){const{drag:n,dragMomentum:s,dragElastic:r,dragTransition:o,dragSnapToOrigin:i,onDragTransitionEnd:a}=this.getProps(),c=this.constraints||{},d=_e(u=>{if(!$n(u,n,this.currentDirection))return;let f=c&&c[u]||{};i&&(f={min:0,max:0});const h=r?200:1e6,y=r?40:1e7,g={type:"inertia",velocity:s?t[u]:0,bounceStiffness:h,bounceDamping:y,timeConstant:750,restDelta:1,restSpeed:10,...o,...f};return this.startAxisValueAnimation(u,g)});return Promise.all(d).then(a)}startAxisValueAnimation(t,n){const s=this.getAxisMotionValue(t);return Er(this.visualElement,t),s.start(xo(t,s,0,n,this.visualElement,!1))}stopAnimation(){_e(t=>this.getAxisMotionValue(t).stop())}pauseAnimation(){_e(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()}`,s=this.visualElement.getProps(),r=s[n];return r||this.visualElement.getValue(t,(s.initial?s.initial[t]:void 0)||0)}snapToCursor(t){_e(n=>{const{drag:s}=this.getProps();if(!$n(n,s,this.currentDirection))return;const{projection:r}=this.visualElement,o=this.getAxisMotionValue(n);if(r&&r.layout){const{min:i,max:a}=r.layout.layoutBox[n];o.set(t[n]-be(i,a,.5))}})}scalePositionWithinConstraints(){if(!this.visualElement.current)return;const{drag:t,dragConstraints:n}=this.getProps(),{projection:s}=this.visualElement;if(!Ot(n)||!s||!this.constraints)return;this.stopAnimation();const r={x:0,y:0};_e(i=>{const a=this.getAxisMotionValue(i);if(a&&this.constraints!==!1){const c=a.get();r[i]=xm({min:c,max:c},this.constraints[i])}});const{transformTemplate:o}=this.visualElement.getProps();this.visualElement.current.style.transform=o?o({},""):"none",s.root&&s.root.updateScroll(),s.updateLayout(),this.resolveConstraints(),_e(i=>{if(!$n(i,t,null))return;const a=this.getAxisMotionValue(i),{min:c,max:d}=this.constraints[i];a.set(be(c,d,r[i]))})}addListeners(){if(!this.visualElement.current)return;wm.set(this.visualElement,this);const t=this.visualElement.current,n=fn(t,"pointerdown",c=>{const{drag:d,dragListener:u=!0}=this.getProps();d&&u&&this.start(c)}),s=()=>{const{dragConstraints:c}=this.getProps();Ot(c)&&c.current&&(this.constraints=this.resolveRefConstraints())},{projection:r}=this.visualElement,o=r.addEventListener("measure",s);r&&!r.layout&&(r.root&&r.root.updateScroll(),r.updateLayout()),ye.read(s);const i=wn(window,"resize",()=>this.scalePositionWithinConstraints()),a=r.addEventListener("didUpdate",({delta:c,hasLayoutChanged:d})=>{this.isDragging&&d&&(_e(u=>{const f=this.getAxisMotionValue(u);f&&(this.originPoint[u]+=c[u].translate,f.set(f.get()+c[u].translate))}),this.visualElement.render())});return()=>{i(),n(),o(),a&&a()}}getProps(){const t=this.visualElement.getProps(),{drag:n=!1,dragDirectionLock:s=!1,dragPropagation:r=!1,dragConstraints:o=!1,dragElastic:i=Tr,dragMomentum:a=!0}=t;return{...t,drag:n,dragDirectionLock:s,dragPropagation:r,dragConstraints:o,dragElastic:i,dragMomentum:a}}}function $n(e,t,n){return(t===!0||t===e)&&(n===null||n===e)}function Cm(e,t=10){let n=null;return Math.abs(e.y)>t?n="y":Math.abs(e.x)>t&&(n="x"),n}class Em extends pt{constructor(t){super(t),this.removeGroupControls=He,this.removeListeners=He,this.controls=new Sm(t)}mount(){const{dragControls:t}=this.node.getProps();t&&(this.removeGroupControls=t.subscribe(this.controls)),this.removeListeners=this.controls.addListeners()||He}unmount(){this.removeGroupControls(),this.removeListeners()}}const Ti=e=>(t,n)=>{e&&ye.postRender(()=>e(t,n))};class km extends pt{constructor(){super(...arguments),this.removePointerDownListener=He}onPointerDown(t){this.session=new mc(t,this.createPanHandlers(),{transformPagePoint:this.node.getTransformPagePoint(),contextWindow:hc(this.node)})}createPanHandlers(){const{onPanSessionStart:t,onPanStart:n,onPan:s,onPanEnd:r}=this.node.getProps();return{onSessionStart:Ti(t),onStart:Ti(n),onMove:s,onEnd:(o,i)=>{delete this.session,r&&ye.postRender(()=>r(o,i))}}}mount(){this.removePointerDownListener=fn(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 Yn={hasAnimatedSinceResize:!0,hasEverUpdated:!1};function Ai(e,t){return t.max===t.min?0:e/(t.max-t.min)*100}const rn={correct:(e,t)=>{if(!t.target)return e;if(typeof e=="string")if(Q.test(e))e=parseFloat(e);else return e;const n=Ai(e,t.target.x),s=Ai(e,t.target.y);return`${n}% ${s}%`}},Tm={correct:(e,{treeScale:t,projectionDelta:n})=>{const s=e,r=ft.parse(e);if(r.length>5)return s;const o=ft.createTransformer(e),i=typeof r[0]!="number"?1:0,a=n.x.scale*t.x,c=n.y.scale*t.y;r[0+i]/=a,r[1+i]/=c;const d=be(a,c,.5);return typeof r[2+i]=="number"&&(r[2+i]/=d),typeof r[3+i]=="number"&&(r[3+i]/=d),o(r)}};let Ls=!1;class Am extends C.Component{componentDidMount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:s,layoutId:r}=this.props,{projection:o}=t;Yf(jm),o&&(n.group&&n.group.add(o),s&&s.register&&r&&s.register(o),Ls&&o.root.didUpdate(),o.addEventListener("animationComplete",()=>{this.safeToRemove()}),o.setOptions({...o.options,onExitComplete:()=>this.safeToRemove()})),Yn.hasEverUpdated=!0}getSnapshotBeforeUpdate(t){const{layoutDependency:n,visualElement:s,drag:r,isPresent:o}=this.props,{projection:i}=s;return i&&(i.isPresent=o,Ls=!0,r||t.layoutDependency!==n||n===void 0||t.isPresent!==o?i.willUpdate():this.safeToRemove(),t.isPresent!==o&&(o?i.promote():i.relegate()||ye.postRender(()=>{const a=i.getStack();(!a||!a.members.length)&&this.safeToRemove()}))),null}componentDidUpdate(){const{projection:t}=this.props.visualElement;t&&(t.root.didUpdate(),io.postRender(()=>{!t.currentAnimation&&t.isLead()&&this.safeToRemove()}))}componentWillUnmount(){const{visualElement:t,layoutGroup:n,switchLayoutGroup:s}=this.props,{projection:r}=t;Ls=!0,r&&(r.scheduleCheckAfterUnmount(),n&&n.group&&n.group.remove(r),s&&s.deregister&&s.deregister(r))}safeToRemove(){const{safeToRemove:t}=this.props;t&&t()}render(){return null}}function gc(e){const[t,n]=Ol(),s=C.useContext(Or);return l.jsx(Am,{...e,layoutGroup:s,switchLayoutGroup:C.useContext(ql),isPresent:t,safeToRemove:n})}const jm={borderRadius:{...rn,applyTo:["borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius"]},borderTopLeftRadius:rn,borderTopRightRadius:rn,borderBottomLeftRadius:rn,borderBottomRightRadius:rn,boxShadow:Tm};function Mm(e,t,n){const s=Re(e)?e:Zt(e);return s.start(xo("",s,t,n)),s.animation}const Pm=(e,t)=>e.depth-t.depth;class Nm{constructor(){this.children=[],this.isDirty=!1}add(t){Br(this.children,t),this.isDirty=!0}remove(t){zr(this.children,t),this.isDirty=!0}forEach(t){this.isDirty&&this.children.sort(Pm),this.isDirty=!1,this.children.forEach(t)}}function Vm(e,t){const n=De.now(),s=({timestamp:r})=>{const o=r-n;o>=t&&(ut(s),e(o-t))};return ye.setup(s,!0),()=>ut(s)}const yc=["TopLeft","TopRight","BottomLeft","BottomRight"],Rm=yc.length,ji=e=>typeof e=="string"?parseFloat(e):e,Mi=e=>typeof e=="number"||Q.test(e);function Im(e,t,n,s,r,o){r?(e.opacity=be(0,n.opacity??1,Dm(s)),e.opacityExit=be(t.opacity??1,0,$m(s))):o&&(e.opacity=be(t.opacity??1,n.opacity??1,s));for(let i=0;i<Rm;i++){const a=`border${yc[i]}Radius`;let c=Pi(t,a),d=Pi(n,a);if(c===void 0&&d===void 0)continue;c||(c=0),d||(d=0),c===0||d===0||Mi(c)===Mi(d)?(e[a]=Math.max(be(ji(c),ji(d),s),0),(Xe.test(d)||Xe.test(c))&&(e[a]+="%")):e[a]=d}(t.rotate||n.rotate)&&(e.rotate=be(t.rotate||0,n.rotate||0,s))}function Pi(e,t){return e[t]!==void 0?e[t]:e.borderRadius}const Dm=xc(0,.5,rl),$m=xc(.5,.95,He);function xc(e,t,n){return s=>s<e?0:s>t?1:n(gn(e,t,s))}function Ni(e,t){e.min=t.min,e.max=t.max}function Le(e,t){Ni(e.x,t.x),Ni(e.y,t.y)}function Vi(e,t){e.translate=t.translate,e.scale=t.scale,e.originPoint=t.originPoint,e.origin=t.origin}function Ri(e,t,n,s,r){return e-=t,e=ss(e,1/n,s),r!==void 0&&(e=ss(e,1/r,s)),e}function Fm(e,t=0,n=1,s=.5,r,o=e,i=e){if(Xe.test(t)&&(t=parseFloat(t),t=be(i.min,i.max,t/100)-i.min),typeof t!="number")return;let a=be(o.min,o.max,s);e===o&&(a-=t),e.min=Ri(e.min,t,n,a,r),e.max=Ri(e.max,t,n,a,r)}function Ii(e,t,[n,s,r],o,i){Fm(e,t[n],t[s],t[r],t.scale,o,i)}const Om=["x","scaleX","originX"],Lm=["y","scaleY","originY"];function Di(e,t,n,s){Ii(e.x,t,Om,n?n.x:void 0,s?s.x:void 0),Ii(e.y,t,Lm,n?n.y:void 0,s?s.y:void 0)}function $i(e){return e.translate===0&&e.scale===1}function bc(e){return $i(e.x)&&$i(e.y)}function Fi(e,t){return e.min===t.min&&e.max===t.max}function _m(e,t){return Fi(e.x,t.x)&&Fi(e.y,t.y)}function Oi(e,t){return Math.round(e.min)===Math.round(t.min)&&Math.round(e.max)===Math.round(t.max)}function vc(e,t){return Oi(e.x,t.x)&&Oi(e.y,t.y)}function Li(e){return Ie(e.x)/Ie(e.y)}function _i(e,t){return e.translate===t.translate&&e.scale===t.scale&&e.originPoint===t.originPoint}class Bm{constructor(){this.members=[]}add(t){Br(this.members,t),t.scheduleRender()}remove(t){if(zr(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(r=>t===r);if(n===0)return!1;let s;for(let r=n;r>=0;r--){const o=this.members[r];if(o.isPresent!==!1){s=o;break}}return s?(this.promote(s),!0):!1}promote(t,n){const s=this.lead;if(t!==s&&(this.prevLead=s,this.lead=t,t.show(),s)){s.instance&&s.scheduleRender(),t.scheduleRender(),t.resumeFrom=s,n&&(t.resumeFrom.preserveOpacity=!0),s.snapshot&&(t.snapshot=s.snapshot,t.snapshot.latestValues=s.animationValues||s.latestValues),t.root&&t.root.isUpdating&&(t.isLayoutDirty=!0);const{crossfade:r}=t.options;r===!1&&s.hide()}}exitAnimationComplete(){this.members.forEach(t=>{const{options:n,resumingFrom:s}=t;n.onExitComplete&&n.onExitComplete(),s&&s.options.onExitComplete&&s.options.onExitComplete()})}scheduleRender(){this.members.forEach(t=>{t.instance&&t.scheduleRender(!1)})}removeLeadSnapshot(){this.lead&&this.lead.snapshot&&(this.lead.snapshot=void 0)}}function zm(e,t,n){let s="";const r=e.x.translate/t.x,o=e.y.translate/t.y,i=(n==null?void 0:n.z)||0;if((r||o||i)&&(s=`translate3d(${r}px, ${o}px, ${i}px) `),(t.x!==1||t.y!==1)&&(s+=`scale(${1/t.x}, ${1/t.y}) `),n){const{transformPerspective:d,rotate:u,rotateX:f,rotateY:h,skewX:y,skewY:g}=n;d&&(s=`perspective(${d}px) ${s}`),u&&(s+=`rotate(${u}deg) `),f&&(s+=`rotateX(${f}deg) `),h&&(s+=`rotateY(${h}deg) `),y&&(s+=`skewX(${y}deg) `),g&&(s+=`skewY(${g}deg) `)}const a=e.x.scale*t.x,c=e.y.scale*t.y;return(a!==1||c!==1)&&(s+=`scale(${a}, ${c})`),s||"none"}const _s=["","X","Y","Z"],Hm=1e3;let Um=0;function Bs(e,t,n,s){const{latestValues:r}=t;r[e]&&(n[e]=r[e],t.setStaticValue(e,0),s&&(s[e]=0))}function wc(e){if(e.hasCheckedOptimisedAppear=!0,e.root===e)return;const{visualElement:t}=e.options;if(!t)return;const n=ic(t);if(window.MotionHasOptimisedAnimation(n,"transform")){const{layout:r,layoutId:o}=e.options;window.MotionCancelOptimisedAnimation(n,"transform",ye,!(r||o))}const{parent:s}=e;s&&!s.hasCheckedOptimisedAppear&&wc(s)}function Sc({attachResizeListener:e,defaultParent:t,measureScroll:n,checkIsScrollRoot:s,resetTransform:r}){return class{constructor(i={},a=t==null?void 0:t()){this.id=Um++,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(Gm),this.nodes.forEach(Xm),this.nodes.forEach(Jm),this.nodes.forEach(Km)},this.resolvedRelativeTargetAt=0,this.hasProjected=!1,this.isVisible=!0,this.animationProgress=0,this.sharedNodes=new Map,this.latestValues=i,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 c=0;c<this.path.length;c++)this.path[c].shouldResetTransform=!0;this.root===this&&(this.nodes=new Nm)}addEventListener(i,a){return this.eventHandlers.has(i)||this.eventHandlers.set(i,new Ur),this.eventHandlers.get(i).add(a)}notifyListeners(i,...a){const c=this.eventHandlers.get(i);c&&c.notify(...a)}hasListeners(i){return this.eventHandlers.has(i)}mount(i){if(this.instance)return;this.isSVG=Fl(i)&&!$f(i),this.instance=i;const{layoutId:a,layout:c,visualElement:d}=this.options;if(d&&!d.current&&d.mount(i),this.root.nodes.add(this),this.parent&&this.parent.children.add(this),this.root.hasTreeAnimated&&(c||a)&&(this.isLayoutDirty=!0),e){let u,f=0;const h=()=>this.root.updateBlockedByResize=!1;ye.read(()=>{f=window.innerWidth}),e(i,()=>{const y=window.innerWidth;y!==f&&(f=y,this.root.updateBlockedByResize=!0,u&&u(),u=Vm(h,250),Yn.hasAnimatedSinceResize&&(Yn.hasAnimatedSinceResize=!1,this.nodes.forEach(Hi)))})}a&&this.root.registerSharedNode(a,this),this.options.animate!==!1&&d&&(a||c)&&this.addEventListener("didUpdate",({delta:u,hasLayoutChanged:f,hasRelativeLayoutChanged:h,layout:y})=>{if(this.isTreeAnimationBlocked()){this.target=void 0,this.relativeTarget=void 0;return}const g=this.options.transition||d.getDefaultTransition()||sp,{onLayoutAnimationStart:m,onLayoutAnimationComplete:b}=d.getProps(),k=!this.targetLayout||!vc(this.targetLayout,y),S=!f&&h;if(this.options.layoutRoot||this.resumeFrom||S||f&&(k||!this.currentAnimation)){this.resumeFrom&&(this.resumingFrom=this.resumeFrom,this.resumingFrom.resumingFrom=void 0);const E={...ro(g,"layout"),onPlay:m,onComplete:b};(d.shouldReduceMotion||this.options.layoutRoot)&&(E.delay=0,E.type=!1),this.startAnimation(E),this.setAnimationOrigin(u,S)}else f||Hi(this),this.isLead()&&this.options.onExitComplete&&this.options.onExitComplete();this.targetLayout=y})}unmount(){this.options.layoutId&&this.willUpdate(),this.root.nodes.remove(this);const i=this.getStack();i&&i.remove(this),this.parent&&this.parent.children.delete(this),this.instance=void 0,this.eventHandlers.clear(),ut(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(Qm),this.animationId++)}getTransformTemplate(){const{visualElement:i}=this.options;return i&&i.getProps().transformTemplate}willUpdate(i=!0){if(this.root.hasTreeAnimated=!0,this.root.isUpdateBlocked()){this.options.onExitComplete&&this.options.onExitComplete();return}if(window.MotionCancelOptimisedAnimation&&!this.hasCheckedOptimisedAppear&&wc(this),!this.root.isUpdating&&this.root.startUpdate(),this.isLayoutDirty)return;this.isLayoutDirty=!0;for(let u=0;u<this.path.length;u++){const f=this.path[u];f.shouldResetTransform=!0,f.updateScroll("snapshot"),f.options.layoutRoot&&f.willUpdate(!1)}const{layoutId:a,layout:c}=this.options;if(a===void 0&&!c)return;const d=this.getTransformTemplate();this.prevTransformTemplateValue=d?d(this.latestValues,""):void 0,this.updateSnapshot(),i&&this.notifyListeners("willUpdate")}update(){if(this.updateScheduled=!1,this.isUpdateBlocked()){this.unblockUpdate(),this.clearAllSnapshots(),this.nodes.forEach(Bi);return}if(this.animationId<=this.animationCommitId){this.nodes.forEach(zi);return}this.animationCommitId=this.animationId,this.isUpdating?(this.isUpdating=!1,this.nodes.forEach(qm),this.nodes.forEach(Zm),this.nodes.forEach(Wm)):this.nodes.forEach(zi),this.clearAllSnapshots();const a=De.now();Ne.delta=st(0,1e3/60,a-Ne.timestamp),Ne.timestamp=a,Ne.isProcessing=!0,Ms.update.process(Ne),Ms.preRender.process(Ne),Ms.render.process(Ne),Ne.isProcessing=!1}didUpdate(){this.updateScheduled||(this.updateScheduled=!0,io.read(this.scheduleUpdate))}clearAllSnapshots(){this.nodes.forEach(Ym),this.sharedNodes.forEach(ep)}scheduleUpdateProjection(){this.projectionUpdateScheduled||(this.projectionUpdateScheduled=!0,ye.preRender(this.updateProjection,!1,!0))}scheduleCheckAfterUnmount(){ye.postRender(()=>{this.isLayoutDirty?this.root.didUpdate():this.root.checkUpdateFailed()})}updateSnapshot(){this.snapshot||!this.instance||(this.snapshot=this.measure(),this.snapshot&&!Ie(this.snapshot.measuredBox.x)&&!Ie(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 c=0;c<this.path.length;c++)this.path[c].updateScroll();const i=this.layout;this.layout=this.measure(!1),this.layoutCorrected=Ce(),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,i?i.layoutBox:void 0)}updateScroll(i="measure"){let a=!!(this.options.layoutScroll&&this.instance);if(this.scroll&&this.scroll.animationId===this.root.animationId&&this.scroll.phase===i&&(a=!1),a&&this.instance){const c=s(this.instance);this.scroll={animationId:this.root.animationId,phase:i,isRoot:c,offset:n(this.instance),wasRoot:this.scroll?this.scroll.isRoot:c}}}resetTransform(){if(!r)return;const i=this.isLayoutDirty||this.shouldResetTransform||this.options.alwaysMeasureLayout,a=this.projectionDelta&&!bc(this.projectionDelta),c=this.getTransformTemplate(),d=c?c(this.latestValues,""):void 0,u=d!==this.prevTransformTemplateValue;i&&this.instance&&(a||bt(this.latestValues)||u)&&(r(this.instance,d),this.shouldResetTransform=!1,this.scheduleRender())}measure(i=!0){const a=this.measurePageBox();let c=this.removeElementScroll(a);return i&&(c=this.removeTransform(c)),rp(c),{animationId:this.root.animationId,measuredBox:a,layoutBox:c,latestValues:{},source:this.id}}measurePageBox(){var d;const{visualElement:i}=this.options;if(!i)return Ce();const a=i.measureViewportBox();if(!(((d=this.scroll)==null?void 0:d.wasRoot)||this.path.some(op))){const{scroll:u}=this.root;u&&(Lt(a.x,u.offset.x),Lt(a.y,u.offset.y))}return a}removeElementScroll(i){var c;const a=Ce();if(Le(a,i),(c=this.scroll)!=null&&c.wasRoot)return a;for(let d=0;d<this.path.length;d++){const u=this.path[d],{scroll:f,options:h}=u;u!==this.root&&f&&h.layoutScroll&&(f.wasRoot&&Le(a,i),Lt(a.x,f.offset.x),Lt(a.y,f.offset.y))}return a}applyTransform(i,a=!1){const c=Ce();Le(c,i);for(let d=0;d<this.path.length;d++){const u=this.path[d];!a&&u.options.layoutScroll&&u.scroll&&u!==u.root&&_t(c,{x:-u.scroll.offset.x,y:-u.scroll.offset.y}),bt(u.latestValues)&&_t(c,u.latestValues)}return bt(this.latestValues)&&_t(c,this.latestValues),c}removeTransform(i){const a=Ce();Le(a,i);for(let c=0;c<this.path.length;c++){const d=this.path[c];if(!d.instance||!bt(d.latestValues))continue;vr(d.latestValues)&&d.updateSnapshot();const u=Ce(),f=d.measurePageBox();Le(u,f),Di(a,d.latestValues,d.snapshot?d.snapshot.layoutBox:void 0,u)}return bt(this.latestValues)&&Di(a,this.latestValues),a}setTargetDelta(i){this.targetDelta=i,this.root.scheduleUpdateProjection(),this.isProjectionDirty=!0}setOptions(i){this.options={...this.options,...i,crossfade:i.crossfade!==void 0?i.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!==Ne.timestamp&&this.relativeParent.resolveTargetDelta(!0)}resolveTargetDelta(i=!1){var h;const a=this.getLead();this.isProjectionDirty||(this.isProjectionDirty=a.isProjectionDirty),this.isTransformDirty||(this.isTransformDirty=a.isTransformDirty),this.isSharedProjectionDirty||(this.isSharedProjectionDirty=a.isSharedProjectionDirty);const c=!!this.resumingFrom||this!==a;if(!(i||c&&this.isSharedProjectionDirty||this.isProjectionDirty||(h=this.parent)!=null&&h.isProjectionDirty||this.attemptToResolveRelativeTarget||this.root.updateBlockedByResize))return;const{layout:u,layoutId:f}=this.options;if(!(!this.layout||!(u||f))){if(this.resolvedRelativeTargetAt=Ne.timestamp,!this.targetDelta&&!this.relativeTarget){const y=this.getClosestProjectingParent();y&&y.layout&&this.animationProgress!==1?(this.relativeParent=y,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Ce(),this.relativeTargetOrigin=Ce(),mn(this.relativeTargetOrigin,this.layout.layoutBox,y.layout.layoutBox),Le(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}if(!(!this.relativeTarget&&!this.targetDelta)&&(this.target||(this.target=Ce(),this.targetWithTransforms=Ce()),this.relativeTarget&&this.relativeTargetOrigin&&this.relativeParent&&this.relativeParent.target?(this.forceRelativeParentToResolveTarget(),um(this.target,this.relativeTarget,this.relativeParent.target)):this.targetDelta?(this.resumingFrom?this.target=this.applyTransform(this.layout.layoutBox):Le(this.target,this.layout.layoutBox),ec(this.target,this.targetDelta)):Le(this.target,this.layout.layoutBox),this.attemptToResolveRelativeTarget)){this.attemptToResolveRelativeTarget=!1;const y=this.getClosestProjectingParent();y&&!!y.resumingFrom==!!this.resumingFrom&&!y.options.layoutScroll&&y.target&&this.animationProgress!==1?(this.relativeParent=y,this.forceRelativeParentToResolveTarget(),this.relativeTarget=Ce(),this.relativeTargetOrigin=Ce(),mn(this.relativeTargetOrigin,this.target,y.target),Le(this.relativeTarget,this.relativeTargetOrigin)):this.relativeParent=this.relativeTarget=void 0}}}getClosestProjectingParent(){if(!(!this.parent||vr(this.parent.latestValues)||Ql(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 g;const i=this.getLead(),a=!!this.resumingFrom||this!==i;let c=!0;if((this.isProjectionDirty||(g=this.parent)!=null&&g.isProjectionDirty)&&(c=!1),a&&(this.isSharedProjectionDirty||this.isTransformDirty)&&(c=!1),this.resolvedRelativeTargetAt===Ne.timestamp&&(c=!1),c)return;const{layout:d,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||!(d||u))return;Le(this.layoutCorrected,this.layout.layoutBox);const f=this.treeScale.x,h=this.treeScale.y;Ch(this.layoutCorrected,this.treeScale,this.path,a),i.layout&&!i.target&&(this.treeScale.x!==1||this.treeScale.y!==1)&&(i.target=i.layout.layoutBox,i.targetWithTransforms=Ce());const{target:y}=i;if(!y){this.prevProjectionDelta&&(this.createProjectionDeltas(),this.scheduleRender());return}!this.projectionDelta||!this.prevProjectionDelta?this.createProjectionDeltas():(Vi(this.prevProjectionDelta.x,this.projectionDelta.x),Vi(this.prevProjectionDelta.y,this.projectionDelta.y)),hn(this.projectionDelta,this.layoutCorrected,y,this.latestValues),(this.treeScale.x!==f||this.treeScale.y!==h||!_i(this.projectionDelta.x,this.prevProjectionDelta.x)||!_i(this.projectionDelta.y,this.prevProjectionDelta.y))&&(this.hasProjected=!0,this.scheduleRender(),this.notifyListeners("projectionUpdate",y))}hide(){this.isVisible=!1}show(){this.isVisible=!0}scheduleRender(i=!0){var a;if((a=this.options.visualElement)==null||a.scheduleRender(),i){const c=this.getStack();c&&c.scheduleRender()}this.resumingFrom&&!this.resumingFrom.instance&&(this.resumingFrom=void 0)}createProjectionDeltas(){this.prevProjectionDelta=Bt(),this.projectionDelta=Bt(),this.projectionDeltaWithTransform=Bt()}setAnimationOrigin(i,a=!1){const c=this.snapshot,d=c?c.latestValues:{},u={...this.latestValues},f=Bt();(!this.relativeParent||!this.relativeParent.options.layoutRoot)&&(this.relativeTarget=this.relativeTargetOrigin=void 0),this.attemptToResolveRelativeTarget=!a;const h=Ce(),y=c?c.source:void 0,g=this.layout?this.layout.source:void 0,m=y!==g,b=this.getStack(),k=!b||b.members.length<=1,S=!!(m&&!k&&this.options.crossfade===!0&&!this.path.some(np));this.animationProgress=0;let E;this.mixTargetDelta=w=>{const v=w/1e3;Ui(f.x,i.x,v),Ui(f.y,i.y,v),this.setTargetDelta(f),this.relativeTarget&&this.relativeTargetOrigin&&this.layout&&this.relativeParent&&this.relativeParent.layout&&(mn(h,this.layout.layoutBox,this.relativeParent.layout.layoutBox),tp(this.relativeTarget,this.relativeTargetOrigin,h,v),E&&_m(this.relativeTarget,E)&&(this.isProjectionDirty=!1),E||(E=Ce()),Le(E,this.relativeTarget)),m&&(this.animationValues=u,Im(u,d,this.latestValues,v,S,k)),this.root.scheduleUpdateProjection(),this.scheduleRender(),this.animationProgress=v},this.mixTargetDelta(this.options.layoutRoot?1e3:0)}startAnimation(i){var a,c,d;this.notifyListeners("animationStart"),(a=this.currentAnimation)==null||a.stop(),(d=(c=this.resumingFrom)==null?void 0:c.currentAnimation)==null||d.stop(),this.pendingAnimation&&(ut(this.pendingAnimation),this.pendingAnimation=void 0),this.pendingAnimation=ye.update(()=>{Yn.hasAnimatedSinceResize=!0,this.motionValue||(this.motionValue=Zt(0)),this.currentAnimation=Mm(this.motionValue,[0,1e3],{...i,velocity:0,isSync:!0,onUpdate:u=>{this.mixTargetDelta(u),i.onUpdate&&i.onUpdate(u)},onStop:()=>{},onComplete:()=>{i.onComplete&&i.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 i=this.getStack();i&&i.exitAnimationComplete(),this.resumingFrom=this.currentAnimation=this.animationValues=void 0,this.notifyListeners("animationComplete")}finishAnimation(){this.currentAnimation&&(this.mixTargetDelta&&this.mixTargetDelta(Hm),this.currentAnimation.stop()),this.completeAnimation()}applyTransformsToTarget(){const i=this.getLead();let{targetWithTransforms:a,target:c,layout:d,latestValues:u}=i;if(!(!a||!c||!d)){if(this!==i&&this.layout&&d&&Cc(this.options.animationType,this.layout.layoutBox,d.layoutBox)){c=this.target||Ce();const f=Ie(this.layout.layoutBox.x);c.x.min=i.target.x.min,c.x.max=c.x.min+f;const h=Ie(this.layout.layoutBox.y);c.y.min=i.target.y.min,c.y.max=c.y.min+h}Le(a,c),_t(a,u),hn(this.projectionDeltaWithTransform,this.layoutCorrected,a,u)}}registerSharedNode(i,a){this.sharedNodes.has(i)||this.sharedNodes.set(i,new Bm),this.sharedNodes.get(i).add(a);const d=a.options.initialPromotionConfig;a.promote({transition:d?d.transition:void 0,preserveFollowOpacity:d&&d.shouldPreserveFollowOpacity?d.shouldPreserveFollowOpacity(a):void 0})}isLead(){const i=this.getStack();return i?i.lead===this:!0}getLead(){var a;const{layoutId:i}=this.options;return i?((a=this.getStack())==null?void 0:a.lead)||this:this}getPrevLead(){var a;const{layoutId:i}=this.options;return i?(a=this.getStack())==null?void 0:a.prevLead:void 0}getStack(){const{layoutId:i}=this.options;if(i)return this.root.sharedNodes.get(i)}promote({needsReset:i,transition:a,preserveFollowOpacity:c}={}){const d=this.getStack();d&&d.promote(this,c),i&&(this.projectionDelta=void 0,this.needsReset=!0),a&&this.setOptions({transition:a})}relegate(){const i=this.getStack();return i?i.relegate(this):!1}resetSkewAndRotation(){const{visualElement:i}=this.options;if(!i)return;let a=!1;const{latestValues:c}=i;if((c.z||c.rotate||c.rotateX||c.rotateY||c.rotateZ||c.skewX||c.skewY)&&(a=!0),!a)return;const d={};c.z&&Bs("z",i,d,this.animationValues);for(let u=0;u<_s.length;u++)Bs(`rotate${_s[u]}`,i,d,this.animationValues),Bs(`skew${_s[u]}`,i,d,this.animationValues);i.render();for(const u in d)i.setStaticValue(u,d[u]),this.animationValues&&(this.animationValues[u]=d[u]);i.scheduleRender()}applyProjectionStyles(i,a){if(!this.instance||this.isSVG)return;if(!this.isVisible){i.visibility="hidden";return}const c=this.getTransformTemplate();if(this.needsReset){this.needsReset=!1,i.visibility="",i.opacity="",i.pointerEvents=Kn(a==null?void 0:a.pointerEvents)||"",i.transform=c?c(this.latestValues,""):"none";return}const d=this.getLead();if(!this.projectionDelta||!this.layout||!d.target){this.options.layoutId&&(i.opacity=this.latestValues.opacity!==void 0?this.latestValues.opacity:1,i.pointerEvents=Kn(a==null?void 0:a.pointerEvents)||""),this.hasProjected&&!bt(this.latestValues)&&(i.transform=c?c({},""):"none",this.hasProjected=!1);return}i.visibility="";const u=d.animationValues||d.latestValues;this.applyTransformsToTarget();let f=zm(this.projectionDeltaWithTransform,this.treeScale,u);c&&(f=c(u,f)),i.transform=f;const{x:h,y}=this.projectionDelta;i.transformOrigin=`${h.origin*100}% ${y.origin*100}% 0`,d.animationValues?i.opacity=d===this?u.opacity??this.latestValues.opacity??1:this.preserveOpacity?this.latestValues.opacity:u.opacityExit:i.opacity=d===this?u.opacity!==void 0?u.opacity:"":u.opacityExit!==void 0?u.opacityExit:0;for(const g in vn){if(u[g]===void 0)continue;const{correct:m,applyTo:b,isCSSVariable:k}=vn[g],S=f==="none"?u[g]:m(u[g],d);if(b){const E=b.length;for(let w=0;w<E;w++)i[b[w]]=S}else k?this.options.visualElement.renderState.vars[g]=S:i[g]=S}this.options.layoutId&&(i.pointerEvents=d===this?Kn(a==null?void 0:a.pointerEvents)||"":"none")}clearSnapshot(){this.resumeFrom=this.snapshot=void 0}resetTree(){this.root.nodes.forEach(i=>{var a;return(a=i.currentAnimation)==null?void 0:a.stop()}),this.root.nodes.forEach(Bi),this.root.sharedNodes.clear()}}}function Zm(e){e.updateLayout()}function Wm(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:s,measuredBox:r}=e.layout,{animationType:o}=e.options,i=t.source!==e.layout.source;o==="size"?_e(f=>{const h=i?t.measuredBox[f]:t.layoutBox[f],y=Ie(h);h.min=s[f].min,h.max=h.min+y}):Cc(o,t.layoutBox,s)&&_e(f=>{const h=i?t.measuredBox[f]:t.layoutBox[f],y=Ie(s[f]);h.max=h.min+y,e.relativeTarget&&!e.currentAnimation&&(e.isProjectionDirty=!0,e.relativeTarget[f].max=e.relativeTarget[f].min+y)});const a=Bt();hn(a,s,t.layoutBox);const c=Bt();i?hn(c,e.applyTransform(r,!0),t.measuredBox):hn(c,s,t.layoutBox);const d=!bc(a);let u=!1;if(!e.resumeFrom){const f=e.getClosestProjectingParent();if(f&&!f.resumeFrom){const{snapshot:h,layout:y}=f;if(h&&y){const g=Ce();mn(g,t.layoutBox,h.layoutBox);const m=Ce();mn(m,s,y.layoutBox),vc(g,m)||(u=!0),f.options.layoutRoot&&(e.relativeTarget=m,e.relativeTargetOrigin=g,e.relativeParent=f)}}}e.notifyListeners("didUpdate",{layout:s,snapshot:t,delta:c,layoutDelta:a,hasLayoutChanged:d,hasRelativeLayoutChanged:u})}else if(e.isLead()){const{onExitComplete:s}=e.options;s&&s()}e.options.transition=void 0}function Gm(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 Km(e){e.isProjectionDirty=e.isSharedProjectionDirty=e.isTransformDirty=!1}function Ym(e){e.clearSnapshot()}function Bi(e){e.clearMeasurements()}function zi(e){e.isLayoutDirty=!1}function qm(e){const{visualElement:t}=e.options;t&&t.getProps().onBeforeLayoutMeasure&&t.notify("BeforeLayoutMeasure"),e.resetTransform()}function Hi(e){e.finishAnimation(),e.targetDelta=e.relativeTarget=e.target=void 0,e.isProjectionDirty=!0}function Xm(e){e.resolveTargetDelta()}function Jm(e){e.calcProjection()}function Qm(e){e.resetSkewAndRotation()}function ep(e){e.removeLeadSnapshot()}function Ui(e,t,n){e.translate=be(t.translate,0,n),e.scale=be(t.scale,1,n),e.origin=t.origin,e.originPoint=t.originPoint}function Zi(e,t,n,s){e.min=be(t.min,n.min,s),e.max=be(t.max,n.max,s)}function tp(e,t,n,s){Zi(e.x,t.x,n.x,s),Zi(e.y,t.y,n.y,s)}function np(e){return e.animationValues&&e.animationValues.opacityExit!==void 0}const sp={duration:.45,ease:[.4,0,.1,1]},Wi=e=>typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().includes(e),Gi=Wi("applewebkit/")&&!Wi("chrome/")?Math.round:He;function Ki(e){e.min=Gi(e.min),e.max=Gi(e.max)}function rp(e){Ki(e.x),Ki(e.y)}function Cc(e,t,n){return e==="position"||e==="preserve-aspect"&&!dm(Li(t),Li(n),.2)}function op(e){var t;return e!==e.root&&((t=e.scroll)==null?void 0:t.wasRoot)}const ip=Sc({attachResizeListener:(e,t)=>wn(e,"resize",t),measureScroll:()=>({x:document.documentElement.scrollLeft||document.body.scrollLeft,y:document.documentElement.scrollTop||document.body.scrollTop}),checkIsScrollRoot:()=>!0}),zs={current:void 0},Ec=Sc({measureScroll:e=>({x:e.scrollLeft,y:e.scrollTop}),defaultParent:()=>{if(!zs.current){const e=new ip({});e.mount(window),e.setOptions({layoutScroll:!0}),zs.current=e}return zs.current},resetTransform:(e,t)=>{e.style.transform=t!==void 0?t:"none"},checkIsScrollRoot:e=>window.getComputedStyle(e).position==="fixed"}),ap={pan:{Feature:km},drag:{Feature:Em,ProjectionNode:Ec,MeasureLayout:gc}};function Yi(e,t,n){const{props:s}=e;e.animationState&&s.whileHover&&e.animationState.setActive("whileHover",n==="Start");const r="onHover"+n,o=s[r];o&&ye.postRender(()=>o(t,Tn(t)))}class lp extends pt{mount(){const{current:t}=this.node;t&&(this.unmount=Nf(t,(n,s)=>(Yi(this.node,s,"Start"),r=>Yi(this.node,r,"End"))))}unmount(){}}class cp extends pt{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=Cn(wn(this.node.current,"focus",()=>this.onFocus()),wn(this.node.current,"blur",()=>this.onBlur()))}unmount(){}}function qi(e,t,n){const{props:s}=e;if(e.current instanceof HTMLButtonElement&&e.current.disabled)return;e.animationState&&s.whileTap&&e.animationState.setActive("whileTap",n==="Start");const r="onTap"+(n==="End"?"":n),o=s[r];o&&ye.postRender(()=>o(t,Tn(t)))}class dp extends pt{mount(){const{current:t}=this.node;t&&(this.unmount=Df(t,(n,s)=>(qi(this.node,s,"Start"),(r,{success:o})=>qi(this.node,r,o?"End":"Cancel")),{useGlobalTarget:this.node.props.globalTapTarget}))}unmount(){}}const Ar=new WeakMap,Hs=new WeakMap,up=e=>{const t=Ar.get(e.target);t&&t(e)},fp=e=>{e.forEach(up)};function hp({root:e,...t}){const n=e||document;Hs.has(n)||Hs.set(n,{});const s=Hs.get(n),r=JSON.stringify(t);return s[r]||(s[r]=new IntersectionObserver(fp,{root:e,...t})),s[r]}function mp(e,t,n){const s=hp(t);return Ar.set(e,n),s.observe(e),()=>{Ar.delete(e),s.unobserve(e)}}const pp={some:0,all:1};class gp extends pt{constructor(){super(...arguments),this.hasEnteredView=!1,this.isInView=!1}startObserver(){this.unmount();const{viewport:t={}}=this.node.getProps(),{root:n,margin:s,amount:r="some",once:o}=t,i={root:n?n.current:void 0,rootMargin:s,threshold:typeof r=="number"?r:pp[r]},a=c=>{const{isIntersecting:d}=c;if(this.isInView===d||(this.isInView=d,o&&!d&&this.hasEnteredView))return;d&&(this.hasEnteredView=!0),this.node.animationState&&this.node.animationState.setActive("whileInView",d);const{onViewportEnter:u,onViewportLeave:f}=this.node.getProps(),h=d?u:f;h&&h(c)};return mp(this.node.current,i,a)}mount(){this.startObserver()}update(){if(typeof IntersectionObserver>"u")return;const{props:t,prevProps:n}=this.node;["amount","margin","root"].some(yp(t,n))&&this.startObserver()}unmount(){}}function yp({viewport:e={}},{viewport:t={}}={}){return n=>e[n]!==t[n]}const xp={inView:{Feature:gp},tap:{Feature:dp},focus:{Feature:cp},hover:{Feature:lp}},bp={layout:{ProjectionNode:Ec,MeasureLayout:gc}},vp={...rm,...xp,...ap,...bp},ie=vh(vp,Rh),bo="-",wp=e=>{const t=Cp(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:s}=e;return{getClassGroupId:i=>{const a=i.split(bo);return a[0]===""&&a.length!==1&&a.shift(),kc(a,t)||Sp(i)},getConflictingClassGroupIds:(i,a)=>{const c=n[i]||[];return a&&s[i]?[...c,...s[i]]:c}}},kc=(e,t)=>{var i;if(e.length===0)return t.classGroupId;const n=e[0],s=t.nextPart.get(n),r=s?kc(e.slice(1),s):void 0;if(r)return r;if(t.validators.length===0)return;const o=e.join(bo);return(i=t.validators.find(({validator:a})=>a(o)))==null?void 0:i.classGroupId},Xi=/^\[(.+)\]$/,Sp=e=>{if(Xi.test(e)){const t=Xi.exec(e)[1],n=t==null?void 0:t.substring(0,t.indexOf(":"));if(n)return"arbitrary.."+n}},Cp=e=>{const{theme:t,classGroups:n}=e,s={nextPart:new Map,validators:[]};for(const r in n)jr(n[r],s,r,t);return s},jr=(e,t,n,s)=>{e.forEach(r=>{if(typeof r=="string"){const o=r===""?t:Ji(t,r);o.classGroupId=n;return}if(typeof r=="function"){if(Ep(r)){jr(r(s),t,n,s);return}t.validators.push({validator:r,classGroupId:n});return}Object.entries(r).forEach(([o,i])=>{jr(i,Ji(t,o),n,s)})})},Ji=(e,t)=>{let n=e;return t.split(bo).forEach(s=>{n.nextPart.has(s)||n.nextPart.set(s,{nextPart:new Map,validators:[]}),n=n.nextPart.get(s)}),n},Ep=e=>e.isThemeGetter,kp=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=new Map,s=new Map;const r=(o,i)=>{n.set(o,i),t++,t>e&&(t=0,s=n,n=new Map)};return{get(o){let i=n.get(o);if(i!==void 0)return i;if((i=s.get(o))!==void 0)return r(o,i),i},set(o,i){n.has(o)?n.set(o,i):r(o,i)}}},Mr="!",Pr=":",Tp=Pr.length,Ap=e=>{const{prefix:t,experimentalParseClassName:n}=e;let s=r=>{const o=[];let i=0,a=0,c=0,d;for(let g=0;g<r.length;g++){let m=r[g];if(i===0&&a===0){if(m===Pr){o.push(r.slice(c,g)),c=g+Tp;continue}if(m==="/"){d=g;continue}}m==="["?i++:m==="]"?i--:m==="("?a++:m===")"&&a--}const u=o.length===0?r:r.substring(c),f=jp(u),h=f!==u,y=d&&d>c?d-c:void 0;return{modifiers:o,hasImportantModifier:h,baseClassName:f,maybePostfixModifierPosition:y}};if(t){const r=t+Pr,o=s;s=i=>i.startsWith(r)?o(i.substring(r.length)):{isExternal:!0,modifiers:[],hasImportantModifier:!1,baseClassName:i,maybePostfixModifierPosition:void 0}}if(n){const r=s;s=o=>n({className:o,parseClassName:r})}return s},jp=e=>e.endsWith(Mr)?e.substring(0,e.length-1):e.startsWith(Mr)?e.substring(1):e,Mp=e=>{const t=Object.fromEntries(e.orderSensitiveModifiers.map(s=>[s,!0]));return s=>{if(s.length<=1)return s;const r=[];let o=[];return s.forEach(i=>{i[0]==="["||t[i]?(r.push(...o.sort(),i),o=[]):o.push(i)}),r.push(...o.sort()),r}},Pp=e=>({cache:kp(e.cacheSize),parseClassName:Ap(e),sortModifiers:Mp(e),...wp(e)}),Np=/\s+/,Vp=(e,t)=>{const{parseClassName:n,getClassGroupId:s,getConflictingClassGroupIds:r,sortModifiers:o}=t,i=[],a=e.trim().split(Np);let c="";for(let d=a.length-1;d>=0;d-=1){const u=a[d],{isExternal:f,modifiers:h,hasImportantModifier:y,baseClassName:g,maybePostfixModifierPosition:m}=n(u);if(f){c=u+(c.length>0?" "+c:c);continue}let b=!!m,k=s(b?g.substring(0,m):g);if(!k){if(!b){c=u+(c.length>0?" "+c:c);continue}if(k=s(g),!k){c=u+(c.length>0?" "+c:c);continue}b=!1}const S=o(h).join(":"),E=y?S+Mr:S,w=E+k;if(i.includes(w))continue;i.push(w);const v=r(k,b);for(let A=0;A<v.length;++A){const T=v[A];i.push(E+T)}c=u+(c.length>0?" "+c:c)}return c};function Rp(){let e=0,t,n,s="";for(;e<arguments.length;)(t=arguments[e++])&&(n=Tc(t))&&(s&&(s+=" "),s+=n);return s}const Tc=e=>{if(typeof e=="string")return e;let t,n="";for(let s=0;s<e.length;s++)e[s]&&(t=Tc(e[s]))&&(n&&(n+=" "),n+=t);return n};function Ip(e,...t){let n,s,r,o=i;function i(c){const d=t.reduce((u,f)=>f(u),e());return n=Pp(d),s=n.cache.get,r=n.cache.set,o=a,a(c)}function a(c){const d=s(c);if(d)return d;const u=Vp(c,n);return r(c,u),u}return function(){return o(Rp.apply(null,arguments))}}const Pe=e=>{const t=n=>n[e]||[];return t.isThemeGetter=!0,t},Ac=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,jc=/^\((?:(\w[\w-]*):)?(.+)\)$/i,Dp=/^\d+\/\d+$/,$p=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,Fp=/\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$/,Op=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,Lp=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,_p=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,Mt=e=>Dp.test(e),se=e=>!!e&&!Number.isNaN(Number(e)),lt=e=>!!e&&Number.isInteger(Number(e)),Us=e=>e.endsWith("%")&&se(e.slice(0,-1)),Qe=e=>$p.test(e),Bp=()=>!0,zp=e=>Fp.test(e)&&!Op.test(e),Mc=()=>!1,Hp=e=>Lp.test(e),Up=e=>_p.test(e),Zp=e=>!W(e)&&!G(e),Wp=e=>Qt(e,Vc,Mc),W=e=>Ac.test(e),xt=e=>Qt(e,Rc,zp),Zs=e=>Qt(e,Xp,se),Qi=e=>Qt(e,Pc,Mc),Gp=e=>Qt(e,Nc,Up),Fn=e=>Qt(e,Ic,Hp),G=e=>jc.test(e),on=e=>en(e,Rc),Kp=e=>en(e,Jp),ea=e=>en(e,Pc),Yp=e=>en(e,Vc),qp=e=>en(e,Nc),On=e=>en(e,Ic,!0),Qt=(e,t,n)=>{const s=Ac.exec(e);return s?s[1]?t(s[1]):n(s[2]):!1},en=(e,t,n=!1)=>{const s=jc.exec(e);return s?s[1]?t(s[1]):n:!1},Pc=e=>e==="position"||e==="percentage",Nc=e=>e==="image"||e==="url",Vc=e=>e==="length"||e==="size"||e==="bg-size",Rc=e=>e==="length",Xp=e=>e==="number",Jp=e=>e==="family-name",Ic=e=>e==="shadow",Qp=()=>{const e=Pe("color"),t=Pe("font"),n=Pe("text"),s=Pe("font-weight"),r=Pe("tracking"),o=Pe("leading"),i=Pe("breakpoint"),a=Pe("container"),c=Pe("spacing"),d=Pe("radius"),u=Pe("shadow"),f=Pe("inset-shadow"),h=Pe("text-shadow"),y=Pe("drop-shadow"),g=Pe("blur"),m=Pe("perspective"),b=Pe("aspect"),k=Pe("ease"),S=Pe("animate"),E=()=>["auto","avoid","all","avoid-page","page","left","right","column"],w=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],v=()=>[...w(),G,W],A=()=>["auto","hidden","clip","visible","scroll"],T=()=>["auto","contain","none"],j=()=>[G,W,c],z=()=>[Mt,"full","auto",...j()],x=()=>[lt,"none","subgrid",G,W],I=()=>["auto",{span:["full",lt,G,W]},lt,G,W],L=()=>[lt,"auto",G,W],J=()=>["auto","min","max","fr",G,W],te=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],ee=()=>["start","end","center","stretch","center-safe","end-safe"],ne=()=>["auto",...j()],Y=()=>[Mt,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...j()],R=()=>[e,G,W],X=()=>[...w(),ea,Qi,{position:[G,W]}],P=()=>["no-repeat",{repeat:["","x","y","space","round"]}],N=()=>["auto","cover","contain",Yp,Wp,{size:[G,W]}],U=()=>[Us,on,xt],M=()=>["","none","full",d,G,W],D=()=>["",se,on,xt],H=()=>["solid","dashed","dotted","double"],F=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],$=()=>[se,Us,ea,Qi],B=()=>["","none",g,G,W],Z=()=>["none",se,G,W],_=()=>["none",se,G,W],re=()=>[se,G,W],O=()=>[Mt,"full",...j()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Qe],breakpoint:[Qe],color:[Bp],container:[Qe],"drop-shadow":[Qe],ease:["in","out","in-out"],font:[Zp],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Qe],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Qe],shadow:[Qe],spacing:["px",se],text:[Qe],"text-shadow":[Qe],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",Mt,W,G,b]}],container:["container"],columns:[{columns:[se,W,G,a]}],"break-after":[{"break-after":E()}],"break-before":[{"break-before":E()}],"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:v()}],overflow:[{overflow:A()}],"overflow-x":[{"overflow-x":A()}],"overflow-y":[{"overflow-y":A()}],overscroll:[{overscroll:T()}],"overscroll-x":[{"overscroll-x":T()}],"overscroll-y":[{"overscroll-y":T()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:z()}],"inset-x":[{"inset-x":z()}],"inset-y":[{"inset-y":z()}],start:[{start:z()}],end:[{end:z()}],top:[{top:z()}],right:[{right:z()}],bottom:[{bottom:z()}],left:[{left:z()}],visibility:["visible","invisible","collapse"],z:[{z:[lt,"auto",G,W]}],basis:[{basis:[Mt,"full","auto",a,...j()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[se,Mt,"auto","initial","none",W]}],grow:[{grow:["",se,G,W]}],shrink:[{shrink:["",se,G,W]}],order:[{order:[lt,"first","last","none",G,W]}],"grid-cols":[{"grid-cols":x()}],"col-start-end":[{col:I()}],"col-start":[{"col-start":L()}],"col-end":[{"col-end":L()}],"grid-rows":[{"grid-rows":x()}],"row-start-end":[{row:I()}],"row-start":[{"row-start":L()}],"row-end":[{"row-end":L()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":J()}],"auto-rows":[{"auto-rows":J()}],gap:[{gap:j()}],"gap-x":[{"gap-x":j()}],"gap-y":[{"gap-y":j()}],"justify-content":[{justify:[...te(),"normal"]}],"justify-items":[{"justify-items":[...ee(),"normal"]}],"justify-self":[{"justify-self":["auto",...ee()]}],"align-content":[{content:["normal",...te()]}],"align-items":[{items:[...ee(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...ee(),{baseline:["","last"]}]}],"place-content":[{"place-content":te()}],"place-items":[{"place-items":[...ee(),"baseline"]}],"place-self":[{"place-self":["auto",...ee()]}],p:[{p:j()}],px:[{px:j()}],py:[{py:j()}],ps:[{ps:j()}],pe:[{pe:j()}],pt:[{pt:j()}],pr:[{pr:j()}],pb:[{pb:j()}],pl:[{pl:j()}],m:[{m:ne()}],mx:[{mx:ne()}],my:[{my:ne()}],ms:[{ms:ne()}],me:[{me:ne()}],mt:[{mt:ne()}],mr:[{mr:ne()}],mb:[{mb:ne()}],ml:[{ml:ne()}],"space-x":[{"space-x":j()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":j()}],"space-y-reverse":["space-y-reverse"],size:[{size:Y()}],w:[{w:[a,"screen",...Y()]}],"min-w":[{"min-w":[a,"screen","none",...Y()]}],"max-w":[{"max-w":[a,"screen","none","prose",{screen:[i]},...Y()]}],h:[{h:["screen","lh",...Y()]}],"min-h":[{"min-h":["screen","lh","none",...Y()]}],"max-h":[{"max-h":["screen","lh",...Y()]}],"font-size":[{text:["base",n,on,xt]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[s,G,Zs]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",Us,W]}],"font-family":[{font:[Kp,W,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:[r,G,W]}],"line-clamp":[{"line-clamp":[se,"none",G,Zs]}],leading:[{leading:[o,...j()]}],"list-image":[{"list-image":["none",G,W]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",G,W]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:R()}],"text-color":[{text:R()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...H(),"wavy"]}],"text-decoration-thickness":[{decoration:[se,"from-font","auto",G,xt]}],"text-decoration-color":[{decoration:R()}],"underline-offset":[{"underline-offset":[se,"auto",G,W]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:j()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",G,W]}],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",G,W]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:X()}],"bg-repeat":[{bg:P()}],"bg-size":[{bg:N()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},lt,G,W],radial:["",G,W],conic:[lt,G,W]},qp,Gp]}],"bg-color":[{bg:R()}],"gradient-from-pos":[{from:U()}],"gradient-via-pos":[{via:U()}],"gradient-to-pos":[{to:U()}],"gradient-from":[{from:R()}],"gradient-via":[{via:R()}],"gradient-to":[{to:R()}],rounded:[{rounded:M()}],"rounded-s":[{"rounded-s":M()}],"rounded-e":[{"rounded-e":M()}],"rounded-t":[{"rounded-t":M()}],"rounded-r":[{"rounded-r":M()}],"rounded-b":[{"rounded-b":M()}],"rounded-l":[{"rounded-l":M()}],"rounded-ss":[{"rounded-ss":M()}],"rounded-se":[{"rounded-se":M()}],"rounded-ee":[{"rounded-ee":M()}],"rounded-es":[{"rounded-es":M()}],"rounded-tl":[{"rounded-tl":M()}],"rounded-tr":[{"rounded-tr":M()}],"rounded-br":[{"rounded-br":M()}],"rounded-bl":[{"rounded-bl":M()}],"border-w":[{border:D()}],"border-w-x":[{"border-x":D()}],"border-w-y":[{"border-y":D()}],"border-w-s":[{"border-s":D()}],"border-w-e":[{"border-e":D()}],"border-w-t":[{"border-t":D()}],"border-w-r":[{"border-r":D()}],"border-w-b":[{"border-b":D()}],"border-w-l":[{"border-l":D()}],"divide-x":[{"divide-x":D()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":D()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...H(),"hidden","none"]}],"divide-style":[{divide:[...H(),"hidden","none"]}],"border-color":[{border:R()}],"border-color-x":[{"border-x":R()}],"border-color-y":[{"border-y":R()}],"border-color-s":[{"border-s":R()}],"border-color-e":[{"border-e":R()}],"border-color-t":[{"border-t":R()}],"border-color-r":[{"border-r":R()}],"border-color-b":[{"border-b":R()}],"border-color-l":[{"border-l":R()}],"divide-color":[{divide:R()}],"outline-style":[{outline:[...H(),"none","hidden"]}],"outline-offset":[{"outline-offset":[se,G,W]}],"outline-w":[{outline:["",se,on,xt]}],"outline-color":[{outline:R()}],shadow:[{shadow:["","none",u,On,Fn]}],"shadow-color":[{shadow:R()}],"inset-shadow":[{"inset-shadow":["none",f,On,Fn]}],"inset-shadow-color":[{"inset-shadow":R()}],"ring-w":[{ring:D()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:R()}],"ring-offset-w":[{"ring-offset":[se,xt]}],"ring-offset-color":[{"ring-offset":R()}],"inset-ring-w":[{"inset-ring":D()}],"inset-ring-color":[{"inset-ring":R()}],"text-shadow":[{"text-shadow":["none",h,On,Fn]}],"text-shadow-color":[{"text-shadow":R()}],opacity:[{opacity:[se,G,W]}],"mix-blend":[{"mix-blend":[...F(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":F()}],"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":[se]}],"mask-image-linear-from-pos":[{"mask-linear-from":$()}],"mask-image-linear-to-pos":[{"mask-linear-to":$()}],"mask-image-linear-from-color":[{"mask-linear-from":R()}],"mask-image-linear-to-color":[{"mask-linear-to":R()}],"mask-image-t-from-pos":[{"mask-t-from":$()}],"mask-image-t-to-pos":[{"mask-t-to":$()}],"mask-image-t-from-color":[{"mask-t-from":R()}],"mask-image-t-to-color":[{"mask-t-to":R()}],"mask-image-r-from-pos":[{"mask-r-from":$()}],"mask-image-r-to-pos":[{"mask-r-to":$()}],"mask-image-r-from-color":[{"mask-r-from":R()}],"mask-image-r-to-color":[{"mask-r-to":R()}],"mask-image-b-from-pos":[{"mask-b-from":$()}],"mask-image-b-to-pos":[{"mask-b-to":$()}],"mask-image-b-from-color":[{"mask-b-from":R()}],"mask-image-b-to-color":[{"mask-b-to":R()}],"mask-image-l-from-pos":[{"mask-l-from":$()}],"mask-image-l-to-pos":[{"mask-l-to":$()}],"mask-image-l-from-color":[{"mask-l-from":R()}],"mask-image-l-to-color":[{"mask-l-to":R()}],"mask-image-x-from-pos":[{"mask-x-from":$()}],"mask-image-x-to-pos":[{"mask-x-to":$()}],"mask-image-x-from-color":[{"mask-x-from":R()}],"mask-image-x-to-color":[{"mask-x-to":R()}],"mask-image-y-from-pos":[{"mask-y-from":$()}],"mask-image-y-to-pos":[{"mask-y-to":$()}],"mask-image-y-from-color":[{"mask-y-from":R()}],"mask-image-y-to-color":[{"mask-y-to":R()}],"mask-image-radial":[{"mask-radial":[G,W]}],"mask-image-radial-from-pos":[{"mask-radial-from":$()}],"mask-image-radial-to-pos":[{"mask-radial-to":$()}],"mask-image-radial-from-color":[{"mask-radial-from":R()}],"mask-image-radial-to-color":[{"mask-radial-to":R()}],"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":w()}],"mask-image-conic-pos":[{"mask-conic":[se]}],"mask-image-conic-from-pos":[{"mask-conic-from":$()}],"mask-image-conic-to-pos":[{"mask-conic-to":$()}],"mask-image-conic-from-color":[{"mask-conic-from":R()}],"mask-image-conic-to-color":[{"mask-conic-to":R()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:X()}],"mask-repeat":[{mask:P()}],"mask-size":[{mask:N()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",G,W]}],filter:[{filter:["","none",G,W]}],blur:[{blur:B()}],brightness:[{brightness:[se,G,W]}],contrast:[{contrast:[se,G,W]}],"drop-shadow":[{"drop-shadow":["","none",y,On,Fn]}],"drop-shadow-color":[{"drop-shadow":R()}],grayscale:[{grayscale:["",se,G,W]}],"hue-rotate":[{"hue-rotate":[se,G,W]}],invert:[{invert:["",se,G,W]}],saturate:[{saturate:[se,G,W]}],sepia:[{sepia:["",se,G,W]}],"backdrop-filter":[{"backdrop-filter":["","none",G,W]}],"backdrop-blur":[{"backdrop-blur":B()}],"backdrop-brightness":[{"backdrop-brightness":[se,G,W]}],"backdrop-contrast":[{"backdrop-contrast":[se,G,W]}],"backdrop-grayscale":[{"backdrop-grayscale":["",se,G,W]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[se,G,W]}],"backdrop-invert":[{"backdrop-invert":["",se,G,W]}],"backdrop-opacity":[{"backdrop-opacity":[se,G,W]}],"backdrop-saturate":[{"backdrop-saturate":[se,G,W]}],"backdrop-sepia":[{"backdrop-sepia":["",se,G,W]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":j()}],"border-spacing-x":[{"border-spacing-x":j()}],"border-spacing-y":[{"border-spacing-y":j()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",G,W]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[se,"initial",G,W]}],ease:[{ease:["linear","initial",k,G,W]}],delay:[{delay:[se,G,W]}],animate:[{animate:["none",S,G,W]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[m,G,W]}],"perspective-origin":[{"perspective-origin":v()}],rotate:[{rotate:Z()}],"rotate-x":[{"rotate-x":Z()}],"rotate-y":[{"rotate-y":Z()}],"rotate-z":[{"rotate-z":Z()}],scale:[{scale:_()}],"scale-x":[{"scale-x":_()}],"scale-y":[{"scale-y":_()}],"scale-z":[{"scale-z":_()}],"scale-3d":["scale-3d"],skew:[{skew:re()}],"skew-x":[{"skew-x":re()}],"skew-y":[{"skew-y":re()}],transform:[{transform:[G,W,"","none","gpu","cpu"]}],"transform-origin":[{origin:v()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:O()}],"translate-x":[{"translate-x":O()}],"translate-y":[{"translate-y":O()}],"translate-z":[{"translate-z":O()}],"translate-none":["translate-none"],accent:[{accent:R()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:R()}],"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",G,W]}],"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":j()}],"scroll-mx":[{"scroll-mx":j()}],"scroll-my":[{"scroll-my":j()}],"scroll-ms":[{"scroll-ms":j()}],"scroll-me":[{"scroll-me":j()}],"scroll-mt":[{"scroll-mt":j()}],"scroll-mr":[{"scroll-mr":j()}],"scroll-mb":[{"scroll-mb":j()}],"scroll-ml":[{"scroll-ml":j()}],"scroll-p":[{"scroll-p":j()}],"scroll-px":[{"scroll-px":j()}],"scroll-py":[{"scroll-py":j()}],"scroll-ps":[{"scroll-ps":j()}],"scroll-pe":[{"scroll-pe":j()}],"scroll-pt":[{"scroll-pt":j()}],"scroll-pr":[{"scroll-pr":j()}],"scroll-pb":[{"scroll-pb":j()}],"scroll-pl":[{"scroll-pl":j()}],"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",G,W]}],fill:[{fill:["none",...R()]}],"stroke-w":[{stroke:[se,on,xt,Zs]}],stroke:[{stroke:["none",...R()]}],"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"]}},e0=Ip(Qp);function q(...e){return e0($r.clsx(e))}function t0(e,t){return{id:e.streamInfo.id,timestamp:e.streamInfo.timestamp,message:e.text,from:e.participantInfo.identity===t.localParticipant.identity?t.localParticipant:Array.from(t.remoteParticipants.values()).find(n=>n.identity===e.participantInfo.identity)}}const n0=ls.cva(["relative w-full rounded-lg border px-4 py-3 text-sm grid grid-cols-[0_1fr] gap-y-0.5 items-start","has-[>svg]:grid-cols-[calc(var(--spacing)*4)_1fr] has-[>svg]:gap-x-3 [&>svg]:size-4 [&>svg]:translate-y-0.5 [&>svg]:text-current"],{variants:{variant:{default:"bg-card text-card-foreground",destructive:["text-destructive-foreground bg-destructive border-destructive-border","[&>svg]:text-current *:data-[slot=alert-description]:text-destructive-foreground/90"]}},defaultVariants:{variant:"default"}});function s0({className:e,variant:t,...n}){return l.jsx("div",{"data-slot":"alert",role:"alert",className:q(n0({variant:t}),e),...n})}function r0({className:e,...t}){return l.jsx("div",{"data-slot":"alert-title",className:q("col-start-2 line-clamp-1 min-h-4 font-medium tracking-tight",e),...t})}function o0({className:e,...t}){return l.jsx("div",{"data-slot":"alert-description",className:q("text-muted-foreground col-start-2 grid justify-items-start gap-1 text-sm [&_p]:leading-relaxed",e),...t})}function Ln(e){return Wa.toast.custom(t=>l.jsx(i0,{id:t,title:e.title,description:e.description}),{duration:1e4})}function i0(e){const{title:t,id:n,description:s}=e;return l.jsxs(s0,{onClick:()=>Wa.toast.dismiss(n),className:"bg-gradient-to-br from-[#181825] to-[#232336] border border-[#232336] shadow-lg shadow-black/40 rounded-xl px-4 py-3 flex items-start gap-3 hover:shadow-xl transition-all duration-200",style:{color:"#F3F4F6"},children:[l.jsx($d.WarningIcon,{weight:"bold",className:"text-yellow-400 mt-1 flex-shrink-0",size:24}),l.jsxs("div",{className:"flex flex-col",children:[l.jsx(r0,{className:"text-base font-semibold text-white mb-1",children:t}),l.jsx(o0,{className:"text-sm text-gray-300 leading-snug",children:s})]})]})}const Ke=p.forwardRef((e,t)=>{const{alt:n,color:s="currentColor",size:r="1em",weight:o="regular",mirrored:i=!1,children:a,weights:c,...d}=e;return p.createElement("svg",{ref:t,xmlns:"http://www.w3.org/2000/svg",width:r,height:r,fill:s,viewBox:"0 0 256 256",transform:i?"scale(-1, 1)":void 0,...d},!!n&&p.createElement("title",null,n),a,c.get(o))});Ke.displayName="SSRBase";const a0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216.49,104.49l-80,80a12,12,0,0,1-17,0l-80-80a12,12,0,0,1,17-17L128,159l71.51-71.52a12,12,0,0,1,17,17Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M208,96l-80,80L48,96Z",opacity:"0.2"}),p.createElement("path",{d:"M215.39,92.94A8,8,0,0,0,208,88H48a8,8,0,0,0-5.66,13.66l80,80a8,8,0,0,0,11.32,0l80-80A8,8,0,0,0,215.39,92.94ZM128,164.69,67.31,104H188.69Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,48,88H208a8,8,0,0,1,5.66,13.66Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M212.24,100.24l-80,80a6,6,0,0,1-8.48,0l-80-80a6,6,0,0,1,8.48-8.48L128,167.51l75.76-75.75a6,6,0,0,1,8.48,8.48Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M210.83,98.83l-80,80a4,4,0,0,1-5.66,0l-80-80a4,4,0,0,1,5.66-5.66L128,170.34l77.17-77.17a4,4,0,1,1,5.66,5.66Z"}))]]),vo=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:a0}));vo.displayName="CaretDownIcon";const l0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216.49,168.49a12,12,0,0,1-17,0L128,97,56.49,168.49a12,12,0,0,1-17-17l80-80a12,12,0,0,1,17,0l80,80A12,12,0,0,1,216.49,168.49Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M208,160H48l80-80Z",opacity:"0.2"}),p.createElement("path",{d:"M213.66,154.34l-80-80a8,8,0,0,0-11.32,0l-80,80A8,8,0,0,0,48,168H208a8,8,0,0,0,5.66-13.66ZM67.31,152,128,91.31,188.69,152Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M215.39,163.06A8,8,0,0,1,208,168H48a8,8,0,0,1-5.66-13.66l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,215.39,163.06Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M212.24,164.24a6,6,0,0,1-8.48,0L128,88.49,52.24,164.24a6,6,0,0,1-8.48-8.48l80-80a6,6,0,0,1,8.48,0l80,80A6,6,0,0,1,212.24,164.24Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M213.66,165.66a8,8,0,0,1-11.32,0L128,91.31,53.66,165.66a8,8,0,0,1-11.32-11.32l80-80a8,8,0,0,1,11.32,0l80,80A8,8,0,0,1,213.66,165.66Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M210.83,162.83a4,4,0,0,1-5.66,0L128,85.66,50.83,162.83a4,4,0,0,1-5.66-5.66l80-80a4,4,0,0,1,5.66,0l80,80A4,4,0,0,1,210.83,162.83Z"}))]]),Dc=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:l0}));Dc.displayName="CaretUpIcon";const c0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216,44H40A20,20,0,0,0,20,64V224A19.82,19.82,0,0,0,31.56,242.1a20.14,20.14,0,0,0,8.49,1.9,19.91,19.91,0,0,0,12.82-4.72l.12-.11L84.47,212H216a20,20,0,0,0,20-20V64A20,20,0,0,0,216,44Zm-4,144H80a11.93,11.93,0,0,0-7.84,2.92L44,215.23V68H212ZM84,108A12,12,0,0,1,96,96h64a12,12,0,1,1,0,24H96A12,12,0,0,1,84,108Zm0,40a12,12,0,0,1,12-12h64a12,12,0,0,1,0,24H96A12,12,0,0,1,84,148Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M224,64V192a8,8,0,0,1-8,8H80L45.15,230.11A8,8,0,0,1,32,224V64a8,8,0,0,1,8-8H216A8,8,0,0,1,224,64Z",opacity:"0.2"}),p.createElement("path",{d:"M216,48H40A16,16,0,0,0,24,64V224a15.85,15.85,0,0,0,9.24,14.5A16.13,16.13,0,0,0,40,240a15.89,15.89,0,0,0,10.25-3.78l.09-.07L83,208H216a16,16,0,0,0,16-16V64A16,16,0,0,0,216,48ZM40,224h0ZM216,192H80a8,8,0,0,0-5.23,1.95L40,224V64H216ZM88,112a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,112Zm0,32a8,8,0,0,1,8-8h64a8,8,0,1,1,0,16H96A8,8,0,0,1,88,144Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216,48H40A16,16,0,0,0,24,64V224a15.84,15.84,0,0,0,9.25,14.5A16.05,16.05,0,0,0,40,240a15.89,15.89,0,0,0,10.25-3.78l.09-.07L83,208H216a16,16,0,0,0,16-16V64A16,16,0,0,0,216,48ZM160,152H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Zm0-32H96a8,8,0,0,1,0-16h64a8,8,0,0,1,0,16Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216,50H40A14,14,0,0,0,26,64V224a13.88,13.88,0,0,0,8.09,12.69A14.11,14.11,0,0,0,40,238a13.87,13.87,0,0,0,9-3.31l.06-.05L82.23,206H216a14,14,0,0,0,14-14V64A14,14,0,0,0,216,50Zm2,142a2,2,0,0,1-2,2H80a6,6,0,0,0-3.92,1.46L41.26,225.53A2,2,0,0,1,38,224V64a2,2,0,0,1,2-2H216a2,2,0,0,1,2,2Zm-52-80a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,112Zm0,32a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,144Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216,48H40A16,16,0,0,0,24,64V224a15.85,15.85,0,0,0,9.24,14.5A16.13,16.13,0,0,0,40,240a15.89,15.89,0,0,0,10.25-3.78l.09-.07L83,208H216a16,16,0,0,0,16-16V64A16,16,0,0,0,216,48ZM40,224h0ZM216,192H80a8,8,0,0,0-5.23,1.95L40,224V64H216ZM88,112a8,8,0,0,1,8-8h64a8,8,0,0,1,0,16H96A8,8,0,0,1,88,112Zm0,32a8,8,0,0,1,8-8h64a8,8,0,1,1,0,16H96A8,8,0,0,1,88,144Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216,52H40A12,12,0,0,0,28,64V224a11.89,11.89,0,0,0,6.93,10.88A12.17,12.17,0,0,0,40,236a11.89,11.89,0,0,0,7.69-2.83l0,0L81.49,204H216a12,12,0,0,0,12-12V64A12,12,0,0,0,216,52Zm4,140a4,4,0,0,1-4,4H80a4,4,0,0,0-2.62,1L42.56,227.06A4,4,0,0,1,36,224V64a4,4,0,0,1,4-4H216a4,4,0,0,1,4,4Zm-56-80a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,112Zm0,32a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,144Z"}))]]),$c=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:c0}));$c.displayName="ChatTextIcon";const d0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M232.49,80.49l-128,128a12,12,0,0,1-17,0l-56-56a12,12,0,1,1,17-17L96,183,215.51,63.51a12,12,0,0,1,17,17Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M232,56V200a16,16,0,0,1-16,16H40a16,16,0,0,1-16-16V56A16,16,0,0,1,40,40H216A16,16,0,0,1,232,56Z",opacity:"0.2"}),p.createElement("path",{d:"M205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M216,40H40A16,16,0,0,0,24,56V200a16,16,0,0,0,16,16H216a16,16,0,0,0,16-16V56A16,16,0,0,0,216,40ZM205.66,85.66l-96,96a8,8,0,0,1-11.32,0l-40-40a8,8,0,0,1,11.32-11.32L104,164.69l90.34-90.35a8,8,0,0,1,11.32,11.32Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M228.24,76.24l-128,128a6,6,0,0,1-8.48,0l-56-56a6,6,0,0,1,8.48-8.48L96,191.51,219.76,67.76a6,6,0,0,1,8.48,8.48Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M229.66,77.66l-128,128a8,8,0,0,1-11.32,0l-56-56a8,8,0,0,1,11.32-11.32L96,188.69,218.34,66.34a8,8,0,0,1,11.32,11.32Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M226.83,74.83l-128,128a4,4,0,0,1-5.66,0l-56-56a4,4,0,0,1,5.66-5.66L96,194.34,221.17,69.17a4,4,0,1,1,5.66,5.66Z"}))]]),Fc=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:d0}));Fc.displayName="CheckIcon";const u0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M128,180a52.06,52.06,0,0,0,52-52V64A52,52,0,0,0,76,64v64A52.06,52.06,0,0,0,128,180ZM100,64a28,28,0,0,1,56,0v64a28,28,0,0,1-56,0Zm40,155.22V240a12,12,0,0,1-24,0V219.22A92.14,92.14,0,0,1,36,128a12,12,0,0,1,24,0,68,68,0,0,0,136,0,12,12,0,0,1,24,0A92.14,92.14,0,0,1,140,219.22Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z",opacity:"0.2"}),p.createElement("path",{d:"M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M80,128V64a48,48,0,0,1,96,0v64a48,48,0,0,1-96,0Zm128,0a8,8,0,0,0-16,0,64,64,0,0,1-128,0,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.6A80.11,80.11,0,0,0,208,128Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M128,174a46.06,46.06,0,0,0,46-46V64a46,46,0,0,0-92,0v64A46.06,46.06,0,0,0,128,174ZM94,64a34,34,0,0,1,68,0v64a34,34,0,0,1-68,0Zm40,141.75V240a6,6,0,0,1-12,0V205.75A78.09,78.09,0,0,1,50,128a6,6,0,0,1,12,0,66,66,0,0,0,132,0,6,6,0,0,1,12,0A78.09,78.09,0,0,1,134,205.75Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M128,176a48.05,48.05,0,0,0,48-48V64a48,48,0,0,0-96,0v64A48.05,48.05,0,0,0,128,176ZM96,64a32,32,0,0,1,64,0v64a32,32,0,0,1-64,0Zm40,143.6V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64,64,0,0,0,128,0,8,8,0,0,1,16,0A80.11,80.11,0,0,1,136,207.6Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M128,172a44.05,44.05,0,0,0,44-44V64a44,44,0,0,0-88,0v64A44.05,44.05,0,0,0,128,172ZM92,64a36,36,0,0,1,72,0v64a36,36,0,0,1-72,0Zm40,139.89V240a4,4,0,0,1-8,0V203.89A76.09,76.09,0,0,1,52,128a4,4,0,0,1,8,0,68,68,0,0,0,136,0,4,4,0,0,1,8,0A76.09,76.09,0,0,1,132,203.89Z"}))]]),Oc=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:u0}));Oc.displayName="MicrophoneIcon";const f0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M56.88,39.93A12,12,0,1,0,39.12,56.07L76,96.64V128a52,52,0,0,0,72.11,48l11.26,12.39A67.34,67.34,0,0,1,128,196a68.07,68.07,0,0,1-68-68,12,12,0,0,0-24,0,92.14,92.14,0,0,0,80,91.22V240a12,12,0,0,0,24,0V219.23a90.39,90.39,0,0,0,35.92-12.68l23.2,25.52a12,12,0,0,0,17.76-16.14ZM128,156a28,28,0,0,1-28-28v-5l29.9,32.89C129.27,156,128.64,156,128,156Zm63-2.42A67.63,67.63,0,0,0,196,128a12,12,0,0,1,24,0,91.48,91.48,0,0,1-6.74,34.61,12,12,0,0,1-22.23-9ZM85.7,33.75A52,52,0,0,1,180,64v56.54a12,12,0,0,1-24,0V64a28,28,0,0,0-50.79-16.28,12,12,0,0,1-19.51-14Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M168,64v64a40,40,0,0,1-40,40h0a40,40,0,0,1-40-40V64a40,40,0,0,1,40-40h0A40,40,0,0,1,168,64Z",opacity:"0.2"}),p.createElement("path",{d:"M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M213.38,229.92a8,8,0,0,1-11.3-.54l-30.92-34A78.83,78.83,0,0,1,136,207.59V240a8,8,0,0,1-16,0V207.6A80.11,80.11,0,0,1,48,128a8,8,0,0,1,16,0,64.07,64.07,0,0,0,64,64,63.41,63.41,0,0,0,32.21-8.68l-11.1-12.2A48,48,0,0,1,80,128V95.09L42.08,53.38A8,8,0,0,1,53.92,42.62l160,176A8,8,0,0,1,213.38,229.92Zm-24.19-63.13a7.88,7.88,0,0,0,3.51.82,8,8,0,0,0,7.19-4.49A79.16,79.16,0,0,0,208,128a8,8,0,0,0-16,0,63.32,63.32,0,0,1-6.48,28.09A8,8,0,0,0,189.19,166.79Zm-27.33-29.22A8,8,0,0,0,175.74,133a49.49,49.49,0,0,0,.26-5V64A48,48,0,0,0,84,44.87a8,8,0,0,0,1.41,8.57Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M212.44,220,52.44,44A6,6,0,0,0,43.56,52L82,94.32V128a46,46,0,0,0,67.56,40.64l13.75,15.12A65.26,65.26,0,0,1,128,194a66.08,66.08,0,0,1-66-66,6,6,0,0,0-12,0,78.09,78.09,0,0,0,72,77.75V240a6,6,0,0,0,12,0V205.77a76.93,76.93,0,0,0,37.48-13L203.56,228a6,6,0,0,0,8.88-8.08ZM128,162a34,34,0,0,1-34-34V107.52l47.12,51.84A33.82,33.82,0,0,1,128,162Zm59.32-5A65.38,65.38,0,0,0,194,128a6,6,0,0,1,12,0,77.33,77.33,0,0,1-7.9,34.25A6,6,0,1,1,187.32,157ZM85.8,45.67A46,46,0,0,1,174,64v64a45.17,45.17,0,0,1-.25,4.81,6,6,0,0,1-6,5.38q-.31,0-.63,0a6,6,0,0,1-5.34-6.59A35.41,35.41,0,0,0,162,128V64A34,34,0,0,0,96.8,50.45a6,6,0,0,1-11-4.78Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M213.92,218.62l-160-176A8,8,0,0,0,42.08,53.38L80,95.09V128a48,48,0,0,0,69.11,43.12l11.1,12.2A63.41,63.41,0,0,1,128,192a64.07,64.07,0,0,1-64-64,8,8,0,0,0-16,0,80.11,80.11,0,0,0,72,79.6V240a8,8,0,0,0,16,0V207.59a78.83,78.83,0,0,0,35.16-12.22l30.92,34a8,8,0,1,0,11.84-10.76ZM128,160a32,32,0,0,1-32-32V112.69l41.66,45.82A32,32,0,0,1,128,160Zm57.52-3.91A63.32,63.32,0,0,0,192,128a8,8,0,0,1,16,0,79.16,79.16,0,0,1-8.11,35.12,8,8,0,0,1-7.19,4.49,7.88,7.88,0,0,1-3.51-.82A8,8,0,0,1,185.52,156.09ZM84,44.87A48,48,0,0,1,176,64v64a49.19,49.19,0,0,1-.26,5,8,8,0,0,1-8,7.17,8.13,8.13,0,0,1-.84,0,8,8,0,0,1-7.12-8.79c.11-1.1.17-2.24.17-3.36V64A32,32,0,0,0,98.64,51.25,8,8,0,1,1,84,44.87Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M211,221.31,51,45.31A4,4,0,0,0,45,50.69L84,93.55V128a44,44,0,0,0,66,38.12l16.38,18A67.21,67.21,0,0,1,128,196a68.07,68.07,0,0,1-68-68,4,4,0,0,0-8,0,76.09,76.09,0,0,0,72,75.89V240a4,4,0,0,0,8,0V203.89a75.1,75.1,0,0,0,39.79-13.77L205,226.69a4,4,0,1,0,5.92-5.38ZM128,164a36,36,0,0,1-36-36V102.35L144.43,160A35.83,35.83,0,0,1,128,164Zm61.12-6.15A67.44,67.44,0,0,0,196,128a4,4,0,0,1,8,0,75.28,75.28,0,0,1-7.7,33.37,4,4,0,0,1-7.18-3.52ZM87.63,46.46A44,44,0,0,1,172,64v64a44.2,44.2,0,0,1-.24,4.61,4,4,0,0,1-4,3.58l-.42,0a4,4,0,0,1-3.57-4.39A36.67,36.67,0,0,0,164,128V64A36,36,0,0,0,95,49.66a4,4,0,0,1-7.34-3.2Z"}))]]),Lc=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:f0}));Lc.displayName="MicrophoneSlashIcon";const h0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M208,36H48A28,28,0,0,0,20,64V176a28,28,0,0,0,28,28H208a28,28,0,0,0,28-28V64A28,28,0,0,0,208,36Zm4,140a4,4,0,0,1-4,4H48a4,4,0,0,1-4-4V64a4,4,0,0,1,4-4H208a4,4,0,0,1,4,4Zm-40,52a12,12,0,0,1-12,12H96a12,12,0,0,1,0-24h64A12,12,0,0,1,172,228ZM160.49,103.51a12,12,0,0,1-17,17L140,117v35a12,12,0,0,1-24,0V117l-3.51,3.52a12,12,0,0,1-17-17l24-24a12,12,0,0,1,17,0Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M224,64V176a16,16,0,0,1-16,16H48a16,16,0,0,1-16-16V64A16,16,0,0,1,48,48H208A16,16,0,0,1,224,64Z",opacity:"0.2"}),p.createElement("path",{d:"M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM157.66,106.34a8,8,0,0,1-11.32,11.32L136,107.31V152a8,8,0,0,1-16,0V107.31l-10.34,10.35a8,8,0,0,1-11.32-11.32l24-24a8,8,0,0,1,11.32,0Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M168,224a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM232,64V176a24,24,0,0,1-24,24H48a24,24,0,0,1-24-24V64A24,24,0,0,1,48,40H208A24,24,0,0,1,232,64Zm-74.34,42.34-24-24a8,8,0,0,0-11.32,0l-24,24a8,8,0,0,0,11.32,11.32L120,107.31V152a8,8,0,0,0,16,0V107.31l10.34,10.35a8,8,0,0,0,11.32-11.32Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M208,42H48A22,22,0,0,0,26,64V176a22,22,0,0,0,22,22H208a22,22,0,0,0,22-22V64A22,22,0,0,0,208,42Zm10,134a10,10,0,0,1-10,10H48a10,10,0,0,1-10-10V64A10,10,0,0,1,48,54H208a10,10,0,0,1,10,10Zm-52,48a6,6,0,0,1-6,6H96a6,6,0,0,1,0-12h64A6,6,0,0,1,166,224Zm-9.76-116.24a6,6,0,1,1-8.48,8.48L134,102.49V152a6,6,0,0,1-12,0V102.49l-13.76,13.75a6,6,0,0,1-8.48-8.48l24-24a6,6,0,0,1,8.48,0Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M208,40H48A24,24,0,0,0,24,64V176a24,24,0,0,0,24,24H208a24,24,0,0,0,24-24V64A24,24,0,0,0,208,40Zm8,136a8,8,0,0,1-8,8H48a8,8,0,0,1-8-8V64a8,8,0,0,1,8-8H208a8,8,0,0,1,8,8Zm-48,48a8,8,0,0,1-8,8H96a8,8,0,0,1,0-16h64A8,8,0,0,1,168,224ZM157.66,106.34a8,8,0,0,1-11.32,11.32L136,107.31V152a8,8,0,0,1-16,0V107.31l-10.34,10.35a8,8,0,0,1-11.32-11.32l24-24a8,8,0,0,1,11.32,0Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M208,44H48A20,20,0,0,0,28,64V176a20,20,0,0,0,20,20H208a20,20,0,0,0,20-20V64A20,20,0,0,0,208,44Zm12,132a12,12,0,0,1-12,12H48a12,12,0,0,1-12-12V64A12,12,0,0,1,48,52H208a12,12,0,0,1,12,12Zm-56,48a4,4,0,0,1-4,4H96a4,4,0,0,1,0-8h64A4,4,0,0,1,164,224Zm-9.17-114.83a4,4,0,0,1-5.66,5.66L132,97.66V152a4,4,0,0,1-8,0V97.66l-17.17,17.17a4,4,0,0,1-5.66-5.66l24-24a4,4,0,0,1,5.66,0Z"}))]]),_c=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:h0}));_c.displayName="MonitorArrowUpIcon";const m0=new Map([["bold",p.createElement(p.Fragment,null,p.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",p.createElement(p.Fragment,null,p.createElement("path",{d:"M224,128a96,96,0,1,1-96-96A96,96,0,0,1,224,128Z",opacity:"0.2"}),p.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",p.createElement(p.Fragment,null,p.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",p.createElement(p.Fragment,null,p.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",p.createElement(p.Fragment,null,p.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",p.createElement(p.Fragment,null,p.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"}))]]),wo=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:m0}));wo.displayName="SpinnerIcon";const p0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M249.45,69.31a12,12,0,0,0-12.51,1L212,88.43V72a20,20,0,0,0-20-20H32A20,20,0,0,0,12,72V184a20,20,0,0,0,20,20H192a20,20,0,0,0,20-20V167.57l24.94,18.14A12,12,0,0,0,256,176V80A12,12,0,0,0,249.45,69.31ZM188,180H36V76H188Zm44-27.57-20-14.54V118.11l20-14.54Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M200,72V184a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V72a8,8,0,0,1,8-8H192A8,8,0,0,1,200,72Z",opacity:"0.2"}),p.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M192,72V184a16,16,0,0,1-16,16H32a16,16,0,0,1-16-16V72A16,16,0,0,1,32,56H176A16,16,0,0,1,192,72Zm58,.25a8.23,8.23,0,0,0-6.63,1.22L209.78,95.86A4,4,0,0,0,208,99.19v57.62a4,4,0,0,0,1.78,3.33l33.78,22.52a8,8,0,0,0,8.58.19,8.33,8.33,0,0,0,3.86-7.17V80A8,8,0,0,0,250,72.25Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M250.83,74.71a6,6,0,0,0-6.16.3L206,100.79V72a14,14,0,0,0-14-14H32A14,14,0,0,0,18,72V184a14,14,0,0,0,14,14H192a14,14,0,0,0,14-14V155.21L244.67,181a6,6,0,0,0,9.33-5V80A6,6,0,0,0,250.83,74.71ZM194,184a2,2,0,0,1-2,2H32a2,2,0,0,1-2-2V72a2,2,0,0,1,2-2H192a2,2,0,0,1,2,2Zm48-19.21-36-24V115.21l36-24Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H192a16,16,0,0,0,16-16V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM192,184H32V72H192V184Zm48-22.95-32-21.33V116.28L240,95Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M249.89,76.47a4,4,0,0,0-4.11.2L204,104.53V72a12,12,0,0,0-12-12H32A12,12,0,0,0,20,72V184a12,12,0,0,0,12,12H192a12,12,0,0,0,12-12V151.47l41.78,27.86A4,4,0,0,0,252,176V80A4,4,0,0,0,249.89,76.47ZM196,184a4,4,0,0,1-4,4H32a4,4,0,0,1-4-4V72a4,4,0,0,1,4-4H192a4,4,0,0,1,4,4Zm48-15.47-40-26.67V114.14l40-26.67Z"}))]]),Bc=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:p0}));Bc.displayName="VideoCameraIcon";const g0=new Map([["bold",p.createElement(p.Fragment,null,p.createElement("path",{d:"M249.45,69.31a12,12,0,0,0-12.51,1L212,88.43V72a20,20,0,0,0-20-20H123.88a12,12,0,0,0,0,24H188v68a12,12,0,0,0,4.46,9.33c.15.13.31.25.48.38l44,32A12,12,0,0,0,256,176V80A12,12,0,0,0,249.45,69.31ZM232,152.43l-20-14.54V118.11l20-14.54ZM56.88,31.93A12,12,0,1,0,39.12,48.07L42.69,52H32A20,20,0,0,0,12,72V184a20,20,0,0,0,20,20H180.87l18.25,20.07a12,12,0,0,0,17.76-16.14ZM36,180V76H64.51l94.55,104Z"}))],["duotone",p.createElement(p.Fragment,null,p.createElement("path",{d:"M200,72V184a8,8,0,0,1-8,8H32a8,8,0,0,1-8-8V72a8,8,0,0,1,8-8H192A8,8,0,0,1,200,72Z",opacity:"0.2"}),p.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H113.06a8,8,0,0,0,0,16H192v87.63a8,8,0,0,0,16,0V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM240,161.05l-32-21.33V116.28L240,95ZM53.92,34.62A8,8,0,1,0,42.08,45.38L51.73,56H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H182.64l19.44,21.38a8,8,0,1,0,11.84-10.76ZM32,184V72H66.28L168.1,184Z"}))],["fill",p.createElement(p.Fragment,null,p.createElement("path",{d:"M256,80.23v95.45a8.33,8.33,0,0,1-3.86,7.17,8,8,0,0,1-8.58-.19l-33.78-22.52a4,4,0,0,1-1.78-3.33V99.19a4,4,0,0,1,1.78-3.32l33.78-22.53a8,8,0,0,1,9.73.66A8.23,8.23,0,0,1,256,80.23ZM53.92,34.62A8,8,0,1,0,42.08,45.38L51.73,56H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H182.64l19.44,21.38a8,8,0,1,0,11.84-10.76ZM185,155.07a4,4,0,0,0,7-2.7V72a16,16,0,0,0-16-16H104a4,4,0,0,0-3,6.69Z"}))],["light",p.createElement(p.Fragment,null,p.createElement("path",{d:"M250.83,74.71a6,6,0,0,0-6.16.3L206,100.79V72a14,14,0,0,0-14-14H113.06a6,6,0,0,0,0,12H192a2,2,0,0,1,2,2v87.63a6,6,0,0,0,12,0v-4.42L244.67,181a6,6,0,0,0,9.33-5V80A6,6,0,0,0,250.83,74.71ZM242,164.79l-36-24V115.21l36-24ZM52.44,36A6,6,0,0,0,43.56,44L56.25,58H32A14,14,0,0,0,18,72V184a14,14,0,0,0,14,14H183.53l20,22a6,6,0,0,0,8.88-8.08ZM32,186a2,2,0,0,1-2-2V72a2,2,0,0,1,2-2H67.16L172.62,186Z"}))],["regular",p.createElement(p.Fragment,null,p.createElement("path",{d:"M251.77,73a8,8,0,0,0-8.21.39L208,97.05V72a16,16,0,0,0-16-16H113.06a8,8,0,0,0,0,16H192v87.63a8,8,0,0,0,16,0V159l35.56,23.71A8,8,0,0,0,248,184a8,8,0,0,0,8-8V80A8,8,0,0,0,251.77,73ZM240,161.05l-32-21.33V116.28L240,95ZM53.92,34.62A8,8,0,1,0,42.08,45.38L51.73,56H32A16,16,0,0,0,16,72V184a16,16,0,0,0,16,16H182.64l19.44,21.38a8,8,0,1,0,11.84-10.76ZM32,184V72H66.28L168.1,184Z"}))],["thin",p.createElement(p.Fragment,null,p.createElement("path",{d:"M249.89,76.47a4,4,0,0,0-4.11.2L204,104.53V72a12,12,0,0,0-12-12H113.06a4,4,0,0,0,0,8H192a4,4,0,0,1,4,4v87.63a4,4,0,0,0,8,0v-8.16l41.78,27.86A4,4,0,0,0,252,176V80A4,4,0,0,0,249.89,76.47ZM244,168.53l-40-26.67V114.14l40-26.67ZM51,37.31A4,4,0,0,0,45,42.69L60.78,60H32A12,12,0,0,0,20,72V184a12,12,0,0,0,12,12H184.41L205,218.69a4,4,0,1,0,5.92-5.38ZM32,188a4,4,0,0,1-4-4V72a4,4,0,0,1,4-4H68.05L177.14,188Z"}))]]),zc=p.forwardRef((e,t)=>p.createElement(Ke,{ref:t,...e,weights:g0}));zc.displayName="VideoCameraSlashIcon";function ta(e,t){if(typeof e=="function")return e(t);e!=null&&(e.current=t)}function y0(...e){return t=>{let n=!1;const s=e.map(r=>{const o=ta(r,t);return!n&&typeof o=="function"&&(n=!0),o});if(n)return()=>{for(let r=0;r<s.length;r++){const o=s[r];typeof o=="function"?o():ta(e[r],null)}}}}function x0(e){const t=v0(e),n=p.forwardRef((s,r)=>{const{children:o,...i}=s,a=p.Children.toArray(o),c=a.find(S0);if(c){const d=c.props.children,u=a.map(f=>f===c?p.Children.count(d)>1?p.Children.only(null):p.isValidElement(d)?d.props.children:null:f);return l.jsx(t,{...i,ref:r,children:p.isValidElement(d)?p.cloneElement(d,void 0,u):null})}return l.jsx(t,{...i,ref:r,children:o})});return n.displayName=`${e}.Slot`,n}var b0=x0("Slot");function v0(e){const t=p.forwardRef((n,s)=>{const{children:r,...o}=n;if(p.isValidElement(r)){const i=E0(r),a=C0(o,r.props);return r.type!==p.Fragment&&(a.ref=s?y0(s,i):i),p.cloneElement(r,a)}return p.Children.count(r)>1?p.Children.only(null):null});return t.displayName=`${e}.SlotClone`,t}var w0=Symbol("radix.slottable");function S0(e){return p.isValidElement(e)&&typeof e.type=="function"&&"__radixId"in e.type&&e.type.__radixId===w0}function C0(e,t){const n={...t};for(const s in t){const r=e[s],o=t[s];/^on[A-Z]/.test(s)?r&&o?n[s]=(...a)=>{const c=o(...a);return r(...a),c}:r&&(n[s]=r):s==="style"?n[s]={...r,...o}:s==="className"&&(n[s]=[r,o].filter(Boolean).join(" "))}return{...e,...n}}function E0(e){var s,r;let t=(s=Object.getOwnPropertyDescriptor(e.props,"ref"))==null?void 0:s.get,n=t&&"isReactWarning"in t&&t.isReactWarning;return n?e.ref:(t=(r=Object.getOwnPropertyDescriptor(e,"ref"))==null?void 0:r.get,n=t&&"isReactWarning"in t&&t.isReactWarning,n?e.props.ref:e.props.ref||e.ref)}const k0=ls.cva(["text-xs font-bold tracking-wider uppercase whitespace-nowrap","inline-flex items-center justify-center gap-2 shrink-0 rounded-full cursor-pointer outline-none transition-colors duration-300","focus-visible:border-ring focus-visible:ring-ring/50 focus-visible:ring-[3px]","disabled:pointer-events-none disabled:opacity-50","aria-invalid:ring-destructive/20 aria-invalid:border-destructive dark:aria-invalid:ring-destructive/40 ","[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0"],{variants:{variant:{default:"bg-button text-button-foreground hover:bg-muted focus:bg-muted",destructive:["bg-destructive text-destructive-foreground","hover:bg-destructive-hover focus:bg-destructive-hover focus-visible:ring-destructive-foreground/20","dark:focus-visible:ring-destructive-foreground/40"],outline:["border bg-background","hover:bg-accent hover:text-accent-foreground","dark:bg-input/30 dark:border-input dark:hover:bg-input/50"],primary:"",secondary:"bg-secondary text-secondary-foregroun hover:bg-secondary/80",ghost:"hover:bg-accent hover:text-accent-foreground dark:hover:bg-accent/50",link:"text-primary underline-offset-4 hover:underline"},size:{default:"h-9 px-4 py-2 has-[>svg]:px-3",sm:"h-8 gap-1.5 px-3 has-[>svg]:px-2.5",lg:"h-10 px-6 has-[>svg]:px-4",icon:"size-9"}},defaultVariants:{variant:"default",size:"default"}});function T0({className:e,variant:t,size:n,asChild:s=!1,...r}){const o=s?b0:"button";return l.jsx(o,{"data-slot":"button",className:q(k0({variant:t,size:n,className:e})),...r})}function A0({onSend:e,className:t,disabled:n,...s}){const r=C.useRef(null),[o,i]=C.useState(""),a=d=>{var u,f;d.preventDefault(),(u=s.onSubmit)==null||u.call(s,d),e==null||e(o),i(""),(f=r.current)==null||f.focus({preventScroll:!0})},c=n||o.trim().length===0;return l.jsxs("form",{...s,onSubmit:a,className:q("flex items-center rounded-md pl-1 text-sm",t),children:[l.jsx("input",{ref:r,type:"text",className:"flex-1 focus:outline-none",placeholder:"Type something...",value:o,onChange:d=>i(d.target.value),disabled:n}),l.jsx(T0,{size:"sm",type:"submit",variant:c?"secondary":"primary",disabled:c,className:"font-mono",children:"SEND"})]})}const j0=ls.cva(["inline-flex items-center justify-center gap-2 rounded-full","text-sm font-medium whitespace-nowrap","cursor-pointer outline-none transition-[color,border,background-color]","!focus:ring-0 !focus-visible:ring-0 !focus:border-none !focus-visible:border-none !ring-0 !border-none !outline-none","aria-invalid:ring-0 dark:aria-invalid:ring-0 aria-invalid:border-0","disabled:pointer-events-none disabled:opacity-50 disabled:not-allowed","data-[state=on]:bg-button-selected data-[state=on]:border-button-border-selected","[&_svg]:pointer-events-none [&_svg:not([class*='size-'])]:size-4 [&_svg]:shrink-0"],{variants:{variant:{default:"bg-button hover:bg-muted focus:bg-muted hover:text-muted-foreground focus:text-muted-foreground",primary:"text-fg1 bg-button hover:bg-button-hover focus:bg-button-hover data-[state=off]:bg-button-primary hover:data-[state=off]:bg-button-hover data-[state=off]:text-button-primary-foreground",secondary:"text-fg1 bg-button hover:bg-button-hover focus:bg-button-hover data-[state=on]:bg-button-secondary hover:data-[state=on]:bg-button-secondary data-[state=on]:text-button-secondary-foreground",outline:["border border-button-border bg-button text-button-foreground","hover:bg-background focus:bg-background"]},size:{default:"h-9 px-2 min-w-9",sm:"h-8 px-1.5 min-w-8",lg:"h-10 px-2.5 min-w-10"}},defaultVariants:{variant:"default",size:"default"}});function Hc({className:e,variant:t,size:n,...s}){return l.jsx(Bd.Root,{"data-slot":"toggle",className:q(j0({variant:t,size:n,className:e})),...s})}function M0(e){const[t,n]=C.useState(()=>e.getPublishPermissions());return C.useEffect(()=>{const s=()=>{n(e.getPublishPermissions())},r=()=>{s()};return e.on("connection.connected",r),e.on("connection.disconnected",r),()=>{e.off("connection.connected",r),e.off("connection.disconnected",r)}},[e]),t}function P0(e){const[t,n]=C.useState(()=>e.getLocalParticipant()),[s,r]=C.useState(()=>e.getMicrophoneTrack());return C.useEffect(()=>{const o=()=>{const a=e.getLocalParticipant(),c=e.getMicrophoneTrack();console.log("🎤 useVoxketLocalParticipant: Updating state:",{hasParticipant:!!a,hasMicTrack:!!c,isMicEnabled:e.isMicrophoneEnabled,trackPublications:a?a.trackPublications.size:0}),n(a),r(c)};o(),e.on("connection.connected",o),e.on("connection.disconnected",o),e.on("track.muted",o),e.on("track.unmuted",o);const i=e.getRoom();if(i){const a=()=>{console.log("🎤 Track published, updating participant state"),o()},c=()=>{console.log("🎤 Track unpublished, updating participant state"),o()};return i.on("localTrackPublished",a),i.on("localTrackUnpublished",c),()=>{e.off("connection.connected",o),e.off("connection.disconnected",o),e.off("track.muted",o),e.off("track.unmuted",o),i.off("localTrackPublished",a),i.off("localTrackUnpublished",c)}}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:s}}function Ws(e,t,n){const[s,r]=C.useState(!1),[o,i]=C.useState(!1);return C.useEffect(()=>{const c=()=>{let d=!1;switch(t){case"microphone":d=e.isMicrophoneEnabled;break;case"camera":d=e.isCameraEnabled;break;case"screenShare":d=e.isScreenShareEnabled;break}console.log(`useVoxketTrackToggle: ${t} enabled state updated to:`,d),r(d)};return c(),e.on("track.muted",c),e.on("track.unmuted",c),e.on("connection.connected",c),()=>{e.off("track.muted",c),e.off("track.unmuted",c),e.off("connection.connected",c)}},[e,t]),{enabled:s,pending:o,toggle:async c=>{var d;try{i(!0);const u=c!==void 0?c:!s;switch(t){case"microphone":await e.toggleMicrophone(u);break;case"camera":await e.toggleCamera(u);break;case"screenShare":u?await e.startScreenShare():await e.stopScreenShare();break}}catch(u){(d=n==null?void 0:n.onDeviceError)==null||d.call(n,u)}finally{i(!1)}}}}function N0(e){const[t,n]=C.useState(()=>e.getRoom()),[s,r]=C.useState(()=>e.getConnectionState());return C.useEffect(()=>{const o=()=>{n(e.getRoom()),r(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 V0(e,t){const[n,s]=C.useState([]),[r,o]=C.useState("");return C.useEffect(()=>{var d;const a=async()=>{try{const u=t==="audioinput"?await e.getAudioInputDevices():await e.getVideoInputDevices();s(u)}catch(u){console.error("Failed to load devices:",u)}};a();const c=()=>{a()};return(d=navigator.mediaDevices)==null||d.addEventListener("devicechange",c),()=>{var u;(u=navigator.mediaDevices)==null||u.removeEventListener("devicechange",c)}},[e,t]),{devices:n,activeDeviceId:r,setActiveMediaDevice:async a=>{try{t==="audioinput"?await e.setAudioInputDevice(a):await e.setVideoInputDevice(a),o(a)}catch(c){console.error("Failed to set device:",c)}}}}function R0(e){const{preventSave:t=!1}=e||{};return{saveAudioInputEnabled:i=>{t||localStorage.setItem("voxket-audio-input-enabled",i.toString())},saveAudioInputDeviceId:i=>{t||localStorage.setItem("voxket-audio-input-device-id",i)},saveVideoInputEnabled:i=>{t||localStorage.setItem("voxket-video-input-enabled",i.toString())},saveVideoInputDeviceId:i=>{t||localStorage.setItem("voxket-video-input-device-id",i)}}}function na({...e}){return l.jsx(ze.Root,{"data-slot":"select",...e})}function sa({...e}){return l.jsx(ze.Value,{"data-slot":"select-value",...e})}function ra({className:e,size:t="default",children:n,...s}){return l.jsxs(ze.Trigger,{"data-slot":"select-trigger","data-size":t,className:q(["flex w-fit cursor-pointer items-center justify-between gap-2","rounded-full px-3 py-2 text-sm whitespace-nowrap","bg-button transition-[color,border,background-color]","disabled:cursor-not-allowed disabled:opacity-50","hover:bg-muted hover:text-muted-foreground","!focus:ring-0 !focus-visible:ring-0 !focus:border-none !focus-visible:border-none !ring-0 !border-none !outline-none","aria-invalid:ring-0 dark:aria-invalid:ring-0","data-[placeholder]:text-muted-foreground","data-[size=default]:h-9 data-[size=sm]:h-8","*:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2","[&:not([class*='text-'])_svg:not([class*='text-'])]:text-muted-foreground","[&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4"],e),...s,children:[n,l.jsx(ze.Icon,{asChild:!0,children:l.jsx(vo,{weight:"bold",className:"size-4 transition-colors"})})]})}function oa({className:e,children:t,position:n="popper",...s}){return l.jsx(ze.Portal,{children:l.jsxs(ze.Content,{"data-slot":"select-content",className:q(["bg-[#18182a]/90 backdrop-blur-md text-white border border-[#23233a] shadow-2xl","relative z-50 overflow-x-hidden overflow-y-auto rounded-xl","max-h-(--radix-select-content-available-height) min-w-[8rem]","origin-(--radix-select-content-transform-origin)","data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95","data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95","data-[side=top]:slide-in-from-bottom-2","data-[side=right]:slide-in-from-left-2","data-[side=bottom]:slide-in-from-top-2","data-[side=left]:slide-in-from-right-2"],n==="popper"&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",e),position:n,...s,children:[l.jsx(I0,{}),l.jsx(ze.Viewport,{className:q("p-1",n==="popper"&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:t}),l.jsx(D0,{})]})})}function ia({className:e,children:t,...n}){return l.jsxs(ze.Item,{"data-slot":"select-item",className:q(["relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none","cursor-pointer disabled:cursor-not-allowed","focus:bg-accent focus:text-accent-foreground","data-[disabled]:pointer-events-none data-[disabled]:opacity-50","*:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2","[&_svg:not([class*='text-'])]:text-muted-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4"],e),...n,children:[l.jsx("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:l.jsx(ze.ItemIndicator,{children:l.jsx(Fc,{className:"size-4",weight:"bold"})})}),l.jsx(ze.ItemText,{children:t})]})}function I0({className:e,...t}){return l.jsx(ze.ScrollUpButton,{"data-slot":"select-scroll-up-button",className:q("flex cursor-default items-center justify-center py-1",e),...t,children:l.jsx(Dc,{className:"size-4",weight:"bold"})})}function D0({className:e,...t}){return l.jsx(ze.ScrollDownButton,{"data-slot":"select-scroll-down-button",className:q("flex cursor-default items-center justify-center py-1",e),...t,children:l.jsx(vo,{className:"size-4",weight:"bold"})})}const aa=ls.cva(["w-full rounded-full px-3 py-2 text-sm cursor-pointer","disabled:not-allowed hover:bg-button-hover focus:bg-button-hover"],{variants:{size:{default:"w-[180px]",sm:"w-auto"}},defaultVariants:{size:"default"}});function la({kind:e,track:t,requestPermissions:n,onError:s,client:r,...o}){const i=o.size||"default";if(!r)return l.jsxs(na,{disabled:!0,children:[l.jsx(ra,{className:q(aa({size:i}),o.className),children:l.jsx(sa,{placeholder:`Select a ${e}`})}),l.jsx(oa,{children:l.jsx(ia,{value:"none",children:"No devices available"})})]});const{devices:a,activeDeviceId:c,setActiveMediaDevice:d}=V0(r,e==="audioinput"?"audioinput":"videoinput");return l.jsxs(na,{value:c,onValueChange:d,children:[l.jsx(ra,{className:q(aa({size:i}),o.className,"hover:bg"),children:i!=="sm"&&l.jsx(sa,{className:"font-mono text-sm",placeholder:`Select a ${e}`})}),l.jsx(oa,{children:a.map(u=>l.jsx(ia,{value:u.deviceId,className:"font-mono text-xs",children:u.label},u.deviceId))})]})}function $0(e,t,n=!1){if(n)return wo;switch(e){case K.Track.Source.Microphone:return t?Oc:Lc;case K.Track.Source.Camera:return t?Bc:zc;case K.Track.Source.ScreenShare:return _c;default:return p.Fragment}}function Gs({source:e,pressed:t,pending:n,className:s,...r}){const o=$0(e,t??!1,n),i=e===K.Track.Source.Microphone&&!(t??!1)&&!n,a=e===K.Track.Source.Camera&&!(t??!1)&&!n;return p.useEffect(()=>{console.log(`TrackToggle for ${e} changed: pressed=${t}, pending=${n}, actualState=${t?"enabled":"disabled"}`)},[e,t,n]),l.jsxs(Hc,{pressed:t,"aria-label":`Toggle ${e}`,className:q(s),...r,children:[l.jsx(o,{weight:"bold",className:q(n&&"animate-spin",i||a?"text-red-500":void 0)}),r.children]})}function F0(e){return e?M0(e):{camera:!0,microphone:!0,screenShare:!0,data:!0}}function O0(e={}){const{controls:t,saveUserChoices:n=!0,client:s}=e,r={leave:!0,...t};if(!s)return{micTrackRef:{participant:void 0,source:K.Track.Source.Microphone,publication:void 0},visibleControls:r,microphoneToggle:{enabled:!1,pending:!1,toggle:async()=>{}},cameraToggle:{enabled:!1,pending:!1,toggle:async()=>{}},screenShareToggle:{enabled:!1,pending:!1,toggle:async()=>{}},handleDisconnect:()=>{},handleAudioDeviceChange:()=>{},handleVideoDeviceChange:()=>{}};const{microphoneTrack:o,localParticipant:i}=P0(s),a=F0(s);N0(s);const c=Ws(s,"microphone",{onDeviceError:A=>{var T;return(T=e.onDeviceError)==null?void 0:T.call(e,{source:K.Track.Source.Microphone,error:A})}}),d=Ws(s,"camera",{onDeviceError:A=>{var T;return(T=e.onDeviceError)==null?void 0:T.call(e,{source:K.Track.Source.Camera,error:A})}}),u=Ws(s,"screenShare",{onDeviceError:A=>{var T;return(T=e.onDeviceError)==null?void 0:T.call(e,{source:K.Track.Source.ScreenShare,error:A})}}),f=p.useMemo(()=>{let A;if(i){for(const[,T]of i.trackPublications)if(T.source===K.Track.Source.Microphone){A=T;break}}return console.log("🎤 Creating micTrackRef:",{hasParticipant:!!i,hasPublication:!!A,isTrackSubscribed:A==null?void 0:A.isSubscribed,isMuted:A==null?void 0:A.isMuted,trackSid:A==null?void 0:A.trackSid}),{participant:i??void 0,source:K.Track.Source.Microphone,publication:A}},[i,o]);r.microphone??(r.microphone=a.microphone),r.screenShare??(r.screenShare=a.screenShare),r.camera??(r.camera=a.camera),r.chat??(r.chat=a.data);const{saveAudioInputEnabled:h,saveAudioInputDeviceId:y,saveVideoInputEnabled:g,saveVideoInputDeviceId:m}=R0({preventSave:!n}),b=p.useCallback(()=>{s&&s.disconnect()},[s]),k=p.useCallback(A=>{y(A??"default"),s&&s.setAudioInputDevice(A)},[y,s]),S=p.useCallback(A=>{m(A??"default"),s&&s.setVideoInputDevice(A)},[m,s]),E=p.useCallback(async A=>{u.enabled&&await u.toggle(!1),await d.toggle(A),g(!d.enabled)},[d,g,u]),w=p.useCallback(async A=>{await c.toggle(A),h(!c.enabled)},[c,h]),v=p.useCallback(async A=>{d.enabled&&await d.toggle(!1),await u.toggle(A)},[d,u]);return{micTrackRef:f,visibleControls:r,cameraToggle:{...d,toggle:E},microphoneToggle:{...c,toggle:w},screenShareToggle:{...u,toggle:v},handleDisconnect:b,handleAudioDeviceChange:k,handleVideoDeviceChange:S}}const L0={card:" bg-gradient-to-br from-black to-gray-900 border border-gray-900 w-full h-full flex flex-col justify-between overflow-hidden mx-auto my-auto rounded-2xl shadow-lg",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-10 z-10 bg-gradient-to-b from-black/90 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_center,_var(--tw-gradient-stops))] from-gray-800/20 via-transparent to-transparent",cardPurpleBlur:"absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-gray-600/10 to-transparent rounded-full blur-2xl",cardPinkBlur:"absolute bottom-0 left-0 w-24 h-24 bg-gradient-to-tr from-gray-500/8 to-transparent rounded-full blur-xl",cardPulse1:"absolute -top-2 -left-2 w-6 h-6 bg-gradient-to-br from-gray-400 to-gray-500 rounded-full blur-sm opacity-20 animate-pulse",cardPulse2:"absolute -bottom-2 -right-2 w-4 h-4 bg-gradient-to-br from-gray-500 to-gray-600 rounded-full blur-sm opacity-15 animate-pulse",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-br from-black to-gray-900 rounded-2xl shadow-xl p-0 overflow-hidden h-full",text:{primary:"text-white",secondary:"text-gray-300",muted:"text-gray-400",accent:"bg-clip-text text-transparent bg-gradient-to-r from-white via-gray-200 to-gray-300"},micButton:"absolute 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:"absolute 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:"absolute 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",promptSlider:"absolute w-full py-3 px-2 bg-gray-900 rounded-xl text-center text-white text-sm transition-opacity duration-700 ease-in-out border border-gray-600",statusIndicator:"w-2 h-2 bg-gray-400 rounded-full animate-pulse",pulseRings:{ring1:"w-32 h-32 rounded-full border-2 border-gray-600/30 pulse-ring",ring2:"absolute w-28 h-28 rounded-full border-2 border-gray-500/20 pulse-ring",ring3:"absolute w-24 h-24 rounded-full border-2 border-gray-400/15 pulse-ring"},controlBar:"border border-gray-600 rounded-3xl py-4 flex flex-col justify-end h-full bg-gray-900/50 backdrop-blur-sm",chatInput:{container:"bg-gray-900 w-full border-gray-600",textarea:"bg-gray-800 border-none text-white placeholder-gray-400",sendButton:"bg-blue-600 hover:bg-blue-700 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-gray-600 text-white",other:"bg-gray-700 text-white"},chatHeader:{container:"bg-gray-900 border-gray-600",backButton:"text-gray-400 hover:text-white hover:bg-gray-700"},spinner:"w-10 h-10 animate-spin text-gray-400 mb-2",suggestedResponse:{container:"bg-gray-800 text-blue-300 border-gray-700 hover:bg-gray-700 hover:text-white"},video:{container:"bg-gradient-to-br from-black to-gray-900 text-white",header:"border-gray-700 bg-gray-900/50",headerButton:"bg-gray-800 hover:bg-gray-700 text-gray-300",statusDot:"bg-green-500 animate-pulse",controlsBackground:"bg-gray-900/80 backdrop-blur-sm border-t border-gray-700",controlEnabled:"bg-blue-600 hover:bg-blue-700 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-gray-800 border border-gray-700 shadow-lg",placeholder:"bg-gray-800 text-gray-300",avatar:"bg-gray-700 text-gray-300",nameOverlay:"bg-black/70 text-white",mutedIndicator:"bg-red-600/80 text-white"}},_0={card:" bg-gradient-to-br from-white to-gray-50 border border-gray-200 w-full h-full flex flex-col justify-between overflow-hidden mx-auto my-auto shadow-lg",cardTopGradient:"pointer-events-none absolute top-0 left-0 w-full h-10 z-10 bg-gradient-to-b from-white/90 to-transparent",cardRadial:"absolute inset-0 bg-[radial-gradient(ellipse_at_center,_var(--tw-gradient-stops))] from-blue-500/5 via-transparent to-transparent",cardPurpleBlur:"absolute top-0 right-0 w-32 h-32 bg-gradient-to-br from-purple-500/10 to-transparent rounded-full blur-2xl",cardPinkBlur:"absolute bottom-0 left-0 w-24 h-24 bg-gradient-to-tr from-pink-500/8 to-transparent rounded-full blur-xl",cardPulse1:"absolute -top-2 -left-2 w-6 h-6 bg-gradient-to-br from-blue-500 to-purple-500 rounded-full blur-sm opacity-30 animate-pulse",cardPulse2:"absolute -bottom-2 -right-2 w-4 h-4 bg-gradient-to-br from-pink-500 to-purple-500 rounded-full blur-sm opacity-20 animate-pulse",main:"w-full flex flex-col items-center justify-center max-w-md mx-auto bg-gradient-to-br from-white to-gray-50 rounded-2xl shadow-xl p-0 overflow-hidden h-full",text:{primary:"text-gray-900",secondary:"text-gray-700",muted:"text-gray-500",accent:"bg-clip-text text-transparent bg-gradient-to-r from-blue-600 via-purple-600 to-pink-600"},micButton:"absolute text-white 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:"absolute text-white 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:"absolute text-white 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-white",promptSlider:"absolute w-full py-3 px-2 bg-gray-100 rounded-xl text-center text-gray-700 text-sm transition-opacity duration-700 ease-in-out border border-gray-200",statusIndicator:"w-2 h-2 bg-green-500 rounded-full animate-pulse",pulseRings:{ring1:"w-32 h-32 rounded-full border-2 border-blue-500/20 pulse-ring",ring2:"absolute w-28 h-28 rounded-full border-2 border-purple-500/15 pulse-ring",ring3:"absolute w-24 h-24 rounded-full border-2 border-pink-500/10 pulse-ring"},controlBar:"border border-gray-200 rounded-3xl py-4 flex flex-col justify-end h-full bg-white/80 backdrop-blur-sm",chatInput:{container:"bg-white/90 border-gray-200 shadow-sm",textarea:"bg-white border-none text-gray-900 placeholder-gray-500 ",sendButton:"bg-blue-600 hover:bg-blue-700 disabled:bg-gray-300 disabled:opacity-50 text-white",attachButton:"text-gray-500 hover:text-gray-700 hover:bg-gray-100 bg-blue-50",endButton:"bg-red-50 hover:bg-red-100 text-red-600 border-red-200"},chatMessage:{own:"bg-blue-50 text-gray-900 border border-blue-100",other:"bg-gray-50 text-gray-900 border border-gray-200"},chatHeader:{container:"bg-white border-gray-200",backButton:"text-gray-500 hover:text-gray-700 hover:bg-gray-100"},spinner:"w-10 h-10 animate-spin text-blue-500 mb-2",suggestedResponse:{container:"bg-white text-blue-700 border-blue-200 hover:bg-blue-50 hover:text-blue-900"},video:{container:"bg-gradient-to-br from-white to-gray-50 text-gray-900",header:"border-gray-200 bg-white/80",headerButton:"bg-gray-100 hover:bg-gray-200 text-gray-600",statusDot:"bg-green-500 animate-pulse",controlsBackground:"bg-white/90 backdrop-blur-sm border-t border-gray-200",controlEnabled:"bg-blue-600 hover:bg-blue-700 text-white",controlDisabled:"bg-gray-200 hover:bg-gray-300 text-gray-600",endCall:"bg-red-600 hover:bg-red-700 text-white",tile:"bg-white border border-gray-200 shadow-sm",placeholder:"bg-gray-50 text-gray-600",avatar:"bg-gray-200 text-gray-600",nameOverlay:"bg-black/70 text-white",mutedIndicator:"bg-red-600/80 text-white"}},B0={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 mx-auto my-auto",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",secondary:"text-gray-300",muted:"text-gray-400",accent:"bg-clip-text text-transparent bg-gradient-to-r from-[#3B82F6] via-[#8B5CF6] to-[#EC4899]"},micButton:"absolute 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:"absolute 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:"absolute 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",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"}},ca={dark:L0,light:_0,vox:B0};function Ve(e){return ca[e]||ca.vox}function z0({controls:e,saveUserChoices:t=!0,capabilities:n,className:s,onSendMessage:r,onChatOpenChange:o,onDisconnect:i,onDeviceError:a,theme:c="vox",client:d,...u}){const[f,h]=p.useState(!1),[y,g]=p.useState(!1),m=Ve(c),{micTrackRef:b,visibleControls:k,cameraToggle:S,microphoneToggle:E,screenShareToggle:w,handleAudioDeviceChange:v,handleVideoDeviceChange:A,handleDisconnect:T}=O0({controls:e,saveUserChoices:t,client:d}),j=async z=>{g(!0);try{await(r==null?void 0:r(z))}finally{g(!1)}};return p.useEffect(()=>{o==null||o(f)},[f,o]),p.useEffect(()=>{var z,x,I,L;console.log("🎤 AgentControlBar: micTrackRef changed:",{hasParticipant:!!b.participant,hasPublication:!!b.publication,source:b.source,isSubscribed:(z=b.publication)==null?void 0:z.isSubscribed,isMuted:(x=b.publication)==null?void 0:x.isMuted,trackSid:(I=b.publication)==null?void 0:I.trackSid,hasTrack:!!((L=b.publication)!=null&&L.track)})},[b]),l.jsxs("div",{"aria-label":"Voice assistant controls",className:q(m.controlBar,s),...u,children:[n.suportsChatInput&&l.jsxs("div",{inert:!f,className:q("overflow-hidden transition-[height] relative duration-300 ease-in-out",f?"h-[64px] mb-3":"h-0"),children:[l.jsx("div",{className:"flex h-9 px-4 w-full",children:l.jsx(A0,{onSend:j,disabled:y,className:q("w-full",m.chatInput)})}),l.jsx("hr",{className:"border-border my-2 mx-5"})]}),l.jsxs("div",{className:q("flex flex-row items-center gap-2 rounded-2xl mx-auto border-none backdrop-blur-lg px-2 py-2",c==="light"?"bg-white/80":"bg-[#18182a]/80"),children:[l.jsxs("div",{className:"flex gap-y-2 justify-start",children:[k.microphone&&l.jsxs("div",{className:"flex gap-y-2 items-center rounded-full overflow-hidden border-none ",children:[l.jsx(Gs,{variant:"primary",source:K.Track.Source.Microphone,pressed:E.enabled,disabled:E.pending,onPressedChange:E.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),l.jsx(Ee.BarVisualizer,{barCount:3,trackRef:b,options:{minHeight:5},className:"flex h-full w-auto items-center justify-center gap-x-0.5",children:l.jsx("span",{className:q(["h-full w-0.5 origin-center rounded-2xl","bg-white","group-data-[state=on]/track:bg-white group-data-[state=off]/track:bg-white","data-lk-muted:bg-muted"])})}),l.jsx(la,{size:"sm",kind:"audioinput",client:d,onError:a?z=>z instanceof Error?a({source:K.Track.Source.Microphone,error:z}):void 0:void 0,onActiveDeviceChange:v,className:q(["h-full py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/30 transition-colors","min-w-[2.5rem]"])})]}),n.suportsVideoInput&&k.camera&&l.jsxs("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:[l.jsx(Gs,{variant:"primary",source:K.Track.Source.Camera,pressed:S.enabled,pending:S.pending,disabled:S.pending,onPressedChange:S.toggle,className:"w-auto py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"}),l.jsx(la,{size:"sm",kind:"videoinput",client:d,onError:a?z=>z instanceof Error?a({source:K.Track.Source.Camera,error:z}):void 0:void 0,onActiveDeviceChange:A,className:q(["h-full py-2 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors","min-w-[2.5rem]"])})]}),n.suportsScreenShare&&k.screenShare&&l.jsx("div",{className:"flex items-center rounded-full overflow-hidden border-none ",children:l.jsx(Gs,{variant:"secondary",source:K.Track.Source.ScreenShare,pressed:w.enabled,disabled:w.pending,onPressedChange:w.toggle,className:"w-auto py-2 disabled:opacity-70 rounded-none border-none bg-transparent text-inherit focus:bg-primary/80 hover:bg-primary/80 transition-colors"})})]}),k.chat&&l.jsx("div",{className:"flex items-center rounded-full overflow-hidden bg-secondary text-secondary-foreground border-none ",children:l.jsx(Hc,{variant:"secondary","aria-label":"Toggle chat",pressed:f,onPressedChange:z=>{h(z)},className:"aspect-square h-full py-3 rounded-none border-none bg-transparent text-inherit focus:bg-secondary/80 hover:bg-secondary/80 transition-colors flex items-center",children:l.jsx($c,{weight:"bold",className:"h-5 w-5"})})})]})]})}const H0=(e,t)=>{var a,c;const n=p.useMemo(()=>t?t(e.message):e.message,[e.message,t]),s=!!e.editTimestamp,r=new Date(e.timestamp),o=typeof navigator<"u"?navigator.language:"en-US",i=(a=e.from)!=null&&a.name&&e.from.name!==""?e.from.name:(c=e.from)==null?void 0:c.identity;return{message:n,hasBeenEdited:s,time:r,locale:o,name:i}},U0=({entry:e,messageFormatter:t,className:n,participantName:s,...r})=>{var u,f;const{message:o,time:i,locale:a}=H0(e,t),c=((u=e.from)==null?void 0:u.isLocal)??!1;q("w-full px-3 py-2 rounded-2xl text-xs break-words whitespace-pre-line",c?" text-end border border-[#5078F2]/30":"bg-muted text-foreground border border-[#813aa7]/30","text-left");const d=q("inline-flex items-center justify-center w-6 h-6 rounded-full text-xs font-bold flex-shrink-0",c?"bg-[#5078F2] text-white":"bg-[#813aa7] ml-1 text-white");return l.jsx("li",{title:i.toLocaleTimeString(a,{timeStyle:"full"}),className:q("group flex mb-2",c?"justify-end":"justify-start",n),...r,children:l.jsxs("div",{className:q("flex w-fit max-w-full rounded-2xl border",c?"flex-row-reverse items-center border-[#5078F2]/30":"flex-row items-center border-[#813aa7]/30 bg-muted text-foreground"),children:[l.jsx("span",{className:d,children:c?((f=s==null?void 0:s[0])==null?void 0:f.toUpperCase())||"U":"A"}),l.jsx("span",{className:q("flex items-center text-xs break-words whitespace-pre-line",c?"ml-auto justify-end text-right":"justify-start text-left","px-3 py-2"),children:o})]})})};function Z0(e){C.useEffect(()=>{function t(){const n=e.current;n&&(n.scrollTop=n.scrollHeight)}if(e.current){const n=new ResizeObserver(t);return n.observe(e.current),t(),()=>n.disconnect()}},[e])}const W0=({className:e,children:t,...n})=>{const s=C.useRef(null);return Z0(s),l.jsx("div",{ref:s,className:q("flex flex-col justify-end",e),...n,children:t})},G0=({state:e,audioTrack:t,className:n,ref:s})=>l.jsx("div",{ref:s,className:q("",n),children:l.jsx(Ee.BarVisualizer,{barCount:5,state:e,options:{minHeight:5},trackRef:t,className:q("flex aspect-video w-40 items-center justify-center gap-1"),children:l.jsx("span",{className:q(["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]"])})})}),K0=({videoTrack:e,className:t,ref:n})=>{var s,r;return l.jsx("div",{ref:n,className:q(t),children:l.jsx(Ee.VideoTrack,{trackRef:e,width:((s=e==null?void 0:e.publication.dimensions)==null?void 0:s.width)??0,height:((r=e==null?void 0:e.publication.dimensions)==null?void 0:r.height)??0,className:"rounded-md"})})},Y0=ie.create(Ee.VideoTrack),q0=({trackRef:e,className:t,ref:n})=>{var s,r;return l.jsx("div",{className:q("bg-muted overflow-hidden rounded-md",t),children:l.jsx(Y0,{ref:n,trackRef:e,width:((s=e==null?void 0:e.publication.dimensions)==null?void 0:s.width)??0,height:((r=e==null?void 0:e.publication.dimensions)==null?void 0:r.height)??0,className:q("h-full w-auto")})})},da=ie.create(q0),X0=ie.create(G0),J0=ie.create(K0),et={initial:{opacity:0,scale:0},animate:{opacity:1,scale:1},exit:{opacity:0,scale:0},transition:{type:"spring",stiffness:675,damping:75,mass:1}},Pt={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 row-span-3","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 Q0(e){const{localParticipant:t}=Ee.useLocalParticipant(),n=t.getTrackPublication(e);return C.useMemo(()=>n?{source:e,participant:t,publication:n}:void 0,[e,n,t])}function eg({chatOpen:e}){const{state:t,audioTrack:n,videoTrack:s,agent:{isActive:r=!1}={}}=Ee.useVoiceAssistant(),[o]=Ee.useTracks([K.Track.Source.ScreenShare]),i=Q0(K.Track.Source.Camera),a=i&&!i.publication.isMuted,c=o&&!o.publication.isMuted,d=a||c,u={...et.transition,delay:e?0:.15},f={...et.animate,scale:e?1:3,transition:u},h={...et.animate,transition:u},y=u,g=u,m=s!==void 0;return l.jsx("div",{className:"relative w-full h-full z-10 flex items-center justify-center",children:l.jsx("div",{className:"relative w-full h-full max-w-2xl px-4 md:px-0",children:l.jsxs("div",{className:q(Pt.grid),children:[r&&l.jsx("div",{className:q(["grid",!e&&Pt.agentChatClosed,e&&d&&Pt.agentChatOpenWithSecondTile,e&&!d&&Pt.agentChatOpenWithoutSecondTile]),children:l.jsxs("div",{className:"h-full flex items-center justify-center",children:[!m&&l.jsx(X0,{layoutId:"agent",...et,animate:f,transition:y,state:t,audioTrack:n,className:q(e?"h-[90px]":"h-auto w-full")},"agent"),m&&l.jsx(J0,{layoutId:"avatar",...et,animate:h,transition:g,videoTrack:s,className:q(e?"h-[90px] [&>video]:h-[90px] [&>video]:w-auto":"h-auto w-full")},"avatar")]})}),l.jsx("div",{className:q(["grid",e&&Pt.secondTileChatOpen,!e&&Pt.secondTileChatClosed]),children:l.jsxs("div",{className:"w-full px-10 flex items-center shadow-2xl justify-between",children:[i&&a&&l.jsx(da,{layout:"position",layoutId:"camera",...et,trackRef:i,transition:{...et.transition,delay:e?0:.15},className:"h-[60px] order-1"},"camera"),c&&l.jsx(da,{layout:"position",layoutId:"screen",...et,trackRef:o,transition:{...et.transition,delay:e?0:.15},className:"h-[70px] order-2"},"screen")]})})]})})})}function ua({timeout:e}){const[t,n]=C.useState(100),s=C.useRef(null),r=C.useRef(null);return C.useEffect(()=>{if(!e||e<=0)return;n(100),r.current=Date.now();const o=()=>{if(!e||r.current===null)return;const i=Date.now()-r.current,a=Math.max(0,100-i/e*100);n(a),a>0&&(s.current=requestAnimationFrame(o))};return s.current=requestAnimationFrame(o),()=>{s.current&&cancelAnimationFrame(s.current)}},[e]),!e||e<=0?null:l.jsx("div",{className:"w-full h-1 relative top-1 rounded-t-4xl bg-gray-700 overflow-hidden",children:l.jsx(ie.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 Gt({interaction:e,theme:t,onDismiss:n,client:s,addLocalMessage:r}){var a;if(!e||!e.isVisible||!e.component)return null;const[o]=p.useState(()=>Date.now()),i=()=>e.component?p.createElement(e.component,{handler:e.handler||void 0,timeout:e.timeout,loadData:async d=>{console.log("InteractiveComponent: Loading data:",d)},presentationMode:e.presentationMode,data:e.data,client:s,addLocalMessage:r}):l.jsx("div",{className:"p-4 text-red-500",children:"Component not found"});switch(e.presentationMode){case"fullscreen":return l.jsx(zt,{children:l.jsxs(ie.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},className:"fixed inset-0 z-[9999] bg-black",children:[l.jsxs("div",{className:"flex flex-col",children:[l.jsx(ua,{timeout:e.timeout}),l.jsxs("div",{className:"flex items-center justify-between p-4 bg-black/80 text-white border-b border-gray-700",children:[l.jsx("h3",{className:"text-lg font-semibold",children:e.methodName.replace(/_/g," ").replace(/\b\w/g,c=>c.toUpperCase())}),l.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:l.jsx(Me.X,{className:"w-5 h-5"})})]})]}),l.jsx("div",{className:"flex-1 overflow-y-auto p-4",children:i()})]})});case"embedded":default:return l.jsx(zt,{children:l.jsx(ie.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},className:"w-fit rounded-lg ",children:l.jsxs("div",{children:[l.jsx(ua,{timeout:e.timeout}),i()]})})})}}function tg(){const e=Ee.useTranscriptions(),t=Ee.useChat(),n=Ee.useRoomContext();return{messages:C.useMemo(()=>[...e.map(o=>t0(o,n)),...t.chatMessages].sort((o,i)=>o.timestamp-i.timestamp),[e,t.chatMessages,n]),send:t.send}}const ng=({logLevel:e}={})=>{const t=Ee.useRoomContext();p.useEffect(()=>(K.setLogLevel(e??"debug"),window.__lk_room=t,()=>{window.__lk_room=void 0}),[t,e])},fa=e=>e,sg=()=>{let e=fa;return{configure(t){e=t},generate(t){return e(t)},reset(){e=fa}}},rg=sg();function ht(e,...t){const n=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach(s=>n.searchParams.append("args[]",s)),`Minified MUI error #${e}; visit ${n} for the full message.`}function At(e){if(typeof e!="string")throw new Error(process.env.NODE_ENV!=="production"?"MUI: `capitalize(string)` expects a string argument.":ht(7));return e.charAt(0).toUpperCase()+e.slice(1)}function og(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var _n={exports:{}},Bn={exports:{}},ce={};/** @license React v16.13.1
10
+ * react-is.production.min.js
11
+ *
12
+ * Copyright (c) Facebook, Inc. and its affiliates.
13
+ *
14
+ * This source code is licensed under the MIT license found in the
15
+ * LICENSE file in the root directory of this source tree.
16
+ */var ha;function ig(){if(ha)return ce;ha=1;var e=typeof Symbol=="function"&&Symbol.for,t=e?Symbol.for("react.element"):60103,n=e?Symbol.for("react.portal"):60106,s=e?Symbol.for("react.fragment"):60107,r=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,i=e?Symbol.for("react.provider"):60109,a=e?Symbol.for("react.context"):60110,c=e?Symbol.for("react.async_mode"):60111,d=e?Symbol.for("react.concurrent_mode"):60111,u=e?Symbol.for("react.forward_ref"):60112,f=e?Symbol.for("react.suspense"):60113,h=e?Symbol.for("react.suspense_list"):60120,y=e?Symbol.for("react.memo"):60115,g=e?Symbol.for("react.lazy"):60116,m=e?Symbol.for("react.block"):60121,b=e?Symbol.for("react.fundamental"):60117,k=e?Symbol.for("react.responder"):60118,S=e?Symbol.for("react.scope"):60119;function E(v){if(typeof v=="object"&&v!==null){var A=v.$$typeof;switch(A){case t:switch(v=v.type,v){case c:case d:case s:case o:case r:case f:return v;default:switch(v=v&&v.$$typeof,v){case a:case u:case g:case y:case i:return v;default:return A}}case n:return A}}}function w(v){return E(v)===d}return ce.AsyncMode=c,ce.ConcurrentMode=d,ce.ContextConsumer=a,ce.ContextProvider=i,ce.Element=t,ce.ForwardRef=u,ce.Fragment=s,ce.Lazy=g,ce.Memo=y,ce.Portal=n,ce.Profiler=o,ce.StrictMode=r,ce.Suspense=f,ce.isAsyncMode=function(v){return w(v)||E(v)===c},ce.isConcurrentMode=w,ce.isContextConsumer=function(v){return E(v)===a},ce.isContextProvider=function(v){return E(v)===i},ce.isElement=function(v){return typeof v=="object"&&v!==null&&v.$$typeof===t},ce.isForwardRef=function(v){return E(v)===u},ce.isFragment=function(v){return E(v)===s},ce.isLazy=function(v){return E(v)===g},ce.isMemo=function(v){return E(v)===y},ce.isPortal=function(v){return E(v)===n},ce.isProfiler=function(v){return E(v)===o},ce.isStrictMode=function(v){return E(v)===r},ce.isSuspense=function(v){return E(v)===f},ce.isValidElementType=function(v){return typeof v=="string"||typeof v=="function"||v===s||v===d||v===o||v===r||v===f||v===h||typeof v=="object"&&v!==null&&(v.$$typeof===g||v.$$typeof===y||v.$$typeof===i||v.$$typeof===a||v.$$typeof===u||v.$$typeof===b||v.$$typeof===k||v.$$typeof===S||v.$$typeof===m)},ce.typeOf=E,ce}var de={};/** @license React v16.13.1
17
+ * react-is.development.js
18
+ *
19
+ * Copyright (c) Facebook, Inc. and its affiliates.
20
+ *
21
+ * This source code is licensed under the MIT license found in the
22
+ * LICENSE file in the root directory of this source tree.
23
+ */var ma;function ag(){return ma||(ma=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,s=e?Symbol.for("react.fragment"):60107,r=e?Symbol.for("react.strict_mode"):60108,o=e?Symbol.for("react.profiler"):60114,i=e?Symbol.for("react.provider"):60109,a=e?Symbol.for("react.context"):60110,c=e?Symbol.for("react.async_mode"):60111,d=e?Symbol.for("react.concurrent_mode"):60111,u=e?Symbol.for("react.forward_ref"):60112,f=e?Symbol.for("react.suspense"):60113,h=e?Symbol.for("react.suspense_list"):60120,y=e?Symbol.for("react.memo"):60115,g=e?Symbol.for("react.lazy"):60116,m=e?Symbol.for("react.block"):60121,b=e?Symbol.for("react.fundamental"):60117,k=e?Symbol.for("react.responder"):60118,S=e?Symbol.for("react.scope"):60119;function E(O){return typeof O=="string"||typeof O=="function"||O===s||O===d||O===o||O===r||O===f||O===h||typeof O=="object"&&O!==null&&(O.$$typeof===g||O.$$typeof===y||O.$$typeof===i||O.$$typeof===a||O.$$typeof===u||O.$$typeof===b||O.$$typeof===k||O.$$typeof===S||O.$$typeof===m)}function w(O){if(typeof O=="object"&&O!==null){var le=O.$$typeof;switch(le){case t:var Te=O.type;switch(Te){case c:case d:case s:case o:case r:case f:return Te;default:var Oe=Te&&Te.$$typeof;switch(Oe){case a:case u:case g:case y:case i:return Oe;default:return le}}case n:return le}}}var v=c,A=d,T=a,j=i,z=t,x=u,I=s,L=g,J=y,te=n,ee=o,ne=r,Y=f,R=!1;function X(O){return R||(R=!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.")),P(O)||w(O)===c}function P(O){return w(O)===d}function N(O){return w(O)===a}function U(O){return w(O)===i}function M(O){return typeof O=="object"&&O!==null&&O.$$typeof===t}function D(O){return w(O)===u}function H(O){return w(O)===s}function F(O){return w(O)===g}function $(O){return w(O)===y}function B(O){return w(O)===n}function Z(O){return w(O)===o}function _(O){return w(O)===r}function re(O){return w(O)===f}de.AsyncMode=v,de.ConcurrentMode=A,de.ContextConsumer=T,de.ContextProvider=j,de.Element=z,de.ForwardRef=x,de.Fragment=I,de.Lazy=L,de.Memo=J,de.Portal=te,de.Profiler=ee,de.StrictMode=ne,de.Suspense=Y,de.isAsyncMode=X,de.isConcurrentMode=P,de.isContextConsumer=N,de.isContextProvider=U,de.isElement=M,de.isForwardRef=D,de.isFragment=H,de.isLazy=F,de.isMemo=$,de.isPortal=B,de.isProfiler=Z,de.isStrictMode=_,de.isSuspense=re,de.isValidElementType=E,de.typeOf=w}()),de}var pa;function Uc(){return pa||(pa=1,process.env.NODE_ENV==="production"?Bn.exports=ig():Bn.exports=ag()),Bn.exports}/*
24
+ object-assign
25
+ (c) Sindre Sorhus
26
+ @license MIT
27
+ */var Ks,ga;function lg(){if(ga)return Ks;ga=1;var e=Object.getOwnPropertySymbols,t=Object.prototype.hasOwnProperty,n=Object.prototype.propertyIsEnumerable;function s(o){if(o==null)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(o)}function r(){try{if(!Object.assign)return!1;var o=new String("abc");if(o[5]="de",Object.getOwnPropertyNames(o)[0]==="5")return!1;for(var i={},a=0;a<10;a++)i["_"+String.fromCharCode(a)]=a;var c=Object.getOwnPropertyNames(i).map(function(u){return i[u]});if(c.join("")!=="0123456789")return!1;var d={};return"abcdefghijklmnopqrst".split("").forEach(function(u){d[u]=u}),Object.keys(Object.assign({},d)).join("")==="abcdefghijklmnopqrst"}catch{return!1}}return Ks=r()?Object.assign:function(o,i){for(var a,c=s(o),d,u=1;u<arguments.length;u++){a=Object(arguments[u]);for(var f in a)t.call(a,f)&&(c[f]=a[f]);if(e){d=e(a);for(var h=0;h<d.length;h++)n.call(a,d[h])&&(c[d[h]]=a[d[h]])}}return c},Ks}var Ys,ya;function So(){if(ya)return Ys;ya=1;var e="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";return Ys=e,Ys}var qs,xa;function Zc(){return xa||(xa=1,qs=Function.call.bind(Object.prototype.hasOwnProperty)),qs}var Xs,ba;function cg(){if(ba)return Xs;ba=1;var e=function(){};if(process.env.NODE_ENV!=="production"){var t=So(),n={},s=Zc();e=function(o){var i="Warning: "+o;typeof console<"u"&&console.error(i);try{throw new Error(i)}catch{}}}function r(o,i,a,c,d){if(process.env.NODE_ENV!=="production"){for(var u in o)if(s(o,u)){var f;try{if(typeof o[u]!="function"){var h=Error((c||"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 h.name="Invariant Violation",h}f=o[u](i,u,c,a,null,t)}catch(g){f=g}if(f&&!(f instanceof Error)&&e((c||"React class")+": type specification of "+a+" `"+u+"` is invalid; the type checker function must return `null` or an `Error` but returned a "+typeof f+". You may have forgotten to pass an argument to the type checker creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and shape all require an argument)."),f instanceof Error&&!(f.message in n)){n[f.message]=!0;var y=d?d():"";e("Failed "+a+" type: "+f.message+(y??""))}}}}return r.resetWarningCache=function(){process.env.NODE_ENV!=="production"&&(n={})},Xs=r,Xs}var Js,va;function dg(){if(va)return Js;va=1;var e=Uc(),t=lg(),n=So(),s=Zc(),r=cg(),o=function(){};process.env.NODE_ENV!=="production"&&(o=function(a){var c="Warning: "+a;typeof console<"u"&&console.error(c);try{throw new Error(c)}catch{}});function i(){return null}return Js=function(a,c){var d=typeof Symbol=="function"&&Symbol.iterator,u="@@iterator";function f(P){var N=P&&(d&&P[d]||P[u]);if(typeof N=="function")return N}var h="<<anonymous>>",y={array:k("array"),bigint:k("bigint"),bool:k("boolean"),func:k("function"),number:k("number"),object:k("object"),string:k("string"),symbol:k("symbol"),any:S(),arrayOf:E,element:w(),elementType:v(),instanceOf:A,node:x(),objectOf:j,oneOf:T,oneOfType:z,shape:L,exact:J};function g(P,N){return P===N?P!==0||1/P===1/N:P!==P&&N!==N}function m(P,N){this.message=P,this.data=N&&typeof N=="object"?N:{},this.stack=""}m.prototype=Error.prototype;function b(P){if(process.env.NODE_ENV!=="production")var N={},U=0;function M(H,F,$,B,Z,_,re){if(B=B||h,_=_||$,re!==n){if(c){var O=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 O.name="Invariant Violation",O}else if(process.env.NODE_ENV!=="production"&&typeof console<"u"){var le=B+":"+$;!N[le]&&U<3&&(o("You are manually calling a React.PropTypes validation function for the `"+_+"` prop on `"+B+"`. 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."),N[le]=!0,U++)}}return F[$]==null?H?F[$]===null?new m("The "+Z+" `"+_+"` is marked as required "+("in `"+B+"`, but its value is `null`.")):new m("The "+Z+" `"+_+"` is marked as required in "+("`"+B+"`, but its value is `undefined`.")):null:P(F,$,B,Z,_)}var D=M.bind(null,!1);return D.isRequired=M.bind(null,!0),D}function k(P){function N(U,M,D,H,F,$){var B=U[M],Z=ne(B);if(Z!==P){var _=Y(B);return new m("Invalid "+H+" `"+F+"` of type "+("`"+_+"` supplied to `"+D+"`, expected ")+("`"+P+"`."),{expectedType:P})}return null}return b(N)}function S(){return b(i)}function E(P){function N(U,M,D,H,F){if(typeof P!="function")return new m("Property `"+F+"` of component `"+D+"` has invalid PropType notation inside arrayOf.");var $=U[M];if(!Array.isArray($)){var B=ne($);return new m("Invalid "+H+" `"+F+"` of type "+("`"+B+"` supplied to `"+D+"`, expected an array."))}for(var Z=0;Z<$.length;Z++){var _=P($,Z,D,H,F+"["+Z+"]",n);if(_ instanceof Error)return _}return null}return b(N)}function w(){function P(N,U,M,D,H){var F=N[U];if(!a(F)){var $=ne(F);return new m("Invalid "+D+" `"+H+"` of type "+("`"+$+"` supplied to `"+M+"`, expected a single ReactElement."))}return null}return b(P)}function v(){function P(N,U,M,D,H){var F=N[U];if(!e.isValidElementType(F)){var $=ne(F);return new m("Invalid "+D+" `"+H+"` of type "+("`"+$+"` supplied to `"+M+"`, expected a single ReactElement type."))}return null}return b(P)}function A(P){function N(U,M,D,H,F){if(!(U[M]instanceof P)){var $=P.name||h,B=X(U[M]);return new m("Invalid "+H+" `"+F+"` of type "+("`"+B+"` supplied to `"+D+"`, expected ")+("instance of `"+$+"`."))}return null}return b(N)}function T(P){if(!Array.isArray(P))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.")),i;function N(U,M,D,H,F){for(var $=U[M],B=0;B<P.length;B++)if(g($,P[B]))return null;var Z=JSON.stringify(P,function(re,O){var le=Y(O);return le==="symbol"?String(O):O});return new m("Invalid "+H+" `"+F+"` of value `"+String($)+"` "+("supplied to `"+D+"`, expected one of "+Z+"."))}return b(N)}function j(P){function N(U,M,D,H,F){if(typeof P!="function")return new m("Property `"+F+"` of component `"+D+"` has invalid PropType notation inside objectOf.");var $=U[M],B=ne($);if(B!=="object")return new m("Invalid "+H+" `"+F+"` of type "+("`"+B+"` supplied to `"+D+"`, expected an object."));for(var Z in $)if(s($,Z)){var _=P($,Z,D,H,F+"."+Z,n);if(_ instanceof Error)return _}return null}return b(N)}function z(P){if(!Array.isArray(P))return process.env.NODE_ENV!=="production"&&o("Invalid argument supplied to oneOfType, expected an instance of array."),i;for(var N=0;N<P.length;N++){var U=P[N];if(typeof U!="function")return o("Invalid argument supplied to oneOfType. Expected an array of check functions, but received "+R(U)+" at index "+N+"."),i}function M(D,H,F,$,B){for(var Z=[],_=0;_<P.length;_++){var re=P[_],O=re(D,H,F,$,B,n);if(O==null)return null;O.data&&s(O.data,"expectedType")&&Z.push(O.data.expectedType)}var le=Z.length>0?", expected one of type ["+Z.join(", ")+"]":"";return new m("Invalid "+$+" `"+B+"` supplied to "+("`"+F+"`"+le+"."))}return b(M)}function x(){function P(N,U,M,D,H){return te(N[U])?null:new m("Invalid "+D+" `"+H+"` supplied to "+("`"+M+"`, expected a ReactNode."))}return b(P)}function I(P,N,U,M,D){return new m((P||"React class")+": "+N+" type `"+U+"."+M+"` is invalid; it must be a function, usually from the `prop-types` package, but received `"+D+"`.")}function L(P){function N(U,M,D,H,F){var $=U[M],B=ne($);if(B!=="object")return new m("Invalid "+H+" `"+F+"` of type `"+B+"` "+("supplied to `"+D+"`, expected `object`."));for(var Z in P){var _=P[Z];if(typeof _!="function")return I(D,H,F,Z,Y(_));var re=_($,Z,D,H,F+"."+Z,n);if(re)return re}return null}return b(N)}function J(P){function N(U,M,D,H,F){var $=U[M],B=ne($);if(B!=="object")return new m("Invalid "+H+" `"+F+"` of type `"+B+"` "+("supplied to `"+D+"`, expected `object`."));var Z=t({},U[M],P);for(var _ in Z){var re=P[_];if(s(P,_)&&typeof re!="function")return I(D,H,F,_,Y(re));if(!re)return new m("Invalid "+H+" `"+F+"` key `"+_+"` supplied to `"+D+"`.\nBad object: "+JSON.stringify(U[M],null," ")+`
28
+ Valid keys: `+JSON.stringify(Object.keys(P),null," "));var O=re($,_,D,H,F+"."+_,n);if(O)return O}return null}return b(N)}function te(P){switch(typeof P){case"number":case"string":case"undefined":return!0;case"boolean":return!P;case"object":if(Array.isArray(P))return P.every(te);if(P===null||a(P))return!0;var N=f(P);if(N){var U=N.call(P),M;if(N!==P.entries){for(;!(M=U.next()).done;)if(!te(M.value))return!1}else for(;!(M=U.next()).done;){var D=M.value;if(D&&!te(D[1]))return!1}}else return!1;return!0;default:return!1}}function ee(P,N){return P==="symbol"?!0:N?N["@@toStringTag"]==="Symbol"||typeof Symbol=="function"&&N instanceof Symbol:!1}function ne(P){var N=typeof P;return Array.isArray(P)?"array":P instanceof RegExp?"object":ee(N,P)?"symbol":N}function Y(P){if(typeof P>"u"||P===null)return""+P;var N=ne(P);if(N==="object"){if(P instanceof Date)return"date";if(P instanceof RegExp)return"regexp"}return N}function R(P){var N=Y(P);switch(N){case"array":case"object":return"an "+N;case"boolean":case"date":case"regexp":return"a "+N;default:return N}}function X(P){return!P.constructor||!P.constructor.name?h:P.constructor.name}return y.checkPropTypes=r,y.resetWarningCache=r.resetWarningCache,y.PropTypes=y,y},Js}var Qs,wa;function ug(){if(wa)return Qs;wa=1;var e=So();function t(){}function n(){}return n.resetWarningCache=t,Qs=function(){function s(i,a,c,d,u,f){if(f!==e){var h=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 h.name="Invariant Violation",h}}s.isRequired=s;function r(){return s}var o={array:s,bigint:s,bool:s,func:s,number:s,object:s,string:s,symbol:s,any:s,arrayOf:r,element:s,elementType:s,instanceOf:r,node:s,objectOf:r,oneOf:r,oneOfType:r,shape:r,exact:r,checkPropTypes:n,resetWarningCache:t};return o.PropTypes=o,o},Qs}var Sa;function fg(){if(Sa)return _n.exports;if(Sa=1,process.env.NODE_ENV!=="production"){var e=Uc(),t=!0;_n.exports=dg()(e.isElement,t)}else _n.exports=ug()();return _n.exports}var hg=fg();const ae=og(hg);function mg(e,t,n=void 0){const s={};for(const r in e){const o=e[r];let i="",a=!0;for(let c=0;c<o.length;c+=1){const d=o[c];d&&(i+=(a===!0?"":" ")+t(d),a=!1,n&&n[d]&&(i+=" "+n[d]))}s[r]=i}return s}var zn={exports:{}},ue={};/**
29
+ * @license React
30
+ * react-is.production.js
31
+ *
32
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
33
+ *
34
+ * This source code is licensed under the MIT license found in the
35
+ * LICENSE file in the root directory of this source tree.
36
+ */var Ca;function pg(){if(Ca)return ue;Ca=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),s=Symbol.for("react.strict_mode"),r=Symbol.for("react.profiler"),o=Symbol.for("react.consumer"),i=Symbol.for("react.context"),a=Symbol.for("react.forward_ref"),c=Symbol.for("react.suspense"),d=Symbol.for("react.suspense_list"),u=Symbol.for("react.memo"),f=Symbol.for("react.lazy"),h=Symbol.for("react.view_transition"),y=Symbol.for("react.client.reference");function g(m){if(typeof m=="object"&&m!==null){var b=m.$$typeof;switch(b){case e:switch(m=m.type,m){case n:case r:case s:case c:case d:case h:return m;default:switch(m=m&&m.$$typeof,m){case i:case a:case f:case u:return m;case o:return m;default:return b}}case t:return b}}}return ue.ContextConsumer=o,ue.ContextProvider=i,ue.Element=e,ue.ForwardRef=a,ue.Fragment=n,ue.Lazy=f,ue.Memo=u,ue.Portal=t,ue.Profiler=r,ue.StrictMode=s,ue.Suspense=c,ue.SuspenseList=d,ue.isContextConsumer=function(m){return g(m)===o},ue.isContextProvider=function(m){return g(m)===i},ue.isElement=function(m){return typeof m=="object"&&m!==null&&m.$$typeof===e},ue.isForwardRef=function(m){return g(m)===a},ue.isFragment=function(m){return g(m)===n},ue.isLazy=function(m){return g(m)===f},ue.isMemo=function(m){return g(m)===u},ue.isPortal=function(m){return g(m)===t},ue.isProfiler=function(m){return g(m)===r},ue.isStrictMode=function(m){return g(m)===s},ue.isSuspense=function(m){return g(m)===c},ue.isSuspenseList=function(m){return g(m)===d},ue.isValidElementType=function(m){return typeof m=="string"||typeof m=="function"||m===n||m===r||m===s||m===c||m===d||typeof m=="object"&&m!==null&&(m.$$typeof===f||m.$$typeof===u||m.$$typeof===i||m.$$typeof===o||m.$$typeof===a||m.$$typeof===y||m.getModuleId!==void 0)},ue.typeOf=g,ue}var fe={};/**
37
+ * @license React
38
+ * react-is.development.js
39
+ *
40
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
41
+ *
42
+ * This source code is licensed under the MIT license found in the
43
+ * LICENSE file in the root directory of this source tree.
44
+ */var Ea;function gg(){return Ea||(Ea=1,process.env.NODE_ENV!=="production"&&function(){function e(m){if(typeof m=="object"&&m!==null){var b=m.$$typeof;switch(b){case t:switch(m=m.type,m){case s:case o:case r:case d:case u:case y:return m;default:switch(m=m&&m.$$typeof,m){case a:case c:case h:case f:return m;case i:return m;default:return b}}case n:return b}}}var t=Symbol.for("react.transitional.element"),n=Symbol.for("react.portal"),s=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),o=Symbol.for("react.profiler"),i=Symbol.for("react.consumer"),a=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),d=Symbol.for("react.suspense"),u=Symbol.for("react.suspense_list"),f=Symbol.for("react.memo"),h=Symbol.for("react.lazy"),y=Symbol.for("react.view_transition"),g=Symbol.for("react.client.reference");fe.ContextConsumer=i,fe.ContextProvider=a,fe.Element=t,fe.ForwardRef=c,fe.Fragment=s,fe.Lazy=h,fe.Memo=f,fe.Portal=n,fe.Profiler=o,fe.StrictMode=r,fe.Suspense=d,fe.SuspenseList=u,fe.isContextConsumer=function(m){return e(m)===i},fe.isContextProvider=function(m){return e(m)===a},fe.isElement=function(m){return typeof m=="object"&&m!==null&&m.$$typeof===t},fe.isForwardRef=function(m){return e(m)===c},fe.isFragment=function(m){return e(m)===s},fe.isLazy=function(m){return e(m)===h},fe.isMemo=function(m){return e(m)===f},fe.isPortal=function(m){return e(m)===n},fe.isProfiler=function(m){return e(m)===o},fe.isStrictMode=function(m){return e(m)===r},fe.isSuspense=function(m){return e(m)===d},fe.isSuspenseList=function(m){return e(m)===u},fe.isValidElementType=function(m){return typeof m=="string"||typeof m=="function"||m===s||m===o||m===r||m===d||m===u||typeof m=="object"&&m!==null&&(m.$$typeof===h||m.$$typeof===f||m.$$typeof===a||m.$$typeof===i||m.$$typeof===c||m.$$typeof===g||m.getModuleId!==void 0)},fe.typeOf=e}()),fe}var ka;function yg(){return ka||(ka=1,process.env.NODE_ENV==="production"?zn.exports=pg():zn.exports=gg()),zn.exports}var rs=yg();function nt(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 Wc(e){if(p.isValidElement(e)||rs.isValidElementType(e)||!nt(e))return e;const t={};return Object.keys(e).forEach(n=>{t[n]=Wc(e[n])}),t}function Fe(e,t,n={clone:!0}){const s=n.clone?{...e}:e;return nt(e)&&nt(t)&&Object.keys(t).forEach(r=>{p.isValidElement(t[r])||rs.isValidElementType(t[r])?s[r]=t[r]:nt(t[r])&&Object.prototype.hasOwnProperty.call(e,r)&&nt(e[r])?s[r]=Fe(e[r],t[r],n):n.clone?s[r]=nt(t[r])?Wc(t[r]):t[r]:s[r]=t[r]}),s}function pn(e,t){return t?Fe(e,t,{clone:!1}):e}const gt=process.env.NODE_ENV!=="production"?ae.oneOfType([ae.number,ae.string,ae.object,ae.array]):{};function Ta(e,t){if(!e.containerQueries)return t;const n=Object.keys(t).filter(s=>s.startsWith("@container")).sort((s,r)=>{var i,a;const o=/min-width:\s*([0-9.]+)/;return+(((i=s.match(o))==null?void 0:i[1])||0)-+(((a=r.match(o))==null?void 0:a[1])||0)});return n.length?n.reduce((s,r)=>{const o=t[r];return delete s[r],s[r]=o,s},{...t}):t}function xg(e,t){return t==="@"||t.startsWith("@")&&(e.some(n=>t.startsWith(`@${n}`))||!!t.match(/^@\d/))}function bg(e,t){const n=t.match(/^@([^/]+)?\/?(.+)?$/);if(!n){if(process.env.NODE_ENV!=="production")throw new Error(process.env.NODE_ENV!=="production"?`MUI: The provided shorthand ${`(${t})`} is invalid. The format should be \`@<breakpoint | number>\` or \`@<breakpoint | number>/<container>\`.
45
+ For example, \`@sm\` or \`@600\` or \`@40rem/sidebar\`.`:ht(18,`(${t})`));return null}const[,s,r]=n,o=Number.isNaN(+s)?s||0:+s;return e.containerQueries(r).up(o)}function vg(e){const t=(o,i)=>o.replace("@media",i?`@container ${i}`:"@container");function n(o,i){o.up=(...a)=>t(e.breakpoints.up(...a),i),o.down=(...a)=>t(e.breakpoints.down(...a),i),o.between=(...a)=>t(e.breakpoints.between(...a),i),o.only=(...a)=>t(e.breakpoints.only(...a),i),o.not=(...a)=>{const c=t(e.breakpoints.not(...a),i);return c.includes("not all and")?c.replace("not all and ","").replace("min-width:","width<").replace("max-width:","width>").replace("and","or"):c}}const s={},r=o=>(n(s,o),s);return n(r),{...e,containerQueries:r}}const hs={xs:0,sm:600,md:900,lg:1200,xl:1536},Aa={keys:["xs","sm","md","lg","xl"],up:e=>`@media (min-width:${hs[e]}px)`},wg={containerQueries:e=>({up:t=>{let n=typeof t=="number"?t:hs[t]||t;return typeof n=="number"&&(n=`${n}px`),e?`@container ${e} (min-width:${n})`:`@container (min-width:${n})`}})};function it(e,t,n){const s=e.theme||{};if(Array.isArray(t)){const o=s.breakpoints||Aa;return t.reduce((i,a,c)=>(i[o.up(o.keys[c])]=n(t[c]),i),{})}if(typeof t=="object"){const o=s.breakpoints||Aa;return Object.keys(t).reduce((i,a)=>{if(xg(o.keys,a)){const c=bg(s.containerQueries?s:wg,a);c&&(i[c]=n(t[a],a))}else if(Object.keys(o.values||hs).includes(a)){const c=o.up(a);i[c]=n(t[a],a)}else{const c=a;i[c]=t[c]}return i},{})}return n(t)}function Sg(e={}){var n;return((n=e.keys)==null?void 0:n.reduce((s,r)=>{const o=e.up(r);return s[o]={},s},{}))||{}}function ja(e,t){return e.reduce((n,s)=>{const r=n[s];return(!r||Object.keys(r).length===0)&&delete n[s],n},t)}function ms(e,t,n=!0){if(!t||typeof t!="string")return null;if(e&&e.vars&&n){const s=`vars.${t}`.split(".").reduce((r,o)=>r&&r[o]?r[o]:null,e);if(s!=null)return s}return t.split(".").reduce((s,r)=>s&&s[r]!=null?s[r]:null,e)}function os(e,t,n,s=n){let r;return typeof e=="function"?r=e(n):Array.isArray(e)?r=e[n]||s:r=ms(e,n)||s,t&&(r=t(r,s,e)),r}function ke(e){const{prop:t,cssProperty:n=e.prop,themeKey:s,transform:r}=e,o=i=>{if(i[t]==null)return null;const a=i[t],c=i.theme,d=ms(c,s)||{};return it(i,a,f=>{let h=os(d,r,f);return f===h&&typeof f=="string"&&(h=os(d,r,`${t}${f==="default"?"":At(f)}`,f)),n===!1?h:{[n]:h}})};return o.propTypes=process.env.NODE_ENV!=="production"?{[t]:gt}:{},o.filterProps=[t],o}function Cg(e){const t={};return n=>(t[n]===void 0&&(t[n]=e(n)),t[n])}const Eg={m:"margin",p:"padding"},kg={t:"Top",r:"Right",b:"Bottom",l:"Left",x:["Left","Right"],y:["Top","Bottom"]},Ma={marginX:"mx",marginY:"my",paddingX:"px",paddingY:"py"},Tg=Cg(e=>{if(e.length>2)if(Ma[e])e=Ma[e];else return[e];const[t,n]=e.split(""),s=Eg[t],r=kg[n]||"";return Array.isArray(r)?r.map(o=>s+o):[s+r]}),ps=["m","mt","mr","mb","ml","mx","my","margin","marginTop","marginRight","marginBottom","marginLeft","marginX","marginY","marginInline","marginInlineStart","marginInlineEnd","marginBlock","marginBlockStart","marginBlockEnd"],gs=["p","pt","pr","pb","pl","px","py","padding","paddingTop","paddingRight","paddingBottom","paddingLeft","paddingX","paddingY","paddingInline","paddingInlineStart","paddingInlineEnd","paddingBlock","paddingBlockStart","paddingBlockEnd"],Ag=[...ps,...gs];function An(e,t,n,s){const r=ms(e,t,!0)??n;return typeof r=="number"||typeof r=="string"?o=>typeof o=="string"?o:(process.env.NODE_ENV!=="production"&&typeof o!="number"&&console.error(`MUI: Expected ${s} argument to be a number or a string, got ${o}.`),typeof r=="string"?r.startsWith("var(")&&o===0?0:r.startsWith("var(")&&o===1?r:`calc(${o} * ${r})`:r*o):Array.isArray(r)?o=>{if(typeof o=="string")return o;const i=Math.abs(o);process.env.NODE_ENV!=="production"&&(Number.isInteger(i)?i>r.length-1&&console.error([`MUI: The value provided (${i}) overflows.`,`The supported values are: ${JSON.stringify(r)}.`,`${i} > ${r.length-1}, you need to add the missing values.`].join(`
46
+ `)):console.error([`MUI: The \`theme.${t}\` array type cannot be combined with non integer values.You should either use an integer value that can be used as index, or define the \`theme.${t}\` as a number.`].join(`
47
+ `)));const a=r[i];return o>=0?a:typeof a=="number"?-a:typeof a=="string"&&a.startsWith("var(")?`calc(-1 * ${a})`:`-${a}`}:typeof r=="function"?r:(process.env.NODE_ENV!=="production"&&console.error([`MUI: The \`theme.${t}\` value (${r}) is invalid.`,"It should be a number, an array or a function."].join(`
48
+ `)),()=>{})}function Co(e){return An(e,"spacing",8,"spacing")}function jn(e,t){return typeof t=="string"||t==null?t:e(t)}function jg(e,t){return n=>e.reduce((s,r)=>(s[r]=jn(t,n),s),{})}function Mg(e,t,n,s){if(!t.includes(n))return null;const r=Tg(n),o=jg(r,s),i=e[n];return it(e,i,o)}function Gc(e,t){const n=Co(e.theme);return Object.keys(e).map(s=>Mg(e,t,s,n)).reduce(pn,{})}function we(e){return Gc(e,ps)}we.propTypes=process.env.NODE_ENV!=="production"?ps.reduce((e,t)=>(e[t]=gt,e),{}):{};we.filterProps=ps;function Se(e){return Gc(e,gs)}Se.propTypes=process.env.NODE_ENV!=="production"?gs.reduce((e,t)=>(e[t]=gt,e),{}):{};Se.filterProps=gs;process.env.NODE_ENV!=="production"&&Ag.reduce((e,t)=>(e[t]=gt,e),{});function ys(...e){const t=e.reduce((s,r)=>(r.filterProps.forEach(o=>{s[o]=r}),s),{}),n=s=>Object.keys(s).reduce((r,o)=>t[o]?pn(r,t[o](s)):r,{});return n.propTypes=process.env.NODE_ENV!=="production"?e.reduce((s,r)=>Object.assign(s,r.propTypes),{}):{},n.filterProps=e.reduce((s,r)=>s.concat(r.filterProps),[]),n}function Be(e){return typeof e!="number"?e:`${e}px solid`}function Ue(e,t){return ke({prop:e,themeKey:"borders",transform:t})}const Pg=Ue("border",Be),Ng=Ue("borderTop",Be),Vg=Ue("borderRight",Be),Rg=Ue("borderBottom",Be),Ig=Ue("borderLeft",Be),Dg=Ue("borderColor"),$g=Ue("borderTopColor"),Fg=Ue("borderRightColor"),Og=Ue("borderBottomColor"),Lg=Ue("borderLeftColor"),_g=Ue("outline",Be),Bg=Ue("outlineColor"),xs=e=>{if(e.borderRadius!==void 0&&e.borderRadius!==null){const t=An(e.theme,"shape.borderRadius",4,"borderRadius"),n=s=>({borderRadius:jn(t,s)});return it(e,e.borderRadius,n)}return null};xs.propTypes=process.env.NODE_ENV!=="production"?{borderRadius:gt}:{};xs.filterProps=["borderRadius"];ys(Pg,Ng,Vg,Rg,Ig,Dg,$g,Fg,Og,Lg,xs,_g,Bg);const bs=e=>{if(e.gap!==void 0&&e.gap!==null){const t=An(e.theme,"spacing",8,"gap"),n=s=>({gap:jn(t,s)});return it(e,e.gap,n)}return null};bs.propTypes=process.env.NODE_ENV!=="production"?{gap:gt}:{};bs.filterProps=["gap"];const vs=e=>{if(e.columnGap!==void 0&&e.columnGap!==null){const t=An(e.theme,"spacing",8,"columnGap"),n=s=>({columnGap:jn(t,s)});return it(e,e.columnGap,n)}return null};vs.propTypes=process.env.NODE_ENV!=="production"?{columnGap:gt}:{};vs.filterProps=["columnGap"];const ws=e=>{if(e.rowGap!==void 0&&e.rowGap!==null){const t=An(e.theme,"spacing",8,"rowGap"),n=s=>({rowGap:jn(t,s)});return it(e,e.rowGap,n)}return null};ws.propTypes=process.env.NODE_ENV!=="production"?{rowGap:gt}:{};ws.filterProps=["rowGap"];const zg=ke({prop:"gridColumn"}),Hg=ke({prop:"gridRow"}),Ug=ke({prop:"gridAutoFlow"}),Zg=ke({prop:"gridAutoColumns"}),Wg=ke({prop:"gridAutoRows"}),Gg=ke({prop:"gridTemplateColumns"}),Kg=ke({prop:"gridTemplateRows"}),Yg=ke({prop:"gridTemplateAreas"}),qg=ke({prop:"gridArea"});ys(bs,vs,ws,zg,Hg,Ug,Zg,Wg,Gg,Kg,Yg,qg);function Ut(e,t){return t==="grey"?t:e}const Xg=ke({prop:"color",themeKey:"palette",transform:Ut}),Jg=ke({prop:"bgcolor",cssProperty:"backgroundColor",themeKey:"palette",transform:Ut}),Qg=ke({prop:"backgroundColor",themeKey:"palette",transform:Ut});ys(Xg,Jg,Qg);function $e(e){return e<=1&&e!==0?`${e*100}%`:e}const ey=ke({prop:"width",transform:$e}),Eo=e=>{if(e.maxWidth!==void 0&&e.maxWidth!==null){const t=n=>{var r,o,i,a,c;const s=((i=(o=(r=e.theme)==null?void 0:r.breakpoints)==null?void 0:o.values)==null?void 0:i[n])||hs[n];return s?((c=(a=e.theme)==null?void 0:a.breakpoints)==null?void 0:c.unit)!=="px"?{maxWidth:`${s}${e.theme.breakpoints.unit}`}:{maxWidth:s}:{maxWidth:$e(n)}};return it(e,e.maxWidth,t)}return null};Eo.filterProps=["maxWidth"];const ty=ke({prop:"minWidth",transform:$e}),ny=ke({prop:"height",transform:$e}),sy=ke({prop:"maxHeight",transform:$e}),ry=ke({prop:"minHeight",transform:$e});ke({prop:"size",cssProperty:"width",transform:$e});ke({prop:"size",cssProperty:"height",transform:$e});const oy=ke({prop:"boxSizing"});ys(ey,Eo,ty,ny,sy,ry,oy);const Ss={border:{themeKey:"borders",transform:Be},borderTop:{themeKey:"borders",transform:Be},borderRight:{themeKey:"borders",transform:Be},borderBottom:{themeKey:"borders",transform:Be},borderLeft:{themeKey:"borders",transform:Be},borderColor:{themeKey:"palette"},borderTopColor:{themeKey:"palette"},borderRightColor:{themeKey:"palette"},borderBottomColor:{themeKey:"palette"},borderLeftColor:{themeKey:"palette"},outline:{themeKey:"borders",transform:Be},outlineColor:{themeKey:"palette"},borderRadius:{themeKey:"shape.borderRadius",style:xs},color:{themeKey:"palette",transform:Ut},bgcolor:{themeKey:"palette",cssProperty:"backgroundColor",transform:Ut},backgroundColor:{themeKey:"palette",transform:Ut},p:{style:Se},pt:{style:Se},pr:{style:Se},pb:{style:Se},pl:{style:Se},px:{style:Se},py:{style:Se},padding:{style:Se},paddingTop:{style:Se},paddingRight:{style:Se},paddingBottom:{style:Se},paddingLeft:{style:Se},paddingX:{style:Se},paddingY:{style:Se},paddingInline:{style:Se},paddingInlineStart:{style:Se},paddingInlineEnd:{style:Se},paddingBlock:{style:Se},paddingBlockStart:{style:Se},paddingBlockEnd:{style:Se},m:{style:we},mt:{style:we},mr:{style:we},mb:{style:we},ml:{style:we},mx:{style:we},my:{style:we},margin:{style:we},marginTop:{style:we},marginRight:{style:we},marginBottom:{style:we},marginLeft:{style:we},marginX:{style:we},marginY:{style:we},marginInline:{style:we},marginInlineStart:{style:we},marginInlineEnd:{style:we},marginBlock:{style:we},marginBlockStart:{style:we},marginBlockEnd:{style:we},displayPrint:{cssProperty:!1,transform:e=>({"@media print":{display:e}})},display:{},overflow:{},textOverflow:{},visibility:{},whiteSpace:{},flexBasis:{},flexDirection:{},flexWrap:{},justifyContent:{},alignItems:{},alignContent:{},order:{},flex:{},flexGrow:{},flexShrink:{},alignSelf:{},justifyItems:{},justifySelf:{},gap:{style:bs},rowGap:{style:ws},columnGap:{style:vs},gridColumn:{},gridRow:{},gridAutoFlow:{},gridAutoColumns:{},gridAutoRows:{},gridTemplateColumns:{},gridTemplateRows:{},gridTemplateAreas:{},gridArea:{},position:{},zIndex:{themeKey:"zIndex"},top:{},right:{},bottom:{},left:{},boxShadow:{themeKey:"shadows"},width:{transform:$e},maxWidth:{style:Eo},minWidth:{transform:$e},height:{transform:$e},maxHeight:{transform:$e},minHeight:{transform:$e},boxSizing:{},font:{themeKey:"font"},fontFamily:{themeKey:"typography"},fontSize:{themeKey:"typography"},fontStyle:{themeKey:"typography"},fontWeight:{themeKey:"typography"},letterSpacing:{},textTransform:{},lineHeight:{},textAlign:{},typography:{cssProperty:!1,themeKey:"typography"}};function iy(...e){const t=e.reduce((s,r)=>s.concat(Object.keys(r)),[]),n=new Set(t);return e.every(s=>n.size===Object.keys(s).length)}function ay(e,t){return typeof e=="function"?e(t):e}function ly(){function e(n,s,r,o){const i={[n]:s,theme:r},a=o[n];if(!a)return{[n]:s};const{cssProperty:c=n,themeKey:d,transform:u,style:f}=a;if(s==null)return null;if(d==="typography"&&s==="inherit")return{[n]:s};const h=ms(r,d)||{};return f?f(i):it(i,s,g=>{let m=os(h,u,g);return g===m&&typeof g=="string"&&(m=os(h,u,`${n}${g==="default"?"":At(g)}`,g)),c===!1?m:{[c]:m}})}function t(n){const{sx:s,theme:r={},nested:o}=n||{};if(!s)return null;const i=r.unstable_sxConfig??Ss;function a(c){let d=c;if(typeof c=="function")d=c(r);else if(typeof c!="object")return c;if(!d)return null;const u=Sg(r.breakpoints),f=Object.keys(u);let h=u;return Object.keys(d).forEach(y=>{const g=ay(d[y],r);if(g!=null)if(typeof g=="object")if(i[y])h=pn(h,e(y,g,r,i));else{const m=it({theme:r},g,b=>({[y]:b}));iy(m,g)?h[y]=t({sx:g,theme:r,nested:!0}):h=pn(h,m)}else h=pn(h,e(y,g,r,i))}),!o&&r.modularCssLayers?{"@layer sx":Ta(r,ja(f,h))}:Ta(r,ja(f,h))}return Array.isArray(s)?s.map(a):a(s)}return t}const Kt=ly();Kt.filterProps=["sx"];function cy(e){for(var t=0,n,s=0,r=e.length;r>=4;++s,r-=4)n=e.charCodeAt(s)&255|(e.charCodeAt(++s)&255)<<8|(e.charCodeAt(++s)&255)<<16|(e.charCodeAt(++s)&255)<<24,n=(n&65535)*1540483477+((n>>>16)*59797<<16),n^=n>>>24,t=(n&65535)*1540483477+((n>>>16)*59797<<16)^(t&65535)*1540483477+((t>>>16)*59797<<16);switch(r){case 3:t^=(e.charCodeAt(s+2)&255)<<16;case 2:t^=(e.charCodeAt(s+1)&255)<<8;case 1:t^=e.charCodeAt(s)&255,t=(t&65535)*1540483477+((t>>>16)*59797<<16)}return t^=t>>>13,t=(t&65535)*1540483477+((t>>>16)*59797<<16),((t^t>>>15)>>>0).toString(36)}var dy={animationIterationCount:1,aspectRatio:1,borderImageOutset:1,borderImageSlice:1,borderImageWidth:1,boxFlex:1,boxFlexGroup:1,boxOrdinalGroup:1,columnCount:1,columns:1,flex:1,flexGrow:1,flexPositive:1,flexShrink:1,flexNegative:1,flexOrder:1,gridRow:1,gridRowEnd:1,gridRowSpan:1,gridRowStart:1,gridColumn:1,gridColumnEnd:1,gridColumnSpan:1,gridColumnStart:1,msGridRow:1,msGridRowSpan:1,msGridColumn:1,msGridColumnSpan:1,fontWeight:1,lineHeight:1,opacity:1,order:1,orphans:1,scale:1,tabSize:1,widows:1,zIndex:1,zoom:1,WebkitLineClamp:1,fillOpacity:1,floodOpacity:1,stopOpacity:1,strokeDasharray:1,strokeDashoffset:1,strokeMiterlimit:1,strokeOpacity:1,strokeWidth:1};function uy(e){var t=Object.create(null);return function(n){return t[n]===void 0&&(t[n]=e(n)),t[n]}}var fy=/[A-Z]|^ms/g,hy=/_EMO_([^_]+?)_([^]*?)_EMO_/g,Kc=function(t){return t.charCodeAt(1)===45},Pa=function(t){return t!=null&&typeof t!="boolean"},er=uy(function(e){return Kc(e)?e:e.replace(fy,"-$&").toLowerCase()}),Na=function(t,n){switch(t){case"animation":case"animationName":if(typeof n=="string")return n.replace(hy,function(s,r,o){return dt={name:r,styles:o,next:dt},r})}return dy[t]!==1&&!Kc(t)&&typeof n=="number"&&n!==0?n+"px":n};function is(e,t,n){if(n==null)return"";var s=n;if(s.__emotion_styles!==void 0)return s;switch(typeof n){case"boolean":return"";case"object":{var r=n;if(r.anim===1)return dt={name:r.name,styles:r.styles,next:dt},r.name;var o=n;if(o.styles!==void 0){var i=o.next;if(i!==void 0)for(;i!==void 0;)dt={name:i.name,styles:i.styles,next:dt},i=i.next;var a=o.styles+";";return a}return my(e,t,n)}}var c=n;return c}function my(e,t,n){var s="";if(Array.isArray(n))for(var r=0;r<n.length;r++)s+=is(e,t,n[r])+";";else for(var o in n){var i=n[o];if(typeof i!="object"){var a=i;Pa(a)&&(s+=er(o)+":"+Na(o,a)+";")}else if(Array.isArray(i)&&typeof i[0]=="string"&&t==null)for(var c=0;c<i.length;c++)Pa(i[c])&&(s+=er(o)+":"+Na(o,i[c])+";");else{var d=is(e,t,i);switch(o){case"animation":case"animationName":{s+=er(o)+":"+d+";";break}default:s+=o+"{"+d+"}"}}}return s}var Va=/label:\s*([^\s;{]+)\s*(;|$)/g,dt;function py(e,t,n){if(e.length===1&&typeof e[0]=="object"&&e[0]!==null&&e[0].styles!==void 0)return e[0];var s=!0,r="";dt=void 0;var o=e[0];if(o==null||o.raw===void 0)s=!1,r+=is(n,t,o);else{var i=o;r+=i[0]}for(var a=1;a<e.length;a++)if(r+=is(n,t,e[a]),s){var c=o;r+=c[a]}Va.lastIndex=0;for(var d="",u;(u=Va.exec(r))!==null;)d+="-"+u[1];var f=cy(r)+d;return{name:f,styles:r,next:dt}}/**
49
+ * @mui/styled-engine v7.2.0
50
+ *
51
+ * @license MIT
52
+ * This source code is licensed under the MIT license found in the
53
+ * LICENSE file in the root directory of this source tree.
54
+ */function gy(e,t){const n=Ld(e,t);return process.env.NODE_ENV!=="production"?(...s)=>{const r=typeof e=="string"?`"${e}"`:"component";return s.length===0?console.error([`MUI: Seems like you called \`styled(${r})()\` without a \`style\` argument.`,'You must provide a `styles` argument: `styled("div")(styleYouForgotToPass)`.'].join(`
55
+ `)):s.some(o=>o===void 0)&&console.error(`MUI: the styled(${r})(...args) API requires all its args to be defined.`),n(...s)}:n}function yy(e,t){Array.isArray(e.__emotion_styles)&&(e.__emotion_styles=t(e.__emotion_styles))}const Ra=[];function kt(e){return Ra[0]=e,py(Ra)}const xy=e=>{const t=Object.keys(e).map(n=>({key:n,val:e[n]}))||[];return t.sort((n,s)=>n.val-s.val),t.reduce((n,s)=>({...n,[s.key]:s.val}),{})};function by(e){const{values:t={xs:0,sm:600,md:900,lg:1200,xl:1536},unit:n="px",step:s=5,...r}=e,o=xy(t),i=Object.keys(o);function a(h){return`@media (min-width:${typeof t[h]=="number"?t[h]:h}${n})`}function c(h){return`@media (max-width:${(typeof t[h]=="number"?t[h]:h)-s/100}${n})`}function d(h,y){const g=i.indexOf(y);return`@media (min-width:${typeof t[h]=="number"?t[h]:h}${n}) and (max-width:${(g!==-1&&typeof t[i[g]]=="number"?t[i[g]]:y)-s/100}${n})`}function u(h){return i.indexOf(h)+1<i.length?d(h,i[i.indexOf(h)+1]):a(h)}function f(h){const y=i.indexOf(h);return y===0?a(i[1]):y===i.length-1?c(i[y]):d(h,i[i.indexOf(h)+1]).replace("@media","@media not all and")}return{keys:i,values:o,up:a,down:c,between:d,only:u,not:f,unit:n,...r}}const vy={borderRadius:4};function Yc(e=8,t=Co({spacing:e})){if(e.mui)return e;const n=(...s)=>(process.env.NODE_ENV!=="production"&&(s.length<=4||console.error(`MUI: Too many arguments provided, expected between 0 and 4, got ${s.length}`)),(s.length===0?[1]:s).map(o=>{const i=t(o);return typeof i=="number"?`${i}px`:i}).join(" "));return n.mui=!0,n}function wy(e,t){var s;const n=this;if(n.vars){if(!((s=n.colorSchemes)!=null&&s[e])||typeof n.getColorSchemeSelector!="function")return{};let r=n.getColorSchemeSelector(e);return r==="&"?t:((r.includes("data-")||r.includes("."))&&(r=`*:where(${r.replace(/\s*&$/,"")}) &`),{[r]:t})}return n.palette.mode===e?t:{}}function qc(e={},...t){const{breakpoints:n={},palette:s={},spacing:r,shape:o={},...i}=e,a=by(n),c=Yc(r);let d=Fe({breakpoints:a,direction:"ltr",components:{},palette:{mode:"light",...s},spacing:c,shape:{...vy,...o}},i);return d=vg(d),d.applyStyles=wy,d=t.reduce((u,f)=>Fe(u,f),d),d.unstable_sxConfig={...Ss,...i==null?void 0:i.unstable_sxConfig},d.unstable_sx=function(f){return Kt({sx:f,theme:this})},d}const Sy={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 ko(e,t,n="Mui"){const s=Sy[t];return s?`${n}-${s}`:`${rg.generate(e)}-${t}`}function Cy(e,t,n="Mui"){const s={};return t.forEach(r=>{s[r]=ko(e,r,n)}),s}function Xc(e,t=""){return e.displayName||e.name||t}function Ia(e,t,n){const s=Xc(t);return e.displayName||(s!==""?`${n}(${s})`:n)}function Ey(e){if(e!=null){if(typeof e=="string")return e;if(typeof e=="function")return Xc(e,"Component");if(typeof e=="object")switch(e.$$typeof){case rs.ForwardRef:return Ia(e,e.render,"ForwardRef");case rs.Memo:return Ia(e,e.type,"memo");default:return}}}function Jc(e){const{variants:t,...n}=e,s={variants:t,style:kt(n),isProcessed:!0};return s.style===n||t&&t.forEach(r=>{typeof r.style!="function"&&(r.style=kt(r.style))}),s}const ky=qc();function tr(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}function St(e,t){return t&&e&&typeof e=="object"&&e.styles&&!e.styles.startsWith("@layer")&&(e.styles=`@layer ${t}{${String(e.styles)}}`),e}function Ty(e){return e?(t,n)=>n[e]:null}function Ay(e,t,n){e.theme=Ny(e.theme)?n:e.theme[t]||e.theme}function qn(e,t,n){const s=typeof t=="function"?t(e):t;if(Array.isArray(s))return s.flatMap(r=>qn(e,r,n));if(Array.isArray(s==null?void 0:s.variants)){let r;if(s.isProcessed)r=n?St(s.style,n):s.style;else{const{variants:o,...i}=s;r=n?St(kt(i),n):i}return Qc(e,s.variants,[r],n)}return s!=null&&s.isProcessed?n?St(kt(s.style),n):s.style:n?St(kt(s),n):s}function Qc(e,t,n=[],s=void 0){var o;let r;e:for(let i=0;i<t.length;i+=1){const a=t[i];if(typeof a.props=="function"){if(r??(r={...e,...e.ownerState,ownerState:e.ownerState}),!a.props(r))continue}else for(const c in a.props)if(e[c]!==a.props[c]&&((o=e.ownerState)==null?void 0:o[c])!==a.props[c])continue e;typeof a.style=="function"?(r??(r={...e,...e.ownerState,ownerState:e.ownerState}),n.push(s?St(kt(a.style(r)),s):a.style(r))):n.push(s?St(kt(a.style),s):a.style)}return n}function jy(e={}){const{themeId:t,defaultTheme:n=ky,rootShouldForwardProp:s=tr,slotShouldForwardProp:r=tr}=e;function o(a){Ay(a,t,n)}return(a,c={})=>{yy(a,A=>A.filter(T=>T!==Kt));const{name:d,slot:u,skipVariantsResolver:f,skipSx:h,overridesResolver:y=Ty(ed(u)),...g}=c,m=d&&d.startsWith("Mui")||u?"components":"custom",b=f!==void 0?f:u&&u!=="Root"&&u!=="root"||!1,k=h||!1;let S=tr;u==="Root"||u==="root"?S=s:u?S=r:Vy(a)&&(S=void 0);const E=gy(a,{shouldForwardProp:S,label:Py(d,u),...g}),w=A=>{if(A.__emotion_real===A)return A;if(typeof A=="function")return function(j){return qn(j,A,j.theme.modularCssLayers?m:void 0)};if(nt(A)){const T=Jc(A);return function(z){return T.variants?qn(z,T,z.theme.modularCssLayers?m:void 0):z.theme.modularCssLayers?St(T.style,m):T.style}}return A},v=(...A)=>{const T=[],j=A.map(w),z=[];if(T.push(o),d&&y&&z.push(function(J){var Y,R;const ee=(R=(Y=J.theme.components)==null?void 0:Y[d])==null?void 0:R.styleOverrides;if(!ee)return null;const ne={};for(const X in ee)ne[X]=qn(J,ee[X],J.theme.modularCssLayers?"theme":void 0);return y(J,ne)}),d&&!b&&z.push(function(J){var ne,Y;const te=J.theme,ee=(Y=(ne=te==null?void 0:te.components)==null?void 0:ne[d])==null?void 0:Y.variants;return ee?Qc(J,ee,[],J.theme.modularCssLayers?"theme":void 0):null}),k||z.push(Kt),Array.isArray(j[0])){const L=j.shift(),J=new Array(T.length).fill(""),te=new Array(z.length).fill("");let ee;ee=[...J,...L,...te],ee.raw=[...J,...L.raw,...te],T.unshift(ee)}const x=[...T,...j,...z],I=E(...x);return a.muiName&&(I.muiName=a.muiName),process.env.NODE_ENV!=="production"&&(I.displayName=My(d,u,a)),I};return E.withConfig&&(v.withConfig=E.withConfig),v}}function My(e,t,n){return e?`${e}${At(t||"")}`:`Styled(${Ey(n)})`}function Py(e,t){let n;return process.env.NODE_ENV!=="production"&&e&&(n=`${e}-${ed(t||"Root")}`),n}function Ny(e){for(const t in e)return!1;return!0}function Vy(e){return typeof e=="string"&&e.charCodeAt(0)>96}function ed(e){return e&&e.charAt(0).toLowerCase()+e.slice(1)}function Nr(e,t,n=!1){const s={...t};for(const r in e)if(Object.prototype.hasOwnProperty.call(e,r)){const o=r;if(o==="components"||o==="slots")s[o]={...e[o],...s[o]};else if(o==="componentsProps"||o==="slotProps"){const i=e[o],a=t[o];if(!a)s[o]=i||{};else if(!i)s[o]=a;else{s[o]={...a};for(const c in i)if(Object.prototype.hasOwnProperty.call(i,c)){const d=c;s[o][d]=Nr(i[d],a[d],n)}}}else o==="className"&&n&&t.className?s.className=$r(e==null?void 0:e.className,t==null?void 0:t.className):o==="style"&&n&&t.style?s.style={...e==null?void 0:e.style,...t==null?void 0:t.style}:s[o]===void 0&&(s[o]=e[o])}return s}function Ry(e,t=Number.MIN_SAFE_INTEGER,n=Number.MAX_SAFE_INTEGER){return Math.max(t,Math.min(e,n))}function To(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}].`),Ry(e,t,n)}function Iy(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(s=>s+s)),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((s,r)=>r<3?parseInt(s,16):Math.round(parseInt(s,16)/255*1e3)/1e3).join(", ")})`:""}function mt(e){if(e.type)return e;if(e.charAt(0)==="#")return mt(Iy(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.
56
+ The following formats are supported: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().`:ht(9,e));let s=e.substring(t+1,e.length-1),r;if(n==="color"){if(s=s.split(" "),r=s.shift(),s.length===4&&s[3].charAt(0)==="/"&&(s[3]=s[3].slice(1)),!["srgb","display-p3","a98-rgb","prophoto-rgb","rec-2020"].includes(r))throw new Error(process.env.NODE_ENV!=="production"?`MUI: unsupported \`${r}\` color space.
57
+ The following color spaces are supported: srgb, display-p3, a98-rgb, prophoto-rgb, rec-2020.`:ht(10,r))}else s=s.split(",");return s=s.map(o=>parseFloat(o)),{type:n,values:s,colorSpace:r}}const Dy=e=>{const t=mt(e);return t.values.slice(0,3).map((n,s)=>t.type.includes("hsl")&&s!==0?`${n}%`:n).join(" ")},cn=(e,t)=>{try{return Dy(e)}catch{return t&&process.env.NODE_ENV!=="production"&&console.warn(t),e}};function Cs(e){const{type:t,colorSpace:n}=e;let{values:s}=e;return t.includes("rgb")?s=s.map((r,o)=>o<3?parseInt(r,10):r):t.includes("hsl")&&(s[1]=`${s[1]}%`,s[2]=`${s[2]}%`),t.includes("color")?s=`${n} ${s.join(" ")}`:s=`${s.join(", ")}`,`${t}(${s})`}function td(e){e=mt(e);const{values:t}=e,n=t[0],s=t[1]/100,r=t[2]/100,o=s*Math.min(r,1-r),i=(d,u=(d+n/30)%12)=>r-o*Math.max(Math.min(u-3,9-u,1),-1);let a="rgb";const c=[Math.round(i(0)*255),Math.round(i(8)*255),Math.round(i(4)*255)];return e.type==="hsla"&&(a+="a",c.push(t[3])),Cs({type:a,values:c})}function Vr(e){e=mt(e);let t=e.type==="hsl"||e.type==="hsla"?mt(td(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 Da(e,t){const n=Vr(e),s=Vr(t);return(Math.max(n,s)+.05)/(Math.min(n,s)+.05)}function $y(e,t){return e=mt(e),t=To(t),(e.type==="rgb"||e.type==="hsl")&&(e.type+="a"),e.type==="color"?e.values[3]=`/${t}`:e.values[3]=t,Cs(e)}function Hn(e,t,n){try{return $y(e,t)}catch{return e}}function Ao(e,t){if(e=mt(e),t=To(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 Cs(e)}function me(e,t,n){try{return Ao(e,t)}catch{return e}}function jo(e,t){if(e=mt(e),t=To(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 Cs(e)}function pe(e,t,n){try{return jo(e,t)}catch{return e}}function Fy(e,t=.15){return Vr(e)>.5?Ao(e,t):jo(e,t)}function Un(e,t,n){try{return Fy(e,t)}catch{return e}}const Oy=p.createContext(void 0);process.env.NODE_ENV!=="production"&&(ae.node,ae.object);function Ly(e){const{theme:t,name:n,props:s}=e;if(!t||!t.components||!t.components[n])return s;const r=t.components[n];return r.defaultProps?Nr(r.defaultProps,s,t.components.mergeClassNameAndStyle):!r.styleOverrides&&!r.variants?Nr(r,s,t.components.mergeClassNameAndStyle):s}function _y({props:e,name:t}){const n=p.useContext(Oy);return Ly({props:e,name:t,theme:{components:n}})}const $a={theme:void 0};function By(e){let t,n;return function(r){let o=t;return(o===void 0||r.theme!==n)&&($a.theme=r.theme,o=Jc(e($a)),t=o,n=r.theme),o}}function zy(e=""){function t(...s){if(!s.length)return"";const r=s[0];return typeof r=="string"&&!r.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}-`:""}${r}${t(...s.slice(1))})`:`, ${r}`}return(s,...r)=>`var(--${e?`${e}-`:""}${s}${t(...r)})`}const Fa=(e,t,n,s=[])=>{let r=e;t.forEach((o,i)=>{i===t.length-1?Array.isArray(r)?r[Number(o)]=n:r&&typeof r=="object"&&(r[o]=n):r&&typeof r=="object"&&(r[o]||(r[o]=s.includes(o)?[]:{}),r=r[o])})},Hy=(e,t,n)=>{function s(r,o=[],i=[]){Object.entries(r).forEach(([a,c])=>{(!n||n&&!n([...o,a]))&&c!=null&&(typeof c=="object"&&Object.keys(c).length>0?s(c,[...o,a],Array.isArray(c)?[...i,a]:i):t([...o,a],c,i))})}s(e)},Uy=(e,t)=>typeof t=="number"?["lineHeight","fontWeight","opacity","zIndex"].some(s=>e.includes(s))||e[e.length-1].toLowerCase().includes("opacity")?t:`${t}px`:t;function nr(e,t){const{prefix:n,shouldSkipGeneratingVar:s}=t||{},r={},o={},i={};return Hy(e,(a,c,d)=>{if((typeof c=="string"||typeof c=="number")&&(!s||!s(a,c))){const u=`--${n?`${n}-`:""}${a.join("-")}`,f=Uy(a,c);Object.assign(r,{[u]:f}),Fa(o,a,`var(${u})`,d),Fa(i,a,`var(${u}, ${f})`,d)}},a=>a[0]==="vars"),{css:r,vars:o,varsWithDefaults:i}}function Zy(e,t={}){const{getSelector:n=b,disableCssColorScheme:s,colorSchemeSelector:r}=t,{colorSchemes:o={},components:i,defaultColorScheme:a="light",...c}=e,{vars:d,css:u,varsWithDefaults:f}=nr(c,t);let h=f;const y={},{[a]:g,...m}=o;if(Object.entries(m||{}).forEach(([E,w])=>{const{vars:v,css:A,varsWithDefaults:T}=nr(w,t);h=Fe(h,T),y[E]={css:A,vars:v}}),g){const{css:E,vars:w,varsWithDefaults:v}=nr(g,t);h=Fe(h,v),y[a]={css:E,vars:w}}function b(E,w){var A,T;let v=r;if(r==="class"&&(v=".%s"),r==="data"&&(v="[data-%s]"),r!=null&&r.startsWith("data-")&&!r.includes("%s")&&(v=`[${r}="%s"]`),E){if(v==="media")return e.defaultColorScheme===E?":root":{[`@media (prefers-color-scheme: ${((T=(A=o[E])==null?void 0:A.palette)==null?void 0:T.mode)||E})`]:{":root":w}};if(v)return e.defaultColorScheme===E?`:root, ${v.replace("%s",String(E))}`:v.replace("%s",String(E))}return":root"}return{vars:h,generateThemeVars:()=>{let E={...d};return Object.entries(y).forEach(([,{vars:w}])=>{E=Fe(E,w)}),E},generateStyleSheets:()=>{var j,z;const E=[],w=e.defaultColorScheme||"light";function v(x,I){Object.keys(I).length&&E.push(typeof x=="string"?{[x]:{...I}}:x)}v(n(void 0,{...u}),u);const{[w]:A,...T}=y;if(A){const{css:x}=A,I=(z=(j=o[w])==null?void 0:j.palette)==null?void 0:z.mode,L=!s&&I?{colorScheme:I,...x}:{...x};v(n(w,{...L}),L)}return Object.entries(T).forEach(([x,{css:I}])=>{var te,ee;const L=(ee=(te=o[x])==null?void 0:te.palette)==null?void 0:ee.mode,J=!s&&L?{colorScheme:L,...I}:{...I};v(n(x,{...J}),J)}),E}}}function Wy(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 Sn={black:"#000",white:"#fff"},Gy={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"},Nt={50:"#f3e5f5",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",700:"#7b1fa2"},Vt={300:"#e57373",400:"#ef5350",500:"#f44336",700:"#d32f2f",800:"#c62828"},an={300:"#ffb74d",400:"#ffa726",500:"#ff9800",700:"#f57c00",900:"#e65100"},Rt={50:"#e3f2fd",200:"#90caf9",400:"#42a5f5",700:"#1976d2",800:"#1565c0"},It={300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",700:"#0288d1",900:"#01579b"},Dt={300:"#81c784",400:"#66bb6a",500:"#4caf50",700:"#388e3c",800:"#2e7d32",900:"#1b5e20"};function nd(){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:Sn.white,default:Sn.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 Ky=nd();function sd(){return{text:{primary:Sn.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:Sn.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 Oa=sd();function La(e,t,n,s){const r=s.light||s,o=s.dark||s*1.5;e[t]||(e.hasOwnProperty(n)?e[t]=e[n]:t==="light"?e.light=jo(e.main,r):t==="dark"&&(e.dark=Ao(e.main,o)))}function Yy(e="light"){return e==="dark"?{main:Rt[200],light:Rt[50],dark:Rt[400]}:{main:Rt[700],light:Rt[400],dark:Rt[800]}}function qy(e="light"){return e==="dark"?{main:Nt[200],light:Nt[50],dark:Nt[400]}:{main:Nt[500],light:Nt[300],dark:Nt[700]}}function Xy(e="light"){return e==="dark"?{main:Vt[500],light:Vt[300],dark:Vt[700]}:{main:Vt[700],light:Vt[400],dark:Vt[800]}}function Jy(e="light"){return e==="dark"?{main:It[400],light:It[300],dark:It[700]}:{main:It[700],light:It[500],dark:It[900]}}function Qy(e="light"){return e==="dark"?{main:Dt[400],light:Dt[300],dark:Dt[700]}:{main:Dt[800],light:Dt[500],dark:Dt[900]}}function e1(e="light"){return e==="dark"?{main:an[400],light:an[300],dark:an[700]}:{main:"#ed6c02",light:an[500],dark:an[900]}}function Mo(e){const{mode:t="light",contrastThreshold:n=3,tonalOffset:s=.2,...r}=e,o=e.primary||Yy(t),i=e.secondary||qy(t),a=e.error||Xy(t),c=e.info||Jy(t),d=e.success||Qy(t),u=e.warning||e1(t);function f(m){const b=Da(m,Oa.text.primary)>=n?Oa.text.primary:Ky.text.primary;if(process.env.NODE_ENV!=="production"){const k=Da(m,b);k<3&&console.error([`MUI: The contrast ratio of ${k}:1 for ${b} on ${m}`,"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(`
58
+ `))}return b}const h=({color:m,name:b,mainShade:k=500,lightShade:S=300,darkShade:E=700})=>{if(m={...m},!m.main&&m[k]&&(m.main=m[k]),!m.hasOwnProperty("main"))throw new Error(process.env.NODE_ENV!=="production"?`MUI: The color${b?` (${b})`:""} provided to augmentColor(color) is invalid.
59
+ The color object needs to have a \`main\` property or a \`${k}\` property.`:ht(11,b?` (${b})`:"",k));if(typeof m.main!="string")throw new Error(process.env.NODE_ENV!=="production"?`MUI: The color${b?` (${b})`:""} provided to augmentColor(color) is invalid.
60
+ \`color.main\` should be a string, but \`${JSON.stringify(m.main)}\` was provided instead.
61
+
62
+ Did you intend to use one of the following approaches?
63
+
64
+ import { green } from "@mui/material/colors";
65
+
66
+ const theme1 = createTheme({ palette: {
67
+ primary: green,
68
+ } });
69
+
70
+ const theme2 = createTheme({ palette: {
71
+ primary: { main: green[500] },
72
+ } });`:ht(12,b?` (${b})`:"",JSON.stringify(m.main)));return La(m,"light",S,s),La(m,"dark",E,s),m.contrastText||(m.contrastText=f(m.main)),m};let y;return t==="light"?y=nd():t==="dark"&&(y=sd()),process.env.NODE_ENV!=="production"&&(y||console.error(`MUI: The palette mode \`${t}\` is not supported.`)),Fe({common:{...Sn},mode:t,primary:h({color:o,name:"primary"}),secondary:h({color:i,name:"secondary",mainShade:"A400",lightShade:"A200",darkShade:"A700"}),error:h({color:a,name:"error"}),warning:h({color:u,name:"warning"}),info:h({color:c,name:"info"}),success:h({color:d,name:"success"}),grey:Gy,contrastThreshold:n,getContrastText:f,augmentColor:h,tonalOffset:s,...y},r)}function t1(e){const t={};return Object.entries(e).forEach(s=>{const[r,o]=s;typeof o=="object"&&(t[r]=`${o.fontStyle?`${o.fontStyle} `:""}${o.fontVariant?`${o.fontVariant} `:""}${o.fontWeight?`${o.fontWeight} `:""}${o.fontStretch?`${o.fontStretch} `:""}${o.fontSize||""}${o.lineHeight?`/${o.lineHeight} `:""}${o.fontFamily||""}`)}),t}function n1(e,t){return{toolbar:{minHeight:56,[e.up("xs")]:{"@media (orientation: landscape)":{minHeight:48}},[e.up("sm")]:{minHeight:64}},...t}}function s1(e){return Math.round(e*1e5)/1e5}const _a={textTransform:"uppercase"},Ba='"Roboto", "Helvetica", "Arial", sans-serif';function r1(e,t){const{fontFamily:n=Ba,fontSize:s=14,fontWeightLight:r=300,fontWeightRegular:o=400,fontWeightMedium:i=500,fontWeightBold:a=700,htmlFontSize:c=16,allVariants:d,pxToRem:u,...f}=typeof t=="function"?t(e):t;process.env.NODE_ENV!=="production"&&(typeof s!="number"&&console.error("MUI: `fontSize` is required to be a number."),typeof c!="number"&&console.error("MUI: `htmlFontSize` is required to be a number."));const h=s/14,y=u||(b=>`${b/c*h}rem`),g=(b,k,S,E,w)=>({fontFamily:n,fontWeight:b,fontSize:y(k),lineHeight:S,...n===Ba?{letterSpacing:`${s1(E/k)}em`}:{},...w,...d}),m={h1:g(r,96,1.167,-1.5),h2:g(r,60,1.2,-.5),h3:g(o,48,1.167,0),h4:g(o,34,1.235,.25),h5:g(o,24,1.334,0),h6:g(i,20,1.6,.15),subtitle1:g(o,16,1.75,.15),subtitle2:g(i,14,1.57,.1),body1:g(o,16,1.5,.15),body2:g(o,14,1.43,.15),button:g(i,14,1.75,.4,_a),caption:g(o,12,1.66,.4),overline:g(o,12,2.66,1,_a),inherit:{fontFamily:"inherit",fontWeight:"inherit",fontSize:"inherit",lineHeight:"inherit",letterSpacing:"inherit"}};return Fe({htmlFontSize:c,pxToRem:y,fontFamily:n,fontSize:s,fontWeightLight:r,fontWeightRegular:o,fontWeightMedium:i,fontWeightBold:a,...m},f,{clone:!1})}const o1=.2,i1=.14,a1=.12;function ge(...e){return[`${e[0]}px ${e[1]}px ${e[2]}px ${e[3]}px rgba(0,0,0,${o1})`,`${e[4]}px ${e[5]}px ${e[6]}px ${e[7]}px rgba(0,0,0,${i1})`,`${e[8]}px ${e[9]}px ${e[10]}px ${e[11]}px rgba(0,0,0,${a1})`].join(",")}const l1=["none",ge(0,2,1,-1,0,1,1,0,0,1,3,0),ge(0,3,1,-2,0,2,2,0,0,1,5,0),ge(0,3,3,-2,0,3,4,0,0,1,8,0),ge(0,2,4,-1,0,4,5,0,0,1,10,0),ge(0,3,5,-1,0,5,8,0,0,1,14,0),ge(0,3,5,-1,0,6,10,0,0,1,18,0),ge(0,4,5,-2,0,7,10,1,0,2,16,1),ge(0,5,5,-3,0,8,10,1,0,3,14,2),ge(0,5,6,-3,0,9,12,1,0,3,16,2),ge(0,6,6,-3,0,10,14,1,0,4,18,3),ge(0,6,7,-4,0,11,15,1,0,4,20,3),ge(0,7,8,-4,0,12,17,2,0,5,22,4),ge(0,7,8,-4,0,13,19,2,0,5,24,4),ge(0,7,9,-4,0,14,21,2,0,5,26,4),ge(0,8,9,-5,0,15,22,2,0,6,28,5),ge(0,8,10,-5,0,16,24,2,0,6,30,5),ge(0,8,11,-5,0,17,26,2,0,6,32,5),ge(0,9,11,-5,0,18,28,2,0,7,34,6),ge(0,9,12,-6,0,19,29,2,0,7,36,6),ge(0,10,13,-6,0,20,31,3,0,8,38,7),ge(0,10,13,-6,0,21,33,3,0,8,40,7),ge(0,10,14,-6,0,22,35,3,0,8,42,7),ge(0,11,14,-7,0,23,36,3,0,9,44,8),ge(0,11,15,-7,0,24,38,3,0,9,46,8)],c1={easeInOut:"cubic-bezier(0.4, 0, 0.2, 1)",easeOut:"cubic-bezier(0.0, 0, 0.2, 1)",easeIn:"cubic-bezier(0.4, 0, 1, 1)",sharp:"cubic-bezier(0.4, 0, 0.6, 1)"},d1={shortest:150,shorter:200,short:250,standard:300,complex:375,enteringScreen:225,leavingScreen:195};function za(e){return`${Math.round(e)}ms`}function u1(e){if(!e)return 0;const t=e/36;return Math.min(Math.round((4+15*t**.25+t/5)*10),3e3)}function f1(e){const t={...c1,...e.easing},n={...d1,...e.duration};return{getAutoHeightDuration:u1,create:(r=["all"],o={})=>{const{duration:i=n.standard,easing:a=t.easeInOut,delay:c=0,...d}=o;if(process.env.NODE_ENV!=="production"){const u=h=>typeof h=="string",f=h=>!Number.isNaN(parseFloat(h));!u(r)&&!Array.isArray(r)&&console.error('MUI: Argument "props" must be a string or Array.'),!f(i)&&!u(i)&&console.error(`MUI: Argument "duration" must be a number or a string but found ${i}.`),u(a)||console.error('MUI: Argument "easing" must be a string.'),!f(c)&&!u(c)&&console.error('MUI: Argument "delay" must be a number or a string.'),typeof o!="object"&&console.error(["MUI: Secong argument of transition.create must be an object.","Arguments should be either `create('prop1', options)` or `create(['prop1', 'prop2'], options)`"].join(`
73
+ `)),Object.keys(d).length!==0&&console.error(`MUI: Unrecognized argument(s) [${Object.keys(d).join(",")}].`)}return(Array.isArray(r)?r:[r]).map(u=>`${u} ${typeof i=="string"?i:za(i)} ${a} ${typeof c=="string"?c:za(c)}`).join(",")},...e,easing:t,duration:n}}const h1={mobileStepper:1e3,fab:1050,speedDial:1050,appBar:1100,drawer:1200,modal:1300,snackbar:1400,tooltip:1500};function m1(e){return nt(e)||typeof e>"u"||typeof e=="string"||typeof e=="boolean"||typeof e=="number"||Array.isArray(e)}function rd(e={}){const t={...e};function n(s){const r=Object.entries(s);for(let o=0;o<r.length;o++){const[i,a]=r[o];!m1(a)||i.startsWith("unstable_")?delete s[i]:nt(a)&&(s[i]={...a},n(s[i]))}}return n(t),`import { unstable_createBreakpoints as createBreakpoints, createTransitions } from '@mui/material/styles';
74
+
75
+ const theme = ${JSON.stringify(t,null,2)};
76
+
77
+ theme.breakpoints = createBreakpoints(theme.breakpoints || {});
78
+ theme.transitions = createTransitions(theme.transitions || {});
79
+
80
+ export default theme;`}function Rr(e={},...t){const{breakpoints:n,mixins:s={},spacing:r,palette:o={},transitions:i={},typography:a={},shape:c,...d}=e;if(e.vars&&e.generateThemeVars===void 0)throw new Error(process.env.NODE_ENV!=="production"?"MUI: `vars` is a private field used for CSS variables support.\nPlease use another name or follow the [docs](https://mui.com/material-ui/customization/css-theme-variables/usage/) to enable the feature.":ht(20));const u=Mo(o),f=qc(e);let h=Fe(f,{mixins:n1(f.breakpoints,s),palette:u,shadows:l1.slice(),typography:r1(u,a),transitions:f1(i),zIndex:{...h1}});if(h=Fe(h,d),h=t.reduce((y,g)=>Fe(y,g),h),process.env.NODE_ENV!=="production"){const y=["active","checked","completed","disabled","error","expanded","focused","focusVisible","required","selected"],g=(m,b)=>{let k;for(k in m){const S=m[k];if(y.includes(k)&&Object.keys(S).length>0){if(process.env.NODE_ENV!=="production"){const E=ko("",k);console.error([`MUI: The \`${b}\` component increases the CSS specificity of the \`${k}\` internal state.`,"You can not override it like this: ",JSON.stringify(m,null,2),"",`Instead, you need to use the '&.${E}' syntax:`,JSON.stringify({root:{[`&.${E}`]:S}},null,2),"","https://mui.com/r/state-classes-guide"].join(`
81
+ `))}m[k]={}}}};Object.keys(h.components).forEach(m=>{const b=h.components[m].styleOverrides;b&&m.startsWith("Mui")&&g(b,m)})}return h.unstable_sxConfig={...Ss,...d==null?void 0:d.unstable_sxConfig},h.unstable_sx=function(g){return Kt({sx:g,theme:this})},h.toRuntimeSource=rd,h}function p1(e){let t;return e<1?t=5.11916*e**2:t=4.5*Math.log(e+1)+2,Math.round(t*10)/1e3}const g1=[...Array(25)].map((e,t)=>{if(t===0)return"none";const n=p1(t);return`linear-gradient(rgba(255 255 255 / ${n}), rgba(255 255 255 / ${n}))`});function od(e){return{inputPlaceholder:e==="dark"?.5:.42,inputUnderline:e==="dark"?.7:.42,switchTrackDisabled:e==="dark"?.2:.12,switchTrack:e==="dark"?.3:.38}}function id(e){return e==="dark"?g1:[]}function y1(e){const{palette:t={mode:"light"},opacity:n,overlays:s,...r}=e,o=Mo(t);return{palette:o,opacity:{...od(o.mode),...n},overlays:s||id(o.mode),...r}}function x1(e){var t;return!!e[0].match(/(cssVarPrefix|colorSchemeSelector|rootSelector|typography|mixins|breakpoints|direction|transitions)/)||!!e[0].match(/sxConfig$/)||e[0]==="palette"&&!!((t=e[1])!=null&&t.match(/(mode|contrastThreshold|tonalOffset)/))}const b1=e=>[...[...Array(25)].map((t,n)=>`--${e?`${e}-`:""}overlays-${n}`),`--${e?`${e}-`:""}palette-AppBar-darkBg`,`--${e?`${e}-`:""}palette-AppBar-darkColor`],v1=e=>(t,n)=>{const s=e.rootSelector||":root",r=e.colorSchemeSelector;let o=r;if(r==="class"&&(o=".%s"),r==="data"&&(o="[data-%s]"),r!=null&&r.startsWith("data-")&&!r.includes("%s")&&(o=`[${r}="%s"]`),e.defaultColorScheme===t){if(t==="dark"){const i={};return b1(e.cssVarPrefix).forEach(a=>{i[a]=n[a],delete n[a]}),o==="media"?{[s]:n,"@media (prefers-color-scheme: dark)":{[s]:i}}:o?{[o.replace("%s",t)]:i,[`${s}, ${o.replace("%s",t)}`]:n}:{[s]:{...n,...i}}}if(o&&o!=="media")return`${s}, ${o.replace("%s",String(t))}`}else if(t){if(o==="media")return{[`@media (prefers-color-scheme: ${String(t)})`]:{[s]:n}};if(o)return o.replace("%s",String(t))}return s};function w1(e,t){t.forEach(n=>{e[n]||(e[n]={})})}function V(e,t,n){!e[t]&&n&&(e[t]=n)}function dn(e){return typeof e!="string"||!e.startsWith("hsl")?e:td(e)}function tt(e,t){`${t}Channel`in e||(e[`${t}Channel`]=cn(dn(e[t]),`MUI: Can't create \`palette.${t}Channel\` because \`palette.${t}\` is not one of these formats: #nnn, #nnnnnn, rgb(), rgba(), hsl(), hsla(), color().
82
+ To suppress this warning, you need to explicitly provide the \`palette.${t}Channel\` as a string (in rgb format, for example "12 12 12") or undefined if you want to remove the channel token.`))}function S1(e){return typeof e=="number"?`${e}px`:typeof e=="string"||typeof e=="function"||Array.isArray(e)?e:"8px"}const Ye=e=>{try{return e()}catch{}},C1=(e="mui")=>zy(e);function sr(e,t,n,s){if(!t)return;t=t===!0?{}:t;const r=s==="dark"?"dark":"light";if(!n){e[s]=y1({...t,palette:{mode:r,...t==null?void 0:t.palette}});return}const{palette:o,...i}=Rr({...n,palette:{mode:r,...t==null?void 0:t.palette}});return e[s]={...t,palette:o,opacity:{...od(r),...t==null?void 0:t.opacity},overlays:(t==null?void 0:t.overlays)||id(r)},i}function E1(e={},...t){const{colorSchemes:n={light:!0},defaultColorScheme:s,disableCssColorScheme:r=!1,cssVarPrefix:o="mui",shouldSkipGeneratingVar:i=x1,colorSchemeSelector:a=n.light&&n.dark?"media":void 0,rootSelector:c=":root",...d}=e,u=Object.keys(n)[0],f=s||(n.light&&u!=="light"?"light":u),h=C1(o),{[f]:y,light:g,dark:m,...b}=n,k={...b};let S=y;if((f==="dark"&&!("dark"in n)||f==="light"&&!("light"in n))&&(S=!0),!S)throw new Error(process.env.NODE_ENV!=="production"?`MUI: The \`colorSchemes.${f}\` option is either missing or invalid.`:ht(21,f));const E=sr(k,S,d,f);g&&!k.light&&sr(k,g,void 0,"light"),m&&!k.dark&&sr(k,m,void 0,"dark");let w={defaultColorScheme:f,...E,cssVarPrefix:o,colorSchemeSelector:a,rootSelector:c,getCssVar:h,colorSchemes:k,font:{...t1(E.typography),...E.font},spacing:S1(d.spacing)};Object.keys(w.colorSchemes).forEach(z=>{const x=w.colorSchemes[z].palette,I=L=>{const J=L.split("-"),te=J[1],ee=J[2];return h(L,x[te][ee])};if(x.mode==="light"&&(V(x.common,"background","#fff"),V(x.common,"onBackground","#000")),x.mode==="dark"&&(V(x.common,"background","#000"),V(x.common,"onBackground","#fff")),w1(x,["Alert","AppBar","Avatar","Button","Chip","FilledInput","LinearProgress","Skeleton","Slider","SnackbarContent","SpeedDialAction","StepConnector","StepContent","Switch","TableCell","Tooltip"]),x.mode==="light"){V(x.Alert,"errorColor",me(x.error.light,.6)),V(x.Alert,"infoColor",me(x.info.light,.6)),V(x.Alert,"successColor",me(x.success.light,.6)),V(x.Alert,"warningColor",me(x.warning.light,.6)),V(x.Alert,"errorFilledBg",I("palette-error-main")),V(x.Alert,"infoFilledBg",I("palette-info-main")),V(x.Alert,"successFilledBg",I("palette-success-main")),V(x.Alert,"warningFilledBg",I("palette-warning-main")),V(x.Alert,"errorFilledColor",Ye(()=>x.getContrastText(x.error.main))),V(x.Alert,"infoFilledColor",Ye(()=>x.getContrastText(x.info.main))),V(x.Alert,"successFilledColor",Ye(()=>x.getContrastText(x.success.main))),V(x.Alert,"warningFilledColor",Ye(()=>x.getContrastText(x.warning.main))),V(x.Alert,"errorStandardBg",pe(x.error.light,.9)),V(x.Alert,"infoStandardBg",pe(x.info.light,.9)),V(x.Alert,"successStandardBg",pe(x.success.light,.9)),V(x.Alert,"warningStandardBg",pe(x.warning.light,.9)),V(x.Alert,"errorIconColor",I("palette-error-main")),V(x.Alert,"infoIconColor",I("palette-info-main")),V(x.Alert,"successIconColor",I("palette-success-main")),V(x.Alert,"warningIconColor",I("palette-warning-main")),V(x.AppBar,"defaultBg",I("palette-grey-100")),V(x.Avatar,"defaultBg",I("palette-grey-400")),V(x.Button,"inheritContainedBg",I("palette-grey-300")),V(x.Button,"inheritContainedHoverBg",I("palette-grey-A100")),V(x.Chip,"defaultBorder",I("palette-grey-400")),V(x.Chip,"defaultAvatarColor",I("palette-grey-700")),V(x.Chip,"defaultIconColor",I("palette-grey-700")),V(x.FilledInput,"bg","rgba(0, 0, 0, 0.06)"),V(x.FilledInput,"hoverBg","rgba(0, 0, 0, 0.09)"),V(x.FilledInput,"disabledBg","rgba(0, 0, 0, 0.12)"),V(x.LinearProgress,"primaryBg",pe(x.primary.main,.62)),V(x.LinearProgress,"secondaryBg",pe(x.secondary.main,.62)),V(x.LinearProgress,"errorBg",pe(x.error.main,.62)),V(x.LinearProgress,"infoBg",pe(x.info.main,.62)),V(x.LinearProgress,"successBg",pe(x.success.main,.62)),V(x.LinearProgress,"warningBg",pe(x.warning.main,.62)),V(x.Skeleton,"bg",`rgba(${I("palette-text-primaryChannel")} / 0.11)`),V(x.Slider,"primaryTrack",pe(x.primary.main,.62)),V(x.Slider,"secondaryTrack",pe(x.secondary.main,.62)),V(x.Slider,"errorTrack",pe(x.error.main,.62)),V(x.Slider,"infoTrack",pe(x.info.main,.62)),V(x.Slider,"successTrack",pe(x.success.main,.62)),V(x.Slider,"warningTrack",pe(x.warning.main,.62));const L=Un(x.background.default,.8);V(x.SnackbarContent,"bg",L),V(x.SnackbarContent,"color",Ye(()=>x.getContrastText(L))),V(x.SpeedDialAction,"fabHoverBg",Un(x.background.paper,.15)),V(x.StepConnector,"border",I("palette-grey-400")),V(x.StepContent,"border",I("palette-grey-400")),V(x.Switch,"defaultColor",I("palette-common-white")),V(x.Switch,"defaultDisabledColor",I("palette-grey-100")),V(x.Switch,"primaryDisabledColor",pe(x.primary.main,.62)),V(x.Switch,"secondaryDisabledColor",pe(x.secondary.main,.62)),V(x.Switch,"errorDisabledColor",pe(x.error.main,.62)),V(x.Switch,"infoDisabledColor",pe(x.info.main,.62)),V(x.Switch,"successDisabledColor",pe(x.success.main,.62)),V(x.Switch,"warningDisabledColor",pe(x.warning.main,.62)),V(x.TableCell,"border",pe(Hn(x.divider,1),.88)),V(x.Tooltip,"bg",Hn(x.grey[700],.92))}if(x.mode==="dark"){V(x.Alert,"errorColor",pe(x.error.light,.6)),V(x.Alert,"infoColor",pe(x.info.light,.6)),V(x.Alert,"successColor",pe(x.success.light,.6)),V(x.Alert,"warningColor",pe(x.warning.light,.6)),V(x.Alert,"errorFilledBg",I("palette-error-dark")),V(x.Alert,"infoFilledBg",I("palette-info-dark")),V(x.Alert,"successFilledBg",I("palette-success-dark")),V(x.Alert,"warningFilledBg",I("palette-warning-dark")),V(x.Alert,"errorFilledColor",Ye(()=>x.getContrastText(x.error.dark))),V(x.Alert,"infoFilledColor",Ye(()=>x.getContrastText(x.info.dark))),V(x.Alert,"successFilledColor",Ye(()=>x.getContrastText(x.success.dark))),V(x.Alert,"warningFilledColor",Ye(()=>x.getContrastText(x.warning.dark))),V(x.Alert,"errorStandardBg",me(x.error.light,.9)),V(x.Alert,"infoStandardBg",me(x.info.light,.9)),V(x.Alert,"successStandardBg",me(x.success.light,.9)),V(x.Alert,"warningStandardBg",me(x.warning.light,.9)),V(x.Alert,"errorIconColor",I("palette-error-main")),V(x.Alert,"infoIconColor",I("palette-info-main")),V(x.Alert,"successIconColor",I("palette-success-main")),V(x.Alert,"warningIconColor",I("palette-warning-main")),V(x.AppBar,"defaultBg",I("palette-grey-900")),V(x.AppBar,"darkBg",I("palette-background-paper")),V(x.AppBar,"darkColor",I("palette-text-primary")),V(x.Avatar,"defaultBg",I("palette-grey-600")),V(x.Button,"inheritContainedBg",I("palette-grey-800")),V(x.Button,"inheritContainedHoverBg",I("palette-grey-700")),V(x.Chip,"defaultBorder",I("palette-grey-700")),V(x.Chip,"defaultAvatarColor",I("palette-grey-300")),V(x.Chip,"defaultIconColor",I("palette-grey-300")),V(x.FilledInput,"bg","rgba(255, 255, 255, 0.09)"),V(x.FilledInput,"hoverBg","rgba(255, 255, 255, 0.13)"),V(x.FilledInput,"disabledBg","rgba(255, 255, 255, 0.12)"),V(x.LinearProgress,"primaryBg",me(x.primary.main,.5)),V(x.LinearProgress,"secondaryBg",me(x.secondary.main,.5)),V(x.LinearProgress,"errorBg",me(x.error.main,.5)),V(x.LinearProgress,"infoBg",me(x.info.main,.5)),V(x.LinearProgress,"successBg",me(x.success.main,.5)),V(x.LinearProgress,"warningBg",me(x.warning.main,.5)),V(x.Skeleton,"bg",`rgba(${I("palette-text-primaryChannel")} / 0.13)`),V(x.Slider,"primaryTrack",me(x.primary.main,.5)),V(x.Slider,"secondaryTrack",me(x.secondary.main,.5)),V(x.Slider,"errorTrack",me(x.error.main,.5)),V(x.Slider,"infoTrack",me(x.info.main,.5)),V(x.Slider,"successTrack",me(x.success.main,.5)),V(x.Slider,"warningTrack",me(x.warning.main,.5));const L=Un(x.background.default,.98);V(x.SnackbarContent,"bg",L),V(x.SnackbarContent,"color",Ye(()=>x.getContrastText(L))),V(x.SpeedDialAction,"fabHoverBg",Un(x.background.paper,.15)),V(x.StepConnector,"border",I("palette-grey-600")),V(x.StepContent,"border",I("palette-grey-600")),V(x.Switch,"defaultColor",I("palette-grey-300")),V(x.Switch,"defaultDisabledColor",I("palette-grey-600")),V(x.Switch,"primaryDisabledColor",me(x.primary.main,.55)),V(x.Switch,"secondaryDisabledColor",me(x.secondary.main,.55)),V(x.Switch,"errorDisabledColor",me(x.error.main,.55)),V(x.Switch,"infoDisabledColor",me(x.info.main,.55)),V(x.Switch,"successDisabledColor",me(x.success.main,.55)),V(x.Switch,"warningDisabledColor",me(x.warning.main,.55)),V(x.TableCell,"border",me(Hn(x.divider,1),.68)),V(x.Tooltip,"bg",Hn(x.grey[700],.92))}tt(x.background,"default"),tt(x.background,"paper"),tt(x.common,"background"),tt(x.common,"onBackground"),tt(x,"divider"),Object.keys(x).forEach(L=>{const J=x[L];L!=="tonalOffset"&&J&&typeof J=="object"&&(J.main&&V(x[L],"mainChannel",cn(dn(J.main))),J.light&&V(x[L],"lightChannel",cn(dn(J.light))),J.dark&&V(x[L],"darkChannel",cn(dn(J.dark))),J.contrastText&&V(x[L],"contrastTextChannel",cn(dn(J.contrastText))),L==="text"&&(tt(x[L],"primary"),tt(x[L],"secondary")),L==="action"&&(J.active&&tt(x[L],"active"),J.selected&&tt(x[L],"selected")))})}),w=t.reduce((z,x)=>Fe(z,x),w);const v={prefix:o,disableCssColorScheme:r,shouldSkipGeneratingVar:i,getSelector:v1(w)},{vars:A,generateThemeVars:T,generateStyleSheets:j}=Zy(w,v);return w.vars=A,Object.entries(w.colorSchemes[w.defaultColorScheme]).forEach(([z,x])=>{w[z]=x}),w.generateThemeVars=T,w.generateStyleSheets=j,w.generateSpacing=function(){return Yc(d.spacing,Co(this))},w.getColorSchemeSelector=Wy(a),w.spacing=w.generateSpacing(),w.shouldSkipGeneratingVar=i,w.unstable_sxConfig={...Ss,...d==null?void 0:d.unstable_sxConfig},w.unstable_sx=function(x){return Kt({sx:x,theme:this})},w.toRuntimeSource=rd,w}function Ha(e,t,n){e.colorSchemes&&n&&(e.colorSchemes[t]={...n!==!0&&n,palette:Mo({...n===!0?{}:n.palette,mode:t})})}function k1(e={},...t){const{palette:n,cssVariables:s=!1,colorSchemes:r=n?void 0:{light:!0},defaultColorScheme:o=n==null?void 0:n.mode,...i}=e,a=o||"light",c=r==null?void 0:r[a],d={...r,...n?{[a]:{...typeof c!="boolean"&&c,palette:n}}:void 0};if(s===!1){if(!("colorSchemes"in e))return Rr(e,...t);let u=n;"palette"in e||d[a]&&(d[a]!==!0?u=d[a].palette:a==="dark"&&(u={mode:"dark"}));const f=Rr({...e,palette:u},...t);return f.defaultColorScheme=a,f.colorSchemes=d,f.palette.mode==="light"&&(f.colorSchemes.light={...d.light!==!0&&d.light,palette:f.palette},Ha(f,"dark",d.dark)),f.palette.mode==="dark"&&(f.colorSchemes.dark={...d.dark!==!0&&d.dark,palette:f.palette},Ha(f,"light",d.light)),f}return!n&&!("light"in d)&&a==="light"&&(d.light=!0),E1({...i,colorSchemes:d,defaultColorScheme:a,...typeof s!="boolean"&&s},...t)}const T1=k1(),A1="$$material";function j1(e){return e!=="ownerState"&&e!=="theme"&&e!=="sx"&&e!=="as"}const M1=e=>j1(e)&&e!=="classes",P1=jy({themeId:A1,defaultTheme:T1,rootShouldForwardProp:M1}),N1=By;process.env.NODE_ENV!=="production"&&(ae.node,ae.object.isRequired);function V1(e){return _y(e)}function R1(e){return ko("MuiSvgIcon",e)}Cy("MuiSvgIcon",["root","colorPrimary","colorSecondary","colorAction","colorError","colorDisabled","fontSizeInherit","fontSizeSmall","fontSizeMedium","fontSizeLarge"]);const I1=e=>{const{color:t,fontSize:n,classes:s}=e,r={root:["root",t!=="inherit"&&`color${At(t)}`,`fontSize${At(n)}`]};return mg(r,R1,s)},D1=P1("svg",{name:"MuiSvgIcon",slot:"Root",overridesResolver:(e,t)=>{const{ownerState:n}=e;return[t.root,n.color!=="inherit"&&t[`color${At(n.color)}`],t[`fontSize${At(n.fontSize)}`]]}})(N1(({theme:e})=>{var t,n,s,r,o,i,a,c,d,u,f,h,y,g;return{userSelect:"none",width:"1em",height:"1em",display:"inline-block",flexShrink:0,transition:(r=(t=e.transitions)==null?void 0:t.create)==null?void 0:r.call(t,"fill",{duration:(s=(n=(e.vars??e).transitions)==null?void 0:n.duration)==null?void 0:s.shorter}),variants:[{props:m=>!m.hasSvgAsChild,style:{fill:"currentColor"}},{props:{fontSize:"inherit"},style:{fontSize:"inherit"}},{props:{fontSize:"small"},style:{fontSize:((i=(o=e.typography)==null?void 0:o.pxToRem)==null?void 0:i.call(o,20))||"1.25rem"}},{props:{fontSize:"medium"},style:{fontSize:((c=(a=e.typography)==null?void 0:a.pxToRem)==null?void 0:c.call(a,24))||"1.5rem"}},{props:{fontSize:"large"},style:{fontSize:((u=(d=e.typography)==null?void 0:d.pxToRem)==null?void 0:u.call(d,35))||"2.1875rem"}},...Object.entries((e.vars??e).palette).filter(([,m])=>m&&m.main).map(([m])=>{var b,k;return{props:{color:m},style:{color:(k=(b=(e.vars??e).palette)==null?void 0:b[m])==null?void 0:k.main}}}),{props:{color:"action"},style:{color:(h=(f=(e.vars??e).palette)==null?void 0:f.action)==null?void 0:h.active}},{props:{color:"disabled"},style:{color:(g=(y=(e.vars??e).palette)==null?void 0:y.action)==null?void 0:g.disabled}},{props:{color:"inherit"},style:{color:void 0}}]}})),as=p.forwardRef(function(t,n){const s=V1({props:t,name:"MuiSvgIcon"}),{children:r,className:o,color:i="inherit",component:a="svg",fontSize:c="medium",htmlColor:d,inheritViewBox:u=!1,titleAccess:f,viewBox:h="0 0 24 24",...y}=s,g=p.isValidElement(r)&&r.type==="svg",m={...s,color:i,component:a,fontSize:c,instanceFontSize:t.fontSize,inheritViewBox:u,viewBox:h,hasSvgAsChild:g},b={};u||(b.viewBox=h);const k=I1(m);return l.jsxs(D1,{as:a,className:$r(k.root,o),focusable:"false",color:d,"aria-hidden":f?void 0:!0,role:f?"img":void 0,ref:n,...b,...y,...g&&r.props,ownerState:m,children:[g?r.props.children:r,f?l.jsx("title",{children:f}):null]})});process.env.NODE_ENV!=="production"&&(as.propTypes={children:ae.node,classes:ae.object,className:ae.string,color:ae.oneOfType([ae.oneOf(["inherit","action","disabled","primary","secondary","error","info","success","warning"]),ae.string]),component:ae.elementType,fontSize:ae.oneOfType([ae.oneOf(["inherit","large","medium","small"]),ae.string]),htmlColor:ae.string,inheritViewBox:ae.bool,shapeRendering:ae.string,sx:ae.oneOfType([ae.arrayOf(ae.oneOfType([ae.func,ae.object,ae.bool])),ae.func,ae.object]),titleAccess:ae.string,viewBox:ae.string});as.muiName="SvgIcon";function tn(e,t){function n(s,r){return l.jsx(as,{"data-testid":process.env.NODE_ENV!=="production"?`${t}Icon`:void 0,ref:r,...s,children:e})}return process.env.NODE_ENV!=="production"&&(n.displayName=`${t}Icon`),n.muiName=as.muiName,p.memo(p.forwardRef(n))}const $1=tn(l.jsx("path",{d:"M16.5 6v11.5c0 2.21-1.79 4-4 4s-4-1.79-4-4V5c0-1.38 1.12-2.5 2.5-2.5s2.5 1.12 2.5 2.5v10.5c0 .55-.45 1-1 1s-1-.45-1-1V6H10v9.5c0 1.38 1.12 2.5 2.5 2.5s2.5-1.12 2.5-2.5V5c0-2.21-1.79-4-4-4S7 2.79 7 5v12.5c0 3.04 2.46 5.5 5.5 5.5s5.5-2.46 5.5-5.5V6z"}),"AttachFile"),F1=tn(l.jsx("path",{d:"M12 9c-1.6 0-3.15.25-4.6.72v3.1c0 .39-.23.74-.56.9-.98.49-1.87 1.12-2.66 1.85-.18.18-.43.28-.7.28-.28 0-.53-.11-.71-.29L.29 13.08c-.18-.17-.29-.42-.29-.7s.11-.53.29-.71C3.34 8.78 7.46 7 12 7s8.66 1.78 11.71 4.67c.18.18.29.43.29.71s-.11.53-.29.71l-2.48 2.48c-.18.18-.43.29-.71.29-.27 0-.52-.11-.7-.28-.79-.74-1.69-1.36-2.67-1.85-.33-.16-.56-.5-.56-.9v-3.1C15.15 9.25 13.6 9 12 9"}),"CallEnd"),O1=tn([l.jsx("circle",{cx:"12",cy:"12",r:"3.2"},"0"),l.jsx("path",{d:"M9 2 7.17 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2h-3.17L15 2zm3 15c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5"},"1")],"CameraAlt"),ad=tn(l.jsx("path",{d:"M20 2H4c-1.1 0-1.99.9-1.99 2L2 22l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2M6 9h12v2H6zm8 5H6v-2h8zm4-6H6V6h12z"}),"Chat"),ld=tn(l.jsx("path",{d:"M12 14c1.66 0 2.99-1.34 2.99-3L15 5c0-1.66-1.34-3-3-3S9 3.34 9 5v6c0 1.66 1.34 3 3 3m5.3-3c0 3-2.54 5.1-5.3 5.1S6.7 14 6.7 11H5c0 3.41 2.72 6.23 6 6.72V21h2v-3.28c3.28-.48 6-3.3 6-6.72z"}),"Mic"),cd=tn(l.jsx("path",{d:"M17 10.5V7c0-.55-.45-1-1-1H4c-.55 0-1 .45-1 1v10c0 .55.45 1 1 1h12c.55 0 1-.45 1-1v-3.5l4 4v-11z"}),"Videocam"),L1=({disabled:e,capabilities:t,sessionStarted:n,ref:s,participantName:r="User",loadingText:o="Waiting for agent to connect...",theme:i="vox",client:a,displayType:c="widget",onBack:d})=>{var te,ee,ne,Y,R,X,P;const[u,f]=C.useState(!1),[h,y]=C.useState(!1),[g,m]=C.useState(()=>{var U;const N=(U=a==null?void 0:a.getCurrentInteraction)==null?void 0:U.call(a);return console.log("SessionView: Initializing with existing interaction:",(N==null?void 0:N.methodName)||"none"),N||null}),{messages:b,send:k}=tg(),S=C.useRef(null),E=C.useRef(null),{agent:{isActive:w=!1}={}}=Ee.useVoiceAssistant(),v=Ve(i),A=C.useMemo(()=>a&&typeof a.getCurrentSession=="function"?!!a.getCurrentSession():!1,[a]),T=w||A;C.useEffect(()=>{var N,U;console.log("🤖 SessionView agent state:",{isAgentActive:w,hasActiveSession:A,effectiveAgentActive:T,sessionStarted:n,clientSession:(U=(N=a==null?void 0:a.getCurrentSession)==null?void 0:N.call(a))==null?void 0:U.id})},[w,A,T,n,a]),C.useEffect(()=>{console.log("🤖 Agent active state changed:",w)},[w]),C.useEffect(()=>{console.log("📋 Session state changed:",{sessionStarted:n,disabled:e,participantName:r,effectiveAgentActive:T,chatOpen:u,currentInteraction:(g==null?void 0:g.methodName)||"none"})},[n,e,r,T,u,g]),C.useEffect(()=>{if(n&&!w){console.log("⏰ Starting agent timeout detection...");const N=setTimeout(()=>{console.log("⚠️ Agent timeout: Agent did not become active within 30 seconds"),y(!0)},3e4);return()=>{clearTimeout(N)}}else w&&(console.log("✅ Agent is active, clearing timeout"),y(!1))},[n,w]),C.useEffect(()=>{if(!a)return;const N=()=>{console.log("🔄 Client connection state changed:",a.connected)},U=M=>{console.log("🔴 Client disconnected:",M),m(null),f(!1),y(!1)};return a.on("connection.connected",N),a.on("connection.disconnected",U),()=>{a.off("connection.connected",N),a.off("connection.disconnected",U)}},[a]),C.useEffect(()=>{if(!a)return;const N=H=>{console.log("🎯 SessionView: RPC Interaction started:",H);const F=a.getCurrentInteraction();F&&(console.log("📱 SessionView: Setting current interaction:",F.methodName,"mode:",F.presentationMode),m(F))},U=H=>{console.log("✅ SessionView: RPC Interaction completed:",H),m(null)},M=async H=>{console.log("⏰ SessionView: RPC Interaction timeout:",H),m(null)},D=async H=>{console.log("❌ SessionView: RPC Interaction dismissed:",H),m(null)};return a.on("rpc.interaction.started",N),a.on("rpc.interaction.completed",U),a.on("rpc.interaction.timeout",M),a.on("rpc.interaction.dismissed",D),()=>{a.off("rpc.interaction.started",N),a.off("rpc.interaction.completed",U),a.off("rpc.interaction.timeout",M),a.off("rpc.interaction.dismissed",D)}},[a]),C.useEffect(()=>{if(!a)return;const N=a.getCurrentInteraction();N?(console.log("🔄 SessionView: Syncing with existing interaction:",N.methodName),m(N)):m(null)},[a]),C.useEffect(()=>{console.log("🎭 SessionView: Current interaction changed:",(g==null?void 0:g.methodName)||"none","mode:",(g==null?void 0:g.presentationMode)||"none")},[g]),C.useEffect(()=>{var N,U,M;console.log("📱 SessionView: Display type changed to:",c),console.log("📱 SessionView: Current session state during display change:",{sessionStarted:n,effectiveAgentActive:T,hasSession:!!((N=a==null?void 0:a.getCurrentSession)!=null&&N.call(a)),sessionId:(M=(U=a==null?void 0:a.getCurrentSession)==null?void 0:U.call(a))==null?void 0:M.id})},[c,n,T,a]),C.useEffect(()=>{console.log("💬 SessionView: Chat open state changed:",u)},[u]),C.useEffect(()=>{g&&u&&(console.log("🎭 SessionView: Interactive UI appeared, closing chat"),f(!1))},[g,u]),ng(),C.useEffect(()=>{S.current&&u&&b.length>0&&(console.log("📜 SessionView: Auto-scrolling to latest message, count:",b.length),setTimeout(()=>{if(S.current){let N=S.current.parentElement;for(;N&&N.scrollHeight<=N.clientHeight;)N=N.parentElement;N?(console.log("📜 SessionView: Scrolling container found, scrolling to bottom"),N.scrollTo({top:N.scrollHeight,behavior:"smooth"})):(console.log("📜 SessionView: Using fallback scroll method"),S.current.scrollIntoView({behavior:"smooth",block:"end",inline:"nearest"}))}},100))},[b.length,u]),C.useEffect(()=>{var M,D;console.log("📝 SessionView: Messages updated, count:",b.length),b.length>0&&console.log("📝 SessionView: Latest messages:",b.slice(-3).map(H=>{var F,$,B,Z,_,re,O;return{id:H.id,message:H.message,timestamp:H.timestamp,from:((F=H.from)==null?void 0:F.name)||(($=H.from)==null?void 0:$.identity),fromType:H.from===void 0?"unknown":"participant",isLocal:((B=H.from)==null?void 0:B.identity)===((re=(_=(Z=a==null?void 0:a.getCurrentSession)==null?void 0:Z.call(a))==null?void 0:_.localParticipant)==null?void 0:re.identity),messageLength:((O=H.message)==null?void 0:O.length)||0}}));const N=((M=a==null?void 0:a.getTranscriptions)==null?void 0:M.call(a))||[],U=((D=a==null?void 0:a.getChatMessages)==null?void 0:D.call(a))||[];console.log("📝 SessionView: Raw transcriptions count:",N.length),console.log("📝 SessionView: Raw chat messages count:",U.length)},[b.length,b,a]),C.useEffect(()=>{console.log("💬 SessionView: Chat state changed:",{chatOpen:u,messagesCount:b.length,displayType:c,hasMessages:b.length>0})},[u,b.length,c]);async function j(N){await k(N)}const z=C.useCallback(N=>{console.log("📝 SessionView: Adding local message for voice session context:",N)},[]),x=C.useCallback(async N=>{try{a&&typeof a.sendAttachments=="function"&&(await a.sendAttachments(N),console.log("📎 SessionView: Attachments sent successfully:",N.map(U=>U.name)))}catch(U){console.error("❌ SessionView: Failed to send attachments:",U)}},[a]),I=C.useCallback(()=>{try{console.log("📞 SessionView: Ending call..."),console.log("📞 SessionView: Current state before ending:",{sessionStarted:n,effectiveAgentActive:T,chatOpen:u,currentInteraction:g==null?void 0:g.methodName,hasOnBack:!!d}),g&&(console.log("🎭 SessionView: Dismissing current interaction:",g.methodName),m(null),a&&typeof a.dismissCurrentInteraction=="function"&&a.dismissCurrentInteraction()),f(!1),y(!1),console.log("✅ SessionView: Local state reset"),a&&typeof a.endSession=="function"&&(a.endSession(),console.log("✅ SessionView: Session ended via client.endSession()")),a&&typeof a.disconnect=="function"&&(a.disconnect(),console.log("✅ SessionView: Client disconnected")),d?(console.log("🔄 SessionView: Calling onBack to return to welcome..."),setTimeout(()=>{d(),console.log("✅ SessionView: onBack called")},150)):console.warn("⚠️ SessionView: No onBack function provided - cannot return to welcome"),console.log("🏁 SessionView: Call ended and cleanup completed")}catch(N){console.error("❌ SessionView: Failed to end call:",N),m(null),f(!1),y(!1),d&&(console.log("🔄 SessionView: Error occurred, still calling onBack..."),d())}},[a,d,g,n,T,u]);C.useEffect(()=>(console.log("🔄 SessionView: Component mounted/props changed:",{sessionStarted:n,disabled:e,participantName:r,displayType:c,hasOnBack:!!d,hasClient:!!a}),()=>{console.log("🧹 SessionView: Component unmounting or props changing")}),[n,e,r,c,d,a]),C.useEffect(()=>{console.log("🔗 SessionView: onBack prop:",{hasOnBack:!!d,onBackType:typeof d})},[d]),C.useEffect(()=>{var U,M;const N=((M=(U=a==null?void 0:a.getCurrentSession)==null?void 0:U.call(a))==null?void 0:M.id)||null;E.current&&!N&&console.warn("⚠️ SessionView: Session was lost unexpectedly!",{previousSession:E.current,currentSession:N,displayType:c,sessionStarted:n,effectiveAgentActive:T}),E.current=N},[a,c,n,T]);const L=q("w-full flex flex-col items-center justify-center",c==="fullscreen"?"w-full max-w-none mx-0 h-full":"w-full mx-auto",v.main,c==="fullscreen"?"max-w-none":"","overflow-hidden","h-full"),J=d&&(c==="popup"||c==="fullscreen");return l.jsxs("main",{ref:s,inert:e,className:q(L,"relative"),style:{minHeight:0},children:[J&&l.jsx("div",{className:`flex items-center justify-between w-full p-4 border-b ${((te=v.chatHeader)==null?void 0:te.container)||"border-gray-200"}`,children:l.jsx("div",{className:"flex items-center",children:l.jsxs("div",{children:[l.jsx("h3",{className:`font-semibold ${v.text.primary}`,children:"Voice Session"}),l.jsx("p",{className:`text-sm ${v.text.muted}`,children:r})]})})}),l.jsxs("div",{className:"w-full flex-1 flex flex-col items-center px-0 min-h-0 overflow-hidden",children:[!T&&l.jsxs("div",{className:"flex flex-col items-center justify-center w-full h-full min-h-[180px]",children:[l.jsx(ie.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:l.jsx(wo,{className:v.spinner,weight:"bold"})}),l.jsx(ie.span,{initial:{opacity:0,y:10},animate:{opacity:1,y:0},className:`text-sm opacity-80 ${v.text.muted} text-center max-w-xs`,children:h?"Agent is taking longer than expected...":o}),l.jsx(ie.p,{initial:{opacity:0},animate:{opacity:1},transition:{delay:2},className:`text-xs ${v.text.muted} mt-2 text-center opacity-60`,children:h?"Please check your connection or try again.":"Agent is connecting... This may take a moment."}),h&&d&&l.jsx(ie.button,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},transition:{delay:.5},onClick:d,className:`mt-4 px-4 py-2 rounded-lg ${((ee=v.chatHeader)==null?void 0:ee.backButton)||"bg-gray-100 hover:bg-gray-200"} transition-colors`,children:"Go Back"})]}),T&&l.jsxs(l.Fragment,{children:[u&&l.jsxs("div",{className:q("absolute inset-0 w-full h-full flex flex-col transition-[opacity,translate] duration-300 ease-out z-10",i==="light"?"bg-white":"bg-gray-900/95 backdrop-blur-sm",u?"translate-y-0 opacity-100 delay-200":"translate-y-10 opacity-0"),children:[l.jsxs("div",{className:q("flex-shrink-0 px-4 py-3 border-b",c==="fullscreen"?"px-8":"px-5",((ne=v.chatHeader)==null?void 0:ne.container)||"border-gray-200 dark:border-gray-700"),children:[l.jsx("h3",{className:q("font-semibold text-lg",((Y=v.text)==null?void 0:Y.primary)||"text-gray-900 dark:text-white"),children:"Transcription & Chat"}),l.jsxs("p",{className:q("text-sm",((R=v.text)==null?void 0:R.muted)||"text-gray-600 dark:text-gray-400"),children:[b.length," messages"]})]}),l.jsx("div",{className:q("flex-1 flex flex-col min-h-0",c==="fullscreen"?"px-8":"px-5"),children:l.jsx(W0,{className:"flex-1 flex flex-col min-h-0 h-full",children:l.jsxs("div",{className:`flex-1 flex flex-col h-full ${q("overflow-y-auto scrollbar-hide py-4")}`,style:{scrollbarWidth:"none",scrollBehavior:"smooth",paddingBottom:"120px"},children:[b.length===0&&l.jsx("div",{className:"flex-1 flex items-center justify-center",children:l.jsxs("div",{className:"text-center",children:[l.jsx("p",{className:q("text-lg font-medium mb-2",((X=v.text)==null?void 0:X.primary)||"text-gray-900 dark:text-white"),children:"Start Speaking"}),l.jsx("p",{className:q("text-sm",((P=v.text)==null?void 0:P.muted)||"text-gray-600 dark:text-gray-400"),children:"Your conversation will appear here"})]})}),b.length>0&&l.jsxs(l.Fragment,{children:[l.jsx("div",{className:"flex-1 min-h-4"}),l.jsx("div",{ref:S,className:"space-y-4 relative whitespace-pre-wrap z-0",children:l.jsx(zt,{mode:"popLayout",children:b.map((N,U)=>l.jsx(ie.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:-20},transition:{duration:.3,ease:"easeOut",delay:U*.02},layout:!0,children:l.jsx(U0,{participantName:r,entry:N})},N.id||`message-${U}`))})})]})]})})})]}),!u&&l.jsxs("div",{className:q("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:[l.jsx(ie.div,{className:"w-full flex justify-center",animate:{y:(g==null?void 0:g.presentationMode)==="embedded"?-8:0},transition:{duration:.3,ease:"easeOut"},children:l.jsx(eg,{chatOpen:u})}),l.jsx(zt,{mode:"wait",children:g&&g.presentationMode==="embedded"&&l.jsx(ie.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:q("w-full relative mt-4 flex justify-center",c==="fullscreen"?"max-w-4xl":"max-w-md"),children:l.jsx("div",{className:"bg-white/10 backdrop-blur-sm rounded-xl border border-white/20 shadow-lg overflow-hidden",children:l.jsx(Gt,{interaction:g,theme:i,onDismiss:()=>{var N;return(N=a==null?void 0:a.dismissCurrentInteraction)==null?void 0:N.call(a)},client:a,addLocalMessage:z})})},`embedded-${g.methodName}`)})]})]})]}),l.jsx(zt,{mode:"wait",children:g&&g.presentationMode!=="embedded"&&!u&&l.jsx("div",{className:q("absolute inset-0 z-50 flex items-center justify-center backdrop-blur-sm",c==="fullscreen"?"bg-black/70":"bg-black/50"),children:l.jsx(ie.div,{initial:{opacity:0,scale:.9},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.9},transition:{duration:.2,ease:"easeOut"},className:q("relative w-full overflow-hidden",c==="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:l.jsx(Gt,{interaction:g,theme:i,onDismiss:()=>{var N;return(N=a==null?void 0:a.dismissCurrentInteraction)==null?void 0:N.call(a)},client:a,addLocalMessage:z})},`modal-${g.methodName}`)})}),l.jsx(ie.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.2},className:"absolute bottom-0 left-0 right-0 flex-shrink-0 w-full z-20",children:l.jsx(_1,{capabilities:t,onSendMessage:j,onSendAttachments:x,onEndCall:I,onChatOpenChange:f,disabled:e,theme:i,client:a,sessionStarted:n})})]})};function _1({capabilities:e,onSendMessage:t,onSendAttachments:n,onEndCall:s,onChatOpenChange:r,disabled:o=!1,theme:i,client:a,sessionStarted:c=!1}){const[d,u]=C.useState(!1),f=C.useRef(null),h=C.useRef(null);C.useEffect(()=>{const S=()=>{const E=navigator.userAgent.toLowerCase(),v=["android","iphone","ipad","mobile","tablet"].some(j=>E.includes(j)),A="ontouchstart"in window||navigator.maxTouchPoints>0,T=window.innerWidth<=768;u(v||A&&T)};return S(),window.addEventListener("resize",S),()=>window.removeEventListener("resize",S)},[]);const y=S=>{const E=S.target.files;if(E&&E.length>0){const v=Array.from(E).filter(A=>A.type.startsWith("image/"));if(v.length===0){console.warn("No valid image files selected");return}n&&n(v),f.current&&(f.current.value="")}},g=S=>{const E=S.target.files;if(E&&E.length>0){const w=E[0];w.type.startsWith("image/")&&n&&n([w]),h.current&&(h.current.value="")}},m=()=>{!o&&f.current&&f.current.click()},b=()=>{!o&&d&&h.current&&h.current.click()},k=()=>{console.log("🔴 VoiceControlPanel: End call button clicked"),console.log("🔴 VoiceControlPanel: Current state:",{disabled:o,sessionStarted:c,hasOnEndCall:!!s}),s?s():console.warn("⚠️ VoiceControlPanel: No onEndCall function provided")};return l.jsx("div",{className:q("px-4 py-3 !w-full backdrop-blur-xl border-0 shadow-lg",i==="light"?"bg-white/95 border-t border-gray-200":"bg-gray-900/95 border-t border-gray-700"),children:l.jsxs("div",{className:"flex items-center justify-between !w-full mx-auto max-w-4xl",children:[l.jsx("input",{ref:f,type:"file",multiple:!0,onChange:y,className:"hidden",accept:"image/*"}),l.jsx("input",{ref:h,type:"file",onChange:g,className:"hidden",accept:"image/*",capture:"environment"}),l.jsxs("div",{className:"flex items-center gap-2",children:[l.jsx("button",{onClick:m,disabled:o,className:q("p-3 rounded-full transition-all duration-200 hover:scale-105 active:scale-95",o?"opacity-50 cursor-not-allowed":"hover:shadow-md",i==="light"?"bg-gray-100 hover:bg-gray-200 text-gray-600":"bg-gray-700/50 hover:bg-gray-600/50 text-gray-300"),title:"Attach files",children:l.jsx($1,{className:"w-5 h-5"})}),d&&l.jsx("button",{onClick:b,disabled:o,className:q("p-3 rounded-full transition-all duration-200 hover:scale-105 active:scale-95",o?"opacity-50 cursor-not-allowed":"hover:shadow-md",i==="light"?"bg-gray-100 hover:bg-gray-200 text-gray-600":"bg-gray-700/50 hover:bg-gray-600/50 text-gray-300"),title:"Take photo",children:l.jsx(O1,{className:"w-5 h-5"})})]}),l.jsx("div",{className:"flex-1 flex justify-center px-4",children:l.jsx(z0,{capabilities:e,onChatOpenChange:r,onSendMessage:t,theme:i,client:a,className:"border-none py-1 rounded-xl max-w-md w-full"})}),l.jsx("div",{className:"flex items-center",children:l.jsx("button",{onClick:k,disabled:o||!c,className:q("p-3 rounded-full transition-all duration-200 hover:scale-105 active:scale-95",o||!c?"opacity-50 cursor-not-allowed":"hover:shadow-md","bg-red-500 hover:bg-red-600 text-white"),title:"End call",children:l.jsx(F1,{className:"w-5 h-5"})})})]})})}function B1({onSendMessage:e,onSendAttachments:t,disabled:n,theme:s,onEndChat:r}){const[o,i]=p.useState(""),[a,c]=p.useState(!1),d=p.useRef(null),u=p.useRef(null),[f,h]=p.useState(!1),y=Ve(s);p.useEffect(()=>{const w=()=>{const v=navigator.userAgent.toLowerCase(),T=["android","iphone","ipad","mobile","tablet"].some(x=>v.includes(x)),j="ontouchstart"in window||navigator.maxTouchPoints>0,z=window.innerWidth<=768;h(T||j&&z)};return w(),window.addEventListener("resize",w),()=>window.removeEventListener("resize",w)},[]);const g=w=>{w.preventDefault(),o.trim()&&!n&&(e(o.trim()),i(""))},m=w=>{w.key==="Enter"&&!w.shiftKey&&(w.preventDefault(),g(w))},b=w=>{const v=w.target.files;if(v&&v.length>0){const A=Array.from(v),T=A.filter(j=>j.type.startsWith("image/"));if(T.length===0){console.warn("No valid image files selected");return}T.length!==A.length&&console.warn("Some non-image files were filtered out"),console.log("Selected image files:",T),t(T),d.current&&(d.current.value="")}},k=()=>{!n&&d.current&&d.current.click()},S=()=>{!n&&f&&u.current&&u.current.click()},E=w=>{const v=w.target.files;if(v&&v.length>0){const A=v[0];A.type.startsWith("image/")?t([A]):console.warn("Selected file is not an image"),u.current&&(u.current.value="")}};return l.jsx("div",{className:"px-4 py-3 !w-full backdrop-blur-xl border-0 shadow-lg ",children:l.jsx("form",{onSubmit:g,className:"flex items-center !w-full mx-auto max-w-4xl",children:l.jsxs("div",{className:`flex items-center gap-2 !w-full backdrop-blur-md rounded-full px-3 py-2 shadow-sm hover:shadow-md focus-within:shadow-lg focus-within:ring-2 focus-within:ring-blue-500/30 focus-within:border-blue-500/50 transition-all duration-200 border ${s==="light"?"bg-white/90 border-gray-200":y.chatInput.container}`,children:[l.jsx(ie.button,{type:"button",onClick:k,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 ${y.chatInput.attachButton}`,disabled:n,"aria-label":"Attach file",children:l.jsx(Me.Paperclip,{className:"w-4 h-4"})}),f&&l.jsx(ie.button,{type:"button",onClick:S,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 ${y.chatInput.attachButton}`,disabled:n,"aria-label":"Take photo",children:l.jsx(Me.Camera,{className:"w-4 h-4"})}),l.jsx("input",{ref:d,type:"file",multiple:!0,onChange:b,className:"hidden",accept:"image/*"}),l.jsx("input",{ref:u,type:"file",onChange:E,className:"hidden",accept:"image/*",capture:"environment"}),l.jsx("textarea",{value:o,onChange:w=>i(w.target.value),onKeyDown:m,onFocus:()=>c(!0),onBlur:()=>c(!1),placeholder:"Type your message...",disabled:n,className:`flex-1 px-2 py-1 bg-transparent resize-none min-h-[32px] max-h-20 focus:outline-none text-sm border-0 ${y.chatInput.textarea}`,rows:1,style:{height:"auto",minHeight:"32px"},onInput:w=>{const v=w.target;v.style.height="auto",v.style.height=`${Math.min(v.scrollHeight,80)}px`}}),l.jsx(ie.button,{type:"submit",disabled:n||!o.trim(),whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 flex-shrink-0 ${o.trim()&&!n?y.chatInput.sendButton:s==="light"?"bg-gray-200 text-gray-400 cursor-not-allowed opacity-70":"bg-gray-600/50 text-gray-500 cursor-not-allowed opacity-50"}`,"aria-label":"Send message",children:l.jsx(Me.SendHorizontal,{className:"w-4 h-4"})}),r&&l.jsx(ie.button,{type:"button",onClick:r,whileHover:{scale:1.05},whileTap:{scale:.95},className:`p-1 rounded-full transition-all duration-200 border-0 flex-shrink-0 ${y.chatInput.endButton}`,"aria-label":"End chat",children:l.jsx(Me.PhoneOff,{className:"w-4 h-4"})})]})})})}function z1({text:e,isComplete:t,isRealTimeStream:n=!1,speed:s=50}){const[r,o]=p.useState(""),[i,a]=p.useState(0);return p.useEffect(()=>{if(n){o(e);return}if(t){o(e);return}if(i<e.length){const c=setTimeout(()=>{o(e.slice(0,i+1)),a(i+1)},s);return()=>clearTimeout(c)}},[e,i,t,s,n]),p.useEffect(()=>{n||(a(0),o(""))},[e,n]),l.jsxs("span",{className:"relative",children:[l.jsx("span",{className:"inline-block",children:r}),!t&&l.jsx("span",{className:"inline-flex items-center ml-1",children:[0,1,2].map(c=>l.jsx(ie.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:c*.2,ease:"easeInOut"}},c))})]})}function H1({message:e,theme:t,isOwn:n,isStreaming:s=!1}){var i,a;const r=Ve(t),o=e.sender.name?e.sender.name.split(" ").map(c=>c[0]).join("").toUpperCase().slice(0,2):"U";return l.jsx("div",{className:`flex w-full ${n?"justify-end":"justify-start"} mb-4 px-1`,children:l.jsxs("div",{className:`relative group ${n?"flex-row-reverse":"flex-row"} flex items-end gap-3 max-w-[85%]`,children:[l.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}),l.jsxs("div",{className:`
10
83
  relative px-3 py-2 rounded-2xl break-words shadow-lg backdrop-blur-sm message-bubble message-hover
11
- ${n?`${o.chatMessage.own} rounded-br-md`:`${o.chatMessage.other} rounded-bl-md`}
84
+ ${n?`${r.chatMessage.own} rounded-br-md`:`${r.chatMessage.other} rounded-bl-md`}
12
85
  ${s?"shimmer":""}
13
86
  transition-all duration-200 group-hover:scale-[1.02]
14
- `,style:{wordWrap:"break-word",overflowWrap:"break-word"},children:[a.jsx("div",{className:"whitespace-pre-wrap break-words leading-relaxed text-sm",children:((i=e.metadata)==null?void 0:i.type)==="attachment"?a.jsx(Ff,{message:e,theme:t,isOwn:n}):s&&!n?a.jsx(Pf,{text:e.content,isComplete:!s,isRealTimeStream:((l=e.metadata)==null?void 0:l.streaming)===!0,speed:35}):e.content}),a.jsx("div",{className:"text-xs",children:e.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})})}function If(e,t){return e.startsWith("image/")?pe.Image:e.startsWith("video/")?pe.Video:e.startsWith("audio/")?pe.Music:e.includes("zip")||e.includes("rar")||e.includes("archive")?pe.Archive:pe.FileText}function Df(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],s=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,s)).toFixed(2))+" "+n[s]}function Ff({message:e,theme:t,isOwn:n}){const s=ye(t),o=e.metadata,r=(o==null?void 0:o.fileName)||"Unknown file",i=(o==null?void 0:o.fileSize)||0,l=(o==null?void 0:o.mimeType)||"application/octet-stream",c=o==null?void 0:o.downloading,d=o==null?void 0:o.uploading,u=(o==null?void 0:o.downloadProgress)||0,m=(o==null?void 0:o.uploadProgress)||0,f=o==null?void 0:o.downloadUrl,p=o==null?void 0:o.file,g=If(l),x=c||d,v=c?u:m,E=c?"Downloading...":d?"Uploading...":"Complete",[b,S]=h.useState(null);h.useEffect(()=>{if(f)S(f);else if(p&&l.startsWith("image/")){const j=URL.createObjectURL(p);return S(j),()=>URL.revokeObjectURL(j)}else S(null)},[f,p,l]);const w=()=>{if(f){const j=document.createElement("a");j.href=f,j.download=r,j.click()}},A=l.startsWith("image/")&&b;return a.jsxs("div",{className:"flex flex-col gap-2 max-w-sm",children:[A&&a.jsxs("div",{className:"relative rounded-lg overflow-hidden",children:[a.jsx("img",{src:b,alt:r,className:"max-w-full h-auto max-h-48 object-cover rounded-lg cursor-pointer",onClick:w}),a.jsx("div",{className:"absolute inset-0 bg-black/0 hover:bg-black/10 transition-colors duration-200 cursor-pointer"})]}),a.jsxs("div",{className:`
87
+ `,style:{wordWrap:"break-word",overflowWrap:"break-word"},children:[l.jsx("div",{className:"whitespace-pre-wrap break-words leading-relaxed text-sm",children:((i=e.metadata)==null?void 0:i.type)==="attachment"?l.jsx(W1,{message:e,theme:t,isOwn:n}):s&&!n?l.jsx(z1,{text:e.content,isComplete:!s,isRealTimeStream:((a=e.metadata)==null?void 0:a.streaming)===!0,speed:35}):e.content}),l.jsx("div",{className:"text-xs",children:e.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})})}function U1(e,t){return e.startsWith("image/")?Me.Image:e.startsWith("video/")?Me.Video:e.startsWith("audio/")?Me.Music:e.includes("zip")||e.includes("rar")||e.includes("archive")?Me.Archive:Me.FileText}function Z1(e){if(e===0)return"0 Bytes";const t=1024,n=["Bytes","KB","MB","GB"],s=Math.floor(Math.log(e)/Math.log(t));return parseFloat((e/Math.pow(t,s)).toFixed(2))+" "+n[s]}function W1({message:e,theme:t,isOwn:n}){const s=Ve(t),r=e.metadata,o=(r==null?void 0:r.fileName)||"Unknown file",i=(r==null?void 0:r.fileSize)||0,a=(r==null?void 0:r.mimeType)||"application/octet-stream",c=r==null?void 0:r.downloading,d=r==null?void 0:r.uploading,u=(r==null?void 0:r.downloadProgress)||0,f=(r==null?void 0:r.uploadProgress)||0,h=r==null?void 0:r.downloadUrl,y=r==null?void 0:r.file,g=U1(a),m=c||d,b=c?u:f,k=c?"Downloading...":d?"Uploading...":"Complete",[S,E]=p.useState(null);p.useEffect(()=>{if(h)E(h);else if(y&&a.startsWith("image/")){const T=URL.createObjectURL(y);return E(T),()=>URL.revokeObjectURL(T)}else E(null)},[h,y,a]);const w=()=>{if(h){const T=document.createElement("a");T.href=h,T.download=o,T.click()}},A=a.startsWith("image/")&&S;return l.jsxs("div",{className:"flex flex-col gap-2 max-w-sm",children:[A&&l.jsxs("div",{className:"relative rounded-lg overflow-hidden",children:[l.jsx("img",{src:S,alt:o,className:"max-w-full h-auto max-h-48 object-cover rounded-lg cursor-pointer",onClick:w}),l.jsx("div",{className:"absolute inset-0 bg-black/0 hover:bg-black/10 transition-colors duration-200 cursor-pointer"})]}),l.jsxs("div",{className:`
15
88
  flex items-center gap-3 p-3 rounded-lg border transition-all duration-200
16
89
  ${t==="light"?"bg-gray-50 border-gray-200 hover:bg-gray-100":"bg-gray-800/50 border-gray-700 hover:bg-gray-700/50"}
17
- `,children:[a.jsx("div",{className:`
90
+ `,children:[l.jsx("div",{className:`
18
91
  p-2 rounded-lg flex-shrink-0
19
92
  ${t==="light"?"bg-blue-100 text-blue-600":"bg-blue-900/50 text-blue-400"}
20
- `,children:a.jsx(g,{className:"w-5 h-5"})}),a.jsxs("div",{className:"flex-1 min-w-0",children:[a.jsx("div",{className:`font-medium text-sm truncate ${s.text.primary}`,children:r}),a.jsxs("div",{className:`text-xs ${s.text.muted}`,children:[i>0&&Df(i),x&&a.jsxs(a.Fragment,{children:[i>0&&" • ",E," ",Math.round(v*100),"%"]})]}),x&&a.jsx("div",{className:`
93
+ `,children:l.jsx(g,{className:"w-5 h-5"})}),l.jsxs("div",{className:"flex-1 min-w-0",children:[l.jsx("div",{className:`font-medium text-sm truncate ${s.text.primary}`,children:o}),l.jsxs("div",{className:`text-xs ${s.text.muted}`,children:[i>0&&Z1(i),m&&l.jsxs(l.Fragment,{children:[i>0&&" • ",k," ",Math.round(b*100),"%"]})]}),m&&l.jsx("div",{className:`
21
94
  w-full h-1 rounded-full mt-1 overflow-hidden
22
95
  ${t==="light"?"bg-gray-200":"bg-gray-700"}
23
- `,children:a.jsx(Q.div,{className:`h-full ${t==="light"?"bg-blue-500":"bg-blue-400"}`,initial:{width:0},animate:{width:`${v*100}%`},transition:{duration:.3}})})]}),f&&!x&&a.jsx(Q.button,{onClick:w,whileHover:{scale:1.05},whileTap:{scale:.95},className:`
96
+ `,children:l.jsx(ie.div,{className:`h-full ${t==="light"?"bg-blue-500":"bg-blue-400"}`,initial:{width:0},animate:{width:`${b*100}%`},transition:{duration:.3}})})]}),h&&!m&&l.jsx(ie.button,{onClick:w,whileHover:{scale:1.05},whileTap:{scale:.95},className:`
24
97
  p-2 rounded-lg transition-colors duration-200
25
98
  ${t==="light"?"hover:bg-gray-200 text-gray-600 hover:text-gray-800":"hover:bg-gray-600 text-gray-400 hover:text-gray-200"}
26
- `,"aria-label":"Download file",children:a.jsx(pe.Download,{className:"w-4 h-4"})})]})]})}function Lf(){return a.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:[a.jsx("div",{className:"text-2xl mb-2",children:"✅"}),a.jsx("div",{className:"text-green-700 font-semibold text-sm mb-1",children:"Success!"}),a.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:"Your action was completed successfully."})]})}function Bf(){return a.jsxs("div",{className:"max-w-xs mx-auto bg-yellow-50 border border-yellow-200 rounded-lg shadow p-3 flex flex-col items-center",children:[a.jsx("div",{className:"text-2xl mb-2",children:"⏰"}),a.jsx("div",{className:"text-yellow-700 font-semibold text-sm mb-1",children:"Interaction timed out"}),a.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:"No response was provided in time."})]})}function $f({client:e,theme:t="vox",onBack:n,disabled:s=!1,displayType:o="widget",onEndChat:r}){const[i,l]=h.useState(()=>{if(e&&typeof e.getChatMessages=="function"){const T=e.getChatMessages();return console.log("🔄 ChatView: Initializing with existing messages:",T.length),T}return[]}),[c,d]=h.useState(!0),[u,m]=h.useState(()=>{const T=e&&typeof e.getCurrentSession=="function"&&!!e.getCurrentSession(),F=e&&typeof e.getChatMessages=="function"&&e.getChatMessages().length>0;return!T&&!F}),[f,p]=h.useState(new Set),[g,x]=h.useState([]),[v,E]=h.useState(!1),[b,S]=h.useState(!1),[w,C]=h.useState(()=>{const T=e.getCurrentInteraction();return console.log("ChatView: Initializing with existing interaction:",(T==null?void 0:T.methodName)||"none"),T}),A=h.useRef(null),j=ye(t);h.useEffect(()=>{const T=()=>{const F=navigator.userAgent.toLowerCase(),B=["android","iphone","ipad","mobile","tablet"].some(O=>F.includes(O)),R="ontouchstart"in window||navigator.maxTouchPoints>0,_=window.innerWidth<=768,K=B||R&&_;E(K),K&&o==="widget"&&S(!0)};return T(),window.addEventListener("resize",T),()=>window.removeEventListener("resize",T)},[o]),h.useEffect(()=>(b&&v&&(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)),()=>{b&&v&&(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))}),[b,v]);const k=e.getCurrentAgentInfo(),D=(k==null?void 0:k.name)||"AI Assistant",L=D.split(" ").map(T=>T[0]).join("").toUpperCase().slice(0,2),W=h.useCallback(T=>{const F={id:`local_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:T,timestamp:new Date,sender:{id:"participant",name:"You",type:"participant"},metadata:{isLocal:!0}};l(Z=>(console.log("ChatView: Adding local message:",F.id),[...Z,F]))},[]);h.useEffect(()=>{var T,F,Z,B,R;console.log("💬 ChatView loading state:",{isLoading:u,hasActiveSession:!!((T=e==null?void 0:e.getCurrentSession)!=null&&T.call(e)),messagesCount:i.length,sessionId:(Z=(F=e==null?void 0:e.getCurrentSession)==null?void 0:F.call(e))==null?void 0:Z.id,hasStoredMessages:!!((R=(B=e==null?void 0:e.getChatMessages)==null?void 0:B.call(e))!=null&&R.length),isMobile:v,isFullscreen:b})},[u,i.length,e,v,b]);const H=h.useCallback((T=!1)=>{A.current&&(T?A.current.scrollIntoView({behavior:"auto"}):A.current.scrollIntoView({behavior:"smooth"}))},[]);h.useEffect(()=>{H(!0);const T=setTimeout(()=>{H(!1)},10);return()=>clearTimeout(T)},[i.length,H]),h.useEffect(()=>{if(w){H(!0);const T=setTimeout(()=>{H(!1)},50);return()=>clearTimeout(T)}},[w,H]),h.useEffect(()=>{const T=B=>{if(console.log("ChatView: Received message:",B),m(!1),w&&B.sender.type==="agent"){console.log("ChatView: Queuing agent message due to active interaction:",w.methodName),x(R=>[...R,B]);return}B.sender.type==="agent"&&d(!1),l(R=>{var K;if(R.some(O=>O.id===B.id))return console.log("ChatView: Message already exists, skipping:",B.id),R;if(console.log("ChatView: Adding new message:",B.id),B.sender.type==="agent"&&(p(O=>new Set(O).add(B.id)),!((K=B.metadata)!=null&&K.streaming))){const O=B.content.length*35+1e3;setTimeout(()=>{p(re=>{const oe=new Set(re);return oe.delete(B.id),oe})},O)}return[...R,B]}),setTimeout(()=>H(!0),0)},F=B=>{var R;if(console.log("ChatView: Updated message:",B),w&&B.sender.type==="agent"){console.log("ChatView: Queuing agent message update due to active interaction:",w.methodName),x(_=>{const K=_.findIndex(O=>O.id===B.id);if(K>=0){const O=[..._];return O[K]=B,O}else return[..._,B]});return}l(_=>_.map(K=>K.id===B.id?{...B}:K)),setTimeout(()=>H(!0),0),(R=B.metadata)!=null&&R.streaming||p(_=>{const K=new Set(_);return K.delete(B.id),K})},Z=B=>{console.log("ChatView: Sent message:",B),m(!1),l(R=>R.some(K=>K.id===B.id)?(console.log("ChatView: Sent message already exists, skipping:",B.id),R):(console.log("ChatView: Adding sent message:",B.id),[...R,B])),setTimeout(()=>H(!0),0)};return e.on("chat.message.received",T),e.on("chat.message.updated",F),e.on("chat.message.sent",Z),()=>{e.off("chat.message.received",T),e.off("chat.message.updated",F),e.off("chat.message.sent",Z)}},[e,w]),h.useEffect(()=>{const T=R=>{console.log("ChatView: RPC interaction started:",R);const _=e.getCurrentInteraction();console.log("ChatView: Got interaction from client:",_==null?void 0:_.methodName),C(_),d(!1),H(!0),setTimeout(()=>{H(!1)},100)},F=R=>{if(console.log("ChatView: RPC interaction completed:",R),C(null),g.length>0&&(console.log("ChatView: Processing",g.length,"queued messages"),l(_=>{const K=[..._];return g.forEach(O=>{var oe;if(!K.some(he=>he.id===O.id)&&(console.log("ChatView: Adding queued message:",O.id),K.push(O),O.sender.type==="agent"&&(p(he=>new Set(he).add(O.id)),!((oe=O.metadata)!=null&&oe.streaming)))){const he=O.content.length*35+1e3;setTimeout(()=>{p(ve=>{const De=new Set(ve);return De.delete(O.id),De})},he)}}),K}),x([]),setTimeout(()=>H(!0),0)),R&&R.response&&R.response.success){let _=null;R.response.successView?_=R.response.successView:R.successView&&(_=R.successView),l(K=>{const O=[...K].reverse().findIndex(ve=>ve.sender.type==="participant");let re=K.length;O!==-1&&(re=K.length-O);const oe={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:_||a.jsx(Lf,{})}};e&&typeof e.addChatMessage=="function"&&e.addChatMessage(oe);const he=[...K];return he.splice(re,0,oe),he})}},Z=async R=>{w&&(console.log("ChatView: Dismissing active interaction due to timeout"),e.dismissCurrentInteraction()),C(null),g.length>0&&(console.log("ChatView: Processing",g.length,"queued messages after timeout"),l(K=>{const O=[...K];return g.forEach(re=>{var he;if(!O.some(ve=>ve.id===re.id)&&(O.push(re),re.sender.type==="agent"&&(p(ve=>new Set(ve).add(re.id)),!((he=re.metadata)!=null&&he.streaming)))){const ve=re.content.length*35+1e3;setTimeout(()=>{p(De=>{const Zt=new Set(De);return Zt.delete(re.id),Zt})},ve)}}),O}),x([]),setTimeout(()=>H(!0),0));let _=null;R&&R.response&&R.response.timeoutView?_=R.response.timeoutView:R&&R.timeoutView&&(_=R.timeoutView),l(K=>{const O={id:`timeout_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:"",timestamp:new Date,sender:{id:"agent",name:D,type:"agent"},metadata:{type:"timeoutView",view:_||a.jsx(Bf,{})}};return e&&typeof e.addChatMessage=="function"&&e.addChatMessage(O),[...K,O]}),setTimeout(()=>{e.getCurrentInteraction()||C(null)},100)},B=async R=>{console.log("ChatView: RPC interaction dismissed:",R),console.log("ChatView: Current interaction before dismiss:",w==null?void 0:w.methodName),C(null),g.length>0&&(console.log("ChatView: Processing",g.length,"queued messages after dismissal"),l(_=>{const K=[..._];return g.forEach(O=>{var oe;if(!K.some(he=>he.id===O.id)&&(K.push(O),O.sender.type==="agent"&&(p(he=>new Set(he).add(O.id)),!((oe=O.metadata)!=null&&oe.streaming)))){const he=O.content.length*35+1e3;setTimeout(()=>{p(ve=>{const De=new Set(ve);return De.delete(O.id),De})},he)}}),K}),x([]),setTimeout(()=>H(!0),0)),setTimeout(()=>{const _=e.getCurrentInteraction();console.log("ChatView: Latest interaction from client after dismiss:",(_==null?void 0:_.methodName)||"null"),_===null&&C(null)},50),console.log("ChatView: Set currentInteraction to null after dismiss")};return e.on("rpc.interaction.started",T),e.on("rpc.interaction.completed",F),e.on("rpc.interaction.timeout",Z),e.on("rpc.interaction.dismissed",B),()=>{e.off("rpc.interaction.started",T),e.off("rpc.interaction.completed",F),e.off("rpc.interaction.timeout",Z),e.off("rpc.interaction.dismissed",B)}},[e]),h.useEffect(()=>{const T=()=>{if(console.log("ChatView: Agent is thinking"),w){console.log("ChatView: Suppressing thinking indicator due to active interaction:",w.methodName);return}d(!0)},F=()=>{console.log("ChatView: Agent is speaking"),d(!1)};return e.on("agent.thinking",T),e.on("agent.speaking",F),()=>{e.off("agent.thinking",T),e.off("agent.speaking",F)}},[e,w]),h.useEffect(()=>{const T=e.getCurrentInteraction();T?(console.log("ChatView: Restoring interaction state on mount/client change:",T.methodName),C(T)):C(null)},[e]),h.useEffect(()=>{console.log("ChatView: Display type changed to:",o,"Current interaction:",(w==null?void 0:w.methodName)||"none")},[o,w]);const Ce=async T=>{try{w&&(console.log("ChatView: Dismissing active interaction due to user message send"),e.dismissCurrentInteraction(),C(null)),await e.sendChatMessage(T)}catch(F){console.error("Failed to send message:",F)}},ne=async T=>{try{w&&(console.log("ChatView: Dismissing active interaction due to user attachment send"),e.dismissCurrentInteraction(),C(null)),await e.sendAttachments(T),console.log("Attachments sent successfully:",T.map(F=>F.name))}catch(F){console.error("Failed to send attachments:",F)}},[te,se]=h.useState([]);if(h.useEffect(()=>{const T=F=>{se(Array.isArray(F)?F:["tes","hello how are you","algebra make me learn that ","what is the meaning of life"])};return e.on("suggested.response",T),()=>{e.off("suggested.response",T)}},[e]),u){const T=b&&v?"fixed inset-0 z-[9999] flex flex-col items-center justify-center h-screen w-screen bg-black":"flex w-full flex-col items-center justify-center h-full p-8";return a.jsxs("div",{className:T,children:[a.jsx("div",{className:`${j.spinner} w-12 h-12 mb-6`}),a.jsxs("p",{className:`text-sm text-center ${b&&v?"text-white":""}`,children:["Connecting to ",D,"..."]})]})}const z=b&&v?"fullscreen":o,M=z==="fullscreen"?b&&v?"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",G=z==="fullscreen"?b&&v?"flex items-center w-full justify-between px-4 pt-3 pb-3 bg-black/80 text-white border-b border-gray-700":`flex items-center w-full justify-between px-6 pt-5 pb-4 border-b ${j.chatHeader.container}`:`flex items-center w-full justify-between px-4 pt-5 pb-4 border-b ${j.chatHeader.container}`,Y=z==="fullscreen"?b&&v?"flex-1 overflow-y-auto scrollbar-hide p-4 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto scrollbar-hide p-6 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto scrollbar-hide w-full p-4 chat-scrollable min-h-0",V="flex-shrink-0 !w-full",q=()=>{S(!1),n&&n()};return a.jsxs("div",{className:M,children:[a.jsx("div",{className:G,children:a.jsxs("div",{className:"flex items-center gap-2",children:[b&&v&&a.jsx(Q.button,{onClick:q,whileHover:{scale:1.05},whileTap:{scale:.95},className:"p-2 rounded-full bg-white/20 hover:bg-white/30 text-white transition-colors mr-2","aria-label":"Exit fullscreen",children:"✕"}),a.jsxs("div",{children:[a.jsx("h3",{className:`font-semibold text-base leading-tight ${b&&v?"text-white":j.text.primary}`,children:D}),a.jsxs("p",{className:`text-xs flex items-center gap-1.5 mt-0.5 ${b&&v?"text-gray-300":j.text.muted}`,children:[a.jsx("span",{className:"w-1.5 h-1.5 bg-green-500 rounded-full animate-pulse"}),"Online"]})]})]})}),a.jsxs("div",{className:`${Y} flex flex-col`,style:{scrollBehavior:"smooth",scrollbarWidth:"none"},children:[" ",i.length===0?a.jsxs("div",{className:"flex flex-col items-center justify-center flex-1 text-center py-12",children:[a.jsx(Q.div,{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:L}),a.jsxs("p",{className:`text-base mb-2 ${b&&v?"text-white":j.text.secondary}`,children:[D," is joining..."]}),a.jsx("p",{className:`text-xs ${b&&v?"text-gray-300":j.text.muted}`,children:"Your conversation will begin shortly"})]}):a.jsx("div",{className:"w-full max-w-5xl mx-auto space-y-3 py-4 flex-1 flex flex-col justify-end",children:a.jsxs("div",{className:"space-y-3",children:[i.map((T,F)=>{var Z,B;return a.jsx("div",{children:((Z=T.metadata)==null?void 0:Z.type)==="successView"?a.jsx("div",{className:"flex w-full justify-end mb-4 px-1",children:a.jsxs("div",{className:"relative group flex-row-reverse flex items-end gap-3 max-w-[85%]",children:[a.jsx(Q.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:"Y"}),a.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 ${j.chatMessage.own}`,children:[T.metadata.view,a.jsx("div",{className:`text-xs ${j.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200 `,children:T.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((B=T.metadata)==null?void 0:B.type)==="timeoutView"?a.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:a.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%]",children:[a.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:L}),a.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 ${j.chatMessage.other}`,children:[T.metadata.view,a.jsx("div",{className:`text-xs ${j.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200 `,children:T.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):a.jsx(Rf,{message:T,theme:t,isOwn:T.sender.type==="participant",isStreaming:f.has(T.id)})},T.id)}),c&&!w&&a.jsx(Q.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:i.length*.1},className:"flex w-full justify-start mb-4 px-1",children:a.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%]",children:[a.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:L}),a.jsx("div",{className:`relative px-3 py-2 rounded-2xl break-words shadow-lg backdrop-blur-sm message-bubble message-hover ${j.chatMessage.other} rounded-bl-md transition-all duration-200 group-hover:scale-[1.02]`,style:{wordWrap:"break-word",overflowWrap:"break-word",minWidth:48},children:a.jsx("span",{className:"inline-flex items-center",children:[0,1,2].map(T=>a.jsx(Q.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:T*.2,ease:"easeInOut"}},T))})})]})}),w&&w.presentationMode==="embedded"&&a.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%]",children:[a.jsx(Q.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:L}),a.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 ${j.chatMessage.other}`,children:[a.jsx(pt,{interaction:w,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:W},w.methodName),a.jsx(Q.div,{initial:{opacity:0},animate:{opacity:1},transition:{delay:.2},className:`text-xs ${j.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200 `,children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]}),a.jsx("div",{ref:A})]})})]}),te.length>0&&a.jsx("div",{className:"w-full flex overflow-x-auto gap-2 px-4 py-2 mb-1 scrollbar-hide",children:te.map((T,F)=>{var Z;return a.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
27
- ${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":((Z=j.suggestedResponse)==null?void 0:Z.container)||"bg-gradient-to-br from-blue-500 to-purple-600 text-white border-blue-400 hover:from-blue-600 hover:to-purple-700"}
28
- `,style:{boxShadow:t==="vox"?"0 2px 8px 0 rgba(80,60,200,0.10)":void 0,borderWidth:1},onClick:()=>{Ce(T),se([])},children:T},T+F)})}),w&&w.presentationMode!=="embedded"&&a.jsx(pt,{interaction:w,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:W},w.methodName),a.jsx(Q.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.2},className:V,children:a.jsx(Nf,{onSendMessage:Ce,onSendAttachments:ne,disabled:s,theme:t,onEndChat:r})})]})}function Of({onToggleCamera:e,onToggleScreenShare:t,onEndCall:n,onBack:s,theme:o,cameraEnabled:r,screenShareEnabled:i,isCameraLoading:l,isScreenShareLoading:c,disabled:d}){const u=ye(o);return a.jsxs("div",{className:`flex items-center justify-center gap-3 p-4 ${u.video.controlsBackground}`,children:[a.jsx("button",{onClick:e,disabled:d||l,className:`p-3 rounded-full transition-all duration-200 ${r?u.video.controlEnabled:u.video.controlDisabled} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:r?"Turn off camera":"Turn on camera",children:l?a.jsx("div",{className:"w-5 h-5 animate-spin rounded-full border-2 border-current border-t-transparent"}):r?a.jsx(pe.Camera,{className:"w-5 h-5"}):a.jsx(pe.CameraOff,{className:"w-5 h-5"})}),a.jsx("button",{onClick:t,disabled:d||c,className:`p-3 rounded-full transition-all duration-200 ${i?u.video.controlEnabled:u.video.controlDisabled} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:i?"Stop screen share":"Share screen",children:c?a.jsx("div",{className:"w-5 h-5 animate-spin rounded-full border-2 border-current border-t-transparent"}):i?a.jsx(pe.MonitorOff,{className:"w-5 h-5"}):a.jsx(pe.Monitor,{className:"w-5 h-5"})}),n&&a.jsx("button",{onClick:n,disabled:d,className:`p-3 rounded-full transition-all duration-200 ${u.video.endCall} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:"End call",children:a.jsx(pe.PhoneOff,{className:"w-5 h-5"})}),s&&a.jsx("button",{onClick:s,disabled:d,className:`p-3 rounded-full transition-all duration-200 ${u.video.controlDisabled} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:"Back",children:a.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:a.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 19l-7-7m0 0l7-7m-7 7h18"})})})]})}function Fi({trackRef:e,participant:t,isLocal:n=!1,className:s="",theme:o}){var c;const r=ye(o),i=(t==null?void 0:t.name)||(t==null?void 0:t.identity)||(n?"You":"Participant"),l=(e==null?void 0:e.publication)&&!e.publication.isMuted;return a.jsxs("div",{className:`relative rounded-lg overflow-hidden ${r.video.tile} ${s}`,children:[l?a.jsx(ue.VideoTrack,{trackRef:e,className:"w-full h-full object-cover"}):a.jsx("div",{className:`w-full h-full flex items-center justify-center ${r.video.placeholder}`,children:a.jsxs("div",{className:"text-center",children:[a.jsx("div",{className:`w-16 h-16 mx-auto mb-2 rounded-full flex items-center justify-center ${r.video.avatar}`,children:a.jsx(pe.User,{className:"w-8 h-8"})}),a.jsx("p",{className:"text-sm opacity-80",children:i}),a.jsx("p",{className:"text-xs opacity-60",children:"Camera off"})]})}),a.jsx("div",{className:`absolute bottom-2 left-2 px-2 py-1 rounded text-xs ${r.video.nameOverlay}`,children:i}),((c=e==null?void 0:e.publication)==null?void 0:c.isMuted)&&a.jsx("div",{className:`absolute top-2 right-2 p-1 rounded ${r.video.mutedIndicator}`,children:a.jsx(pe.CameraOff,{className:"w-4 h-4"})})]})}function _f({trackRefs:e,participants:t,theme:n,localParticipant:s}){const o=e.find(u=>u.source===I.Track.Source.Camera&&u.participant===s),r=e.filter(u=>u.participant!==s),i=e.length,l=i<=1?1:i<=4?2:3,c="grid gap-2 h-full",d={gridTemplateColumns:`repeat(${l}, 1fr)`,gridAutoRows:"minmax(0, 1fr)"};return a.jsxs("div",{className:c,style:d,children:[o&&s&&a.jsx(Fi,{trackRef:o,participant:s,isLocal:!0,theme:n,className:"min-h-0"}),r.map((u,m)=>{var f;return a.jsx(Fi,{trackRef:u,participant:u.participant,isLocal:!1,theme:n,className:"min-h-0"},((f=u.publication)==null?void 0:f.trackSid)||m)}),i===0&&a.jsx("div",{className:"flex items-center justify-center h-full",children:a.jsxs("div",{className:"text-center",children:[a.jsx(pe.Users,{className:"w-12 h-12 mx-auto mb-4 opacity-50"}),a.jsx("p",{className:"text-lg opacity-70",children:"Waiting for participants..."}),a.jsx("p",{className:"text-sm opacity-50",children:"Turn on your camera to start the video call"})]})})]})}function Hf({client:e,theme:t="vox",onBack:n,disabled:s=!1,displayType:o,onEndCall:r}){const i=ye(t),l=ue.useMaybeRoomContext(),[c,d]=h.useState(!1),[u,m]=h.useState(!1),[f,p]=h.useState(!1),[g,x]=h.useState(!1),[v,E]=h.useState(null),b=ue.useTracks([I.Track.Source.Camera,I.Track.Source.ScreenShare],{onlySubscribed:!1});b.filter(j=>j.source===I.Track.Source.Camera),b.filter(j=>j.source===I.Track.Source.ScreenShare);const S=h.useMemo(()=>l?Array.from(l.remoteParticipants.values()):[],[l]),w=h.useCallback(async()=>{if(!(!l||f)){p(!0);try{const j=l.localParticipant;c?(await j.setCameraEnabled(!1),d(!1)):(await j.setCameraEnabled(!0),d(!0))}catch(j){console.error("Failed to toggle camera:",j)}finally{p(!1)}}},[l,c,f]),C=h.useCallback(async()=>{if(!(!l||g)){x(!0);try{const j=l.localParticipant;u?(await j.setScreenShareEnabled(!1),m(!1)):(await j.setScreenShareEnabled(!0),m(!0))}catch(j){console.error("Failed to toggle screen share:",j)}finally{x(!1)}}},[l,u,g]),A=h.useCallback(()=>{r?r():n&&n()},[r,n]);return h.useEffect(()=>{if(!e)return;const j=k=>{console.log("📺 Video: Interactive UI state updated:",k),E(k)};return e.on("interactive.ui.update",j),e.on("interactive.ui.show",j),()=>{e.off("interactive.ui.update",j),e.off("interactive.ui.show",j)}},[e]),a.jsxs("div",{className:`flex flex-col h-full ${i.video.container}`,children:[a.jsxs("div",{className:`flex items-center justify-between p-4 border-b ${i.video.header}`,children:[a.jsxs("div",{className:"flex items-center gap-3",children:[a.jsx("div",{className:`w-3 h-3 rounded-full ${i.video.statusDot}`}),a.jsx("span",{className:"font-medium",children:"Video Call"}),a.jsxs("span",{className:"text-sm opacity-70",children:[S.length+1," participant",S.length!==0?"s":""]})]}),a.jsx("div",{className:"flex items-center gap-2",children:a.jsx("button",{className:`p-2 rounded-lg transition-colors ${i.video.headerButton}`,title:"Layout options",children:a.jsx(pe.LayoutGrid,{className:"w-4 h-4"})})})]}),a.jsx("div",{className:"flex-1 p-4 min-h-0",children:a.jsx(_f,{trackRefs:b,participants:S,localParticipant:l==null?void 0:l.localParticipant,theme:t})}),v&&a.jsx(Q.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},className:"absolute inset-4 z-10",children:a.jsx(pt,{interaction:v,onDismiss:()=>E(null),theme:t})}),a.jsx(Of,{onToggleCamera:w,onToggleScreenShare:C,onEndCall:A,onBack:n,theme:t,cameraEnabled:c,screenShareEnabled:u,isCameraLoading:f,isScreenShareLoading:g,disabled:s})]})}function Jt({onClick:e,disabled:t,theme:n}){const s=ye(n);return a.jsx("button",{className:s.micButton,onClick:e,disabled:t,"aria-label":"Start Voice Session",type:"button",children:a.jsx(Be.Mic,{})})}function On({onClick:e,disabled:t,theme:n}){const s=ye(n);return a.jsx("button",{className:s.chatButton,onClick:e,disabled:t,"aria-label":"Start Chat Session",type:"button",children:a.jsx(Be.Chat,{})})}function _n({onClick:e,disabled:t,theme:n}){const s=ye(n);return a.jsx("button",{className:s.videoButton,onClick:e,disabled:t,"aria-label":"Start Video Session",type:"button",children:a.jsx(Be.Videocam,{})})}function Zf({prompts:e,theme:t}){const n=ye(t),[s,o]=y.useState(0);return y.useEffect(()=>{const r=setInterval(()=>{o(i=>(i+1)%e.length)},3e3);return()=>clearInterval(r)},[e.length]),a.jsx("div",{className:"w-96 min-h-[3rem] h-12 relative overflow-hidden flex items-center justify-center",children:e.map((r,i)=>a.jsx("div",{className:`
99
+ `,"aria-label":"Download file",children:l.jsx(Me.Download,{className:"w-4 h-4"})})]})]})}function G1(){return l.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:[l.jsx("div",{className:"text-2xl mb-2",children:"✅"}),l.jsx("div",{className:"text-green-700 font-semibold text-sm mb-1",children:"Success!"}),l.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:"Your action was completed successfully."})]})}function K1(){return l.jsxs("div",{className:"max-w-xs mx-auto bg-yellow-50 border border-yellow-200 rounded-lg shadow p-3 flex flex-col items-center",children:[l.jsx("div",{className:"text-2xl mb-2",children:"⏰"}),l.jsx("div",{className:"text-yellow-700 font-semibold text-sm mb-1",children:"Interaction timed out"}),l.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:"No response was provided in time."})]})}function Y1({client:e,theme:t="vox",onBack:n,disabled:s=!1,displayType:r="widget",onEndChat:o}){const[i,a]=p.useState(()=>{if(e&&typeof e.getChatMessages=="function"){const M=e.getChatMessages();return console.log("🔄 ChatView: Initializing with existing messages:",M.length),M}return[]}),[c,d]=p.useState(!0),[u,f]=p.useState(()=>{const M=e&&typeof e.getCurrentSession=="function"&&!!e.getCurrentSession(),D=e&&typeof e.getChatMessages=="function"&&e.getChatMessages().length>0;return!M&&!D}),[h,y]=p.useState(new Set),[g,m]=p.useState([]),[b,k]=p.useState(!1),[S,E]=p.useState(!1),[w,v]=p.useState(()=>{const M=e.getCurrentInteraction();return console.log("ChatView: Initializing with existing interaction:",(M==null?void 0:M.methodName)||"none"),M}),A=p.useRef(null),T=Ve(t);p.useEffect(()=>{const M=()=>{const D=navigator.userAgent.toLowerCase(),F=["android","iphone","ipad","mobile","tablet"].some(_=>D.includes(_)),$="ontouchstart"in window||navigator.maxTouchPoints>0,B=window.innerWidth<=768,Z=F||$&&B;k(Z),Z&&r==="widget"&&E(!0)};return M(),window.addEventListener("resize",M),()=>window.removeEventListener("resize",M)},[r]),p.useEffect(()=>(S&&b&&(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)),()=>{S&&b&&(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))}),[S,b]);const j=e.getCurrentAgentInfo(),z=(j==null?void 0:j.name)||"AI Assistant",x=z.split(" ").map(M=>M[0]).join("").toUpperCase().slice(0,2),I=p.useCallback(M=>{const D={id:`local_${Date.now()}_${Math.random().toString(36).substr(2,9)}`,content:M,timestamp:new Date,sender:{id:"participant",name:"You",type:"participant"},metadata:{isLocal:!0}};a(H=>(console.log("ChatView: Adding local message:",D.id),[...H,D]))},[]);p.useEffect(()=>{var M,D,H,F,$;console.log("💬 ChatView loading state:",{isLoading:u,hasActiveSession:!!((M=e==null?void 0:e.getCurrentSession)!=null&&M.call(e)),messagesCount:i.length,sessionId:(H=(D=e==null?void 0:e.getCurrentSession)==null?void 0:D.call(e))==null?void 0:H.id,hasStoredMessages:!!(($=(F=e==null?void 0:e.getChatMessages)==null?void 0:F.call(e))!=null&&$.length),isMobile:b,isFullscreen:S})},[u,i.length,e,b,S]);const L=p.useCallback((M=!1)=>{A.current&&(M?A.current.scrollIntoView({behavior:"auto"}):A.current.scrollIntoView({behavior:"smooth"}))},[]);p.useEffect(()=>{L(!0);const M=setTimeout(()=>{L(!1)},10);return()=>clearTimeout(M)},[i.length,L]),p.useEffect(()=>{if(w){L(!0);const M=setTimeout(()=>{L(!1)},50);return()=>clearTimeout(M)}},[w,L]),p.useEffect(()=>{const M=F=>{if(console.log("ChatView: Received message:",F),f(!1),w&&F.sender.type==="agent"){console.log("ChatView: Queuing agent message due to active interaction:",w.methodName),m($=>[...$,F]);return}F.sender.type==="agent"&&d(!1),a($=>{var Z;if($.some(_=>_.id===F.id))return console.log("ChatView: Message already exists, skipping:",F.id),$;if(console.log("ChatView: Adding new message:",F.id),F.sender.type==="agent"&&(y(_=>new Set(_).add(F.id)),!((Z=F.metadata)!=null&&Z.streaming))){const _=F.content.length*35+1e3;setTimeout(()=>{y(re=>{const O=new Set(re);return O.delete(F.id),O})},_)}return[...$,F]}),setTimeout(()=>L(!0),0)},D=F=>{var $;if(console.log("ChatView: Updated message:",F),w&&F.sender.type==="agent"){console.log("ChatView: Queuing agent message update due to active interaction:",w.methodName),m(B=>{const Z=B.findIndex(_=>_.id===F.id);if(Z>=0){const _=[...B];return _[Z]=F,_}else return[...B,F]});return}a(B=>B.map(Z=>Z.id===F.id?{...F}:Z)),setTimeout(()=>L(!0),0),($=F.metadata)!=null&&$.streaming||y(B=>{const Z=new Set(B);return Z.delete(F.id),Z})},H=F=>{console.log("ChatView: Sent message:",F),f(!1),a($=>$.some(Z=>Z.id===F.id)?(console.log("ChatView: Sent message already exists, skipping:",F.id),$):(console.log("ChatView: Adding sent message:",F.id),[...$,F])),setTimeout(()=>L(!0),0)};return e.on("chat.message.received",M),e.on("chat.message.updated",D),e.on("chat.message.sent",H),()=>{e.off("chat.message.received",M),e.off("chat.message.updated",D),e.off("chat.message.sent",H)}},[e,w]),p.useEffect(()=>{const M=$=>{console.log("ChatView: RPC interaction started:",$);const B=e.getCurrentInteraction();console.log("ChatView: Got interaction from client:",B==null?void 0:B.methodName),v(B),d(!1),L(!0),setTimeout(()=>{L(!1)},100)},D=$=>{if(console.log("ChatView: RPC interaction completed:",$),v(null),g.length>0&&(console.log("ChatView: Processing",g.length,"queued messages"),a(B=>{const Z=[...B];return g.forEach(_=>{var O;if(!Z.some(le=>le.id===_.id)&&(console.log("ChatView: Adding queued message:",_.id),Z.push(_),_.sender.type==="agent"&&(y(le=>new Set(le).add(_.id)),!((O=_.metadata)!=null&&O.streaming)))){const le=_.content.length*35+1e3;setTimeout(()=>{y(Te=>{const Oe=new Set(Te);return Oe.delete(_.id),Oe})},le)}}),Z}),m([]),setTimeout(()=>L(!0),0)),$&&$.response&&$.response.success){let B=null;$.response.successView?B=$.response.successView:$.successView&&(B=$.successView),a(Z=>{const _=[...Z].reverse().findIndex(Te=>Te.sender.type==="participant");let re=Z.length;_!==-1&&(re=Z.length-_);const O={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:B||l.jsx(G1,{})}};e&&typeof e.addChatMessage=="function"&&e.addChatMessage(O);const le=[...Z];return le.splice(re,0,O),le})}},H=async $=>{w&&(console.log("ChatView: Dismissing active interaction due to timeout"),e.dismissCurrentInteraction()),v(null),g.length>0&&(console.log("ChatView: Processing",g.length,"queued messages after timeout"),a(Z=>{const _=[...Z];return g.forEach(re=>{var le;if(!_.some(Te=>Te.id===re.id)&&(_.push(re),re.sender.type==="agent"&&(y(Te=>new Set(Te).add(re.id)),!((le=re.metadata)!=null&&le.streaming)))){const Te=re.content.length*35+1e3;setTimeout(()=>{y(Oe=>{const Nn=new Set(Oe);return Nn.delete(re.id),Nn})},Te)}}),_}),m([]),setTimeout(()=>L(!0),0));let B=null;$&&$.response&&$.response.timeoutView?B=$.response.timeoutView:$&&$.timeoutView&&(B=$.timeoutView),a(Z=>{const _={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:B||l.jsx(K1,{})}};return e&&typeof e.addChatMessage=="function"&&e.addChatMessage(_),[...Z,_]}),setTimeout(()=>{e.getCurrentInteraction()||v(null)},100)},F=async $=>{console.log("ChatView: RPC interaction dismissed:",$),console.log("ChatView: Current interaction before dismiss:",w==null?void 0:w.methodName),v(null),g.length>0&&(console.log("ChatView: Processing",g.length,"queued messages after dismissal"),a(B=>{const Z=[...B];return g.forEach(_=>{var O;if(!Z.some(le=>le.id===_.id)&&(Z.push(_),_.sender.type==="agent"&&(y(le=>new Set(le).add(_.id)),!((O=_.metadata)!=null&&O.streaming)))){const le=_.content.length*35+1e3;setTimeout(()=>{y(Te=>{const Oe=new Set(Te);return Oe.delete(_.id),Oe})},le)}}),Z}),m([]),setTimeout(()=>L(!0),0)),setTimeout(()=>{const B=e.getCurrentInteraction();console.log("ChatView: Latest interaction from client after dismiss:",(B==null?void 0:B.methodName)||"null"),B===null&&v(null)},50),console.log("ChatView: Set currentInteraction to null after dismiss")};return e.on("rpc.interaction.started",M),e.on("rpc.interaction.completed",D),e.on("rpc.interaction.timeout",H),e.on("rpc.interaction.dismissed",F),()=>{e.off("rpc.interaction.started",M),e.off("rpc.interaction.completed",D),e.off("rpc.interaction.timeout",H),e.off("rpc.interaction.dismissed",F)}},[e]),p.useEffect(()=>{const M=()=>{if(console.log("ChatView: Agent is thinking"),w){console.log("ChatView: Suppressing thinking indicator due to active interaction:",w.methodName);return}d(!0)},D=()=>{console.log("ChatView: Agent is speaking"),d(!1)};return e.on("agent.thinking",M),e.on("agent.speaking",D),()=>{e.off("agent.thinking",M),e.off("agent.speaking",D)}},[e,w]),p.useEffect(()=>{const M=e.getCurrentInteraction();M?(console.log("ChatView: Restoring interaction state on mount/client change:",M.methodName),v(M)):v(null)},[e]),p.useEffect(()=>{console.log("ChatView: Display type changed to:",r,"Current interaction:",(w==null?void 0:w.methodName)||"none")},[r,w]);const J=async M=>{try{w&&(console.log("ChatView: Dismissing active interaction due to user message send"),e.dismissCurrentInteraction(),v(null)),await e.sendChatMessage(M)}catch(D){console.error("Failed to send message:",D)}},te=async M=>{try{w&&(console.log("ChatView: Dismissing active interaction due to user attachment send"),e.dismissCurrentInteraction(),v(null)),await e.sendAttachments(M),console.log("Attachments sent successfully:",M.map(D=>D.name))}catch(D){console.error("Failed to send attachments:",D)}},[ee,ne]=p.useState([]);if(p.useEffect(()=>{const M=D=>{ne(Array.isArray(D)?D:["tes","hello how are you","algebra make me learn that ","what is the meaning of life"])};return e.on("suggested.response",M),()=>{e.off("suggested.response",M)}},[e]),u){const M=S&&b?"fixed inset-0 z-[9999] flex flex-col items-center justify-center h-screen w-screen bg-black":"flex w-full flex-col items-center justify-center h-full p-8";return l.jsxs("div",{className:M,children:[l.jsx("div",{className:`${T.spinner} w-12 h-12 mb-6`}),l.jsxs("p",{className:`text-sm text-center ${S&&b?"text-white":""}`,children:["Connecting to ",z,"..."]})]})}const Y=S&&b?"fullscreen":r,R=Y==="fullscreen"?S&&b?"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",X=Y==="fullscreen"?S&&b?"flex items-center w-full justify-between px-4 pt-3 pb-3 bg-black/80 text-white border-b border-gray-700":`flex items-center w-full justify-between px-6 pt-5 pb-4 border-b ${T.chatHeader.container}`:`flex items-center w-full justify-between px-4 pt-5 pb-4 border-b ${T.chatHeader.container}`,P=Y==="fullscreen"?S&&b?"flex-1 overflow-y-auto scrollbar-hide p-4 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto scrollbar-hide p-6 w-full max-w-none chat-scrollable min-h-0":"flex-1 overflow-y-auto scrollbar-hide w-full p-4 chat-scrollable min-h-0",N="flex-shrink-0 !w-full",U=()=>{E(!1),n&&n()};return l.jsxs("div",{className:R,children:[l.jsx("div",{className:X,children:l.jsxs("div",{className:"flex items-center gap-2",children:[S&&b&&l.jsx(ie.button,{onClick:U,whileHover:{scale:1.05},whileTap:{scale:.95},className:"p-2 rounded-full bg-white/20 hover:bg-white/30 text-white transition-colors mr-2","aria-label":"Exit fullscreen",children:"✕"}),l.jsxs("div",{children:[l.jsx("h3",{className:`font-semibold text-base leading-tight ${S&&b?"text-white":T.text.primary}`,children:z}),l.jsxs("p",{className:`text-xs flex items-center gap-1.5 mt-0.5 ${S&&b?"text-gray-300":T.text.muted}`,children:[l.jsx("span",{className:"w-1.5 h-1.5 bg-green-500 rounded-full animate-pulse"}),"Online"]})]})]})}),l.jsxs("div",{className:`${P} flex flex-col`,style:{scrollBehavior:"smooth",scrollbarWidth:"none"},children:[" ",i.length===0?l.jsxs("div",{className:"flex flex-col items-center justify-center flex-1 text-center py-12",children:[l.jsx(ie.div,{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:x}),l.jsxs("p",{className:`text-base mb-2 ${S&&b?"text-white":T.text.secondary}`,children:[z," is joining..."]}),l.jsx("p",{className:`text-xs ${S&&b?"text-gray-300":T.text.muted}`,children:"Your conversation will begin shortly"})]}):l.jsx("div",{className:"w-full max-w-5xl mx-auto space-y-3 py-4 flex-1 flex flex-col justify-end",children:l.jsxs("div",{className:"space-y-3",children:[i.map((M,D)=>{var H,F;return l.jsx("div",{children:((H=M.metadata)==null?void 0:H.type)==="successView"?l.jsx("div",{className:"flex w-full justify-end mb-4 px-1",children:l.jsxs("div",{className:"relative group flex-row-reverse flex items-end gap-3 max-w-[85%]",children:[l.jsx(ie.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:"Y"}),l.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 ${T.chatMessage.own}`,children:[M.metadata.view,l.jsx("div",{className:`text-xs ${T.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200 `,children:M.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):((F=M.metadata)==null?void 0:F.type)==="timeoutView"?l.jsx("div",{className:"flex w-full justify-start mb-4 px-1",children:l.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%]",children:[l.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:x}),l.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 ${T.chatMessage.other}`,children:[M.metadata.view,l.jsx("div",{className:`text-xs ${T.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200 `,children:M.timestamp.toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]})}):l.jsx(H1,{message:M,theme:t,isOwn:M.sender.type==="participant",isStreaming:h.has(M.id)})},M.id)}),c&&!w&&l.jsx(ie.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:i.length*.1},className:"flex w-full justify-start mb-4 px-1",children:l.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%]",children:[l.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:x}),l.jsx("div",{className:`relative px-3 py-2 rounded-2xl break-words shadow-lg backdrop-blur-sm message-bubble message-hover ${T.chatMessage.other} rounded-bl-md transition-all duration-200 group-hover:scale-[1.02]`,style:{wordWrap:"break-word",overflowWrap:"break-word",minWidth:48},children:l.jsx("span",{className:"inline-flex items-center",children:[0,1,2].map(M=>l.jsx(ie.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:M*.2,ease:"easeInOut"}},M))})})]})}),w&&w.presentationMode==="embedded"&&l.jsxs("div",{className:"relative group flex-row flex items-end gap-3 max-w-[85%]",children:[l.jsx(ie.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:x}),l.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 ${T.chatMessage.other}`,children:[l.jsx(Gt,{interaction:w,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:I},w.methodName),l.jsx(ie.div,{initial:{opacity:0},animate:{opacity:1},transition:{delay:.2},className:`text-xs ${T.text.muted} mt-1 opacity-0 group-hover:opacity-100 transition-opacity duration-200 `,children:new Date().toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"})})]})]}),l.jsx("div",{ref:A})]})})]}),ee.length>0&&l.jsx("div",{className:"w-full flex overflow-x-auto gap-2 px-4 py-2 mb-1 scrollbar-hide",children:ee.map((M,D)=>{var H;return l.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
100
+ ${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":((H=T.suggestedResponse)==null?void 0:H.container)||"bg-gradient-to-br from-blue-500 to-purple-600 text-white border-blue-400 hover:from-blue-600 hover:to-purple-700"}
101
+ `,style:{boxShadow:t==="vox"?"0 2px 8px 0 rgba(80,60,200,0.10)":void 0,borderWidth:1},onClick:()=>{J(M),ne([])},children:M},M+D)})}),w&&w.presentationMode!=="embedded"&&l.jsx(Gt,{interaction:w,theme:t,onDismiss:()=>e.dismissCurrentInteraction(),client:e,addLocalMessage:I},w.methodName),l.jsx(ie.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},transition:{delay:.2},className:N,children:l.jsx(B1,{onSendMessage:J,onSendAttachments:te,disabled:s,theme:t,onEndChat:o})})]})}function q1({onToggleCamera:e,onToggleScreenShare:t,onEndCall:n,onBack:s,theme:r,cameraEnabled:o,screenShareEnabled:i,isCameraLoading:a,isScreenShareLoading:c,disabled:d}){const u=Ve(r);return l.jsxs("div",{className:`flex items-center justify-center gap-3 p-4 ${u.video.controlsBackground}`,children:[l.jsx("button",{onClick:e,disabled:d||a,className:`p-3 rounded-full transition-all duration-200 ${o?u.video.controlEnabled:u.video.controlDisabled} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:o?"Turn off camera":"Turn on camera",children:a?l.jsx("div",{className:"w-5 h-5 animate-spin rounded-full border-2 border-current border-t-transparent"}):o?l.jsx(Me.Camera,{className:"w-5 h-5"}):l.jsx(Me.CameraOff,{className:"w-5 h-5"})}),l.jsx("button",{onClick:t,disabled:d||c,className:`p-3 rounded-full transition-all duration-200 ${i?u.video.controlEnabled:u.video.controlDisabled} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:i?"Stop screen share":"Share screen",children:c?l.jsx("div",{className:"w-5 h-5 animate-spin rounded-full border-2 border-current border-t-transparent"}):i?l.jsx(Me.MonitorOff,{className:"w-5 h-5"}):l.jsx(Me.Monitor,{className:"w-5 h-5"})}),n&&l.jsx("button",{onClick:n,disabled:d,className:`p-3 rounded-full transition-all duration-200 ${u.video.endCall} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:"End call",children:l.jsx(Me.PhoneOff,{className:"w-5 h-5"})}),s&&l.jsx("button",{onClick:s,disabled:d,className:`p-3 rounded-full transition-all duration-200 ${u.video.controlDisabled} ${d?"opacity-50 cursor-not-allowed":"hover:scale-105"}`,title:"Back",children:l.jsx("svg",{className:"w-5 h-5",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24",children:l.jsx("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M10 19l-7-7m0 0l7-7m-7 7h18"})})})]})}function Ua({trackRef:e,participant:t,isLocal:n=!1,className:s="",theme:r}){var c;const o=Ve(r),i=(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 l.jsxs("div",{className:`relative rounded-lg overflow-hidden ${o.video.tile} ${s}`,children:[a?l.jsx(Ee.VideoTrack,{trackRef:e,className:"w-full h-full object-cover"}):l.jsx("div",{className:`w-full h-full flex items-center justify-center ${o.video.placeholder}`,children:l.jsxs("div",{className:"text-center",children:[l.jsx("div",{className:`w-16 h-16 mx-auto mb-2 rounded-full flex items-center justify-center ${o.video.avatar}`,children:l.jsx(Me.User,{className:"w-8 h-8"})}),l.jsx("p",{className:"text-sm opacity-80",children:i}),l.jsx("p",{className:"text-xs opacity-60",children:"Camera off"})]})}),l.jsx("div",{className:`absolute bottom-2 left-2 px-2 py-1 rounded text-xs ${o.video.nameOverlay}`,children:i}),((c=e==null?void 0:e.publication)==null?void 0:c.isMuted)&&l.jsx("div",{className:`absolute top-2 right-2 p-1 rounded ${o.video.mutedIndicator}`,children:l.jsx(Me.CameraOff,{className:"w-4 h-4"})})]})}function X1({trackRefs:e,participants:t,theme:n,localParticipant:s}){const r=e.find(u=>u.source===K.Track.Source.Camera&&u.participant===s),o=e.filter(u=>u.participant!==s),i=e.length,a=i<=1?1:i<=4?2:3,c="grid gap-2 h-full",d={gridTemplateColumns:`repeat(${a}, 1fr)`,gridAutoRows:"minmax(0, 1fr)"};return l.jsxs("div",{className:c,style:d,children:[r&&s&&l.jsx(Ua,{trackRef:r,participant:s,isLocal:!0,theme:n,className:"min-h-0"}),o.map((u,f)=>{var h;return l.jsx(Ua,{trackRef:u,participant:u.participant,isLocal:!1,theme:n,className:"min-h-0"},((h=u.publication)==null?void 0:h.trackSid)||f)}),i===0&&l.jsx("div",{className:"flex items-center justify-center h-full",children:l.jsxs("div",{className:"text-center",children:[l.jsx(Me.Users,{className:"w-12 h-12 mx-auto mb-4 opacity-50"}),l.jsx("p",{className:"text-lg opacity-70",children:"Waiting for participants..."}),l.jsx("p",{className:"text-sm opacity-50",children:"Turn on your camera to start the video call"})]})})]})}function J1({client:e,theme:t="vox",onBack:n,disabled:s=!1,displayType:r,onEndCall:o}){const i=Ve(t),a=Ee.useMaybeRoomContext(),[c,d]=p.useState(!1),[u,f]=p.useState(!1),[h,y]=p.useState(!1),[g,m]=p.useState(!1),[b,k]=p.useState(null),S=Ee.useTracks([K.Track.Source.Camera,K.Track.Source.ScreenShare],{onlySubscribed:!1});S.filter(T=>T.source===K.Track.Source.Camera),S.filter(T=>T.source===K.Track.Source.ScreenShare);const E=p.useMemo(()=>a?Array.from(a.remoteParticipants.values()):[],[a]),w=p.useCallback(async()=>{if(!(!a||h)){y(!0);try{const T=a.localParticipant;c?(await T.setCameraEnabled(!1),d(!1)):(await T.setCameraEnabled(!0),d(!0))}catch(T){console.error("Failed to toggle camera:",T)}finally{y(!1)}}},[a,c,h]),v=p.useCallback(async()=>{if(!(!a||g)){m(!0);try{const T=a.localParticipant;u?(await T.setScreenShareEnabled(!1),f(!1)):(await T.setScreenShareEnabled(!0),f(!0))}catch(T){console.error("Failed to toggle screen share:",T)}finally{m(!1)}}},[a,u,g]),A=p.useCallback(()=>{o?o():n&&n()},[o,n]);return p.useEffect(()=>{if(!e)return;const T=j=>{console.log("📺 Video: Interactive UI state updated:",j),k(j)};return e.on("interactive.ui.update",T),e.on("interactive.ui.show",T),()=>{e.off("interactive.ui.update",T),e.off("interactive.ui.show",T)}},[e]),l.jsxs("div",{className:`flex flex-col h-full ${i.video.container}`,children:[l.jsxs("div",{className:`flex items-center justify-between p-4 border-b ${i.video.header}`,children:[l.jsxs("div",{className:"flex items-center gap-3",children:[l.jsx("div",{className:`w-3 h-3 rounded-full ${i.video.statusDot}`}),l.jsx("span",{className:"font-medium",children:"Video Call"}),l.jsxs("span",{className:"text-sm opacity-70",children:[E.length+1," participant",E.length!==0?"s":""]})]}),l.jsx("div",{className:"flex items-center gap-2",children:l.jsx("button",{className:`p-2 rounded-lg transition-colors ${i.video.headerButton}`,title:"Layout options",children:l.jsx(Me.LayoutGrid,{className:"w-4 h-4"})})})]}),l.jsx("div",{className:"flex-1 p-4 min-h-0",children:l.jsx(X1,{trackRefs:S,participants:E,localParticipant:a==null?void 0:a.localParticipant,theme:t})}),b&&l.jsx(ie.div,{initial:{opacity:0,y:20},animate:{opacity:1,y:0},exit:{opacity:0,y:20},className:"absolute inset-4 z-10",children:l.jsx(Gt,{interaction:b,onDismiss:()=>k(null),theme:t})}),l.jsx(q1,{onToggleCamera:w,onToggleScreenShare:v,onEndCall:A,onBack:n,theme:t,cameraEnabled:c,screenShareEnabled:u,isCameraLoading:h,isScreenShareLoading:g,disabled:s})]})}function Zn({onClick:e,disabled:t,theme:n}){const s=Ve(n);return l.jsx("button",{className:s.micButton,onClick:e,disabled:t,"aria-label":"Start Voice Session",type:"button",children:l.jsx(ld,{})})}function rr({onClick:e,disabled:t,theme:n}){const s=Ve(n);return l.jsx("button",{className:s.chatButton,onClick:e,disabled:t,"aria-label":"Start Chat Session",type:"button",children:l.jsx(ad,{})})}function or({onClick:e,disabled:t,theme:n}){const s=Ve(n);return l.jsx("button",{className:s.videoButton,onClick:e,disabled:t,"aria-label":"Start Video Session",type:"button",children:l.jsx(cd,{})})}function Q1({prompts:e,theme:t}){const n=Ve(t),[s,r]=C.useState(0);return C.useEffect(()=>{const o=setInterval(()=>{r(i=>(i+1)%e.length)},3e3);return()=>clearInterval(o)},[e.length]),l.jsx("div",{className:"w-96 min-h-[3rem] h-12 relative overflow-hidden flex items-center justify-center",children:e.map((o,i)=>l.jsx("div",{className:`
29
102
  ${n.promptSlider}
30
103
  ${i===s?"opacity-100":"opacity-0"}
31
104
  whitespace-pre-line break-words
32
- `,style:{minHeight:"2.5rem",display:i===s?"block":"none"},children:r},i))})}function Uf({statusMessage:e,theme:t}){const n=ye(t);return a.jsxs("div",{className:"z-10 flex items-center space-x-2 mt-2 pb-2",children:[a.jsx("div",{className:n.statusIndicator}),a.jsx("span",{className:`text-xs ${n.text.muted}`,children:e})]})}const zf=({disabled:e,onStartCall:t,onStartChat:n,onStartVideo:s,prompts:o=['"Book a meeting with the marketing team"',`"What's the status of project Alpha?"`,`"Summarize yesterday's sales report"`,'"Find a good Italian restaurant nearby"','"Remind me to call John tomorrow at 10 AM"'],statusMessage:r="Agent is ready",title:i="Choose how to interact",subTitle:l="Ask me anything or give me a task to complete",theme:c="vox",modalities:d=["voice","chat","video"]})=>{const u=ye(c),m=d.includes("voice"),f=d.includes("chat"),p=d.includes("video"),g=[m,f,p].filter(Boolean).length;return console.log("🎯 Welcome component debug:",{modalities:d,hasVoice:m,hasChat:f,hasVideo:p,totalButtons:g,onStartVideo:!!s}),a.jsxs("div",{inert:e,className:"flex p-8 flex-col items-center h-full justify-center w-full",children:[a.jsxs("div",{className:"mt-1 relative flex items-center justify-center mb-8 w-full",style:{minHeight:"120px"},children:[a.jsxs("div",{className:"absolute inset-0 flex items-center justify-center",children:[a.jsx("div",{className:u.pulseRings.ring1}),a.jsx("div",{className:u.pulseRings.ring2,style:{animationDelay:"0.5s"}}),a.jsx("div",{className:u.pulseRings.ring3,style:{animationDelay:"1s"}})]}),a.jsx("div",{className:"relative z-10 flex items-center justify-center",children:m&&f&&p?a.jsxs("div",{className:"flex gap-4 items-center justify-center",children:[a.jsx(Jt,{onClick:t,disabled:e,theme:c}),a.jsx(On,{onClick:n,disabled:e,theme:c}),a.jsx(_n,{onClick:s||t,disabled:e,theme:c})]}):g>1?a.jsxs("div",{className:"flex gap-6 items-center justify-center",children:[m&&a.jsx(Jt,{onClick:t,disabled:e,theme:c}),f&&a.jsx(On,{onClick:n,disabled:e,theme:c}),p&&s&&a.jsx(_n,{onClick:s,disabled:e,theme:c})]}):a.jsx("div",{className:"flex items-center justify-center",children:m?a.jsx(Jt,{onClick:t,disabled:e,theme:c}):f?a.jsx(On,{onClick:n,disabled:e,theme:c}):p&&s?a.jsx(_n,{onClick:s,disabled:e,theme:c}):a.jsx(Jt,{onClick:t,disabled:e,theme:c})})})]}),a.jsxs("div",{className:"text-center flex flex-col items-center gap-y-2 mb-6 w-full",children:[a.jsx("h3",{className:`text-xl font-semibold mb-2 ${u.text.accent}`,children:i}),a.jsx("p",{className:`text-sm leading-relaxed px-4 ${u.text.secondary}`,children:l}),g>1&&a.jsxs("div",{className:"flex gap-6 mt-4 text-xs justify-center",children:[m&&a.jsxs("div",{className:"flex flex-col items-center gap-1",children:[a.jsx(Be.Mic,{className:"w-4 h-4"}),a.jsx("span",{className:u.text.muted,children:"Voice"})]}),f&&a.jsxs("div",{className:"flex flex-col items-center gap-1",children:[a.jsx(Be.Chat,{className:"w-4 h-4"}),a.jsx("span",{className:u.text.muted,children:"Chat"})]}),p&&a.jsxs("div",{className:"flex flex-col items-center gap-1",children:[a.jsx(Be.Videocam,{className:"w-4 h-4"}),a.jsx("span",{className:u.text.muted,children:"Video"})]})]})]}),a.jsx(Zf,{prompts:o,theme:c}),a.jsx(Uf,{statusMessage:r,theme:c})]})};function Fa({room:e,onSessionEnd:t,onSessionStart:n,enableConsoleLogging:s=!0,enableLocalStorage:o=!0,voxketSessionId:r}={}){const[i,l]=h.useState(null),[c,d]=h.useState([]),[u,m]=h.useState(null),[f,p]=h.useState([]),g=h.useCallback((b,S)=>{const w={timestamp:new Date,event:b,data:S,sessionId:i==null?void 0:i.sessionId,participantId:u==null?void 0:u.identity};if(d(C=>[...C,w]),o){const C=JSON.parse(localStorage.getItem("voxket-session-logs")||"[]");C.push(w),localStorage.setItem("voxket-session-logs",JSON.stringify(C))}return w},[i==null?void 0:i.sessionId,u==null?void 0:u.identity,s,o]);h.useEffect(()=>{if(!e)return;const b=()=>{const L=r||`session-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,W=new Date,H={sessionId:L,startTime:W,totalMessages:0,connectionIssues:0,participantCount:f.length,events:[]};l(H),g("SESSION_STARTED",{sessionId:L,startTime:W}),n==null||n(L)},S=()=>{if(i){const L=new Date,W=L.getTime()-i.startTime.getTime(),H={...i,endTime:L,duration:W,events:c};g("SESSION_ENDED",{sessionId:i.sessionId,duration:`${Math.round(W/1e3)}s`,totalMessages:i.totalMessages,connectionIssues:i.connectionIssues}),t==null||t(H),l(null),d([])}},w=L=>{g("CONNECTION_STATE_CHANGED",{state:L}),L===I.ConnectionState.Reconnecting&&i&&(l(W=>W?{...W,connectionIssues:W.connectionIssues+1}:null),g("CONNECTION_ISSUE",{type:"reconnecting"}))},C=L=>{g("TRACK_PUBLISHED",{trackKind:L.kind,trackSource:L.source})},A=L=>{g("TRACK_UNPUBLISHED",{trackKind:L.kind,trackSource:L.source})},j=(L,W)=>{i&&l(H=>H?{...H,totalMessages:H.totalMessages+1}:null),g("DATA_RECEIVED",{participantId:W==null?void 0:W.identity,dataSize:L.length})},k=L=>{g("PARTICIPANT_CONNECTED",{participantId:L.identity,participantName:L.name}),p(W=>[...W,L]),i&&l(W=>W?{...W,participantCount:W.participantCount+1}:null)},D=L=>{g("PARTICIPANT_DISCONNECTED",{participantId:L.identity,participantName:L.name}),p(W=>W.filter(H=>H.identity!==L.identity))};return e.localParticipant&&m(e.localParticipant),e.on(I.RoomEvent.Connected,b),e.on(I.RoomEvent.Disconnected,S),e.on(I.RoomEvent.ConnectionStateChanged,w),e.on(I.RoomEvent.TrackPublished,C),e.on(I.RoomEvent.TrackUnpublished,A),e.on(I.RoomEvent.DataReceived,j),e.on(I.RoomEvent.ParticipantConnected,k),e.on(I.RoomEvent.ParticipantDisconnected,D),()=>{e.off(I.RoomEvent.Connected,b),e.off(I.RoomEvent.Disconnected,S),e.off(I.RoomEvent.ConnectionStateChanged,w),e.off(I.RoomEvent.TrackPublished,C),e.off(I.RoomEvent.TrackUnpublished,A),e.off(I.RoomEvent.DataReceived,j),e.off(I.RoomEvent.ParticipantConnected,k),e.off(I.RoomEvent.ParticipantDisconnected,D)}},[e,i,c,f.length,g,t,n]);const x=h.useCallback(()=>o?JSON.parse(localStorage.getItem("voxket-session-logs")||"[]"):c,[c,o]),v=h.useCallback(()=>{o&&localStorage.removeItem("voxket-session-logs"),d([])},[o]),E=h.useCallback(()=>{const b=x(),S=JSON.stringify(b,null,2),w="data:application/json;charset=utf-8,"+encodeURIComponent(S),C=`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,A=document.createElement("a");A.setAttribute("href",w),A.setAttribute("download",C),A.click()},[x]);return{sessionMetrics:i,sessionLogs:c,logEvent:g,getSessionLogs:x,clearSessionLogs:v,exportSessionLogs:E}}class Qs{constructor(){me(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 s=(...o)=>{this.off(t,s),n(...o)};return this.on(t,s)}off(t,n){const s=this.listeners[t];if(!s)return;const o=s.indexOf(n);o>-1&&s.splice(o,1)}removeAllListeners(t){t?delete this.listeners[t]:this.listeners={}}emit(t,...n){const s=this.listeners[t];if(!s)return;const o=[...s];for(const r of o)try{r(...n)}catch(i){console.error(`Error in event listener for ${String(t)}:`,i)}}listenerCount(t){var n;return((n=this.listeners[t])==null?void 0:n.length)??0}eventNames(){return Object.keys(this.listeners)}}class La{constructor(t){me(this,"plugins",new Map);me(this,"installedPlugins",new Set);me(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 s=this.plugins.get(t);if(!s)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t))throw new Error(`Plugin '${t}' is already installed`);if(s.dependencies)for(const r of s.dependencies)this.installedPlugins.has(r)||await this.install(r);const o={...this.context,config:{...s.config,...n}};s.install&&await s.install(o),this.installedPlugins.add(t),this.setupPluginEvents(s,o)}async uninstall(t){var s;const n=this.plugins.get(t);if(!n)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t)){for(const[o,r]of this.plugins)if(this.installedPlugins.has(o)&&((s=r.dependencies)!=null&&s.includes(t)))throw new Error(`Cannot uninstall '${t}' because '${o}' 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",s=>{t.onSessionStart(n,s.id)}),t.onSessionEnd&&n.on("session.ended",s=>{t.onSessionEnd(n,s.id)}),t.onAgentResponse&&n.on("agent.response",s=>{t.onAgentResponse(n,s)})}}function Wf(e){return e}function eo(e,t,n){return{name:e,version:"1.0.0",description:`${t} modality plugin`,install:async s=>{n.onActivate&&await n.onActivate(s)},uninstall:async s=>{n.onDeactivate&&await n.onDeactivate(s)},onAgentResponse:n.onMessage}}const Kf={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)})}},Gf={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,...s)=>(console.log(`[Debug] Event: ${String(n)}`,s),t(n,...s))}},Yf={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})})}},Ba=y.createContext(null);function $a({config:e,children:t,autoConnect:n=!1}){const[s,o]=y.useState(null),[r,i]=y.useState(!1),[l,c]=y.useState(!1),[d,u]=y.useState(null),[m,f]=y.useState(null),[p,g]=y.useState("idle"),[x,v]=y.useState(null),[E,b]=y.useState([]),[S,w]=y.useState([]),[C,A]=y.useState([]);y.useEffect(()=>{const M=new _t(e);return o(M),j(M),n&&k(M),()=>{M.disconnect().catch(console.error)}},[e,n]);const j=M=>{M.on("connection.connecting",()=>{c(!0),u(null)}),M.on("connection.connected",()=>{i(!0),c(!1),u(null)}),M.on("connection.disconnected",()=>{i(!1),c(!1),f(null),g("idle"),b([]),w([]),A([])}),M.on("connection.error",G=>{u(G),c(!1)}),M.on("session.created",G=>{f(G),g(G.state)}),M.on("session.state.changed",G=>{g(G),m&&f({...m,state:G})}),M.on("session.ended",(G,Y)=>{f(null),g("idle"),v(Y),b([]),w([]),A([])}),M.on("participant.joined",G=>{b(Y=>[...Y,G])}),M.on("participant.left",G=>{b(Y=>Y.filter(V=>V.id!==G.id))}),M.on("chat.message.received",G=>{w(Y=>[...Y,G])}),M.on("chat.message.sent",G=>{w(Y=>[...Y,G])}),M.on("transcription.received",G=>{A(Y=>[...Y,G])})},k=async M=>{const G=M||s;if(G)try{await G.connect()}catch(Y){console.error("Failed to connect:",Y)}},z={client:s,isConnected:r,isConnecting:l,connectionError:d,currentSession:m,sessionState:p,sessionMetrics:x,participants:E,chatMessages:S,transcriptions:C,connect:()=>k(),disconnect:async()=>{if(s)try{await s.disconnect()}catch(M){console.error("Failed to disconnect:",M)}},createSession:async(M,G={})=>{if(!s)throw new Error("Client not initialized");const Y={agentId:M,participantName:G.participantName||"User",metadata:G.metadata,modalities:G.modalities||["voice"]};return await s.createSession(Y)},endSession:async()=>s?await s.endSession():null,sendChatMessage:async M=>{if(!s)throw new Error("Client not initialized");await s.sendChatMessage(M)},setMicrophoneEnabled:async M=>{if(!s)throw new Error("Client not initialized");await s.setMicrophoneEnabled(M)},setCameraEnabled:async M=>{if(!s)throw new Error("Client not initialized");await s.setCameraEnabled(M)},startScreenShare:async()=>{if(!s)throw new Error("Client not initialized");await s.startScreenShare()},stopScreenShare:async()=>{if(!s)throw new Error("Client not initialized");await s.stopScreenShare()}};return a.jsx(Ba.Provider,{value:z,children:t})}function Ie(){const e=y.useContext(Ba);if(!e)throw new Error("useVoxket must be used within a VoxketProvider");return e}class qf extends Qs{constructor(n){super();me(this,"room",null);me(this,"registeredMethods",new Map);me(this,"activeInteractions",new Map);me(this,"currentInteraction",null);n&&this.setRoom(n)}setRoom(n){this.room=n}async registerFrontendRPC(n,s,o="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 r={methodName:n,component:s,presentationMode:o};this.registeredMethods.set(n,r);try{this.room.registerRpcMethod(n,async i=>{console.log(`RpcManager: RPC method '${n}' called by ${i.callerIdentity}`),console.log("RpcManager: Payload:",i.payload),this.emit("rpc.method.called",{methodName:n,data:i});let l;console.log(`RpcManager: Current registration for '${n}':`,r);let c=i.responseTimeout||30;try{l=JSON.parse(i.payload)}catch{l=i.payload}try{const d=await this.awaitUserInteraction(n,s,o,l,c);return JSON.stringify(d)}catch(d){throw console.error(`RpcManager: Error in RPC method '${n}':`,d),d}}),this.emit("rpc.method.registered",{methodName:n}),console.log(`RpcManager: Successfully registered RPC method: ${n}`)}catch(i){throw console.error(`RpcManager: Failed to register RPC method '${n}':`,i),i}}async awaitUserInteraction(n,s,o,r,i){return new Promise((l,c)=>{const d=`${n}_${Date.now()}`;console.log(`RpcManager: Starting user interaction for method: ${n}, timeout: ${i} seconds`);const u={didSuccess:(f,p)=>{console.log(`RpcManager: User interaction successful for method: ${n}`,f),this.clearInteraction(d),this.currentInteraction=null;const g={success:!0,message:"User interaction completed successfully",data:f,timestamp:new Date,...p?{successView:p}:{}};this.emit("rpc.interaction.completed",{methodName:n,response:g}),l(g)},didFail:f=>{console.log(`RpcManager: User interaction failed for method: ${n}`,f),this.clearInteraction(d);const p={success:!1,message:"User interaction failed",error:f,timestamp:new Date};this.emit("rpc.interaction.completed",{methodName:n,response:p}),l(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(d),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 g;((g=this.currentInteraction)==null?void 0:g.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),l(f)},didTimeout:f=>{console.log(`RpcManager: User interaction timeout for method: ${n}`),this.clearInteraction(d),this.currentInteraction=null;const p={success:!0,message:`User interaction timed out after ${i} 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 g;((g=this.currentInteraction)==null?void 0:g.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),l(p)}},m=setTimeout(()=>{u.didTimeout&&u.didTimeout()},i);this.activeInteractions.set(d,{resolve:f=>l(JSON.parse(f)),reject:c,timeoutId:m}),this.currentInteraction={isVisible:!0,methodName:n,component:s,presentationMode:o,timeout:i,data:r,handler:u},this.emit("rpc.interaction.started",{methodName:n,presentationMode:o}),setTimeout(async()=>{var f;if((f=this.currentInteraction)!=null&&f.handler)try{console.log(`RpcManager: Component created for method: ${n} with data:`,r)}catch(p){console.error("RpcManager: Error loading data into component:",p),u.didFail({error:"Failed to load data into component"})}},100)})}clearInteraction(n){const s=this.activeInteractions.get(n);s&&(console.log(`RpcManager: Clearing interaction: ${n}`),clearTimeout(s.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,s]of this.activeInteractions)clearTimeout(s.timeoutId);this.activeInteractions.clear(),this.registeredMethods.clear(),this.currentInteraction=null,console.log("RpcManager: Cleared all registrations and interactions")}}class ee extends Error{constructor(t,n,s){super(t),this.code=n,this.details=s,this.name="VoxketError"}}class _t extends Qs{constructor(n){super();me(this,"config");me(this,"room",null);me(this,"pluginManager");me(this,"rpcManager");me(this,"isConnected",!1);me(this,"currentSession",null);me(this,"connectionState",I.ConnectionState.Disconnected);me(this,"renderedComponents",new Map);me(this,"textStreamHandlersRegistered",!1);me(this,"currentAgentInfo",null);me(this,"chatMessages",[]);this.config=n,this.pluginManager=new La(this),this.rpcManager=new qf,this.setupEventListeners(),this.initializeClient()}setupEventListeners(){this.on("connection.connected",()=>{var n,s;this.isConnected=!0,(s=(n=this.config).onConnected)==null||s.call(n)}),this.on("connection.disconnected",n=>{var s,o;this.isConnected=!1,(o=(s=this.config).onDisconnected)==null||o.call(s,n)}),this.on("connection.error",n=>{var s,o;(o=(s=this.config).onError)==null||o.call(s,n)}),this.on("chat.message.received",n=>{var s,o;this.addChatMessage(n),(o=(s=this.config).onMessageReceived)==null||o.call(s,n)}),this.on("chat.message.updated",n=>{this.updateChatMessage(n)}),this.on("chat.message.sent",n=>{this.addChatMessage(n)}),this.on("transcription.received",n=>{var s,o;(o=(s=this.config).onTranscriptionReceived)==null||o.call(s,n)}),this.on("session.state.changed",n=>{var s,o;(o=(s=this.config).onSessionStateChanged)==null||o.call(s,n)}),this.on("session.created",n=>{var s,o;(o=(s=this.config).onSessionStart)==null||o.call(s,n.id)}),this.on("session.ended",(n,s)=>{var o,r;(r=(o=this.config).onSessionEnd)==null||r.call(o,s)}),this.on("participant.joined",n=>{var s,o;(o=(s=this.config).onUserJoined)==null||o.call(s,n.id)}),this.on("participant.left",n=>{var s,o;(o=(s=this.config).onUserLeft)==null||o.call(s,n.id)}),this.setupRpcEventForwarding()}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))}initializeClient(){this.room=new I.Room,this.setupRoomEventListeners()}setupRoomEventListeners(){this.room&&(this.room.on(I.RoomEvent.Connected,()=>{var n,s;this.connectionState=I.ConnectionState.Connected,this.emit("connection.connected"),this.rpcManager.setRoom(this.room),(s=(n=this.currentSession)==null?void 0:n.activeModalities)!=null&&s.includes("voice")&&setTimeout(async()=>{var o;try{(o=this.room)!=null&&o.localParticipant&&(this.room.localParticipant.isMicrophoneEnabled?this.emit("track.unmuted",{source:"microphone",enabled:!0}):(await this.room.localParticipant.setMicrophoneEnabled(!0),this.emit("track.unmuted",{source:"microphone",enabled:!0})))}catch(r){console.warn("VoxketClient: Failed to enable microphone after room connection:",r)}},1e3),this.textStreamHandlersRegistered||this.setupTextStreamHandlers()}),this.room.on(I.RoomEvent.Disconnected,n=>{this.connectionState=I.ConnectionState.Disconnected,this.textStreamHandlersRegistered=!1,this.emit("connection.disconnected",n==null?void 0:n.toString())}),this.room.on(I.RoomEvent.ConnectionStateChanged,n=>{this.connectionState=n,n===I.ConnectionState.Connecting&&this.emit("connection.connecting")}),this.room.on(I.RoomEvent.ParticipantConnected,n=>{const s={id:n.identity,name:n.name||n.identity,isLocal:!1};this.emit("participant.joined",s)}),this.room.on(I.RoomEvent.ParticipantDisconnected,n=>{const s={id:n.identity,name:n.name||n.identity,isLocal:!1};this.emit("participant.left",s)}))}setupTextStreamHandlers(){if(this.room){try{this.room.registerTextStreamHandler("lk.chat",async(n,s)=>{try{const o=await n.readAll(),r={id:`msg_${Date.now()}_${s.identity||"user"}_${Math.random().toString(36).substr(2,9)}`,content:o,timestamp:new Date,sender:{id:s.identity||"user",name:s.identity||"User",type:"participant"},metadata:{topic:"lk.chat"}};this.emit("chat.message.received",r)}catch(o){console.error("VoxketClient: Failed to process lk.chat message:",o)}})}catch(n){console.warn("VoxketClient: lk.chat handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("lk.transcription",async(n,s)=>{var o,r;try{const i=`msg_${Date.now()}_agent_transcription_${Math.random().toString(36).substr(2,9)}`;let l="";const c=((o=this.currentAgentInfo)==null?void 0:o.name)||s.identity||"AI Assistant",d={id:i,content:"",timestamp:new Date,sender:{id:s.identity||"agent",name:c,type:"agent"},metadata:{topic:"lk.transcription",streaming:!0}};this.emit("chat.message.received",d);for await(const f of n){l+=f;const p=this.convertMarkdownToText(l),g={...d,content:p,metadata:{...d.metadata,streaming:!0}};this.emit("chat.message.updated",g)}const u=this.convertMarkdownToText(l),m={...d,content:u,metadata:{...d.metadata,streaming:!1}};this.emit("chat.message.updated",m)}catch(i){console.error("VoxketClient: Failed to process lk.transcription message:",i);try{const l=await n.readAll(),c=((r=this.currentAgentInfo)==null?void 0:r.name)||s.identity||"AI Assistant",d={id:`msg_${Date.now()}_agent_transcription_${Math.random().toString(36).substr(2,9)}`,content:l,timestamp:new Date,sender:{id:s.identity||"agent",name:c,type:"agent"},metadata:{topic:"lk.transcription"}};this.emit("chat.message.received",d)}catch(l){console.error("VoxketClient: Fallback failed for lk.transcription:",l)}}})}catch(n){console.warn("VoxketClient: lk.transcription handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("suggested_response",async n=>{const s=await n.readAll();let o=[];try{o=["tes","hello how are you","algebra make me learn that ","what is the meaning of life"]}catch(r){console.warn("VoxketClient: Failed to parse suggested_response:",r,s)}this.emit("suggested.response",o)})}catch(n){console.warn("VoxketClient: suggested_response handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("agent_state_changed",async(n,s)=>{const o=await n.readAll();let r={};try{r=typeof o=="string"?JSON.parse(o.replace(/'/g,'"')):o}catch(i){console.warn("VoxketClient: Failed to parse agent_state_changed:",i,o)}r.new_state==="speaking"?this.emit("agent.speaking",r):r.new_state==="thinking"&&this.emit("agent.thinking",r)})}catch(n){console.warn("VoxketClient: conversation_item_added handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("images",async(n,s)=>{try{const o=await n.readAll()}catch(o){console.error("VoxketClient: Error processing images stream:",o)}})}catch(n){console.warn("VoxketClient: images handler already registered, skipping:",n)}try{this.room.registerByteStreamHandler("images",async(n,s)=>{var o,r;try{const i=n.info,l={id:`img_${Date.now()}_${s.identity||"agent"}_${Math.random().toString(36).substr(2,9)}`,content:`�️ ${i.name||"Image"}`,sender:{id:s.identity||"agent",name:s.identity||"Agent",type:s.identity===((r=(o=this.room)==null?void 0:o.localParticipant)==null?void 0:r.identity)?"participant":"agent"},timestamp:new Date,metadata:{type:"attachment",fileName:i.name,fileSize:i.size,mimeType:i.mimeType,streamId:i.id,downloading:!0}};this.emit("chat.message.received",l),n.onProgress&&(n.onProgress=f=>{const p={...l,metadata:{...l.metadata,downloadProgress:f||0}};this.emit("chat.message.updated",p)});const c=[];for await(const f of n)c.push(f);const d=new Blob(c,{type:i.mimeType||"application/octet-stream"}),u=URL.createObjectURL(d),m={...l,metadata:{...l.metadata,downloading:!1,downloadProgress:1,downloadUrl:u,blob:d}};this.emit("chat.message.updated",m)}catch(i){console.error("VoxketClient: Error processing image attachment:",i)}})}catch(n){console.warn("VoxketClient: image handler already registered, skipping:",n)}this.textStreamHandlersRegistered=!0}}async fetchConnectionDetails(n,s,o){const r=n||this.config.agentId||"default-agent",i=s||this.config.participantName||"User",l=o||this.config.modalities||["voice"];try{const c={agent_id:r,participant_name:i,participant_metadata:{user_id:""},modality:l[0]},d=await fetch(`${this.config.baseUrl}/api/live/agent/session`,{method:"POST",headers:{accept:"application/json","X-APP-ID":this.config.appId,"X-APP-SECRET":this.config.appSecret,"Content-Type":"application/json"},body:JSON.stringify(c)});if(!d.ok){let f=`HTTP ${d.status}: Failed to fetch connection details`;try{const p=await d.json();p&&(p.error?f=`API Error: ${p.error}`:p.detail?f=`API Error: ${p.detail}`:p.message&&(f=`API Error: ${p.message}`))}catch{try{const g=await d.text();g&&(f=`API Error: ${g}`)}catch{}}throw new Error(f)}const u=await d.json();let m;return u.agent_info&&(m={id:u.agent_info.id||r,name:u.agent_info.name||"AI Assistant",avatar:u.agent_info.avatar,capabilities:u.agent_info.capabilities||["voice_interaction","text_chat"],metadata:u.agent_info.metadata||{}},this.currentAgentInfo=m),{serverUrl:u.wss_url,participantToken:u.token,voxketSessionId:u.session_id,agentInfo:m}}catch(c){console.error("VoxketClient: fetchConnectionDetails failed:",c);const d=new ee(`Failed to fetch connection details: ${c instanceof Error?c.message:"Unknown error"}`,"CONNECTION_FAILED",c);throw this.emit("connection.error",d),d}}async connect(n,s,o){var r;try{this.emit("connection.connecting");const i=await this.fetchConnectionDetails(n,s,o);return await((r=this.room)==null?void 0:r.connect(i.serverUrl,i.participantToken)),this.isConnected=!0,i}catch(i){console.error("VoxketClient: Connection failed:",i);const l=new ee(`Failed to connect to Voxket services: ${i instanceof Error?i.message:"Unknown error"}`,"CONNECTION_FAILED",i);throw this.emit("connection.error",l),l}}async disconnect(){var n;try{await((n=this.room)==null?void 0:n.disconnect()),this.isConnected=!1,this.currentSession=null,this.currentAgentInfo=null,this.textStreamHandlersRegistered=!1,this.clearChatMessages(),this.room=new I.Room,this.setupRoomEventListeners()}catch(s){const o=new ee("Failed to disconnect properly","NETWORK_ERROR",s);throw this.emit("connection.error",o),o}}async createSession(n){var s,o;try{const r=await this.connect(n.agentId,n.participantName,n.modalities),i={id:r.voxketSessionId,agentId:n.agentId,state:"connecting",startedAt:new Date,metadata:n.metadata||{},activeModalities:n.modalities||["voice"],agentInfo:r.agentInfo||this.currentAgentInfo};if(this.currentSession=i,this.emit("session.created",i),(s=n.modalities)!=null&&s.includes("voice"))try{await new Promise(l=>setTimeout(l,500)),(o=this.room)!=null&&o.localParticipant?(await this.room.localParticipant.setMicrophoneEnabled(!0,void 0,{preConnectBuffer:!0}),this.emit("track.unmuted",{source:"microphone",enabled:!0})):console.warn("VoxketClient: No local participant found, microphone not enabled")}catch(l){console.warn("VoxketClient: Failed to enable microphone, but continuing with session:",l)}return setTimeout(()=>{this.currentSession&&(this.currentSession.state="active",this.emit("session.state.changed","active",this.currentSession.state))},1e3),i}catch(r){throw console.error("VoxketClient: Failed to create session:",r),r instanceof ee?r:r instanceof TypeError&&r.message.includes("fetch")?new ee("Network connection failed","CONNECTION_FAILED",r):r instanceof Error&&r.message.includes("Failed to fetch connection details")?new ee(`API connection failed: ${r.message}`,"CONNECTION_FAILED",r):new ee(`Failed to create session: ${r instanceof Error?r.message:"Unknown error"}`,"SESSION_NOT_FOUND",r)}}async startSession(n,s){const o={agentId:n||this.config.agentId||"default-agent",participantName:(s==null?void 0:s.participantName)||this.config.participantName||"User",modalities:(s==null?void 0:s.modalities)||this.config.modalities||["voice","chat"],metadata:s==null?void 0:s.metadata};return this.createSession(o)}async endSession(){var n,s;if(!this.currentSession)return null;try{const o={sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((s=this.room)==null?void 0:s.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,o),await this.disconnect(),o}catch(o){throw new ee("Failed to end session","SESSION_NOT_FOUND",o)}}getCurrentSession(){return this.currentSession}getCurrentAgentInfo(){return this.currentAgentInfo}getChatMessages(){return[...this.chatMessages]}addChatMessage(n){this.chatMessages.some(o=>o.id===n.id)||this.chatMessages.push(n)}updateChatMessage(n){const s=this.chatMessages.findIndex(o=>o.id===n.id);s!==-1&&(this.chatMessages[s]=n)}clearChatMessages(){this.chatMessages=[],this.dismissCurrentInteraction(),this.renderedComponents.clear(),this.forceCleanupFullscreenOverlays(),this.emit("chat.history.cleared")}renderUI(n={}){var c,d,u;const s=this.resolveTarget(n.target||"body"),o=this.getTargetKey(s),r=this.renderedComponents.get(o);r&&r.target===s||this.removeUI(s);const i=(r==null?void 0:r.root)||hl.createRoot(s),l={agentId:n.agentId||this.config.agentId||"default-agent",participantName:n.participantName||this.config.participantName||"User",baseUrl:this.config.baseUrl,appSecret:this.config.appSecret,appId:this.config.appId,className:n.className,theme:typeof n.theme=="string"?n.theme:void 0,modalities:n.modality||this.config.modalities||["voice"],suportsChatInput:((c=n.modality)==null?void 0:c.includes("chat"))!==!1,suportsVideoInput:((d=n.modality)==null?void 0:d.includes("video"))===!0,suportsScreenShare:((u=n.modality)==null?void 0:u.includes("screen_share"))===!0,autoStart:n.autoStart,displayType:n.displayType||"widget",popupPosition:n.popupPosition||"bottom-right",popupTriggerText:n.popupTriggerText||"Open Chat",width:n.width,height:n.height,onDisplayTypeChange:n.onDisplayTypeChange,prompts:n.prompts,statusMessage:n.statusMessage,welcomeTitle:n.welcomeTitle,welcomeSubTitle:n.welcomeSubTitle,loadingText:n.loadingText,voxketClient:this};if(!i||typeof i.render!="function")throw new Error("Invalid React root. Make sure React 18+ is properly installed and configured.");try{i.render(y.createElement($a,{config:this.config,autoConnect:n.autoStart||!1,children:y.createElement(Oa,l)}))}catch(m){throw console.error("Error rendering Voxket widget:",m),new Error(`Failed to render Voxket widget: ${m instanceof Error?m.message:"Unknown error"}`)}this.renderedComponents.set(o,{root:i,target:s})}removeUI(n){const s=n?this.resolveTarget(n):null;if(s){const o=this.getTargetKey(s),r=this.renderedComponents.get(o);r&&(r.root.unmount(),this.renderedComponents.delete(o),s.querySelectorAll('[id*="voxket"], [class*="voxket"], .fixed.inset-0.z-50').forEach(l=>{try{l.remove()}catch(c){console.warn("Failed to remove element:",c)}}),s===document.body&&s.querySelectorAll(".fixed.z-50, .fixed.inset-0").forEach(c=>{if(c.classList.contains("bg-black")&&c.classList.contains("backdrop-blur-sm"))try{c.remove()}catch(d){console.warn("Failed to remove fixed element:",d)}}))}}removeAllUI(){for(const[n,s]of this.renderedComponents)s.root.unmount();this.renderedComponents.clear(),this.forceCleanupFullscreenOverlays()}forceCleanupFullscreenOverlays(){document.body.querySelectorAll(".fixed.inset-0.z-50").forEach(s=>{if(s.classList.contains("bg-black")&&(s.classList.contains("backdrop-blur-sm")||s.classList.contains("bg-opacity-30")))try{s.remove()}catch(o){console.warn("Failed to remove overlay:",o)}})}resolveTarget(n){if(typeof n=="string"){const s=document.querySelector(n);if(!s)throw new Error(`Target element not found: ${n}`);return s}return n}getTargetKey(n){return n.id?n.id:n.className?n.tagName+"_"+n.className.replace(/\s+/g,"_"):n.tagName+"_"+n.outerHTML.length%1e3}async sendMessage(n,s){var o;if(!this.currentSession)throw console.error("VoxketClient: No active session found"),new ee("No active session","SESSION_NOT_FOUND");if(!this.room)throw console.error("VoxketClient: No room instance found"),new ee("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw console.error("VoxketClient: No local participant found"),new ee("No local participant","CONNECTION_FAILED");this.dismissCurrentInteraction();try{const r={id:`msg_${Date.now()}`,content:n,sender:{id:"user",name:this.config.participantName||"User",type:"participant"},timestamp:new Date,metadata:s||{}},i=await((o=this.room)==null?void 0:o.localParticipant.sendText(n,{topic:"lk.chat",destinationIdentities:[]}));this.emit("chat.message.sent",r)}catch(r){throw console.error("VoxketClient: Failed to send chat message:",r),new ee("Failed to send message","NETWORK_ERROR",r)}}async sendChatMessage(n,s){return this.sendMessage(n,s)}async sendAttachments(n,s){if(!this.currentSession)throw console.error("VoxketClient: No active session found"),new ee("No active session","SESSION_NOT_FOUND");if(!this.room)throw console.error("VoxketClient: No room instance found"),new ee("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw console.error("VoxketClient: No local participant found"),new ee("No local participant","CONNECTION_FAILED");if(!n||n.length===0)throw new ee("No files provided","INVALID_PARAMETER");this.dismissCurrentInteraction();const o=n.filter(r=>r.type.startsWith("image/"));if(o.length===0)throw new ee("Only image files are allowed","INVALID_PARAMETER");o.length!==n.length&&console.warn("VoxketClient: Some non-image files were filtered out");try{const r=o.map(async(i,l)=>{const d={id:`att_${Date.now()}_${l}`,content:`📎 ${i.name}`,sender:{id:"user",name:this.config.participantName||"User",type:"participant"},timestamp:new Date,metadata:{...s,type:"attachment",fileName:i.name,fileSize:i.size,mimeType:i.type,uploading:!0}};this.emit("chat.message.sent",d);const u=await this.room.localParticipant.sendFile(i,{mimeType:i.type,topic:"images",onProgress:f=>{const p={...d,metadata:{...d.metadata,uploadProgress:f}};this.emit("chat.message.updated",p)}});try{const f=new FileReader,p=new Promise((v,E)=>{f.onload=()=>{typeof f.result=="string"?v(f.result):E(new Error("Failed to convert to base64"))},f.onerror=E});f.readAsDataURL(i);const x={type:"image",data:await p,filename:i.name,mimeType:i.type,size:i.size};await this.room.localParticipant.sendText(JSON.stringify(x),{topic:"images",destinationIdentities:[]})}catch(f){console.warn("VoxketClient: Failed to send image data to agent:",f);try{const p=`I've shared an image: ${i.name}`;await this.room.localParticipant.sendText(p,{topic:"lk.chat",destinationIdentities:[]})}catch(p){console.warn("VoxketClient: Failed to send image notification to agent:",p)}}const m={...d,metadata:{...d.metadata,uploading:!1,uploadProgress:1,streamId:u.id}};return this.emit("chat.message.updated",m),u});await Promise.all(r)}catch(r){throw console.error("VoxketClient: Failed to send attachments:",r),new ee("Failed to send attachments","NETWORK_ERROR",r)}}async sendAttachment(n,s){return this.sendAttachments([n],s)}toggleMicrophone(n){return this.setMicrophoneEnabled(n!==!1)}async setMicrophoneEnabled(n){var s,o;try{const r=(s=this.room)==null?void 0:s.localParticipant.isMicrophoneEnabled,i=n??!r;await((o=this.room)==null?void 0:o.localParticipant.setMicrophoneEnabled(i)),i?this.emit("track.unmuted",{source:"microphone",enabled:!0}):this.emit("track.muted",{source:"microphone",enabled:!1})}catch(r){throw console.error("VoxketClient: Failed to toggle microphone:",r),new ee("Failed to toggle microphone","PERMISSION_DENIED",r)}}toggleCamera(n){return this.setCameraEnabled(n!==!1)}async setCameraEnabled(n){var s,o;try{const r=(s=this.room)==null?void 0:s.localParticipant.isCameraEnabled,i=n??!r;await((o=this.room)==null?void 0:o.localParticipant.setCameraEnabled(i)),i?this.emit("track.unmuted",{source:"camera",enabled:!0}):this.emit("track.muted",{source:"camera",enabled:!1})}catch(r){throw console.error("VoxketClient: Failed to toggle camera:",r),new ee("Failed to toggle camera","PERMISSION_DENIED",r)}}async enableCamera(){return this.setCameraEnabled(!0)}async disableCamera(){return this.setCameraEnabled(!1)}async startScreenShare(){var n;try{await((n=this.room)==null?void 0:n.localParticipant.setScreenShareEnabled(!0))}catch(s){throw new ee("Failed to start screen share","PERMISSION_DENIED",s)}}async stopScreenShare(){var n;try{await((n=this.room)==null?void 0:n.localParticipant.setScreenShareEnabled(!1))}catch(s){throw new ee("Failed to stop screen share","PERMISSION_DENIED",s)}}async getAudioInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(s=>s.kind==="audioinput")}catch(n){throw new ee("Failed to get audio input devices","DEVICE_ERROR",n)}}async getVideoInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(s=>s.kind==="videoinput")}catch(n){throw new ee("Failed to get video input devices","DEVICE_ERROR",n)}}async setAudioInputDevice(n){var s;try{if(!((s=this.room)!=null&&s.localParticipant))throw new Error("Not connected to room")}catch(o){throw new ee("Failed to set audio input device","DEVICE_ERROR",o)}}async setVideoInputDevice(n){var s;try{if(!((s=this.room)!=null&&s.localParticipant))throw new Error("Not connected to room")}catch(o){throw new ee("Failed to set video input device","DEVICE_ERROR",o)}}getLocalParticipant(){var n;return((n=this.room)==null?void 0:n.localParticipant)??null}getRemoteParticipants(){var n;return Array.from(((n=this.room)==null?void 0:n.remoteParticipants.values())??[])}getPublishPermissions(){const n=this.getLocalParticipant();if(!n)return{camera:!1,microphone:!1,screenShare:!1,data:!1};const s=n.permissions;if(!s)return{camera:!0,microphone:!0,screenShare:!0,data:!0};const o=r=>!!s.canPublish&&(s.canPublishSources.length===0||s.canPublishSources.includes(r));return{camera:o(1),microphone:o(2),screenShare:o(3),data:s.canPublishData??!1}}canPublishSource(n){return this.getPublishPermissions()[n]}getRoom(){return this.room}getConnectionState(){return this.connectionState}get connected(){return this.isConnected&&this.connectionState===I.ConnectionState.Connected}getMicrophoneTrack(){const n=this.getLocalParticipant();if(!n)return null;for(const[,s]of n.trackPublications)if(s.source===I.Track.Source.Microphone)return s.track;return null}getCameraTrack(){const n=this.getLocalParticipant();if(!n)return null;for(const[,s]of n.trackPublications)if(s.source===I.Track.Source.Camera)return s.track;return null}getScreenShareTrack(){const n=this.getLocalParticipant();if(!n)return null;for(const[,s]of n.trackPublications)if(s.source===I.Track.Source.ScreenShare)return s.track;return null}get isMicrophoneEnabled(){const n=this.getMicrophoneTrack();return n?!n.isMuted:!1}get isCameraEnabled(){const n=this.getCameraTrack();return n?!n.isMuted:!1}get isScreenShareEnabled(){const n=this.getScreenShareTrack();return n?!n.isMuted:!1}registerPlugin(n){this.pluginManager.register(n)}getPluginManager(){return this.pluginManager}getParticipants(){if(!this.room)return[];const n=[];return this.room.localParticipant&&n.push({id:this.room.localParticipant.identity,name:this.room.localParticipant.name||this.room.localParticipant.identity,isLocal:!0}),this.room.remoteParticipants.forEach(s=>{n.push({id:s.identity,name:s.name||s.identity,isLocal:!1})}),n}getSessionMetrics(){var n,s;return this.currentSession?{sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((s=this.room)==null?void 0:s.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}updateConfig(n){this.config={...this.config,...n}}async startRecording(){var n;try{this.emit("recording.started",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(s){throw new ee("Failed to start recording","RECORDING_ERROR",s)}}async stopRecording(){var n;try{this.emit("recording.stopped",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(s){throw new ee("Failed to stop recording","RECORDING_ERROR",s)}}async registerFrontendRPC(n,s,o="embedded"){return this.rpcManager.registerFrontendRPC(n,s,o)}getCurrentInteraction(){return this.rpcManager.getCurrentInteraction()}dismissCurrentInteraction(){this.rpcManager.dismissCurrentInteraction()}getRegisteredRpcMethods(){return this.rpcManager.getRegisteredMethods()}unregisterRpcMethod(n){this.rpcManager.unregisterMethod(n)}registerEventListener(n,s){return this.on(n,s)}registerEventEmitter(n,s){if(!this.room)throw new Error("Room not available");try{this.room.registerTextStreamHandler(n,async o=>{try{const r=await o.readAll();s(r)}catch(r){console.error(`Error processing event for topic '${n}':`,r)}})}catch(o){console.warn(`VoxketClient: Handler for topic '${n}' may already be registered:`,o)}}convertMarkdownToText(n){if(!n)return"";let s=n;return s=s.replace(/\*\*(.*?)\*\*/g,"$1"),s=s.replace(/__(.*?)__/g,"$1"),s=s.replace(/\*(.*?)\*/g,"$1"),s=s.replace(/_(.*?)_/g,"$1"),s=s.replace(/~~(.*?)~~/g,"$1"),s=s.replace(/`([^`]+)`/g,"$1"),s=s.replace(/```[\s\S]*?```/g,""),s=s.replace(/^#{1,6}\s+/gm,""),s=s.replace(/\[([^\]]+)\]\([^)]+\)/g,"$1"),s.trim()}}const Xf=Q.create(Tf),Jf=Q.create($f),Qf=Q.create(Hf),e0=Q.create(zf);function t0({onClick:e,text:t="Open Chat",position:n="bottom-right",theme:s}){const o={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"},r=ye(s);return a.jsx(Q.button,{onClick:e,className:`fixed ${o[n]} z-50 px-4 py-2 rounded-full shadow-lg ${r.popupTrigger} transition-all duration-200 hover:scale-105`,initial:{scale:0,opacity:0},animate:{scale:1,opacity:1},exit:{scale:0,opacity:0},whileHover:{scale:1.05},whileTap:{scale:.95},children:t})}function Li({children:e,theme:t,displayType:n="widget",onClose:s,popupPosition:o="bottom-right",onExpand:r}){const i=ye(t);if(n==="fullscreen")return a.jsx("div",{className:"fixed inset-0 z-50 bg-black bg-opacity-30 backdrop-blur-sm flex items-center justify-center p-8",children:a.jsxs("div",{className:"w-full h-full max-w-6xl max-h-[90vh] rounded-2xl relative bg-transparent",children:[s&&a.jsx("button",{onClick:l=>{l.preventDefault(),l.stopPropagation(),s()},className:"absolute top-4 cursor-pointer right-4 z-[100] 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:a.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:a.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"})})}),a.jsxs("div",{id:"voice-card",className:`${i.card} w-full h-full flex flex-col rounded-xl shadow-2xl`,style:{minHeight:"600px"},children:[a.jsx("div",{className:i.cardTopGradient}),a.jsx("div",{className:i.cardPurpleBlur}),a.jsx("div",{className:i.cardPinkBlur}),a.jsx("div",{className:" flex flex-col h-full",children:e}),a.jsx("div",{className:i.cardPulse1}),a.jsx("div",{className:i.cardPulse2,style:{animationDelay:"1s"}})]})]})});if(n==="popup"){const l={"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 a.jsx("div",{className:"fixed rounded-2xl inset-0 z-50 pointer-events-none",children:a.jsxs("div",{className:`fixed rounded-2xl ${l[o]} pointer-events-auto`,children:[s&&a.jsx("button",{onClick:s,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:"×"}),a.jsxs("div",{id:"voice-card",className:`${i.card} rounded-2xl flex flex-col`,style:{width:"300px",height:"450px"},children:[a.jsx("div",{className:i.cardPurpleBlur}),a.jsx("div",{className:i.cardPinkBlur}),a.jsx("div",{className:" flex flex-col h-full",children:e}),a.jsx("div",{className:i.cardPulse1}),a.jsx("div",{className:i.cardPulse2,style:{animationDelay:"1s"}})]})]})})}return a.jsxs("div",{id:"voice-card",className:`${i.card}`,children:[r&&a.jsx("button",{onClick:r,className:"absolute top-4 right-4 z-20 w-10 h-10 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:"Enter Fullscreen",children:a.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:a.jsx("path",{d:"M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7"})})}),a.jsx("div",{className:i.cardTopGradient}),a.jsx("div",{className:i.cardPurpleBlur}),a.jsx("div",{className:i.cardPinkBlur}),e,a.jsx("div",{className:i.cardPulse1}),a.jsx("div",{className:i.cardPulse2,style:{animationDelay:"1s"}})]})}function Oa(e){if(typeof window>"u")return null;console.log("🎯 Widget component rendering with props:",{displayType:e.displayType,popupPosition:e.popupPosition,theme:e.theme});const{agentId:t,participantName:n,baseUrl:s,appSecret:o,appId:r,prompts:i,statusMessage:l,welcomeTitle:c,welcomeSubTitle:d,className:u,width:m,height:f,loadingText:p,suportsChatInput:g=!0,suportsVideoInput:x=!0,suportsScreenShare:v=!0,theme:E="vox",onSessionStart:b,onSessionEnd:S,enableSessionLogging:w=!0,onSessionLogsUpdate:C,onSessionMetricsUpdate:A,modalities:j=["voice"],displayType:k="widget",popupPosition:D="bottom-right",popupTriggerText:L="Open Chat",onPopupToggle:W,voxketClient:H,onDisplayTypeChange:Ce}=e,[ne,te]=h.useState(()=>H?!!H.getCurrentSession():!1),[se,z]=h.useState(!1),[M,G]=h.useState(t||""),[Y,V]=h.useState(n||"User"),[q,T]=h.useState(()=>H?H.getCurrentSession():null),[F,Z]=h.useState(()=>{var J,He,Me;if(H){const ce=H.getCurrentSession();if((J=ce==null?void 0:ce.activeModalities)!=null&&J.includes("chat"))return"chat";if((He=ce==null?void 0:ce.activeModalities)!=null&&He.includes("voice"))return"voice";if((Me=ce==null?void 0:ce.activeModalities)!=null&&Me.includes("video"))return"video"}return"welcome"}),[B,R]=h.useState(!1);h.useEffect(()=>{console.log("🎯 Widget displayType prop changed to:",k)},[k]),h.useEffect(()=>{console.log("📊 Session state changed:",{currentMode:F,sessionStarted:ne,loading:se,currentSession:q==null?void 0:q.id,isPopupOpen:B})},[F,ne,se,q,B]);const _=h.useMemo(()=>{if(H)return console.log("🔄 Using passed VoxketClient to preserve session state"),H;console.log("🆕 Creating new VoxketClient instance");const J={appId:r,appSecret:o,baseUrl:s,agentId:M,participantName:Y||"User",modalities:j};return new _t(J)},[H,r,o,s,M,Y,j]),K=j,O=h.useMemo(()=>_.getRoom()||new I.Room,[_]),re={suportsChatInput:g,suportsVideoInput:x,suportsScreenShare:v},{sessionMetrics:oe,sessionLogs:he,logEvent:ve}=Fa({room:O,onSessionStart:b,onSessionEnd:S,enableConsoleLogging:w,enableLocalStorage:w,voxketSessionId:q==null?void 0:q.id});h.useEffect(()=>{C&&C(he)},[he,C]),h.useEffect(()=>{A&&oe&&A(oe)},[oe,A]),h.useEffect(()=>{const J=Me=>{console.log("🔴 Room disconnected:",Me),z(!1),te(!1),T(null),Z("welcome")},He=Me=>{console.log("📹 Media devices error:",Me),Xt({title:"Allow access to your microphone/camera",description:`${Me.name}: ${Me.message}`})};return O.on(I.RoomEvent.MediaDevicesError,He),O.on(I.RoomEvent.Disconnected,J),()=>{O.off(I.RoomEvent.Disconnected,J),O.off(I.RoomEvent.MediaDevicesError,He)}},[O]);const De=async()=>{try{console.log("🎤 Starting voice session...",{agentId:M,participantName:Y}),console.log("🎤 Pre-start state:",{currentMode:F,sessionStarted:ne,loading:se}),z(!0),te(!0),Z("voice"),console.log("🎤 State after mode change:",{currentMode:"voice",sessionStarted:!0,loading:!0}),ve("USER_STARTED_VOICE_SESSION",{agentId:M,participantName:Y});const J=await _.startSession(M,{participantName:Y||"User",modalities:["voice",...x?["video"]:[]]});console.log("✅ Voice session started successfully:",J.id),T(J),z(!1),b&&b(J.id)}catch(J){console.error("❌ Failed to start voice session:",J),Xt({title:"Failed to start voice session",description:J instanceof Error?J.message:"Unknown error occurred"}),z(!1),te(!1),Z("welcome")}},Zt=async()=>{try{z(!0),te(!0),Z("chat"),ve("USER_STARTED_CHAT_SESSION",{agentId:M,participantName:Y});const J=await _.startSession(M,{participantName:Y||"User",modalities:["chat"]});T(J),z(!1),b&&b(J.id)}catch(J){console.error("Failed to start chat session:",J),Xt({title:"Failed to start chat session",description:J instanceof Error?J.message:"Unknown error occurred"}),z(!1),te(!1),Z("welcome")}},nl=async()=>{try{console.log("📺 Starting video session...",{agentId:M,participantName:Y}),console.log("📺 Pre-start state:",{currentMode:F,sessionStarted:ne,loading:se}),z(!0),te(!0),Z("video"),console.log("📺 State after mode change:",{currentMode:"video",sessionStarted:!0,loading:!0}),ve("USER_STARTED_VIDEO_SESSION",{agentId:M,participantName:Y});const J=await _.startSession(M,{participantName:Y||"User",modalities:["video","voice"]});console.log("✅ Video session started successfully:",J.id),T(J),z(!1),b&&b(J.id)}catch(J){console.error("❌ Failed to start video session:",J),Xt({title:"Failed to start video session",description:J instanceof Error?J.message:"Unknown error occurred"}),z(!1),te(!1),Z("welcome")}},St=()=>{Z("welcome"),Ce&&Ce(e.displayType||"widget"),q&&ne&&(te(!1),T(null),_.disconnect()),k==="popup"&&!B&&R(!0)},Ct=()=>{const J=!B;R(J),W&&W(J),!J&&!(q&&ne)&&(Z("welcome"),te(!1),T(null))},sl=()=>{console.log("🔄 Closing fullscreen, switching to widget display type"),e.onDisplayTypeChange?e.onDisplayTypeChange("widget"):console.warn("⚠️ No onDisplayTypeChange callback provided")},ol=()=>{e.onDisplayTypeChange&&e.onDisplayTypeChange("fullscreen")};h.useEffect(()=>{var J,He,Me;if(H&&_){console.log("🔄 Syncing widget state with existing client session state");const ce=_.getCurrentSession(),il=_.connected;console.log("🔍 Existing session state:",{hasSession:!!ce,sessionId:ce==null?void 0:ce.id,isConnected:il,activeModalities:ce==null?void 0:ce.activeModalities}),ce&&(console.log("✅ Restoring session state from existing client"),T(ce),te(!0),z(!1),(J=ce.activeModalities)!=null&&J.includes("chat")?Z("chat"):(He=ce.activeModalities)!=null&&He.includes("voice")?Z("voice"):(Me=ce.activeModalities)!=null&&Me.includes("video")&&Z("video"))}},[H,_]),h.useEffect(()=>()=>{console.log("🧹 Cleaning up widget component"),H?console.log("🔄 Widget cleanup: preserving passed client instance"):(console.log("🧹 Widget cleanup: disconnecting self-created client"),_.disconnect())},[_,H]);let xn="w-96",yn="h-[25rem]",bn={};if(m&&(m.startsWith("w-")?xn=m:(bn.width=m,xn="")),f&&(f.startsWith("h-")?yn=f:(bn.height=f,yn="")),k==="popup"&&!B)return console.log("🟡 Showing popup trigger button"),a.jsx(t0,{onClick:Ct,text:L,position:D,theme:E});console.log("🟢 Rendering widget content, displayType:",k,"isPopupOpen:",B,"currentMode:",F,"sessionStarted:",ne,"loading:",se);let vn=`voxket-widget-root theme-${E}`,Ut={scrollMargin:0,scrollPadding:0,contain:"layout style paint"};k==="widget"?(vn+=` flex items-center justify-center min-h-fit ${xn} ${yn} ${u}`,Ut={...Ut,...bn}):(vn=`${u||""}`,Ut={});const io=a.jsx(a.Fragment,{children:a.jsxs(ut,{mode:"wait",children:[F==="welcome"&&!se&&a.jsx(e0,{agentId:M,participantName:Y||"",onAgentIdChange:G,onParticipantNameChange:V,onStartCall:De,onStartChat:Zt,onStartVideo:nl,disabled:ne||se,prompts:i,statusMessage:l,title:c,subTitle:d,theme:E,modalities:K,initial:{opacity:0,y:0},animate:{opacity:1,y:0},exit:{opacity:0,y:40},transition:{duration:.3,ease:"easeInOut"}},"welcome"),F==="voice"&&a.jsxs(ue.RoomContext.Provider,{value:O,children:[a.jsx(ue.RoomAudioRenderer,{}),a.jsx(ue.StartAudio,{label:"Start Audio"}),a.jsx(Xf,{loadingText:p,participantName:Y||"User",capabilities:re,sessionStarted:ne,disabled:!ne,theme:E,client:_,displayType:k,onBack:k==="popup"?Ct:St,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"session-view")]}),F==="chat"&&a.jsx(Jf,{client:_,theme:E,displayType:k,onBack:k==="popup"?Ct:St,onEndChat:St,disabled:!ne,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"chat-view"),F==="video"&&a.jsxs(ue.RoomContext.Provider,{value:O,children:[a.jsx(ue.RoomAudioRenderer,{}),a.jsx(ue.StartAudio,{label:"Start Audio"}),a.jsx(Qf,{client:_,theme:E,displayType:k,onBack:k==="popup"?Ct:St,onEndCall:St,disabled:!ne,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"video-view")]})]})});return k==="fullscreen"||k==="popup"?(console.log("📱 Rendering fullscreen/popup mode, displayType:",k),a.jsx(Li,{theme:E,displayType:k,popupPosition:D,onClose:k==="fullscreen"?sl:Ct,children:io})):(console.log("📦 Rendering widget mode"),a.jsx("div",{className:vn,style:Ut,children:a.jsx(Li,{theme:E,displayType:k,popupPosition:D,onExpand:ol,children:io})}))}class _a extends h.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 h.createElement(t,{error:this.state.error})}return h.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}}function n0({logs:e,onClear:t,onExport:n}){const[s,o]=y.useState(!1),[r,i]=y.useState(""),l=e.filter(c=>!r||c.event.toLowerCase().includes(r.toLowerCase()));return s?a.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",children:a.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[80vh] flex flex-col m-4",children:[a.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[a.jsxs("h2",{className:"text-lg font-semibold",children:["Session Logs (",e.length,")"]}),a.jsxs("div",{className:"flex items-center gap-2",children:[a.jsx("input",{type:"text",placeholder:"Filter events...",value:r,onChange:c=>i(c.target.value),className:"px-3 py-1 border rounded text-sm"}),a.jsx("button",{onClick:t,className:"px-3 py-1 bg-red-600 text-white rounded text-sm hover:bg-red-700",children:"Clear"}),a.jsx("button",{onClick:n,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700",children:"Export"}),a.jsx("button",{onClick:()=>o(!1),className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700",children:"Close"})]})]}),a.jsx("div",{className:"flex-1 overflow-auto p-4",children:l.length===0?a.jsx("p",{className:"text-gray-500 text-center py-8",children:"No logs found"}):a.jsx("div",{className:"space-y-2",children:l.map((c,d)=>a.jsxs("div",{className:"border rounded p-3 text-sm",children:[a.jsxs("div",{className:"flex items-center justify-between mb-1",children:[a.jsx("span",{className:"font-semibold text-blue-600",children:c.event}),a.jsx("span",{className:"text-gray-500 text-xs",children:new Date(c.timestamp).toLocaleTimeString()})]}),c.sessionId&&a.jsxs("div",{className:"text-xs text-gray-600 mb-1",children:["Session: ",c.sessionId]}),c.data&&a.jsx("div",{className:"bg-gray-50 p-2 rounded text-xs",children:a.jsx("pre",{className:"whitespace-pre-wrap overflow-auto",children:JSON.stringify(c.data,null,2)})})]},d))})})]})}):a.jsxs("button",{onClick:()=>o(!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 s0({metrics:e}){return e?a.jsxs("div",{className:"bg-gray-100 p-4 rounded-lg",children:[a.jsx("h3",{className:"font-semibold mb-2",children:"Current Session"}),a.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-600",children:"Session ID:"}),a.jsx("div",{className:"font-mono text-xs",children:e.sessionId})]}),a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-600",children:"Start Time:"}),a.jsx("div",{children:new Date(e.startTime).toLocaleString()})]}),a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-600",children:"Messages:"}),a.jsx("div",{children:e.totalMessages})]}),a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-600",children:"Participants:"}),a.jsx("div",{children:e.participantCount})]}),a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-600",children:"Connection Issues:"}),a.jsx("div",{children:e.connectionIssues})]}),a.jsxs("div",{children:[a.jsx("span",{className:"text-gray-600",children:"Duration:"}),a.jsxs("div",{children:[Math.round((Date.now()-new Date(e.startTime).getTime())/1e3),"s"]})]})]})]}):null}function nt(){const{currentSession:e,sessionState:t,sessionMetrics:n,createSession:s,endSession:o}=Ie(),r=y.useCallback(async(l,c)=>await s(l,c),[s]),i=y.useCallback(async()=>await o(),[o]);return{session:e,state:t,metrics:n,isActive:e!==null&&t!=="disconnected",isConnecting:t==="connecting",isConnected:t==="connected"||t==="active",start:r,stop:i}}function Ha(){const{sessionMetrics:e,currentSession:t}=Ie();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 Za(){const{setMicrophoneEnabled:e,client:t}=Ie(),[n,s]=y.useState(!1),[o,r]=y.useState(!1),i=y.useCallback(async()=>{if(!o){r(!0);try{const d=!n;await e(d),s(d)}catch(d){console.error("Failed to toggle microphone:",d)}finally{r(!1)}}},[n,o,e]),l=y.useCallback(async()=>{if(!(n||o)){r(!0);try{await e(!0),s(!0)}catch(d){console.error("Failed to enable microphone:",d)}finally{r(!1)}}},[n,o,e]),c=y.useCallback(async()=>{if(!(!n||o)){r(!0);try{await e(!1),s(!1)}catch(d){console.error("Failed to disable microphone:",d)}finally{r(!1)}}},[n,o,e]);return{isEnabled:n,isLoading:o,toggle:i,enable:l,disable:c}}function Ua(){const{setCameraEnabled:e}=Ie(),[t,n]=y.useState(!1),[s,o]=y.useState(!1),r=y.useCallback(async()=>{if(!s){o(!0);try{const c=!t;await e(c),n(c)}catch(c){console.error("Failed to toggle camera:",c)}finally{o(!1)}}},[t,s,e]),i=y.useCallback(async()=>{if(!(t||s)){o(!0);try{await e(!0),n(!0)}catch(c){console.error("Failed to enable camera:",c)}finally{o(!1)}}},[t,s,e]),l=y.useCallback(async()=>{if(!(!t||s)){o(!0);try{await e(!1),n(!1)}catch(c){console.error("Failed to disable camera:",c)}finally{o(!1)}}},[t,s,e]);return{isEnabled:t,isLoading:s,toggle:r,enable:i,disable:l}}function za(){const{startScreenShare:e,stopScreenShare:t}=Ie(),[n,s]=y.useState(!1),[o,r]=y.useState(!1),i=y.useCallback(async()=>{if(!(n||o)){r(!0);try{await e(),s(!0)}catch(d){console.error("Failed to start screen share:",d)}finally{r(!1)}}},[n,o,e]),l=y.useCallback(async()=>{if(!(!n||o)){r(!0);try{await t(),s(!1)}catch(d){console.error("Failed to stop screen share:",d)}finally{r(!1)}}},[n,o,t]),c=y.useCallback(async()=>{n?await l():await i()},[n,i,l]);return{isSharing:n,isLoading:o,start:i,stop:l,toggle:c}}function o0(){const{client:e}=Ie(),[t,n]=y.useState({tracks:[],layout:{type:"grid",showLocalVideo:!0,aspectRatio:"16:9"},isRecording:!1}),s=y.useMemo(()=>t.tracks.find(x=>x.isLocal),[t.tracks]),o=y.useMemo(()=>t.tracks.filter(x=>!x.isLocal),[t.tracks]),r=y.useCallback(async()=>{try{s!=null&&s.isEnabled?await(e==null?void 0:e.disableCamera()):await(e==null?void 0:e.enableCamera())}catch(x){throw console.error("Failed to toggle camera:",x),x}},[e,s]),i=y.useCallback(async()=>{try{t.tracks.find(v=>v.isScreenShare)?await(e==null?void 0:e.stopScreenShare()):await(e==null?void 0:e.startScreenShare())}catch(x){throw console.error("Failed to toggle screen share:",x),x}},[e,t.tracks]),l=y.useCallback(x=>{n(v=>({...v,layout:x}))},[]),c=y.useCallback(x=>{n(v=>({...v,pinnedTrack:x}))},[]),d=y.useCallback(()=>{n(x=>({...x,pinnedTrack:void 0}))},[]),u=y.useCallback(async()=>{try{await(e==null?void 0:e.startRecording()),n(x=>({...x,isRecording:!0}))}catch(x){throw console.error("Failed to start recording:",x),x}},[e]),m=y.useCallback(async()=>{try{await(e==null?void 0:e.stopRecording()),n(x=>({...x,isRecording:!1}))}catch(x){throw console.error("Failed to stop recording:",x),x}},[e]),f=y.useCallback(x=>t.tracks.find(v=>v.id===x),[t.tracks]),p=y.useCallback(x=>t.tracks.filter(v=>v.participantId===x),[t.tracks]),g=y.useCallback(x=>x.isEnabled&&t.tracks.includes(x),[t.tracks]);return y.useEffect(()=>{if(!e)return;const x=b=>{n(S=>({...S,tracks:[...S.tracks.filter(w=>w.id!==b.id),b]}))},v=b=>{n(S=>{var w;return{...S,tracks:S.tracks.filter(C=>C.id!==b),pinnedTrack:((w=S.pinnedTrack)==null?void 0:w.id)===b?void 0:S.pinnedTrack}})},E=b=>{n(S=>({...S,tracks:S.tracks.map(w=>w.id===b.id?b:w)}))};return e.on("videoTrackAdded",x),e.on("videoTrackRemoved",v),e.on("videoTrackUpdated",E),()=>{e.off("videoTrackAdded",x),e.off("videoTrackRemoved",v),e.off("videoTrackUpdated",E)}},[e]),{tracks:t.tracks,localTrack:s,remoteTraracks:o,pinnedTrack:t.pinnedTrack,layout:t.layout,isRecording:t.isRecording,toggleCamera:r,toggleScreenShare:i,setLayout:l,pinTrack:c,unpinTrack:d,startRecording:u,stopRecording:m,getTrackById:f,getTracksByParticipant:p,isTrackActive:g}}function gn(){const{chatMessages:e,sendChatMessage:t,currentSession:n}=Ie(),[s,o]=y.useState(!1),r=y.useCallback(async d=>{if(!(!d.trim()||s||!n)){o(!0);try{await t(d.trim())}catch(u){throw console.error("Failed to send chat message:",u),u}finally{o(!1)}}},[t,s,n]),{userMessages:i,agentMessages:l,allMessages:c}=y.useMemo(()=>{const d=e.filter(m=>m.sender.type==="participant"),u=e.filter(m=>m.sender.type==="agent");return{userMessages:d,agentMessages:u,allMessages:e}},[e]);return{messages:c,userMessages:i,agentMessages:l,messageCount:c.length,isSending:s,canSend:!!n&&!s,send:r}}function i0(){const{send:e,isSending:t,canSend:n}=gn(),[s,o]=y.useState(""),r=y.useCallback(async()=>{if(!(!s.trim()||!n))try{await e(s),o("")}catch(l){throw l}},[s,e,n]),i=y.useCallback(l=>{l.key==="Enter"&&!l.shiftKey&&(l.preventDefault(),r())},[r]);return{value:s,setValue:o,send:r,handleKeyPress:i,isSending:t,canSend:n&&s.trim().length>0}}function to(){const{isConnected:e,isConnecting:t,connectionError:n,connect:s,disconnect:o}=Ie(),r=y.useCallback(async()=>{if(!(e||t))try{await s()}catch(l){throw console.error("Failed to connect:",l),l}},[s,e,t]),i=y.useCallback(async()=>{if(e)try{await o()}catch(l){throw console.error("Failed to disconnect:",l),l}},[o,e]);return{isConnected:e,isConnecting:t,isDisconnected:!e&&!t,error:n,hasError:!!n,connect:r,disconnect:i}}function Wa(){const{participants:e}=Ie();return{participants:e,count:e.length,localParticipant:e.find(t=>t.isLocal),remoteParticipants:e.filter(t=>!t.isLocal)}}const Ka=y.createContext({}),Ht=()=>y.useContext(Ka);function Ga({children:e,...t}){return a.jsx(Ka.Provider,{value:t,children:e})}function sn({name:e,children:t,fallback:n,className:s}){return a.jsx("div",{className:`voxket-slot voxket-slot--${e} ${s||""}`,children:t||n})}function Ya(e,t={}){return Object.assign(e,t)}function qa({showMicrophoneControl:e=!0,showCameraControl:t=!0,showScreenShareControl:n=!0,showSessionActions:s=!0,customControls:o,className:r=""}){const i=nt(),l=Za(),c=Ua(),d=za(),u=Ht(),m=["voxket-session-controls",`voxket-session-controls--${u.variant||"default"}`,`voxket-session-controls--${u.size||"md"}`,i.isActive?"voxket-session-controls--active":"voxket-session-controls--inactive",r].filter(Boolean).join(" ");return!i.isActive&&!s?a.jsx("div",{className:m,children:a.jsx("div",{className:"voxket-controls-inactive",children:a.jsx("p",{children:"Controls available during active session"})})}):a.jsxs("div",{className:m,children:[s&&a.jsx("div",{className:"voxket-session-actions",children:i.isActive?a.jsx("button",{onClick:i.stop,className:"voxket-button voxket-button--danger",children:"End Session"}):a.jsx(r0,{})}),i.isActive&&a.jsxs("div",{className:"voxket-media-controls",children:[e&&a.jsxs("button",{onClick:l.toggle,disabled:l.isLoading,className:`voxket-button voxket-button--media ${l.isEnabled?"voxket-button--active":""}`,title:l.isEnabled?"Mute microphone":"Unmute microphone",children:[a.jsx("span",{className:"voxket-icon",children:"🎤"}),l.isLoading?"Loading...":l.isEnabled?"Mute":"Unmute"]}),t&&a.jsxs("button",{onClick:c.toggle,disabled:c.isLoading,className:`voxket-button voxket-button--media ${c.isEnabled?"voxket-button--active":""}`,title:c.isEnabled?"Stop camera":"Start camera",children:[a.jsx("span",{className:"voxket-icon",children:"📹"}),c.isLoading?"Loading...":c.isEnabled?"Stop Video":"Start Video"]}),n&&a.jsxs("button",{onClick:d.toggle,disabled:d.isLoading,className:`voxket-button voxket-button--media ${d.isSharing?"voxket-button--active":""}`,title:d.isSharing?"Stop screen share":"Start screen share",children:[a.jsx("span",{className:"voxket-icon",children:"🖥️"}),d.isLoading?"Loading...":d.isSharing?"Stop Share":"Share Screen"]})]}),o&&a.jsx("div",{className:"voxket-custom-controls",children:o})]})}function r0(){nt();const[e,t]=y.useState(!1),n=async()=>{t(!0);try{console.log("Start session - agentId needed")}catch(s){console.error("Failed to start session:",s)}finally{t(!1)}};return a.jsx("button",{onClick:n,disabled:e,className:"voxket-button voxket-button--primary",children:e?"Starting...":"Start Session"})}function no({showConnectionStatus:e=!0,showSessionInfo:t=!0,showAgentInfo:n=!0,className:s=""}){const o=nt(),r=to(),i=Ht(),l=["voxket-session-header",`voxket-session-header--${i.variant||"default"}`,`voxket-session-header--${i.size||"md"}`,s].filter(Boolean).join(" ");return a.jsxs("div",{className:l,children:[e&&a.jsxs("div",{className:"voxket-connection-status",children:[a.jsx("div",{className:`voxket-status-indicator ${r.isConnected?"connected":"disconnected"}`}),a.jsx("span",{className:"voxket-status-text",children:r.isConnecting?"Connecting...":r.isConnected?"Connected":"Disconnected"})]}),t&&o.session&&a.jsxs("div",{className:"voxket-session-info",children:[a.jsxs("div",{className:"voxket-session-id",children:["Session: ",o.session.id.slice(-8)]}),a.jsxs("div",{className:"voxket-session-state",children:["State: ",o.state]})]}),n&&o.session&&a.jsxs("div",{className:"voxket-agent-info",children:[a.jsxs("div",{className:"voxket-agent-id",children:["Agent: ",o.session.agentId]}),a.jsxs("div",{className:"voxket-modalities",children:["Modalities: ",o.session.activeModalities.join(", ")]})]}),r.error&&a.jsxs("div",{className:"voxket-error-message",children:["Error: ",r.error.message]})]})}function so({showChat:e=!0,showTranscriptions:t=!1,customContent:n,className:s=""}){const o=nt(),r=gn(),i=Ht(),l=["voxket-session-content",`voxket-session-content--${i.variant||"default"}`,`voxket-session-content--${i.size||"md"}`,s].filter(Boolean).join(" ");return o.isActive?a.jsx("div",{className:l,children:n||a.jsxs(a.Fragment,{children:[e&&a.jsxs("div",{className:"voxket-chat-container",children:[a.jsxs("div",{className:"voxket-chat-messages",children:[r.messages.map(c=>a.jsxs("div",{className:`voxket-message voxket-message--${c.sender.type}`,children:[a.jsxs("div",{className:"voxket-message-header",children:[a.jsx("span",{className:"voxket-message-sender",children:c.sender.name}),a.jsx("span",{className:"voxket-message-time",children:c.timestamp.toLocaleTimeString()})]}),a.jsx("div",{className:"voxket-message-content",children:c.content})]},c.id)),r.messages.length===0&&a.jsx("div",{className:"voxket-empty-messages",children:a.jsx("p",{children:"No messages yet. Start the conversation!"})})]}),a.jsx(a0,{})]}),t&&a.jsx("div",{className:"voxket-transcriptions",children:a.jsx("div",{className:"voxket-transcription-placeholder",children:a.jsx("p",{children:"Voice transcriptions will appear here"})})})]})}):a.jsx("div",{className:l,children:a.jsx("div",{className:"voxket-inactive-state",children:a.jsxs("div",{className:"voxket-inactive-message",children:[a.jsx("h3",{children:"Start a conversation"}),a.jsx("p",{children:"Begin a session to start chatting with the AI agent"})]})})})}function a0(){const e=gn(),[t,n]=y.useState(""),s=async()=>{if(!(!t.trim()||!e.canSend))try{await e.send(t),n("")}catch(r){console.error("Failed to send message:",r)}},o=r=>{r.key==="Enter"&&!r.shiftKey&&(r.preventDefault(),s())};return a.jsxs("div",{className:"voxket-chat-input",children:[a.jsx("input",{type:"text",value:t,onChange:r=>n(r.target.value),onKeyPress:o,placeholder:"Type your message...",disabled:!e.canSend,className:"voxket-input"}),a.jsx("button",{onClick:s,disabled:!e.canSend||!t.trim(),className:"voxket-send-button",children:e.isSending?"Sending...":"Send"})]})}function oo({showMetrics:e=!0,showParticipants:t=!0,showStatus:n=!0,customFooter:s,className:o=""}){const r=nt(),i=Ha(),l=Wa(),c=Ht(),d=["voxket-session-footer",`voxket-session-footer--${c.variant||"default"}`,`voxket-session-footer--${c.size||"md"}`,o].filter(Boolean).join(" ");return r.isActive?a.jsx("div",{className:d,children:s||a.jsxs(a.Fragment,{children:[n&&a.jsxs("div",{className:"voxket-session-status",children:[a.jsx("div",{className:"voxket-status-indicator voxket-status-indicator--active"}),a.jsx("span",{className:"voxket-status-text",children:"Session Active"})]}),e&&i.metrics&&a.jsxs("div",{className:"voxket-session-metrics",children:[a.jsxs("div",{className:"voxket-metric",children:[a.jsx("span",{className:"voxket-metric-label",children:"Duration:"}),a.jsx("span",{className:"voxket-metric-value",children:l0(i.duration||0)})]}),a.jsxs("div",{className:"voxket-metric",children:[a.jsx("span",{className:"voxket-metric-label",children:"Messages:"}),a.jsx("span",{className:"voxket-metric-value",children:i.metrics.messageCount})]})]}),t&&a.jsxs("div",{className:"voxket-participants-info",children:[a.jsxs("span",{className:"voxket-participants-count",children:[l.count," participant",l.count!==1?"s":""]}),l.remoteParticipants.length>0&&a.jsx("div",{className:"voxket-participant-list",children:l.remoteParticipants.map(u=>a.jsx("span",{className:"voxket-participant-name",children:u.name},u.id))})]})]})}):a.jsx("div",{className:d,children:a.jsx("div",{className:"voxket-footer-inactive",children:a.jsx("span",{className:"voxket-status-text",children:"Ready to start session"})})})}function l0(e){const t=Math.floor(e/1e3),n=Math.floor(t/60),s=Math.floor(n/60);return s>0?`${s}:${(n%60).toString().padStart(2,"0")}:${(t%60).toString().padStart(2,"0")}`:`${n}:${(t%60).toString().padStart(2,"0")}`}function c0({agentId:e,sessionConfig:t,autoStart:n=!1,onSessionStart:s,onSessionEnd:o,variant:r="default",size:i="md",theme:l,className:c="",children:d}){var p;const u=nt(),m=to();y.useEffect(()=>{n&&e&&m.isConnected&&!u.isActive&&u.start(e,t).catch(console.error)},[n,e,m.isConnected,u.isActive]),y.useEffect(()=>{var g;(g=u.session)!=null&&g.id&&s&&s(u.session.id)},[(p=u.session)==null?void 0:p.id,s]),y.useEffect(()=>()=>{u.isActive&&o&&u.stop().then(o).catch(console.error)},[]);const f=["voxket-session",`voxket-session--${r}`,`voxket-session--${i}`,u.isActive?"voxket-session--active":"voxket-session--inactive",c].filter(Boolean).join(" ");return a.jsx(Ga,{variant:r,size:i,theme:l,className:c,children:a.jsx("div",{className:f,children:d||a.jsxs(a.Fragment,{children:[a.jsx(sn,{name:"header",fallback:a.jsx(no,{})}),a.jsx(sn,{name:"content",fallback:a.jsx(so,{})}),a.jsx(sn,{name:"footer",fallback:a.jsx(oo,{})})]})})})}const Xa=Ya(c0,{Header:no,Content:so,Footer:oo,Controls:qa}),tt={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)"}},ms={...tt,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)"}},fs={...tt,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"}},Ja=y.createContext(null),Qa=()=>{const e=y.useContext(Ja);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};function d0({theme:e="default",themes:t={},children:n,cssVariables:s=!0,className:o=""}){const[r,i]=y.useState(()=>{const f={default:tt,dark:ms,enterprise:fs,...t};return typeof e=="string"?f[e]||tt:e}),[l,c]=y.useState(()=>({default:tt,dark:ms,enterprise:fs,...t})),d=f=>{if(typeof f=="string"){const p=l[f];p&&i(p)}else i(f)},u=f=>{c(p=>({...p,[f.name]:f}))};y.useEffect(()=>{if(s&&typeof document<"u"){const f=document.documentElement;Object.entries(el(r)).forEach(([p,g])=>{f.style.setProperty(`--voxket-${p}`,g)})}},[r,s]);const m={theme:r,setTheme:d,themes:l,registerTheme:u};return a.jsx(Ja.Provider,{value:m,children:a.jsx("div",{className:`voxket-theme voxket-theme--${r.name} ${o}`,children:n})})}function el(e){const t={},n=(s,o="")=>{for(const[r,i]of Object.entries(s)){const l=o?`${o}-${r}`:r;typeof i=="object"&&i!==null&&!Array.isArray(i)?n(i,l):t[l]=String(i)}};return n(e),t}function u0(e=tt,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 h0(e){var n;const{theme:t}=Qa();return((n=t.components)==null?void 0:n[e])||{}}const m0=eo("voice-modality","voice",{onActivate:async e=>{const t=e.config;t.enableTranscription&&f0(e),t.enableVoiceActivation&&p0(e,t),console.log("Voice modality activated",t)},onDeactivate:async e=>{console.log("Voice modality deactivated")},onMessage:async(e,t)=>{t.type==="audio"&&g0(e,t)}});function f0(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 p0(e,t){const n=t.silenceThreshold||-50;console.log("Voice activation setup with threshold:",n)}function g0(e,t){console.log("Playing audio response:",t.content)}const x0=eo("chat-modality","chat",{onActivate:async e=>{const t=e.config;t.enableRichText&&y0(),t.enableFileUpload&&b0(e),t.enableCustomComponents&&v0(),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"?w0(e,t):t.type==="text"&&n.enableRichText&&S0(e,t)}});function y0(e){console.log("Rich text support enabled")}function b0(e){console.log("File upload enabled"),e.on("chat.file.uploaded",t=>{console.log("File uploaded:",t.name)})}function v0(e){console.log("Custom components enabled");const t=new Map;t.set("quick-actions",C0),t.set("form",k0),t.set("card",j0),t.set("chart",E0)}function w0(e,t){const{componentType:n,props:s}=t.metadata;console.log("Rendering custom component:",n,s),e.emit("chat.component.render",{type:n,props:s,timestamp:new Date})}function S0(e,t){console.log("Processing rich text message:",t.content)}function C0(e){return{type:"quick-actions",actions:e.actions||[],layout:e.layout||"horizontal"}}function k0(e){return{type:"form",fields:e.fields||[],submitAction:e.submitAction,validation:e.validation}}function j0(e){return{type:"card",title:e.title,content:e.content,actions:e.actions,variant:e.variant||"default"}}function E0(e){return{type:"chart",chartType:e.chartType||"line",data:e.data,options:e.options}}function on({track:e,participantName:t,showControls:n=!0,showName:s=!0,showMuteIndicator:o=!0,isPinned:r=!1,className:i="",onClick:l,onPin:c,onUnpin:d}){const u=y.useRef(null),[m,f]=y.useState(!1);y.useEffect(()=>{if(!u.current||!e.isEnabled)return;const v=u.current;return v.srcObject=null,()=>{v.srcObject&&(v.srcObject=null)}},[e]);const p=()=>{l==null||l(e)},g=v=>{v.stopPropagation(),r?d==null||d(e):c==null||c(e)},x=["voxket-video-tile",e.isLocal?"voxket-video-tile--local":"voxket-video-tile--remote",e.isScreenShare?"voxket-video-tile--screen-share":"voxket-video-tile--camera",r?"voxket-video-tile--pinned":"",e.isEnabled?"":"voxket-video-tile--disabled",m?"voxket-video-tile--hovered":"",i].filter(Boolean).join(" ");return a.jsxs("div",{className:x,onClick:p,onMouseEnter:()=>f(!0),onMouseLeave:()=>f(!1),style:{aspectRatio:e.dimensions?`${e.dimensions.width} / ${e.dimensions.height}`:"16 / 9"},children:[a.jsx("video",{ref:u,className:"voxket-video-element",autoPlay:!0,playsInline:!0,muted:e.isLocal}),!e.isEnabled&&a.jsxs("div",{className:"voxket-video-placeholder",children:[a.jsx("div",{className:"voxket-video-placeholder-icon",children:e.isScreenShare?"🖥️":"📹"}),a.jsx("p",{className:"voxket-video-placeholder-text",children:e.isScreenShare?"Screen sharing paused":"Camera off"})]}),a.jsxs("div",{className:"voxket-video-overlay",children:[s&&t&&a.jsxs("div",{className:"voxket-video-name",children:[t,e.isLocal&&" (You)"]}),o&&!e.isEnabled&&a.jsx("div",{className:"voxket-video-mute-indicator",children:"🔇"}),n&&(m||r)&&a.jsxs("div",{className:"voxket-video-controls",children:[a.jsx("button",{className:`voxket-video-control-btn ${r?"voxket-video-control-btn--active":""}`,onClick:g,title:r?"Unpin video":"Pin video",children:"📌"}),e.isScreenShare&&a.jsx("div",{className:"voxket-video-indicator",children:"🖥️"}),e.source&&a.jsx("div",{className:"voxket-video-source",children:e.source})]})]}),!e.isEnabled&&a.jsx("div",{className:"voxket-video-loading",children:a.jsx("div",{className:"voxket-spinner"})})]})}function A0({tracks:e,layout:t,className:n="",onLayoutChange:s,onTrackClick:o,maxVisibleTracks:r=9,showPagination:i=!0}){const[l,c]=y.useState(0),[d,u]=y.useState(null),m=y.useMemo(()=>{let b=[...e];t.type==="speaker"&&d&&(b=[d,...e.filter(C=>C.id!==d.id)]);const S=l*r,w=S+r;return b.slice(S,w)},[e,t,d,l,r]),f=Math.ceil(e.length/r),p=y.useMemo(()=>{const b=m.length;switch(t.type){case"grid":const S=Math.ceil(Math.sqrt(b)),w=Math.ceil(b/S);return{display:"grid",gridTemplateColumns:`repeat(${S}, 1fr)`,gridTemplateRows:`repeat(${w}, 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,m.length]),g=b=>{u(b)},x=()=>{u(null)},v=b=>{s==null||s({...t,type:b})},E=["voxket-video-grid",`voxket-video-grid--${t.type}`,`voxket-video-grid--${m.length}-tracks`,n].filter(Boolean).join(" ");return e.length===0?a.jsx("div",{className:"voxket-video-grid-empty",children:a.jsxs("div",{className:"voxket-video-grid-empty-content",children:[a.jsx("div",{className:"voxket-video-grid-empty-icon",children:"📹"}),a.jsx("p",{children:"No video tracks available"})]})}):a.jsxs("div",{className:E,children:[a.jsxs("div",{className:"voxket-video-grid-controls",children:[a.jsx("div",{className:"voxket-video-layout-controls",children:["grid","speaker","sidebar","gallery"].map(b=>a.jsx("button",{className:`voxket-layout-btn ${t.type===b?"voxket-layout-btn--active":""}`,onClick:()=>v(b),title:`Switch to ${b} layout`,children:M0(b)},b))}),a.jsxs("div",{className:"voxket-video-count",children:[e.length," participant",e.length!==1?"s":""]})]}),a.jsx("div",{className:"voxket-video-grid-content",style:p,children:t.type==="speaker"&&d?a.jsxs(a.Fragment,{children:[a.jsx("div",{className:"voxket-video-speaker-main",children:a.jsx(on,{track:d,participantName:`Participant ${d.participantId}`,isPinned:!0,onClick:o,onUnpin:x})}),a.jsx("div",{className:"voxket-video-speaker-sidebar",children:m.filter(b=>b.id!==d.id).map(b=>a.jsx(on,{track:b,participantName:`Participant ${b.participantId}`,showControls:!1,onClick:o,onPin:g},b.id))})]}):m.map(b=>a.jsx(on,{track:b,participantName:`Participant ${b.participantId}`,isPinned:(d==null?void 0:d.id)===b.id,onClick:o,onPin:g,onUnpin:x},b.id))}),i&&f>1&&a.jsxs("div",{className:"voxket-video-pagination",children:[a.jsx("button",{className:"voxket-pagination-btn",onClick:()=>c(Math.max(0,l-1)),disabled:l===0,children:"←"}),a.jsxs("span",{className:"voxket-pagination-info",children:["Page ",l+1," of ",f]}),a.jsx("button",{className:"voxket-pagination-btn",onClick:()=>c(Math.min(f-1,l+1)),disabled:l===f-1,children:"→"})]})]})}function M0(e){switch(e){case"grid":return"⊞";case"speaker":return"🎤";case"sidebar":return"⫸";case"gallery":return"⊡";case"picture-in-picture":return"⧉";default:return"⊞"}}function T0({localTrack:e,onToggleCamera:t,onToggleScreenShare:n,onLayoutChange:s,showLayoutControls:o=!0,showCameraControls:r=!0,showScreenShareControls:i=!0,className:l=""}){const c=["voxket-video-controls",l].filter(Boolean).join(" "),d=u=>{s==null||s({type:u,showLocalVideo:!0,aspectRatio:"16:9"})};return a.jsxs("div",{className:c,children:[r&&a.jsxs("div",{className:"voxket-video-controls-section",children:[a.jsx("h4",{className:"voxket-video-controls-title",children:"Camera"}),a.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:[a.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isEnabled?"📹":"📷"}),a.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isEnabled?"Camera On":"Camera Off"})]}),(e==null?void 0:e.dimensions)&&a.jsxs("div",{className:"voxket-video-info",children:[e.dimensions.width," × ",e.dimensions.height]})]}),i&&a.jsxs("div",{className:"voxket-video-controls-section",children:[a.jsx("h4",{className:"voxket-video-controls-title",children:"Screen Share"}),a.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:[a.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isScreenShare?"🛑":"🖥️"}),a.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isScreenShare?"Stop Sharing":"Share Screen"})]})]}),o&&a.jsxs("div",{className:"voxket-video-controls-section",children:[a.jsx("h4",{className:"voxket-video-controls-title",children:"Layout"}),a.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:m,label:f})=>a.jsxs("button",{className:"voxket-layout-control-btn",onClick:()=>d(u),title:`Switch to ${f} layout`,children:[a.jsx("span",{className:"voxket-control-icon",children:m}),a.jsx("span",{className:"voxket-control-label",children:f})]},u))})]}),a.jsxs("div",{className:"voxket-video-controls-section",children:[a.jsx("h4",{className:"voxket-video-controls-title",children:"Video Settings"}),a.jsxs("div",{className:"voxket-video-settings",children:[a.jsxs("div",{className:"voxket-setting-group",children:[a.jsx("label",{className:"voxket-setting-label",children:"Quality"}),a.jsxs("select",{className:"voxket-setting-select",children:[a.jsx("option",{value:"high",children:"High (720p)"}),a.jsx("option",{value:"medium",children:"Medium (480p)"}),a.jsx("option",{value:"low",children:"Low (240p)"})]})]}),a.jsxs("div",{className:"voxket-setting-group",children:[a.jsx("label",{className:"voxket-setting-label",children:"Frame Rate"}),a.jsxs("select",{className:"voxket-setting-select",children:[a.jsx("option",{value:"30",children:"30 fps"}),a.jsx("option",{value:"15",children:"15 fps"}),a.jsx("option",{value:"10",children:"10 fps"})]})]}),a.jsxs("div",{className:"voxket-setting-group",children:[a.jsx("label",{className:"voxket-setting-label",children:"Bandwidth"}),a.jsxs("select",{className:"voxket-setting-select",children:[a.jsx("option",{value:"unlimited",children:"Unlimited"}),a.jsx("option",{value:"1000",children:"1 Mbps"}),a.jsx("option",{value:"500",children:"500 Kbps"}),a.jsx("option",{value:"250",children:"250 Kbps"})]})]})]})]}),a.jsxs("div",{className:"voxket-video-controls-section",children:[a.jsx("h4",{className:"voxket-video-controls-title",children:"Statistics"}),a.jsxs("div",{className:"voxket-video-stats",children:[a.jsxs("div",{className:"voxket-stat-item",children:[a.jsx("span",{className:"voxket-stat-label",children:"Resolution:"}),a.jsx("span",{className:"voxket-stat-value",children:e!=null&&e.dimensions?`${e.dimensions.width}×${e.dimensions.height}`:"N/A"})]}),a.jsxs("div",{className:"voxket-stat-item",children:[a.jsx("span",{className:"voxket-stat-label",children:"Source:"}),a.jsx("span",{className:"voxket-stat-value",children:(e==null?void 0:e.source)||"None"})]}),a.jsxs("div",{className:"voxket-stat-item",children:[a.jsx("span",{className:"voxket-stat-label",children:"Status:"}),a.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 tl=({handler:e,loadData:t,data:n,client:s,addLocalMessage:o})=>{const[r,i]=h.useState(null),[l,c]=h.useState(!0),[d,u]=h.useState(!1),[m]=h.useState(Date.now());h.useEffect(()=>{(async()=>{try{if(c(!0),console.log("📋 AssignmentView: Loading assignment data..."),console.log("📋 AssignmentView: Received data from RPC:",n),n&&typeof n=="object"){const v={title:n.title||"Untitled Assignment",description:n.description||"No description provided",estimated_time_of_completion:n.estimated_time_of_completion||"Unknown"};i(v),console.log("📋 AssignmentView: Assignment loaded from RPC data:",v)}}catch(v){console.error("📋 AssignmentView: Error loading assignment:",v),i({title:"Assignment Loading Error",description:"There was an error loading the assignment details. Please try again.",estimated_time_of_completion:"Unknown"})}finally{c(!1)}})()},[n,t]);const f=({message:x,assignment:v})=>{const E=x.toLowerCase().includes("declined"),b=E?"bg-red-50 border-red-200":"bg-green-50 border-green-200",S=E?"text-red-700":"text-green-700",w=E?"❌":"🎉";return a.jsxs("div",{className:`max-w-sm mx-auto ${b} border rounded-lg shadow p-3 flex flex-col items-center`,children:[a.jsx("div",{className:"text-2xl mb-2",children:w}),a.jsx("div",{className:`${S} font-semibold text-sm mb-1`,children:x}),a.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:v.title}),a.jsx("div",{className:"text-xs text-gray-500",children:"Thank you for your response!"})]})},p=async()=>{if(!(!r||!e)){u(!0);try{const x={message:"accepted"};console.log("📋 AssignmentView: Assignment accepted:",x),e.didSuccess(x,a.jsx(f,{message:"Assignment accepted!",assignment:r}))}catch(x){console.error("📋 AssignmentView: Error accepting assignment:",x),e.didFail({error:"Failed to accept assignment"})}finally{u(!1)}}},g=async()=>{if(!(!r||!e)){u(!0);try{const x={message:"declined"};console.log("📋 AssignmentView: Assignment declined:",x),e.didSuccess(x,a.jsx(f,{message:"Assignment declined",assignment:r}))}catch(x){console.error("📋 AssignmentView: Error declining assignment:",x),e.didFail({error:"Failed to decline assignment"})}finally{u(!1)}}};return l?a.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:a.jsxs("div",{className:"flex items-center justify-center py-4",children:[a.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-600"}),a.jsx("span",{className:"ml-2 text-xs text-gray-600",children:"Loading assignment..."})]})}):r?a.jsxs("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg overflow-hidden",children:[a.jsx("div",{className:"bg-gradient-to-r from-blue-600 to-purple-600 text-white p-3",children:a.jsx("div",{className:"flex items-center justify-between",children:a.jsx("h3",{className:"text-xs font-semibold text-white truncate",children:r.title})})}),a.jsxs("div",{className:"p-3",children:[a.jsx("div",{className:"bg-gray-50 rounded p-2 mb-3",children:a.jsx("p",{className:"text-xs text-gray-700 leading-snug",children:r.description})}),a.jsx("div",{className:"mb-3",children:a.jsxs("div",{className:"flex items-center text-xs text-gray-600",children:[a.jsx("span",{className:"text-xs mr-1",children:"📅"}),a.jsxs("span",{children:["Est: ",r.estimated_time_of_completion]})]})}),a.jsxs("div",{className:"flex gap-2",children:[a.jsx("button",{onClick:p,disabled:d,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:d?a.jsxs("span",{className:"flex items-center justify-center",children:[a.jsx("div",{className:"animate-spin rounded-full h-2 w-2 border-b-2 border-white mr-1"}),a.jsx("span",{className:"text-xs",children:"Processing..."})]}):"Accept"}),a.jsx("button",{onClick:g,disabled:d,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"})]})]})]}):a.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:a.jsxs("div",{className:"text-center py-4",children:[a.jsx("div",{className:"text-red-600 text-sm font-semibold mb-2",children:"⚠️ Assignment Error"}),a.jsx("p",{className:"text-xs text-gray-600 mb-3",children:"Failed to load assignment details."})]})})};function V0(){const[e,t]=h.useState(null),[n,s]=h.useState([]);h.useEffect(()=>{const l=new _t({appId:"your-app-id",appSecret:"your-app-secret",baseUrl:"https://your-voxket-api.com",agentId:"your-agent-id",participantName:"User",modalities:["chat"]});return t(l),l.on("rpc.method.called",c=>{console.log("RPC Method Called:",c)}),l.on("rpc.interaction.completed",c=>{console.log("RPC Interaction Completed:",c)}),()=>{l.disconnect()}},[]);const o=async()=>{if(e)try{await e.registerFrontendRPC("give_assignment",tl,"embedded");const l=e.getRegisteredRpcMethods();s(l),console.log("✅ Assignment RPC registered successfully")}catch(l){console.error("❌ Failed to register assignment RPC:",l)}},r=async()=>{if(!e)return;const l=({handler:c,timeout:d})=>{const[u,m]=h.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=x=>{m(x)},g=()=>{const x=f.find(v=>v.id===u);c==null||c.didSuccess({selectedProduct:u,productName:x==null?void 0:x.name,price:x==null?void 0:x.price,timestamp:new Date().toISOString()})};return a.jsxs("div",{className:"p-6 bg-white rounded-lg",children:[a.jsx("h3",{className:"text-xl font-bold mb-4",children:"Choose Your Plan"}),a.jsx("p",{className:"text-gray-600 mb-4",children:"Select the plan that best fits your needs:"}),a.jsx("div",{className:"space-y-3 mb-6",children:f.map(x=>a.jsx("div",{onClick:()=>p(x.id),className:`p-4 border rounded-lg cursor-pointer transition-all ${u===x.id?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300"}`,children:a.jsxs("div",{className:"flex justify-between items-center",children:[a.jsxs("div",{children:[a.jsx("h4",{className:"font-medium",children:x.name}),a.jsx("p",{className:"text-gray-600 text-sm",children:x.price})]}),a.jsx("div",{className:`w-4 h-4 rounded-full ${u===x.id?"bg-blue-500":"border-2 border-gray-300"}`})]})},x.id))}),a.jsxs("div",{className:"flex justify-end space-x-3",children:[a.jsx("button",{onClick:()=>c==null?void 0:c.dismissView(),className:"px-4 py-2 border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Cancel"}),a.jsx("button",{onClick:g,disabled:!u,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",children:"Select Plan"})]}),d&&a.jsxs("p",{className:"text-xs text-gray-500 mt-2",children:["Time remaining: ",d," seconds"]})]})};try{await e.registerFrontendRPC("recommend_product",l,"modal");const c=e.getRegisteredRpcMethods();s(c),console.log("✅ Product Recommendation RPC registered successfully")}catch(c){console.error("❌ Failed to register product recommendation RPC:",c)}},i=async()=>{if(!e)return;const l=({handler:c})=>{const[d,u]=h.useState(0),[m,f]=h.useState(""),p=()=>{c==null||c.didSuccess({rating:d,comment:m,timestamp:new Date().toISOString()})};return a.jsxs("div",{className:"p-4 bg-white rounded-lg",children:[a.jsx("h3",{className:"text-lg font-semibold mb-3",children:"How was your experience?"}),a.jsxs("div",{className:"mb-4",children:[a.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Rate your experience:"}),a.jsx("div",{className:"flex space-x-1",children:[1,2,3,4,5].map(g=>a.jsx("button",{onClick:()=>u(g),className:`text-2xl ${g<=d?"text-yellow-400":"text-gray-300"}`,children:"⭐"},g))})]}),a.jsxs("div",{className:"mb-4",children:[a.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Additional comments:"}),a.jsx("textarea",{value:m,onChange:g=>f(g.target.value),className:"w-full p-2 border border-gray-300 rounded text-sm",rows:3,placeholder:"Tell us more about your experience..."})]}),a.jsxs("div",{className:"flex justify-end space-x-2",children:[a.jsx("button",{onClick:()=>c==null?void 0:c.dismissView(),className:"px-3 py-1 text-sm border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Skip"}),a.jsx("button",{onClick:p,disabled:d===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",l,"embedded");const c=e.getRegisteredRpcMethods();s(c),console.log("✅ Feedback RPC registered successfully")}catch(c){console.error("❌ Failed to register feedback RPC:",c)}};return a.jsxs("div",{className:"p-6",children:[a.jsx("h2",{className:"text-2xl font-bold mb-6",children:"Frontend RPC Examples"}),a.jsxs("div",{className:"space-y-4 mb-6",children:[a.jsxs("div",{children:[a.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Register RPC Methods"}),a.jsxs("div",{className:"space-x-2",children:[a.jsx("button",{onClick:o,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600",children:"Register Assignment RPC"}),a.jsx("button",{onClick:r,className:"px-4 py-2 bg-green-500 text-white rounded hover:bg-green-600",children:"Register Product Recommendation RPC"}),a.jsx("button",{onClick:i,className:"px-4 py-2 bg-purple-500 text-white rounded hover:bg-purple-600",children:"Register Feedback RPC"})]})]}),a.jsxs("div",{children:[a.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Registered Methods"}),n.length>0?a.jsx("ul",{className:"list-disc list-inside space-y-1",children:n.map(l=>a.jsx("li",{className:"text-gray-700",children:a.jsx("code",{className:"bg-gray-100 px-2 py-1 rounded",children:l})},l))}):a.jsx("p",{className:"text-gray-500",children:"No methods registered yet"})]})]}),a.jsxs("div",{className:"bg-gray-50 p-4 rounded-lg",children:[a.jsx("h3",{className:"text-lg font-semibold mb-2",children:"How it works"}),a.jsxs("ol",{className:"list-decimal list-inside space-y-2 text-sm text-gray-700",children:[a.jsxs("li",{children:["Register RPC methods with React components using ",a.jsx("code",{children:"client.registerFrontendRPC()"})]}),a.jsx("li",{children:"When the agent calls an RPC method, the corresponding component will be displayed"}),a.jsx("li",{children:"Users interact with the component, and the response is sent back to the agent"}),a.jsx("li",{children:"Components can be displayed in different modes: embedded, modal, or fullscreen"}),a.jsx("li",{children:"Each component has a timeout and can handle success/failure scenarios"})]})]}),a.jsxs("div",{className:"mt-6 bg-blue-50 p-4 rounded-lg",children:[a.jsx("h3",{className:"text-lg font-semibold mb-2 text-blue-800",children:"Agent Side"}),a.jsx("p",{className:"text-sm text-blue-700 mb-2",children:"On the agent side, you can call these RPC methods like this:"}),a.jsx("pre",{className:"bg-white p-3 rounded text-xs text-gray-800 overflow-x-auto",children:`// Agent calls RPC method
105
+ `,style:{minHeight:"2.5rem",display:i===s?"block":"none"},children:o},i))})}function ex({statusMessage:e,theme:t}){const n=Ve(t);return l.jsxs("div",{className:"z-10 flex items-center space-x-2 mt-2 pb-2",children:[l.jsx("div",{className:n.statusIndicator}),l.jsx("span",{className:`text-xs ${n.text.muted}`,children:e})]})}const tx=({disabled:e,onStartCall:t,onStartChat:n,onStartVideo:s,prompts:r=['"Book a meeting with the marketing team"',`"What's the status of project Alpha?"`,`"Summarize yesterday's sales report"`,'"Find a good Italian restaurant nearby"','"Remind me to call John tomorrow at 10 AM"'],statusMessage:o="Agent is ready",title:i="Choose how to interact",subTitle:a="Ask me anything or give me a task to complete",theme:c="vox",modalities:d=["voice","chat","video"]})=>{const u=Ve(c),f=d.includes("voice"),h=d.includes("chat"),y=d.includes("video"),g=[f,h,y].filter(Boolean).length;return console.log("🎯 Welcome component debug:",{modalities:d,hasVoice:f,hasChat:h,hasVideo:y,totalButtons:g,onStartVideo:!!s}),l.jsxs("div",{inert:e,className:"flex p-8 flex-col items-center h-full justify-center w-full",children:[l.jsxs("div",{className:"mt-1 relative flex items-center justify-center mb-8 w-full",style:{minHeight:"120px"},children:[l.jsxs("div",{className:"absolute inset-0 flex items-center justify-center",children:[l.jsx("div",{className:u.pulseRings.ring1}),l.jsx("div",{className:u.pulseRings.ring2,style:{animationDelay:"0.5s"}}),l.jsx("div",{className:u.pulseRings.ring3,style:{animationDelay:"1s"}})]}),l.jsx("div",{className:"relative z-10 flex items-center justify-center",children:f&&h&&y?l.jsxs("div",{className:"flex gap-4 items-center justify-center",children:[l.jsx(Zn,{onClick:t,disabled:e,theme:c}),l.jsx(rr,{onClick:n,disabled:e,theme:c}),l.jsx(or,{onClick:s||t,disabled:e,theme:c})]}):g>1?l.jsxs("div",{className:"flex gap-6 items-center justify-center",children:[f&&l.jsx(Zn,{onClick:t,disabled:e,theme:c}),h&&l.jsx(rr,{onClick:n,disabled:e,theme:c}),y&&s&&l.jsx(or,{onClick:s,disabled:e,theme:c})]}):l.jsx("div",{className:"flex items-center justify-center",children:f?l.jsx(Zn,{onClick:t,disabled:e,theme:c}):h?l.jsx(rr,{onClick:n,disabled:e,theme:c}):y&&s?l.jsx(or,{onClick:s,disabled:e,theme:c}):l.jsx(Zn,{onClick:t,disabled:e,theme:c})})})]}),l.jsxs("div",{className:"text-center flex flex-col items-center gap-y-2 mb-6 w-full",children:[l.jsx("h3",{className:`text-xl font-semibold mb-2 ${u.text.accent}`,children:i}),l.jsx("p",{className:`text-sm leading-relaxed px-4 ${u.text.secondary}`,children:a}),g>1&&l.jsxs("div",{className:"flex gap-6 mt-4 text-xs justify-center",children:[f&&l.jsxs("div",{className:"flex flex-col items-center gap-1",children:[l.jsx(ld,{className:"w-4 h-4"}),l.jsx("span",{className:u.text.muted,children:"Voice"})]}),h&&l.jsxs("div",{className:"flex flex-col items-center gap-1",children:[l.jsx(ad,{className:"w-4 h-4"}),l.jsx("span",{className:u.text.muted,children:"Chat"})]}),y&&l.jsxs("div",{className:"flex flex-col items-center gap-1",children:[l.jsx(cd,{className:"w-4 h-4"}),l.jsx("span",{className:u.text.muted,children:"Video"})]})]})]}),l.jsx(Q1,{prompts:r,theme:c}),l.jsx(ex,{statusMessage:o,theme:c})]})};function dd({room:e,onSessionEnd:t,onSessionStart:n,enableConsoleLogging:s=!0,enableLocalStorage:r=!0,voxketSessionId:o}={}){const[i,a]=p.useState(null),[c,d]=p.useState([]),[u,f]=p.useState(null),[h,y]=p.useState([]),g=p.useCallback((S,E)=>{const w={timestamp:new Date,event:S,data:E,sessionId:i==null?void 0:i.sessionId,participantId:u==null?void 0:u.identity};if(d(v=>[...v,w]),r){const v=JSON.parse(localStorage.getItem("voxket-session-logs")||"[]");v.push(w),localStorage.setItem("voxket-session-logs",JSON.stringify(v))}return w},[i==null?void 0:i.sessionId,u==null?void 0:u.identity,s,r]);p.useEffect(()=>{if(!e)return;const S=()=>{const x=o||`session-${Date.now()}-${Math.random().toString(36).substring(2,9)}`,I=new Date,L={sessionId:x,startTime:I,totalMessages:0,connectionIssues:0,participantCount:h.length,events:[]};a(L),g("SESSION_STARTED",{sessionId:x,startTime:I}),n==null||n(x)},E=()=>{if(i){const x=new Date,I=x.getTime()-i.startTime.getTime(),L={...i,endTime:x,duration:I,events:c};g("SESSION_ENDED",{sessionId:i.sessionId,duration:`${Math.round(I/1e3)}s`,totalMessages:i.totalMessages,connectionIssues:i.connectionIssues}),t==null||t(L),a(null),d([])}},w=x=>{g("CONNECTION_STATE_CHANGED",{state:x}),x===K.ConnectionState.Reconnecting&&i&&(a(I=>I?{...I,connectionIssues:I.connectionIssues+1}:null),g("CONNECTION_ISSUE",{type:"reconnecting"}))},v=x=>{g("TRACK_PUBLISHED",{trackKind:x.kind,trackSource:x.source})},A=x=>{g("TRACK_UNPUBLISHED",{trackKind:x.kind,trackSource:x.source})},T=(x,I)=>{i&&a(L=>L?{...L,totalMessages:L.totalMessages+1}:null),g("DATA_RECEIVED",{participantId:I==null?void 0:I.identity,dataSize:x.length})},j=x=>{g("PARTICIPANT_CONNECTED",{participantId:x.identity,participantName:x.name}),y(I=>[...I,x]),i&&a(I=>I?{...I,participantCount:I.participantCount+1}:null)},z=x=>{g("PARTICIPANT_DISCONNECTED",{participantId:x.identity,participantName:x.name}),y(I=>I.filter(L=>L.identity!==x.identity))};return e.localParticipant&&f(e.localParticipant),e.on(K.RoomEvent.Connected,S),e.on(K.RoomEvent.Disconnected,E),e.on(K.RoomEvent.ConnectionStateChanged,w),e.on(K.RoomEvent.TrackPublished,v),e.on(K.RoomEvent.TrackUnpublished,A),e.on(K.RoomEvent.DataReceived,T),e.on(K.RoomEvent.ParticipantConnected,j),e.on(K.RoomEvent.ParticipantDisconnected,z),()=>{e.off(K.RoomEvent.Connected,S),e.off(K.RoomEvent.Disconnected,E),e.off(K.RoomEvent.ConnectionStateChanged,w),e.off(K.RoomEvent.TrackPublished,v),e.off(K.RoomEvent.TrackUnpublished,A),e.off(K.RoomEvent.DataReceived,T),e.off(K.RoomEvent.ParticipantConnected,j),e.off(K.RoomEvent.ParticipantDisconnected,z)}},[e,i,c,h.length,g,t,n]);const m=p.useCallback(()=>r?JSON.parse(localStorage.getItem("voxket-session-logs")||"[]"):c,[c,r]),b=p.useCallback(()=>{r&&localStorage.removeItem("voxket-session-logs"),d([])},[r]),k=p.useCallback(()=>{const S=m(),E=JSON.stringify(S,null,2),w="data:application/json;charset=utf-8,"+encodeURIComponent(E),v=`voxket-session-logs-${new Date().toISOString().split("T")[0]}.json`,A=document.createElement("a");A.setAttribute("href",w),A.setAttribute("download",v),A.click()},[m]);return{sessionMetrics:i,sessionLogs:c,logEvent:g,getSessionLogs:m,clearSessionLogs:b,exportSessionLogs:k}}class Po{constructor(){Ae(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 s=(...r)=>{this.off(t,s),n(...r)};return this.on(t,s)}off(t,n){const s=this.listeners[t];if(!s)return;const r=s.indexOf(n);r>-1&&s.splice(r,1)}removeAllListeners(t){t?delete this.listeners[t]:this.listeners={}}emit(t,...n){const s=this.listeners[t];if(!s)return;const r=[...s];for(const o of r)try{o(...n)}catch(i){console.error(`Error in event listener for ${String(t)}:`,i)}}listenerCount(t){var n;return((n=this.listeners[t])==null?void 0:n.length)??0}eventNames(){return Object.keys(this.listeners)}}class ud{constructor(t){Ae(this,"plugins",new Map);Ae(this,"installedPlugins",new Set);Ae(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 s=this.plugins.get(t);if(!s)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t))throw new Error(`Plugin '${t}' is already installed`);if(s.dependencies)for(const o of s.dependencies)this.installedPlugins.has(o)||await this.install(o);const r={...this.context,config:{...s.config,...n}};s.install&&await s.install(r),this.installedPlugins.add(t),this.setupPluginEvents(s,r)}async uninstall(t){var s;const n=this.plugins.get(t);if(!n)throw new Error(`Plugin '${t}' is not registered`);if(this.installedPlugins.has(t)){for(const[r,o]of this.plugins)if(this.installedPlugins.has(r)&&((s=o.dependencies)!=null&&s.includes(t)))throw new Error(`Cannot uninstall '${t}' because '${r}' 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",s=>{t.onSessionStart(n,s.id)}),t.onSessionEnd&&n.on("session.ended",s=>{t.onSessionEnd(n,s.id)}),t.onAgentResponse&&n.on("agent.response",s=>{t.onAgentResponse(n,s)})}}function nx(e){return e}function No(e,t,n){return{name:e,version:"1.0.0",description:`${t} modality plugin`,install:async s=>{n.onActivate&&await n.onActivate(s)},uninstall:async s=>{n.onDeactivate&&await n.onDeactivate(s)},onAgentResponse:n.onMessage}}const sx={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)})}},rx={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,...s)=>(console.log(`[Debug] Event: ${String(n)}`,s),t(n,...s))}},ox={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})})}},fd=C.createContext(null);function hd({config:e,children:t,autoConnect:n=!1}){const[s,r]=C.useState(null),[o,i]=C.useState(!1),[a,c]=C.useState(!1),[d,u]=C.useState(null),[f,h]=C.useState(null),[y,g]=C.useState("idle"),[m,b]=C.useState(null),[k,S]=C.useState([]),[E,w]=C.useState([]),[v,A]=C.useState([]);C.useEffect(()=>{const R=new Mn(e);return r(R),T(R),n&&j(R),()=>{R.disconnect().catch(console.error)}},[e,n]);const T=R=>{R.on("connection.connecting",()=>{c(!0),u(null)}),R.on("connection.connected",()=>{i(!0),c(!1),u(null)}),R.on("connection.disconnected",()=>{i(!1),c(!1),h(null),g("idle"),S([]),w([]),A([])}),R.on("connection.error",X=>{u(X),c(!1)}),R.on("session.created",X=>{h(X),g(X.state)}),R.on("session.state.changed",X=>{g(X),f&&h({...f,state:X})}),R.on("session.ended",(X,P)=>{h(null),g("idle"),b(P),S([]),w([]),A([])}),R.on("participant.joined",X=>{S(P=>[...P,X])}),R.on("participant.left",X=>{S(P=>P.filter(N=>N.id!==X.id))}),R.on("chat.message.received",X=>{w(P=>[...P,X])}),R.on("chat.message.sent",X=>{w(P=>[...P,X])}),R.on("transcription.received",X=>{A(P=>[...P,X])})},j=async R=>{const X=R||s;if(X)try{await X.connect()}catch(P){console.error("Failed to connect:",P)}},Y={client:s,isConnected:o,isConnecting:a,connectionError:d,currentSession:f,sessionState:y,sessionMetrics:m,participants:k,chatMessages:E,transcriptions:v,connect:()=>j(),disconnect:async()=>{if(s)try{await s.disconnect()}catch(R){console.error("Failed to disconnect:",R)}},createSession:async(R,X={})=>{if(!s)throw new Error("Client not initialized");const P={agentId:R,participantName:X.participantName||"User",metadata:X.metadata,modalities:X.modalities||["voice"]};return await s.createSession(P)},endSession:async()=>s?await s.endSession():null,sendChatMessage:async R=>{if(!s)throw new Error("Client not initialized");await s.sendChatMessage(R)},setMicrophoneEnabled:async R=>{if(!s)throw new Error("Client not initialized");await s.setMicrophoneEnabled(R)},setCameraEnabled:async R=>{if(!s)throw new Error("Client not initialized");await s.setCameraEnabled(R)},startScreenShare:async()=>{if(!s)throw new Error("Client not initialized");await s.startScreenShare()},stopScreenShare:async()=>{if(!s)throw new Error("Client not initialized");await s.stopScreenShare()}};return l.jsx(fd.Provider,{value:Y,children:t})}function Je(){const e=C.useContext(fd);if(!e)throw new Error("useVoxket must be used within a VoxketProvider");return e}class ix extends Po{constructor(n){super();Ae(this,"room",null);Ae(this,"registeredMethods",new Map);Ae(this,"activeInteractions",new Map);Ae(this,"currentInteraction",null);n&&this.setRoom(n)}setRoom(n){this.room=n}async registerFrontendRPC(n,s,r="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:s,presentationMode:r};this.registeredMethods.set(n,o);try{this.room.registerRpcMethod(n,async i=>{console.log(`RpcManager: RPC method '${n}' called by ${i.callerIdentity}`),console.log("RpcManager: Payload:",i.payload),this.emit("rpc.method.called",{methodName:n,data:i});let a;console.log(`RpcManager: Current registration for '${n}':`,o);let c=i.responseTimeout||30;try{a=JSON.parse(i.payload)}catch{a=i.payload}try{const d=await this.awaitUserInteraction(n,s,r,a,c);return JSON.stringify(d)}catch(d){throw console.error(`RpcManager: Error in RPC method '${n}':`,d),d}}),this.emit("rpc.method.registered",{methodName:n}),console.log(`RpcManager: Successfully registered RPC method: ${n}`)}catch(i){throw console.error(`RpcManager: Failed to register RPC method '${n}':`,i),i}}async awaitUserInteraction(n,s,r,o,i){return new Promise((a,c)=>{const d=`${n}_${Date.now()}`;console.log(`RpcManager: Starting user interaction for method: ${n}, timeout: ${i} seconds`);const u={didSuccess:(h,y)=>{console.log(`RpcManager: User interaction successful for method: ${n}`,h),this.clearInteraction(d),this.currentInteraction=null;const g={success:!0,message:"User interaction completed successfully",data:h,timestamp:new Date,...y?{successView:y}:{}};this.emit("rpc.interaction.completed",{methodName:n,response:g}),a(g)},didFail:h=>{console.log(`RpcManager: User interaction failed for method: ${n}`,h),this.clearInteraction(d);const y={success:!1,message:"User interaction failed",error:h,timestamp:new Date};this.emit("rpc.interaction.completed",{methodName:n,response:y}),a(y)},dismissView:()=>{var y;console.log(`RpcManager: User dismissed interaction for method: ${n}`),console.log("RpcManager: Current interaction before dismiss:",(y=this.currentInteraction)==null?void 0:y.methodName),this.clearInteraction(d),this.currentInteraction=null,console.log("RpcManager: Current interaction after dismiss:",this.currentInteraction);const h={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:h}),this.emit("rpc.interaction.completed",{methodName:n,response:h}),setTimeout(()=>{var g;((g=this.currentInteraction)==null?void 0:g.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),a(h)},didTimeout:h=>{console.log(`RpcManager: User interaction timeout for method: ${n}`),this.clearInteraction(d),this.currentInteraction=null;const y={success:!0,message:`User interaction timed out after ${i} seconds, it should be considered as declined, agent don't need to retry`,timestamp:new Date,...h?{timeoutView:h}:{}};this.emit("rpc.interaction.timeout",{methodName:n,response:y}),setTimeout(()=>{var g;((g=this.currentInteraction)==null?void 0:g.methodName)===n&&(console.log(`RpcManager: Force clearing interaction for ${n}`),this.currentInteraction=null)},0),a(y)}},f=setTimeout(()=>{u.didTimeout&&u.didTimeout()},i);this.activeInteractions.set(d,{resolve:h=>a(JSON.parse(h)),reject:c,timeoutId:f}),this.currentInteraction={isVisible:!0,methodName:n,component:s,presentationMode:r,timeout:i,data:o,handler:u},this.emit("rpc.interaction.started",{methodName:n,presentationMode:r}),setTimeout(async()=>{var h;if((h=this.currentInteraction)!=null&&h.handler)try{console.log(`RpcManager: Component created for method: ${n} with data:`,o)}catch(y){console.error("RpcManager: Error loading data into component:",y),u.didFail({error:"Failed to load data into component"})}},100)})}clearInteraction(n){const s=this.activeInteractions.get(n);s&&(console.log(`RpcManager: Clearing interaction: ${n}`),clearTimeout(s.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,s]of this.activeInteractions)clearTimeout(s.timeoutId);this.activeInteractions.clear(),this.registeredMethods.clear(),this.currentInteraction=null,console.log("RpcManager: Cleared all registrations and interactions")}}class he extends Error{constructor(t,n,s){super(t),this.code=n,this.details=s,this.name="VoxketError"}}class Mn extends Po{constructor(n){super();Ae(this,"config");Ae(this,"room",null);Ae(this,"pluginManager");Ae(this,"rpcManager");Ae(this,"isConnected",!1);Ae(this,"currentSession",null);Ae(this,"connectionState",K.ConnectionState.Disconnected);Ae(this,"renderedComponents",new Map);Ae(this,"textStreamHandlersRegistered",!1);Ae(this,"currentAgentInfo",null);Ae(this,"chatMessages",[]);this.config=n,this.pluginManager=new ud(this),this.rpcManager=new ix,this.setupEventListeners(),this.initializeClient()}setupEventListeners(){this.on("connection.connected",()=>{var n,s;this.isConnected=!0,(s=(n=this.config).onConnected)==null||s.call(n)}),this.on("connection.disconnected",n=>{var s,r;this.isConnected=!1,(r=(s=this.config).onDisconnected)==null||r.call(s,n)}),this.on("connection.error",n=>{var s,r;(r=(s=this.config).onError)==null||r.call(s,n)}),this.on("chat.message.received",n=>{var s,r;this.addChatMessage(n),(r=(s=this.config).onMessageReceived)==null||r.call(s,n)}),this.on("chat.message.updated",n=>{this.updateChatMessage(n)}),this.on("chat.message.sent",n=>{this.addChatMessage(n)}),this.on("transcription.received",n=>{var s,r;(r=(s=this.config).onTranscriptionReceived)==null||r.call(s,n)}),this.on("session.state.changed",n=>{var s,r;(r=(s=this.config).onSessionStateChanged)==null||r.call(s,n)}),this.on("session.created",n=>{var s,r;(r=(s=this.config).onSessionStart)==null||r.call(s,n.id)}),this.on("session.ended",(n,s)=>{var r,o;(o=(r=this.config).onSessionEnd)==null||o.call(r,s)}),this.on("participant.joined",n=>{var s,r;(r=(s=this.config).onUserJoined)==null||r.call(s,n.id)}),this.on("participant.left",n=>{var s,r;(r=(s=this.config).onUserLeft)==null||r.call(s,n.id)}),this.setupRpcEventForwarding()}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))}initializeClient(){this.room=new K.Room,this.setupRoomEventListeners()}setupRoomEventListeners(){this.room&&(this.room.on(K.RoomEvent.Connected,()=>{var n,s;this.connectionState=K.ConnectionState.Connected,this.emit("connection.connected"),this.rpcManager.setRoom(this.room),(s=(n=this.currentSession)==null?void 0:n.activeModalities)!=null&&s.includes("voice")&&setTimeout(async()=>{var r;try{(r=this.room)!=null&&r.localParticipant&&(this.room.localParticipant.isMicrophoneEnabled?this.emit("track.unmuted",{source:"microphone",enabled:!0}):(await this.room.localParticipant.setMicrophoneEnabled(!0),this.emit("track.unmuted",{source:"microphone",enabled:!0})))}catch(o){console.warn("VoxketClient: Failed to enable microphone after room connection:",o)}},1e3),this.textStreamHandlersRegistered||this.setupTextStreamHandlers()}),this.room.on(K.RoomEvent.Disconnected,n=>{this.connectionState=K.ConnectionState.Disconnected,this.textStreamHandlersRegistered=!1,this.emit("connection.disconnected",n==null?void 0:n.toString())}),this.room.on(K.RoomEvent.ConnectionStateChanged,n=>{this.connectionState=n,n===K.ConnectionState.Connecting&&this.emit("connection.connecting")}),this.room.on(K.RoomEvent.ParticipantConnected,n=>{const s={id:n.identity,name:n.name||n.identity,isLocal:!1};this.emit("participant.joined",s)}),this.room.on(K.RoomEvent.ParticipantDisconnected,n=>{const s={id:n.identity,name:n.name||n.identity,isLocal:!1};this.emit("participant.left",s)}))}setupTextStreamHandlers(){if(this.room){try{this.room.registerTextStreamHandler("lk.chat",async(n,s)=>{try{const r=await n.readAll(),o={id:`msg_${Date.now()}_${s.identity||"user"}_${Math.random().toString(36).substr(2,9)}`,content:r,timestamp:new Date,sender:{id:s.identity||"user",name:s.identity||"User",type:"participant"},metadata:{topic:"lk.chat"}};this.emit("chat.message.received",o)}catch(r){console.error("VoxketClient: Failed to process lk.chat message:",r)}})}catch(n){console.warn("VoxketClient: lk.chat handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("lk.transcription",async(n,s)=>{var r,o;try{const i=`msg_${Date.now()}_agent_transcription_${Math.random().toString(36).substr(2,9)}`;let a="";const c=((r=this.currentAgentInfo)==null?void 0:r.name)||s.identity||"AI Assistant",d={id:i,content:"",timestamp:new Date,sender:{id:s.identity||"agent",name:c,type:"agent"},metadata:{topic:"lk.transcription",streaming:!0}};this.emit("chat.message.received",d);for await(const h of n){a+=h;const y=this.convertMarkdownToText(a),g={...d,content:y,metadata:{...d.metadata,streaming:!0}};this.emit("chat.message.updated",g)}const u=this.convertMarkdownToText(a),f={...d,content:u,metadata:{...d.metadata,streaming:!1}};this.emit("chat.message.updated",f)}catch(i){console.error("VoxketClient: Failed to process lk.transcription message:",i);try{const a=await n.readAll(),c=((o=this.currentAgentInfo)==null?void 0:o.name)||s.identity||"AI Assistant",d={id:`msg_${Date.now()}_agent_transcription_${Math.random().toString(36).substr(2,9)}`,content:a,timestamp:new Date,sender:{id:s.identity||"agent",name:c,type:"agent"},metadata:{topic:"lk.transcription"}};this.emit("chat.message.received",d)}catch(a){console.error("VoxketClient: Fallback failed for lk.transcription:",a)}}})}catch(n){console.warn("VoxketClient: lk.transcription handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("suggested_response",async n=>{const s=await n.readAll();let r=[];try{r=["tes","hello how are you","algebra make me learn that ","what is the meaning of life"]}catch(o){console.warn("VoxketClient: Failed to parse suggested_response:",o,s)}this.emit("suggested.response",r)})}catch(n){console.warn("VoxketClient: suggested_response handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("agent_state_changed",async(n,s)=>{const r=await n.readAll();let o={};try{o=typeof r=="string"?JSON.parse(r.replace(/'/g,'"')):r}catch(i){console.warn("VoxketClient: Failed to parse agent_state_changed:",i,r)}o.new_state==="speaking"?this.emit("agent.speaking",o):o.new_state==="thinking"&&this.emit("agent.thinking",o)})}catch(n){console.warn("VoxketClient: conversation_item_added handler already registered, skipping:",n)}try{this.room.registerTextStreamHandler("images",async(n,s)=>{try{const r=await n.readAll()}catch(r){console.error("VoxketClient: Error processing images stream:",r)}})}catch(n){console.warn("VoxketClient: images handler already registered, skipping:",n)}try{this.room.registerByteStreamHandler("images",async(n,s)=>{var r,o;try{const i=n.info,a={id:`img_${Date.now()}_${s.identity||"agent"}_${Math.random().toString(36).substr(2,9)}`,content:`�️ ${i.name||"Image"}`,sender:{id:s.identity||"agent",name:s.identity||"Agent",type:s.identity===((o=(r=this.room)==null?void 0:r.localParticipant)==null?void 0:o.identity)?"participant":"agent"},timestamp:new Date,metadata:{type:"attachment",fileName:i.name,fileSize:i.size,mimeType:i.mimeType,streamId:i.id,downloading:!0}};this.emit("chat.message.received",a),n.onProgress&&(n.onProgress=h=>{const y={...a,metadata:{...a.metadata,downloadProgress:h||0}};this.emit("chat.message.updated",y)});const c=[];for await(const h of n)c.push(h);const d=new Blob(c,{type:i.mimeType||"application/octet-stream"}),u=URL.createObjectURL(d),f={...a,metadata:{...a.metadata,downloading:!1,downloadProgress:1,downloadUrl:u,blob:d}};this.emit("chat.message.updated",f)}catch(i){console.error("VoxketClient: Error processing image attachment:",i)}})}catch(n){console.warn("VoxketClient: image handler already registered, skipping:",n)}this.textStreamHandlersRegistered=!0}}async fetchConnectionDetails(n,s,r){const o=n||this.config.agentId||"default-agent",i=s||this.config.participantName||"User",a=r||this.config.modalities||["voice"];try{const c={agent_id:o,participant_name:i,participant_metadata:{user_id:""},modality:a[0]},d=await fetch(`${this.config.baseUrl}/api/live/agent/session`,{method:"POST",headers:{accept:"application/json","X-APP-ID":this.config.appId,"X-APP-SECRET":this.config.appSecret,"Content-Type":"application/json"},body:JSON.stringify(c)});if(!d.ok){let h=`HTTP ${d.status}: Failed to fetch connection details`;try{const y=await d.json();y&&(y.error?h=`API Error: ${y.error}`:y.detail?h=`API Error: ${y.detail}`:y.message&&(h=`API Error: ${y.message}`))}catch{try{const g=await d.text();g&&(h=`API Error: ${g}`)}catch{}}throw new Error(h)}const u=await d.json();let f;return u.agent_info&&(f={id:u.agent_info.id||o,name:u.agent_info.name||"AI Assistant",avatar:u.agent_info.avatar,capabilities:u.agent_info.capabilities||["voice_interaction","text_chat"],metadata:u.agent_info.metadata||{}},this.currentAgentInfo=f),{serverUrl:u.wss_url,participantToken:u.token,voxketSessionId:u.session_id,agentInfo:f}}catch(c){console.error("VoxketClient: fetchConnectionDetails failed:",c);const d=new he(`Failed to fetch connection details: ${c instanceof Error?c.message:"Unknown error"}`,"CONNECTION_FAILED",c);throw this.emit("connection.error",d),d}}async connect(n,s,r){var o;try{this.emit("connection.connecting");const i=await this.fetchConnectionDetails(n,s,r);return await((o=this.room)==null?void 0:o.connect(i.serverUrl,i.participantToken)),this.isConnected=!0,i}catch(i){console.error("VoxketClient: Connection failed:",i);const a=new he(`Failed to connect to Voxket services: ${i instanceof Error?i.message:"Unknown error"}`,"CONNECTION_FAILED",i);throw this.emit("connection.error",a),a}}async disconnect(){var n;try{await((n=this.room)==null?void 0:n.disconnect()),this.isConnected=!1,this.currentSession=null,this.currentAgentInfo=null,this.textStreamHandlersRegistered=!1,this.clearChatMessages(),this.room=new K.Room,this.setupRoomEventListeners()}catch(s){const r=new he("Failed to disconnect properly","NETWORK_ERROR",s);throw this.emit("connection.error",r),r}}async createSession(n){var s,r;try{const o=await this.connect(n.agentId,n.participantName,n.modalities),i={id:o.voxketSessionId,agentId:n.agentId,state:"connecting",startedAt:new Date,metadata:n.metadata||{},activeModalities:n.modalities||["voice"],agentInfo:o.agentInfo||this.currentAgentInfo};if(this.currentSession=i,this.emit("session.created",i),(s=n.modalities)!=null&&s.includes("voice"))try{await new Promise(a=>setTimeout(a,500)),(r=this.room)!=null&&r.localParticipant?(await this.room.localParticipant.setMicrophoneEnabled(!0,void 0,{preConnectBuffer:!0}),this.emit("track.unmuted",{source:"microphone",enabled:!0})):console.warn("VoxketClient: No local participant found, microphone not enabled")}catch(a){console.warn("VoxketClient: Failed to enable microphone, but continuing with session:",a)}return setTimeout(()=>{this.currentSession&&(this.currentSession.state="active",this.emit("session.state.changed","active",this.currentSession.state))},1e3),i}catch(o){throw console.error("VoxketClient: Failed to create session:",o),o instanceof he?o:o instanceof TypeError&&o.message.includes("fetch")?new he("Network connection failed","CONNECTION_FAILED",o):o instanceof Error&&o.message.includes("Failed to fetch connection details")?new he(`API connection failed: ${o.message}`,"CONNECTION_FAILED",o):new he(`Failed to create session: ${o instanceof Error?o.message:"Unknown error"}`,"SESSION_NOT_FOUND",o)}}async startSession(n,s){const r={agentId:n||this.config.agentId||"default-agent",participantName:(s==null?void 0:s.participantName)||this.config.participantName||"User",modalities:(s==null?void 0:s.modalities)||this.config.modalities||["voice","chat"],metadata:s==null?void 0:s.metadata};return this.createSession(r)}async endSession(){var n,s;if(!this.currentSession)return null;try{const r={sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((s=this.room)==null?void 0:s.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,r),await this.disconnect(),r}catch(r){throw new he("Failed to end session","SESSION_NOT_FOUND",r)}}getCurrentSession(){return this.currentSession}getCurrentAgentInfo(){return this.currentAgentInfo}getChatMessages(){return[...this.chatMessages]}addChatMessage(n){this.chatMessages.some(r=>r.id===n.id)||this.chatMessages.push(n)}updateChatMessage(n){const s=this.chatMessages.findIndex(r=>r.id===n.id);s!==-1&&(this.chatMessages[s]=n)}clearChatMessages(){this.chatMessages=[],this.dismissCurrentInteraction(),this.renderedComponents.clear(),this.forceCleanupFullscreenOverlays(),this.emit("chat.history.cleared")}renderUI(n={}){var c,d,u;const s=this.resolveTarget(n.target||"body"),r=this.getTargetKey(s),o=this.renderedComponents.get(r);o&&o.target===s||this.removeUI(s);const i=(o==null?void 0:o.root)||_d.createRoot(s),a={agentId:n.agentId||this.config.agentId||"default-agent",participantName:n.participantName||this.config.participantName||"User",baseUrl:this.config.baseUrl,appSecret:this.config.appSecret,appId:this.config.appId,className:n.className,theme:typeof n.theme=="string"?n.theme:void 0,modalities:n.modality||this.config.modalities||["voice"],suportsChatInput:((c=n.modality)==null?void 0:c.includes("chat"))!==!1,suportsVideoInput:((d=n.modality)==null?void 0:d.includes("video"))===!0,suportsScreenShare:((u=n.modality)==null?void 0:u.includes("screen_share"))===!0,autoStart:n.autoStart,displayType:n.displayType||"widget",popupPosition:n.popupPosition||"bottom-right",popupTriggerText:n.popupTriggerText||"Open Chat",width:n.width,height:n.height,onDisplayTypeChange:n.onDisplayTypeChange,prompts:n.prompts,statusMessage:n.statusMessage,welcomeTitle:n.welcomeTitle,welcomeSubTitle:n.welcomeSubTitle,loadingText:n.loadingText,voxketClient:this};if(!i||typeof i.render!="function")throw new Error("Invalid React root. Make sure React 18+ is properly installed and configured.");try{i.render(C.createElement(hd,{config:this.config,autoConnect:n.autoStart||!1,children:C.createElement(md,a)}))}catch(f){throw console.error("Error rendering Voxket widget:",f),new Error(`Failed to render Voxket widget: ${f instanceof Error?f.message:"Unknown error"}`)}this.renderedComponents.set(r,{root:i,target:s})}removeUI(n){const s=n?this.resolveTarget(n):null;if(s){const r=this.getTargetKey(s),o=this.renderedComponents.get(r);o&&(o.root.unmount(),this.renderedComponents.delete(r),s.querySelectorAll('[id*="voxket"], [class*="voxket"], .fixed.inset-0.z-50').forEach(a=>{try{a.remove()}catch(c){console.warn("Failed to remove element:",c)}}),s===document.body&&s.querySelectorAll(".fixed.z-50, .fixed.inset-0").forEach(c=>{if(c.classList.contains("bg-black")&&c.classList.contains("backdrop-blur-sm"))try{c.remove()}catch(d){console.warn("Failed to remove fixed element:",d)}}))}}removeAllUI(){for(const[n,s]of this.renderedComponents)s.root.unmount();this.renderedComponents.clear(),this.forceCleanupFullscreenOverlays()}forceCleanupFullscreenOverlays(){document.body.querySelectorAll(".fixed.inset-0.z-50").forEach(s=>{if(s.classList.contains("bg-black")&&(s.classList.contains("backdrop-blur-sm")||s.classList.contains("bg-opacity-30")))try{s.remove()}catch(r){console.warn("Failed to remove overlay:",r)}})}resolveTarget(n){if(typeof n=="string"){const s=document.querySelector(n);if(!s)throw new Error(`Target element not found: ${n}`);return s}return n}getTargetKey(n){return n.id?n.id:n.className?n.tagName+"_"+n.className.replace(/\s+/g,"_"):n.tagName+"_"+n.outerHTML.length%1e3}async sendMessage(n,s){var r;if(!this.currentSession)throw console.error("VoxketClient: No active session found"),new he("No active session","SESSION_NOT_FOUND");if(!this.room)throw console.error("VoxketClient: No room instance found"),new he("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw console.error("VoxketClient: No local participant found"),new he("No local participant","CONNECTION_FAILED");this.dismissCurrentInteraction();try{const o={id:`msg_${Date.now()}`,content:n,sender:{id:"user",name:this.config.participantName||"User",type:"participant"},timestamp:new Date,metadata:s||{}},i=await((r=this.room)==null?void 0:r.localParticipant.sendText(n,{topic:"lk.chat",destinationIdentities:[]}));this.emit("chat.message.sent",o)}catch(o){throw console.error("VoxketClient: Failed to send chat message:",o),new he("Failed to send message","NETWORK_ERROR",o)}}async sendChatMessage(n,s){return this.sendMessage(n,s)}async sendAttachments(n,s){if(!this.currentSession)throw console.error("VoxketClient: No active session found"),new he("No active session","SESSION_NOT_FOUND");if(!this.room)throw console.error("VoxketClient: No room instance found"),new he("No room connection","CONNECTION_FAILED");if(!this.room.localParticipant)throw console.error("VoxketClient: No local participant found"),new he("No local participant","CONNECTION_FAILED");if(!n||n.length===0)throw new he("No files provided","INVALID_PARAMETER");this.dismissCurrentInteraction();const r=n.filter(o=>o.type.startsWith("image/"));if(r.length===0)throw new he("Only image files are allowed","INVALID_PARAMETER");r.length!==n.length&&console.warn("VoxketClient: Some non-image files were filtered out");try{const o=r.map(async(i,a)=>{const d={id:`att_${Date.now()}_${a}`,content:`📎 ${i.name}`,sender:{id:"user",name:this.config.participantName||"User",type:"participant"},timestamp:new Date,metadata:{...s,type:"attachment",fileName:i.name,fileSize:i.size,mimeType:i.type,uploading:!0}};this.emit("chat.message.sent",d);const u=await this.room.localParticipant.sendFile(i,{mimeType:i.type,topic:"images",onProgress:h=>{const y={...d,metadata:{...d.metadata,uploadProgress:h}};this.emit("chat.message.updated",y)}});try{const h=new FileReader,y=new Promise((b,k)=>{h.onload=()=>{typeof h.result=="string"?b(h.result):k(new Error("Failed to convert to base64"))},h.onerror=k});h.readAsDataURL(i);const m={type:"image",data:await y,filename:i.name,mimeType:i.type,size:i.size};await this.room.localParticipant.sendText(JSON.stringify(m),{topic:"images",destinationIdentities:[]})}catch(h){console.warn("VoxketClient: Failed to send image data to agent:",h);try{const y=`I've shared an image: ${i.name}`;await this.room.localParticipant.sendText(y,{topic:"lk.chat",destinationIdentities:[]})}catch(y){console.warn("VoxketClient: Failed to send image notification to agent:",y)}}const f={...d,metadata:{...d.metadata,uploading:!1,uploadProgress:1,streamId:u.id}};return this.emit("chat.message.updated",f),u});await Promise.all(o)}catch(o){throw console.error("VoxketClient: Failed to send attachments:",o),new he("Failed to send attachments","NETWORK_ERROR",o)}}async sendAttachment(n,s){return this.sendAttachments([n],s)}toggleMicrophone(n){return this.setMicrophoneEnabled(n!==!1)}async setMicrophoneEnabled(n){var s,r;try{const o=(s=this.room)==null?void 0:s.localParticipant.isMicrophoneEnabled,i=n??!o;await((r=this.room)==null?void 0:r.localParticipant.setMicrophoneEnabled(i)),i?this.emit("track.unmuted",{source:"microphone",enabled:!0}):this.emit("track.muted",{source:"microphone",enabled:!1})}catch(o){throw console.error("VoxketClient: Failed to toggle microphone:",o),new he("Failed to toggle microphone","PERMISSION_DENIED",o)}}toggleCamera(n){return this.setCameraEnabled(n!==!1)}async setCameraEnabled(n){var s,r;try{const o=(s=this.room)==null?void 0:s.localParticipant.isCameraEnabled,i=n??!o;await((r=this.room)==null?void 0:r.localParticipant.setCameraEnabled(i)),i?this.emit("track.unmuted",{source:"camera",enabled:!0}):this.emit("track.muted",{source:"camera",enabled:!1})}catch(o){throw console.error("VoxketClient: Failed to toggle camera:",o),new he("Failed to toggle camera","PERMISSION_DENIED",o)}}async enableCamera(){return this.setCameraEnabled(!0)}async disableCamera(){return this.setCameraEnabled(!1)}async startScreenShare(){var n;try{await((n=this.room)==null?void 0:n.localParticipant.setScreenShareEnabled(!0))}catch(s){throw new he("Failed to start screen share","PERMISSION_DENIED",s)}}async stopScreenShare(){var n;try{await((n=this.room)==null?void 0:n.localParticipant.setScreenShareEnabled(!1))}catch(s){throw new he("Failed to stop screen share","PERMISSION_DENIED",s)}}async getAudioInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(s=>s.kind==="audioinput")}catch(n){throw new he("Failed to get audio input devices","DEVICE_ERROR",n)}}async getVideoInputDevices(){try{return(await navigator.mediaDevices.enumerateDevices()).filter(s=>s.kind==="videoinput")}catch(n){throw new he("Failed to get video input devices","DEVICE_ERROR",n)}}async setAudioInputDevice(n){var s;try{if(!((s=this.room)!=null&&s.localParticipant))throw new Error("Not connected to room")}catch(r){throw new he("Failed to set audio input device","DEVICE_ERROR",r)}}async setVideoInputDevice(n){var s;try{if(!((s=this.room)!=null&&s.localParticipant))throw new Error("Not connected to room")}catch(r){throw new he("Failed to set video input device","DEVICE_ERROR",r)}}getLocalParticipant(){var n;return((n=this.room)==null?void 0:n.localParticipant)??null}getRemoteParticipants(){var n;return Array.from(((n=this.room)==null?void 0:n.remoteParticipants.values())??[])}getPublishPermissions(){const n=this.getLocalParticipant();if(!n)return{camera:!1,microphone:!1,screenShare:!1,data:!1};const s=n.permissions;if(!s)return{camera:!0,microphone:!0,screenShare:!0,data:!0};const r=o=>!!s.canPublish&&(s.canPublishSources.length===0||s.canPublishSources.includes(o));return{camera:r(1),microphone:r(2),screenShare:r(3),data:s.canPublishData??!1}}canPublishSource(n){return this.getPublishPermissions()[n]}getRoom(){return this.room}getConnectionState(){return this.connectionState}get connected(){return this.isConnected&&this.connectionState===K.ConnectionState.Connected}getMicrophoneTrack(){const n=this.getLocalParticipant();if(!n)return null;for(const[,s]of n.trackPublications)if(s.source===K.Track.Source.Microphone)return s.track;return null}getCameraTrack(){const n=this.getLocalParticipant();if(!n)return null;for(const[,s]of n.trackPublications)if(s.source===K.Track.Source.Camera)return s.track;return null}getScreenShareTrack(){const n=this.getLocalParticipant();if(!n)return null;for(const[,s]of n.trackPublications)if(s.source===K.Track.Source.ScreenShare)return s.track;return null}get isMicrophoneEnabled(){const n=this.getMicrophoneTrack();return n?!n.isMuted:!1}get isCameraEnabled(){const n=this.getCameraTrack();return n?!n.isMuted:!1}get isScreenShareEnabled(){const n=this.getScreenShareTrack();return n?!n.isMuted:!1}registerPlugin(n){this.pluginManager.register(n)}getPluginManager(){return this.pluginManager}getParticipants(){if(!this.room)return[];const n=[];return this.room.localParticipant&&n.push({id:this.room.localParticipant.identity,name:this.room.localParticipant.name||this.room.localParticipant.identity,isLocal:!0}),this.room.remoteParticipants.forEach(s=>{n.push({id:s.identity,name:s.name||s.identity,isLocal:!1})}),n}getSessionMetrics(){var n,s;return this.currentSession?{sessionId:this.currentSession.id,duration:Date.now()-(((n=this.currentSession.startedAt)==null?void 0:n.getTime())||0),messageCount:0,participantCount:((s=this.room)==null?void 0:s.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}updateConfig(n){this.config={...this.config,...n}}async startRecording(){var n;try{this.emit("recording.started",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(s){throw new he("Failed to start recording","RECORDING_ERROR",s)}}async stopRecording(){var n;try{this.emit("recording.stopped",{sessionId:(n=this.currentSession)==null?void 0:n.id,timestamp:new Date})}catch(s){throw new he("Failed to stop recording","RECORDING_ERROR",s)}}async registerFrontendRPC(n,s,r="embedded"){return this.rpcManager.registerFrontendRPC(n,s,r)}getCurrentInteraction(){return this.rpcManager.getCurrentInteraction()}dismissCurrentInteraction(){this.rpcManager.dismissCurrentInteraction()}getRegisteredRpcMethods(){return this.rpcManager.getRegisteredMethods()}unregisterRpcMethod(n){this.rpcManager.unregisterMethod(n)}registerEventListener(n,s){return this.on(n,s)}registerEventEmitter(n,s){if(!this.room)throw new Error("Room not available");try{this.room.registerTextStreamHandler(n,async r=>{try{const o=await r.readAll();s(o)}catch(o){console.error(`Error processing event for topic '${n}':`,o)}})}catch(r){console.warn(`VoxketClient: Handler for topic '${n}' may already be registered:`,r)}}convertMarkdownToText(n){if(!n)return"";let s=n;return s=s.replace(/\*\*(.*?)\*\*/g,"$1"),s=s.replace(/__(.*?)__/g,"$1"),s=s.replace(/\*(.*?)\*/g,"$1"),s=s.replace(/_(.*?)_/g,"$1"),s=s.replace(/~~(.*?)~~/g,"$1"),s=s.replace(/`([^`]+)`/g,"$1"),s=s.replace(/```[\s\S]*?```/g,""),s=s.replace(/^#{1,6}\s+/gm,""),s=s.replace(/\[([^\]]+)\]\([^)]+\)/g,"$1"),s.trim()}}const ax=ie.create(L1),lx=ie.create(Y1),cx=ie.create(J1),dx=ie.create(tx);function ux({onClick:e,text:t="Open Chat",position:n="bottom-right",theme:s}){const r={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"},o=Ve(s);return l.jsx(ie.button,{onClick:e,className:`fixed ${r[n]} z-50 px-4 py-2 rounded-full shadow-lg ${o.popupTrigger} transition-all duration-200 hover:scale-105`,initial:{scale:0,opacity:0},animate:{scale:1,opacity:1},exit:{scale:0,opacity:0},whileHover:{scale:1.05},whileTap:{scale:.95},children:t})}function Za({children:e,theme:t,displayType:n="widget",onClose:s,popupPosition:r="bottom-right",onExpand:o}){const i=Ve(t);if(n==="fullscreen")return l.jsx("div",{className:"fixed inset-0 z-50 bg-black bg-opacity-30 backdrop-blur-sm flex items-center justify-center p-8",children:l.jsxs("div",{className:"w-full h-full max-w-6xl max-h-[90vh] rounded-2xl relative bg-transparent",children:[s&&l.jsx("button",{onClick:a=>{a.preventDefault(),a.stopPropagation(),s()},className:"absolute top-4 cursor-pointer right-4 z-[100] 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:l.jsx("svg",{width:"20",height:"20",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:l.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"})})}),l.jsxs("div",{id:"voice-card",className:`${i.card} w-full h-full flex flex-col rounded-xl shadow-2xl`,style:{minHeight:"600px"},children:[l.jsx("div",{className:i.cardTopGradient}),l.jsx("div",{className:i.cardPurpleBlur}),l.jsx("div",{className:i.cardPinkBlur}),l.jsx("div",{className:" flex flex-col h-full",children:e}),l.jsx("div",{className:i.cardPulse1}),l.jsx("div",{className:i.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 l.jsx("div",{className:"fixed rounded-2xl inset-0 z-50 pointer-events-none",children:l.jsxs("div",{className:`fixed rounded-2xl ${a[r]} pointer-events-auto`,children:[s&&l.jsx("button",{onClick:s,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:"×"}),l.jsxs("div",{id:"voice-card",className:`${i.card} rounded-2xl flex flex-col`,style:{width:"300px",height:"450px"},children:[l.jsx("div",{className:i.cardPurpleBlur}),l.jsx("div",{className:i.cardPinkBlur}),l.jsx("div",{className:" flex flex-col h-full",children:e}),l.jsx("div",{className:i.cardPulse1}),l.jsx("div",{className:i.cardPulse2,style:{animationDelay:"1s"}})]})]})})}return l.jsxs("div",{id:"voice-card",className:`${i.card}`,children:[o&&l.jsx("button",{onClick:o,className:"absolute top-4 right-4 z-20 w-10 h-10 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:"Enter Fullscreen",children:l.jsx("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",children:l.jsx("path",{d:"M15 3h6v6M9 21H3v-6M21 3l-7 7M3 21l7-7"})})}),l.jsx("div",{className:i.cardTopGradient}),l.jsx("div",{className:i.cardPurpleBlur}),l.jsx("div",{className:i.cardPinkBlur}),e,l.jsx("div",{className:i.cardPulse1}),l.jsx("div",{className:i.cardPulse2,style:{animationDelay:"1s"}})]})}function md(e){if(typeof window>"u")return null;console.log("🎯 Widget component rendering with props:",{displayType:e.displayType,popupPosition:e.popupPosition,theme:e.theme});const{agentId:t,participantName:n,baseUrl:s,appSecret:r,appId:o,prompts:i,statusMessage:a,welcomeTitle:c,welcomeSubTitle:d,className:u,width:f,height:h,loadingText:y,suportsChatInput:g=!0,suportsVideoInput:m=!0,suportsScreenShare:b=!0,theme:k="vox",onSessionStart:S,onSessionEnd:E,enableSessionLogging:w=!0,onSessionLogsUpdate:v,onSessionMetricsUpdate:A,modalities:T=["voice"],displayType:j="widget",popupPosition:z="bottom-right",popupTriggerText:x="Open Chat",onPopupToggle:I,voxketClient:L,onDisplayTypeChange:J}=e,[te,ee]=p.useState(()=>L?!!L.getCurrentSession():!1),[ne,Y]=p.useState(!1),[R,X]=p.useState(t||""),[P,N]=p.useState(n||"User"),[U,M]=p.useState(()=>L?L.getCurrentSession():null),[D,H]=p.useState(()=>{var oe,at,Ze;if(L){const ve=L.getCurrentSession();if((oe=ve==null?void 0:ve.activeModalities)!=null&&oe.includes("chat"))return"chat";if((at=ve==null?void 0:ve.activeModalities)!=null&&at.includes("voice"))return"voice";if((Ze=ve==null?void 0:ve.activeModalities)!=null&&Ze.includes("video"))return"video"}return"welcome"}),[F,$]=p.useState(!1);p.useEffect(()=>{console.log("🎯 Widget displayType prop changed to:",j)},[j]),p.useEffect(()=>{console.log("📊 Session state changed:",{currentMode:D,sessionStarted:te,loading:ne,currentSession:U==null?void 0:U.id,isPopupOpen:F})},[D,te,ne,U,F]);const B=p.useMemo(()=>{if(L)return console.log("🔄 Using passed VoxketClient to preserve session state"),L;console.log("🆕 Creating new VoxketClient instance");const oe={appId:o,appSecret:r,baseUrl:s,agentId:R,participantName:P||"User",modalities:T};return new Mn(oe)},[L,o,r,s,R,P,T]),Z=T,_=p.useMemo(()=>B.getRoom()||new K.Room,[B]),re={suportsChatInput:g,suportsVideoInput:m,suportsScreenShare:b},{sessionMetrics:O,sessionLogs:le,logEvent:Te}=dd({room:_,onSessionStart:S,onSessionEnd:E,enableConsoleLogging:w,enableLocalStorage:w,voxketSessionId:U==null?void 0:U.id});p.useEffect(()=>{v&&v(le)},[le,v]),p.useEffect(()=>{A&&O&&A(O)},[O,A]),p.useEffect(()=>{const oe=Ze=>{console.log("🔴 Room disconnected:",Ze),Y(!1),ee(!1),M(null),H("welcome")},at=Ze=>{console.log("📹 Media devices error:",Ze),Ln({title:"Allow access to your microphone/camera",description:`${Ze.name}: ${Ze.message}`})};return _.on(K.RoomEvent.MediaDevicesError,at),_.on(K.RoomEvent.Disconnected,oe),()=>{_.off(K.RoomEvent.Disconnected,oe),_.off(K.RoomEvent.MediaDevicesError,at)}},[_]);const Oe=async()=>{try{console.log("🎤 Starting voice session...",{agentId:R,participantName:P}),console.log("🎤 Pre-start state:",{currentMode:D,sessionStarted:te,loading:ne}),Y(!0),ee(!0),H("voice"),console.log("🎤 State after mode change:",{currentMode:"voice",sessionStarted:!0,loading:!0}),Te("USER_STARTED_VOICE_SESSION",{agentId:R,participantName:P});const oe=await B.startSession(R,{participantName:P||"User",modalities:["voice",...m?["video"]:[]]});console.log("✅ Voice session started successfully:",oe.id),M(oe),Y(!1),S&&S(oe.id)}catch(oe){console.error("❌ Failed to start voice session:",oe),Ln({title:"Failed to start voice session",description:oe instanceof Error?oe.message:"Unknown error occurred"}),Y(!1),ee(!1),H("welcome")}},Nn=async()=>{try{Y(!0),ee(!0),H("chat"),Te("USER_STARTED_CHAT_SESSION",{agentId:R,participantName:P});const oe=await B.startSession(R,{participantName:P||"User",modalities:["chat"]});M(oe),Y(!1),S&&S(oe.id)}catch(oe){console.error("Failed to start chat session:",oe),Ln({title:"Failed to start chat session",description:oe instanceof Error?oe.message:"Unknown error occurred"}),Y(!1),ee(!1),H("welcome")}},Pd=async()=>{try{console.log("📺 Starting video session...",{agentId:R,participantName:P}),console.log("📺 Pre-start state:",{currentMode:D,sessionStarted:te,loading:ne}),Y(!0),ee(!0),H("video"),console.log("📺 State after mode change:",{currentMode:"video",sessionStarted:!0,loading:!0}),Te("USER_STARTED_VIDEO_SESSION",{agentId:R,participantName:P});const oe=await B.startSession(R,{participantName:P||"User",modalities:["video","voice"]});console.log("✅ Video session started successfully:",oe.id),M(oe),Y(!1),S&&S(oe.id)}catch(oe){console.error("❌ Failed to start video session:",oe),Ln({title:"Failed to start video session",description:oe instanceof Error?oe.message:"Unknown error occurred"}),Y(!1),ee(!1),H("welcome")}},nn=()=>{H("welcome"),J&&J(e.displayType||"widget"),U&&te&&(ee(!1),M(null),B.disconnect()),j==="popup"&&!F&&$(!0)},sn=()=>{const oe=!F;$(oe),I&&I(oe),!oe&&!(U&&te)&&(H("welcome"),ee(!1),M(null))},Nd=()=>{console.log("🔄 Closing fullscreen, switching to widget display type"),e.onDisplayTypeChange?e.onDisplayTypeChange("widget"):console.warn("⚠️ No onDisplayTypeChange callback provided")},Vd=()=>{e.onDisplayTypeChange&&e.onDisplayTypeChange("fullscreen")};p.useEffect(()=>{var oe,at,Ze;if(L&&B){console.log("🔄 Syncing widget state with existing client session state");const ve=B.getCurrentSession(),Rd=B.connected;console.log("🔍 Existing session state:",{hasSession:!!ve,sessionId:ve==null?void 0:ve.id,isConnected:Rd,activeModalities:ve==null?void 0:ve.activeModalities}),ve&&(console.log("✅ Restoring session state from existing client"),M(ve),ee(!0),Y(!1),(oe=ve.activeModalities)!=null&&oe.includes("chat")?H("chat"):(at=ve.activeModalities)!=null&&at.includes("voice")?H("voice"):(Ze=ve.activeModalities)!=null&&Ze.includes("video")&&H("video"))}},[L,B]),p.useEffect(()=>()=>{console.log("🧹 Cleaning up widget component"),L?console.log("🔄 Widget cleanup: preserving passed client instance"):(console.log("🧹 Widget cleanup: disconnecting self-created client"),B.disconnect())},[B,L]);let ks="w-96",Ts="h-[25rem]",As={};if(f&&(f.startsWith("w-")?ks=f:(As.width=f,ks="")),h&&(h.startsWith("h-")?Ts=h:(As.height=h,Ts="")),j==="popup"&&!F)return console.log("🟡 Showing popup trigger button"),l.jsx(ux,{onClick:sn,text:x,position:z,theme:k});console.log("🟢 Rendering widget content, displayType:",j,"isPopupOpen:",F,"currentMode:",D,"sessionStarted:",te,"loading:",ne);let js=`voxket-widget-root theme-${k}`,Vn={scrollMargin:0,scrollPadding:0,contain:"layout style paint"};j==="widget"?(js+=` flex items-center justify-center min-h-fit ${ks} ${Ts} ${u}`,Vn={...Vn,...As}):(js=`${u||""}`,Vn={});const $o=l.jsx(l.Fragment,{children:l.jsxs(zt,{mode:"wait",children:[D==="welcome"&&!ne&&l.jsx(dx,{agentId:R,participantName:P||"",onAgentIdChange:X,onParticipantNameChange:N,onStartCall:Oe,onStartChat:Nn,onStartVideo:Pd,disabled:te||ne,prompts:i,statusMessage:a,title:c,subTitle:d,theme:k,modalities:Z,initial:{opacity:0,y:0},animate:{opacity:1,y:0},exit:{opacity:0,y:40},transition:{duration:.3,ease:"easeInOut"}},"welcome"),D==="voice"&&l.jsxs(Ee.RoomContext.Provider,{value:_,children:[l.jsx(Ee.RoomAudioRenderer,{}),l.jsx(Ee.StartAudio,{label:"Start Audio"}),l.jsx(ax,{loadingText:y,participantName:P||"User",capabilities:re,sessionStarted:te,disabled:!te,theme:k,client:B,displayType:j,onBack:j==="popup"?sn:nn,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"session-view")]}),D==="chat"&&l.jsx(lx,{client:B,theme:k,displayType:j,onBack:j==="popup"?sn:nn,onEndChat:nn,disabled:!te,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"chat-view"),D==="video"&&l.jsxs(Ee.RoomContext.Provider,{value:_,children:[l.jsx(Ee.RoomAudioRenderer,{}),l.jsx(Ee.StartAudio,{label:"Start Audio"}),l.jsx(cx,{client:B,theme:k,displayType:j,onBack:j==="popup"?sn:nn,onEndCall:nn,disabled:!te,initial:{opacity:0,y:40},animate:{opacity:1,y:0},exit:{opacity:0,y:-40},transition:{duration:.3,ease:"easeInOut"}},"video-view")]})]})});return j==="fullscreen"||j==="popup"?(console.log("📱 Rendering fullscreen/popup mode, displayType:",j),l.jsx(Za,{theme:k,displayType:j,popupPosition:z,onClose:j==="fullscreen"?Nd:sn,children:$o})):(console.log("📦 Rendering widget mode"),l.jsx("div",{className:js,style:Vn,children:l.jsx(Za,{theme:k,displayType:j,popupPosition:z,onExpand:Vd,children:$o})}))}class pd extends p.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 p.createElement(t,{error:this.state.error})}return p.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}}function fx({logs:e,onClear:t,onExport:n}){const[s,r]=C.useState(!1),[o,i]=C.useState(""),a=e.filter(c=>!o||c.event.toLowerCase().includes(o.toLowerCase()));return s?l.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50",children:l.jsxs("div",{className:"bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[80vh] flex flex-col m-4",children:[l.jsxs("div",{className:"flex items-center justify-between p-4 border-b",children:[l.jsxs("h2",{className:"text-lg font-semibold",children:["Session Logs (",e.length,")"]}),l.jsxs("div",{className:"flex items-center gap-2",children:[l.jsx("input",{type:"text",placeholder:"Filter events...",value:o,onChange:c=>i(c.target.value),className:"px-3 py-1 border rounded text-sm"}),l.jsx("button",{onClick:t,className:"px-3 py-1 bg-red-600 text-white rounded text-sm hover:bg-red-700",children:"Clear"}),l.jsx("button",{onClick:n,className:"px-3 py-1 bg-green-600 text-white rounded text-sm hover:bg-green-700",children:"Export"}),l.jsx("button",{onClick:()=>r(!1),className:"px-3 py-1 bg-gray-600 text-white rounded text-sm hover:bg-gray-700",children:"Close"})]})]}),l.jsx("div",{className:"flex-1 overflow-auto p-4",children:a.length===0?l.jsx("p",{className:"text-gray-500 text-center py-8",children:"No logs found"}):l.jsx("div",{className:"space-y-2",children:a.map((c,d)=>l.jsxs("div",{className:"border rounded p-3 text-sm",children:[l.jsxs("div",{className:"flex items-center justify-between mb-1",children:[l.jsx("span",{className:"font-semibold text-blue-600",children:c.event}),l.jsx("span",{className:"text-gray-500 text-xs",children:new Date(c.timestamp).toLocaleTimeString()})]}),c.sessionId&&l.jsxs("div",{className:"text-xs text-gray-600 mb-1",children:["Session: ",c.sessionId]}),c.data&&l.jsx("div",{className:"bg-gray-50 p-2 rounded text-xs",children:l.jsx("pre",{className:"whitespace-pre-wrap overflow-auto",children:JSON.stringify(c.data,null,2)})})]},d))})})]})}):l.jsxs("button",{onClick:()=>r(!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 hx({metrics:e}){return e?l.jsxs("div",{className:"bg-gray-100 p-4 rounded-lg",children:[l.jsx("h3",{className:"font-semibold mb-2",children:"Current Session"}),l.jsxs("div",{className:"grid grid-cols-2 gap-4 text-sm",children:[l.jsxs("div",{children:[l.jsx("span",{className:"text-gray-600",children:"Session ID:"}),l.jsx("div",{className:"font-mono text-xs",children:e.sessionId})]}),l.jsxs("div",{children:[l.jsx("span",{className:"text-gray-600",children:"Start Time:"}),l.jsx("div",{children:new Date(e.startTime).toLocaleString()})]}),l.jsxs("div",{children:[l.jsx("span",{className:"text-gray-600",children:"Messages:"}),l.jsx("div",{children:e.totalMessages})]}),l.jsxs("div",{children:[l.jsx("span",{className:"text-gray-600",children:"Participants:"}),l.jsx("div",{children:e.participantCount})]}),l.jsxs("div",{children:[l.jsx("span",{className:"text-gray-600",children:"Connection Issues:"}),l.jsx("div",{children:e.connectionIssues})]}),l.jsxs("div",{children:[l.jsx("span",{className:"text-gray-600",children:"Duration:"}),l.jsxs("div",{children:[Math.round((Date.now()-new Date(e.startTime).getTime())/1e3),"s"]})]})]})]}):null}function jt(){const{currentSession:e,sessionState:t,sessionMetrics:n,createSession:s,endSession:r}=Je(),o=C.useCallback(async(a,c)=>await s(a,c),[s]),i=C.useCallback(async()=>await r(),[r]);return{session:e,state:t,metrics:n,isActive:e!==null&&t!=="disconnected",isConnecting:t==="connecting",isConnected:t==="connected"||t==="active",start:o,stop:i}}function gd(){const{sessionMetrics:e,currentSession:t}=Je();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 yd(){const{setMicrophoneEnabled:e,client:t}=Je(),[n,s]=C.useState(!1),[r,o]=C.useState(!1),i=C.useCallback(async()=>{if(!r){o(!0);try{const d=!n;await e(d),s(d)}catch(d){console.error("Failed to toggle microphone:",d)}finally{o(!1)}}},[n,r,e]),a=C.useCallback(async()=>{if(!(n||r)){o(!0);try{await e(!0),s(!0)}catch(d){console.error("Failed to enable microphone:",d)}finally{o(!1)}}},[n,r,e]),c=C.useCallback(async()=>{if(!(!n||r)){o(!0);try{await e(!1),s(!1)}catch(d){console.error("Failed to disable microphone:",d)}finally{o(!1)}}},[n,r,e]);return{isEnabled:n,isLoading:r,toggle:i,enable:a,disable:c}}function xd(){const{setCameraEnabled:e}=Je(),[t,n]=C.useState(!1),[s,r]=C.useState(!1),o=C.useCallback(async()=>{if(!s){r(!0);try{const c=!t;await e(c),n(c)}catch(c){console.error("Failed to toggle camera:",c)}finally{r(!1)}}},[t,s,e]),i=C.useCallback(async()=>{if(!(t||s)){r(!0);try{await e(!0),n(!0)}catch(c){console.error("Failed to enable camera:",c)}finally{r(!1)}}},[t,s,e]),a=C.useCallback(async()=>{if(!(!t||s)){r(!0);try{await e(!1),n(!1)}catch(c){console.error("Failed to disable camera:",c)}finally{r(!1)}}},[t,s,e]);return{isEnabled:t,isLoading:s,toggle:o,enable:i,disable:a}}function bd(){const{startScreenShare:e,stopScreenShare:t}=Je(),[n,s]=C.useState(!1),[r,o]=C.useState(!1),i=C.useCallback(async()=>{if(!(n||r)){o(!0);try{await e(),s(!0)}catch(d){console.error("Failed to start screen share:",d)}finally{o(!1)}}},[n,r,e]),a=C.useCallback(async()=>{if(!(!n||r)){o(!0);try{await t(),s(!1)}catch(d){console.error("Failed to stop screen share:",d)}finally{o(!1)}}},[n,r,t]),c=C.useCallback(async()=>{n?await a():await i()},[n,i,a]);return{isSharing:n,isLoading:r,start:i,stop:a,toggle:c}}function mx(){const{client:e}=Je(),[t,n]=C.useState({tracks:[],layout:{type:"grid",showLocalVideo:!0,aspectRatio:"16:9"},isRecording:!1}),s=C.useMemo(()=>t.tracks.find(m=>m.isLocal),[t.tracks]),r=C.useMemo(()=>t.tracks.filter(m=>!m.isLocal),[t.tracks]),o=C.useCallback(async()=>{try{s!=null&&s.isEnabled?await(e==null?void 0:e.disableCamera()):await(e==null?void 0:e.enableCamera())}catch(m){throw console.error("Failed to toggle camera:",m),m}},[e,s]),i=C.useCallback(async()=>{try{t.tracks.find(b=>b.isScreenShare)?await(e==null?void 0:e.stopScreenShare()):await(e==null?void 0:e.startScreenShare())}catch(m){throw console.error("Failed to toggle screen share:",m),m}},[e,t.tracks]),a=C.useCallback(m=>{n(b=>({...b,layout:m}))},[]),c=C.useCallback(m=>{n(b=>({...b,pinnedTrack:m}))},[]),d=C.useCallback(()=>{n(m=>({...m,pinnedTrack:void 0}))},[]),u=C.useCallback(async()=>{try{await(e==null?void 0:e.startRecording()),n(m=>({...m,isRecording:!0}))}catch(m){throw console.error("Failed to start recording:",m),m}},[e]),f=C.useCallback(async()=>{try{await(e==null?void 0:e.stopRecording()),n(m=>({...m,isRecording:!1}))}catch(m){throw console.error("Failed to stop recording:",m),m}},[e]),h=C.useCallback(m=>t.tracks.find(b=>b.id===m),[t.tracks]),y=C.useCallback(m=>t.tracks.filter(b=>b.participantId===m),[t.tracks]),g=C.useCallback(m=>m.isEnabled&&t.tracks.includes(m),[t.tracks]);return C.useEffect(()=>{if(!e)return;const m=S=>{n(E=>({...E,tracks:[...E.tracks.filter(w=>w.id!==S.id),S]}))},b=S=>{n(E=>{var w;return{...E,tracks:E.tracks.filter(v=>v.id!==S),pinnedTrack:((w=E.pinnedTrack)==null?void 0:w.id)===S?void 0:E.pinnedTrack}})},k=S=>{n(E=>({...E,tracks:E.tracks.map(w=>w.id===S.id?S:w)}))};return e.on("videoTrackAdded",m),e.on("videoTrackRemoved",b),e.on("videoTrackUpdated",k),()=>{e.off("videoTrackAdded",m),e.off("videoTrackRemoved",b),e.off("videoTrackUpdated",k)}},[e]),{tracks:t.tracks,localTrack:s,remoteTraracks:r,pinnedTrack:t.pinnedTrack,layout:t.layout,isRecording:t.isRecording,toggleCamera:o,toggleScreenShare:i,setLayout:a,pinTrack:c,unpinTrack:d,startRecording:u,stopRecording:f,getTrackById:h,getTracksByParticipant:y,isTrackActive:g}}function Es(){const{chatMessages:e,sendChatMessage:t,currentSession:n}=Je(),[s,r]=C.useState(!1),o=C.useCallback(async d=>{if(!(!d.trim()||s||!n)){r(!0);try{await t(d.trim())}catch(u){throw console.error("Failed to send chat message:",u),u}finally{r(!1)}}},[t,s,n]),{userMessages:i,agentMessages:a,allMessages:c}=C.useMemo(()=>{const d=e.filter(f=>f.sender.type==="participant"),u=e.filter(f=>f.sender.type==="agent");return{userMessages:d,agentMessages:u,allMessages:e}},[e]);return{messages:c,userMessages:i,agentMessages:a,messageCount:c.length,isSending:s,canSend:!!n&&!s,send:o}}function px(){const{send:e,isSending:t,canSend:n}=Es(),[s,r]=C.useState(""),o=C.useCallback(async()=>{if(!(!s.trim()||!n))try{await e(s),r("")}catch(a){throw a}},[s,e,n]),i=C.useCallback(a=>{a.key==="Enter"&&!a.shiftKey&&(a.preventDefault(),o())},[o]);return{value:s,setValue:r,send:o,handleKeyPress:i,isSending:t,canSend:n&&s.trim().length>0}}function Vo(){const{isConnected:e,isConnecting:t,connectionError:n,connect:s,disconnect:r}=Je(),o=C.useCallback(async()=>{if(!(e||t))try{await s()}catch(a){throw console.error("Failed to connect:",a),a}},[s,e,t]),i=C.useCallback(async()=>{if(e)try{await r()}catch(a){throw console.error("Failed to disconnect:",a),a}},[r,e]);return{isConnected:e,isConnecting:t,isDisconnected:!e&&!t,error:n,hasError:!!n,connect:o,disconnect:i}}function vd(){const{participants:e}=Je();return{participants:e,count:e.length,localParticipant:e.find(t=>t.isLocal),remoteParticipants:e.filter(t=>!t.isLocal)}}const wd=C.createContext({}),Pn=()=>C.useContext(wd);function Sd({children:e,...t}){return l.jsx(wd.Provider,{value:t,children:e})}function Xn({name:e,children:t,fallback:n,className:s}){return l.jsx("div",{className:`voxket-slot voxket-slot--${e} ${s||""}`,children:t||n})}function Cd(e,t={}){return Object.assign(e,t)}function Ed({showMicrophoneControl:e=!0,showCameraControl:t=!0,showScreenShareControl:n=!0,showSessionActions:s=!0,customControls:r,className:o=""}){const i=jt(),a=yd(),c=xd(),d=bd(),u=Pn(),f=["voxket-session-controls",`voxket-session-controls--${u.variant||"default"}`,`voxket-session-controls--${u.size||"md"}`,i.isActive?"voxket-session-controls--active":"voxket-session-controls--inactive",o].filter(Boolean).join(" ");return!i.isActive&&!s?l.jsx("div",{className:f,children:l.jsx("div",{className:"voxket-controls-inactive",children:l.jsx("p",{children:"Controls available during active session"})})}):l.jsxs("div",{className:f,children:[s&&l.jsx("div",{className:"voxket-session-actions",children:i.isActive?l.jsx("button",{onClick:i.stop,className:"voxket-button voxket-button--danger",children:"End Session"}):l.jsx(gx,{})}),i.isActive&&l.jsxs("div",{className:"voxket-media-controls",children:[e&&l.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:[l.jsx("span",{className:"voxket-icon",children:"🎤"}),a.isLoading?"Loading...":a.isEnabled?"Mute":"Unmute"]}),t&&l.jsxs("button",{onClick:c.toggle,disabled:c.isLoading,className:`voxket-button voxket-button--media ${c.isEnabled?"voxket-button--active":""}`,title:c.isEnabled?"Stop camera":"Start camera",children:[l.jsx("span",{className:"voxket-icon",children:"📹"}),c.isLoading?"Loading...":c.isEnabled?"Stop Video":"Start Video"]}),n&&l.jsxs("button",{onClick:d.toggle,disabled:d.isLoading,className:`voxket-button voxket-button--media ${d.isSharing?"voxket-button--active":""}`,title:d.isSharing?"Stop screen share":"Start screen share",children:[l.jsx("span",{className:"voxket-icon",children:"🖥️"}),d.isLoading?"Loading...":d.isSharing?"Stop Share":"Share Screen"]})]}),r&&l.jsx("div",{className:"voxket-custom-controls",children:r})]})}function gx(){jt();const[e,t]=C.useState(!1),n=async()=>{t(!0);try{console.log("Start session - agentId needed")}catch(s){console.error("Failed to start session:",s)}finally{t(!1)}};return l.jsx("button",{onClick:n,disabled:e,className:"voxket-button voxket-button--primary",children:e?"Starting...":"Start Session"})}function Ro({showConnectionStatus:e=!0,showSessionInfo:t=!0,showAgentInfo:n=!0,className:s=""}){const r=jt(),o=Vo(),i=Pn(),a=["voxket-session-header",`voxket-session-header--${i.variant||"default"}`,`voxket-session-header--${i.size||"md"}`,s].filter(Boolean).join(" ");return l.jsxs("div",{className:a,children:[e&&l.jsxs("div",{className:"voxket-connection-status",children:[l.jsx("div",{className:`voxket-status-indicator ${o.isConnected?"connected":"disconnected"}`}),l.jsx("span",{className:"voxket-status-text",children:o.isConnecting?"Connecting...":o.isConnected?"Connected":"Disconnected"})]}),t&&r.session&&l.jsxs("div",{className:"voxket-session-info",children:[l.jsxs("div",{className:"voxket-session-id",children:["Session: ",r.session.id.slice(-8)]}),l.jsxs("div",{className:"voxket-session-state",children:["State: ",r.state]})]}),n&&r.session&&l.jsxs("div",{className:"voxket-agent-info",children:[l.jsxs("div",{className:"voxket-agent-id",children:["Agent: ",r.session.agentId]}),l.jsxs("div",{className:"voxket-modalities",children:["Modalities: ",r.session.activeModalities.join(", ")]})]}),o.error&&l.jsxs("div",{className:"voxket-error-message",children:["Error: ",o.error.message]})]})}function Io({showChat:e=!0,showTranscriptions:t=!1,customContent:n,className:s=""}){const r=jt(),o=Es(),i=Pn(),a=["voxket-session-content",`voxket-session-content--${i.variant||"default"}`,`voxket-session-content--${i.size||"md"}`,s].filter(Boolean).join(" ");return r.isActive?l.jsx("div",{className:a,children:n||l.jsxs(l.Fragment,{children:[e&&l.jsxs("div",{className:"voxket-chat-container",children:[l.jsxs("div",{className:"voxket-chat-messages",children:[o.messages.map(c=>l.jsxs("div",{className:`voxket-message voxket-message--${c.sender.type}`,children:[l.jsxs("div",{className:"voxket-message-header",children:[l.jsx("span",{className:"voxket-message-sender",children:c.sender.name}),l.jsx("span",{className:"voxket-message-time",children:c.timestamp.toLocaleTimeString()})]}),l.jsx("div",{className:"voxket-message-content",children:c.content})]},c.id)),o.messages.length===0&&l.jsx("div",{className:"voxket-empty-messages",children:l.jsx("p",{children:"No messages yet. Start the conversation!"})})]}),l.jsx(yx,{})]}),t&&l.jsx("div",{className:"voxket-transcriptions",children:l.jsx("div",{className:"voxket-transcription-placeholder",children:l.jsx("p",{children:"Voice transcriptions will appear here"})})})]})}):l.jsx("div",{className:a,children:l.jsx("div",{className:"voxket-inactive-state",children:l.jsxs("div",{className:"voxket-inactive-message",children:[l.jsx("h3",{children:"Start a conversation"}),l.jsx("p",{children:"Begin a session to start chatting with the AI agent"})]})})})}function yx(){const e=Es(),[t,n]=C.useState(""),s=async()=>{if(!(!t.trim()||!e.canSend))try{await e.send(t),n("")}catch(o){console.error("Failed to send message:",o)}},r=o=>{o.key==="Enter"&&!o.shiftKey&&(o.preventDefault(),s())};return l.jsxs("div",{className:"voxket-chat-input",children:[l.jsx("input",{type:"text",value:t,onChange:o=>n(o.target.value),onKeyPress:r,placeholder:"Type your message...",disabled:!e.canSend,className:"voxket-input"}),l.jsx("button",{onClick:s,disabled:!e.canSend||!t.trim(),className:"voxket-send-button",children:e.isSending?"Sending...":"Send"})]})}function Do({showMetrics:e=!0,showParticipants:t=!0,showStatus:n=!0,customFooter:s,className:r=""}){const o=jt(),i=gd(),a=vd(),c=Pn(),d=["voxket-session-footer",`voxket-session-footer--${c.variant||"default"}`,`voxket-session-footer--${c.size||"md"}`,r].filter(Boolean).join(" ");return o.isActive?l.jsx("div",{className:d,children:s||l.jsxs(l.Fragment,{children:[n&&l.jsxs("div",{className:"voxket-session-status",children:[l.jsx("div",{className:"voxket-status-indicator voxket-status-indicator--active"}),l.jsx("span",{className:"voxket-status-text",children:"Session Active"})]}),e&&i.metrics&&l.jsxs("div",{className:"voxket-session-metrics",children:[l.jsxs("div",{className:"voxket-metric",children:[l.jsx("span",{className:"voxket-metric-label",children:"Duration:"}),l.jsx("span",{className:"voxket-metric-value",children:xx(i.duration||0)})]}),l.jsxs("div",{className:"voxket-metric",children:[l.jsx("span",{className:"voxket-metric-label",children:"Messages:"}),l.jsx("span",{className:"voxket-metric-value",children:i.metrics.messageCount})]})]}),t&&l.jsxs("div",{className:"voxket-participants-info",children:[l.jsxs("span",{className:"voxket-participants-count",children:[a.count," participant",a.count!==1?"s":""]}),a.remoteParticipants.length>0&&l.jsx("div",{className:"voxket-participant-list",children:a.remoteParticipants.map(u=>l.jsx("span",{className:"voxket-participant-name",children:u.name},u.id))})]})]})}):l.jsx("div",{className:d,children:l.jsx("div",{className:"voxket-footer-inactive",children:l.jsx("span",{className:"voxket-status-text",children:"Ready to start session"})})})}function xx(e){const t=Math.floor(e/1e3),n=Math.floor(t/60),s=Math.floor(n/60);return s>0?`${s}:${(n%60).toString().padStart(2,"0")}:${(t%60).toString().padStart(2,"0")}`:`${n}:${(t%60).toString().padStart(2,"0")}`}function bx({agentId:e,sessionConfig:t,autoStart:n=!1,onSessionStart:s,onSessionEnd:r,variant:o="default",size:i="md",theme:a,className:c="",children:d}){var y;const u=jt(),f=Vo();C.useEffect(()=>{n&&e&&f.isConnected&&!u.isActive&&u.start(e,t).catch(console.error)},[n,e,f.isConnected,u.isActive]),C.useEffect(()=>{var g;(g=u.session)!=null&&g.id&&s&&s(u.session.id)},[(y=u.session)==null?void 0:y.id,s]),C.useEffect(()=>()=>{u.isActive&&r&&u.stop().then(r).catch(console.error)},[]);const h=["voxket-session",`voxket-session--${o}`,`voxket-session--${i}`,u.isActive?"voxket-session--active":"voxket-session--inactive",c].filter(Boolean).join(" ");return l.jsx(Sd,{variant:o,size:i,theme:a,className:c,children:l.jsx("div",{className:h,children:d||l.jsxs(l.Fragment,{children:[l.jsx(Xn,{name:"header",fallback:l.jsx(Ro,{})}),l.jsx(Xn,{name:"content",fallback:l.jsx(Io,{})}),l.jsx(Xn,{name:"footer",fallback:l.jsx(Do,{})})]})})})}const kd=Cd(bx,{Header:Ro,Content:Io,Footer:Do,Controls:Ed}),Tt={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)"}},Ir={...Tt,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)"}},Dr={...Tt,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"}},Td=C.createContext(null),Ad=()=>{const e=C.useContext(Td);if(!e)throw new Error("useTheme must be used within a ThemeProvider");return e};function vx({theme:e="default",themes:t={},children:n,cssVariables:s=!0,className:r=""}){const[o,i]=C.useState(()=>{const h={default:Tt,dark:Ir,enterprise:Dr,...t};return typeof e=="string"?h[e]||Tt:e}),[a,c]=C.useState(()=>({default:Tt,dark:Ir,enterprise:Dr,...t})),d=h=>{if(typeof h=="string"){const y=a[h];y&&i(y)}else i(h)},u=h=>{c(y=>({...y,[h.name]:h}))};C.useEffect(()=>{if(s&&typeof document<"u"){const h=document.documentElement;Object.entries(jd(o)).forEach(([y,g])=>{h.style.setProperty(`--voxket-${y}`,g)})}},[o,s]);const f={theme:o,setTheme:d,themes:a,registerTheme:u};return l.jsx(Td.Provider,{value:f,children:l.jsx("div",{className:`voxket-theme voxket-theme--${o.name} ${r}`,children:n})})}function jd(e){const t={},n=(s,r="")=>{for(const[o,i]of Object.entries(s)){const a=r?`${r}-${o}`:o;typeof i=="object"&&i!==null&&!Array.isArray(i)?n(i,a):t[a]=String(i)}};return n(e),t}function wx(e=Tt,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 Sx(e){var n;const{theme:t}=Ad();return((n=t.components)==null?void 0:n[e])||{}}const Cx=No("voice-modality","voice",{onActivate:async e=>{const t=e.config;t.enableTranscription&&Ex(e),t.enableVoiceActivation&&kx(e,t),console.log("Voice modality activated",t)},onDeactivate:async e=>{console.log("Voice modality deactivated")},onMessage:async(e,t)=>{t.type==="audio"&&Tx(e,t)}});function Ex(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 kx(e,t){const n=t.silenceThreshold||-50;console.log("Voice activation setup with threshold:",n)}function Tx(e,t){console.log("Playing audio response:",t.content)}const Ax=No("chat-modality","chat",{onActivate:async e=>{const t=e.config;t.enableRichText&&jx(),t.enableFileUpload&&Mx(e),t.enableCustomComponents&&Px(),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"?Nx(e,t):t.type==="text"&&n.enableRichText&&Vx(e,t)}});function jx(e){console.log("Rich text support enabled")}function Mx(e){console.log("File upload enabled"),e.on("chat.file.uploaded",t=>{console.log("File uploaded:",t.name)})}function Px(e){console.log("Custom components enabled");const t=new Map;t.set("quick-actions",Rx),t.set("form",Ix),t.set("card",Dx),t.set("chart",$x)}function Nx(e,t){const{componentType:n,props:s}=t.metadata;console.log("Rendering custom component:",n,s),e.emit("chat.component.render",{type:n,props:s,timestamp:new Date})}function Vx(e,t){console.log("Processing rich text message:",t.content)}function Rx(e){return{type:"quick-actions",actions:e.actions||[],layout:e.layout||"horizontal"}}function Ix(e){return{type:"form",fields:e.fields||[],submitAction:e.submitAction,validation:e.validation}}function Dx(e){return{type:"card",title:e.title,content:e.content,actions:e.actions,variant:e.variant||"default"}}function $x(e){return{type:"chart",chartType:e.chartType||"line",data:e.data,options:e.options}}function Jn({track:e,participantName:t,showControls:n=!0,showName:s=!0,showMuteIndicator:r=!0,isPinned:o=!1,className:i="",onClick:a,onPin:c,onUnpin:d}){const u=C.useRef(null),[f,h]=C.useState(!1);C.useEffect(()=>{if(!u.current||!e.isEnabled)return;const b=u.current;return b.srcObject=null,()=>{b.srcObject&&(b.srcObject=null)}},[e]);const y=()=>{a==null||a(e)},g=b=>{b.stopPropagation(),o?d==null||d(e):c==null||c(e)},m=["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",f?"voxket-video-tile--hovered":"",i].filter(Boolean).join(" ");return l.jsxs("div",{className:m,onClick:y,onMouseEnter:()=>h(!0),onMouseLeave:()=>h(!1),style:{aspectRatio:e.dimensions?`${e.dimensions.width} / ${e.dimensions.height}`:"16 / 9"},children:[l.jsx("video",{ref:u,className:"voxket-video-element",autoPlay:!0,playsInline:!0,muted:e.isLocal}),!e.isEnabled&&l.jsxs("div",{className:"voxket-video-placeholder",children:[l.jsx("div",{className:"voxket-video-placeholder-icon",children:e.isScreenShare?"🖥️":"📹"}),l.jsx("p",{className:"voxket-video-placeholder-text",children:e.isScreenShare?"Screen sharing paused":"Camera off"})]}),l.jsxs("div",{className:"voxket-video-overlay",children:[s&&t&&l.jsxs("div",{className:"voxket-video-name",children:[t,e.isLocal&&" (You)"]}),r&&!e.isEnabled&&l.jsx("div",{className:"voxket-video-mute-indicator",children:"🔇"}),n&&(f||o)&&l.jsxs("div",{className:"voxket-video-controls",children:[l.jsx("button",{className:`voxket-video-control-btn ${o?"voxket-video-control-btn--active":""}`,onClick:g,title:o?"Unpin video":"Pin video",children:"📌"}),e.isScreenShare&&l.jsx("div",{className:"voxket-video-indicator",children:"🖥️"}),e.source&&l.jsx("div",{className:"voxket-video-source",children:e.source})]})]}),!e.isEnabled&&l.jsx("div",{className:"voxket-video-loading",children:l.jsx("div",{className:"voxket-spinner"})})]})}function Fx({tracks:e,layout:t,className:n="",onLayoutChange:s,onTrackClick:r,maxVisibleTracks:o=9,showPagination:i=!0}){const[a,c]=C.useState(0),[d,u]=C.useState(null),f=C.useMemo(()=>{let S=[...e];t.type==="speaker"&&d&&(S=[d,...e.filter(v=>v.id!==d.id)]);const E=a*o,w=E+o;return S.slice(E,w)},[e,t,d,a,o]),h=Math.ceil(e.length/o),y=C.useMemo(()=>{const S=f.length;switch(t.type){case"grid":const E=Math.ceil(Math.sqrt(S)),w=Math.ceil(S/E);return{display:"grid",gridTemplateColumns:`repeat(${E}, 1fr)`,gridTemplateRows:`repeat(${w}, 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,f.length]),g=S=>{u(S)},m=()=>{u(null)},b=S=>{s==null||s({...t,type:S})},k=["voxket-video-grid",`voxket-video-grid--${t.type}`,`voxket-video-grid--${f.length}-tracks`,n].filter(Boolean).join(" ");return e.length===0?l.jsx("div",{className:"voxket-video-grid-empty",children:l.jsxs("div",{className:"voxket-video-grid-empty-content",children:[l.jsx("div",{className:"voxket-video-grid-empty-icon",children:"📹"}),l.jsx("p",{children:"No video tracks available"})]})}):l.jsxs("div",{className:k,children:[l.jsxs("div",{className:"voxket-video-grid-controls",children:[l.jsx("div",{className:"voxket-video-layout-controls",children:["grid","speaker","sidebar","gallery"].map(S=>l.jsx("button",{className:`voxket-layout-btn ${t.type===S?"voxket-layout-btn--active":""}`,onClick:()=>b(S),title:`Switch to ${S} layout`,children:Ox(S)},S))}),l.jsxs("div",{className:"voxket-video-count",children:[e.length," participant",e.length!==1?"s":""]})]}),l.jsx("div",{className:"voxket-video-grid-content",style:y,children:t.type==="speaker"&&d?l.jsxs(l.Fragment,{children:[l.jsx("div",{className:"voxket-video-speaker-main",children:l.jsx(Jn,{track:d,participantName:`Participant ${d.participantId}`,isPinned:!0,onClick:r,onUnpin:m})}),l.jsx("div",{className:"voxket-video-speaker-sidebar",children:f.filter(S=>S.id!==d.id).map(S=>l.jsx(Jn,{track:S,participantName:`Participant ${S.participantId}`,showControls:!1,onClick:r,onPin:g},S.id))})]}):f.map(S=>l.jsx(Jn,{track:S,participantName:`Participant ${S.participantId}`,isPinned:(d==null?void 0:d.id)===S.id,onClick:r,onPin:g,onUnpin:m},S.id))}),i&&h>1&&l.jsxs("div",{className:"voxket-video-pagination",children:[l.jsx("button",{className:"voxket-pagination-btn",onClick:()=>c(Math.max(0,a-1)),disabled:a===0,children:"←"}),l.jsxs("span",{className:"voxket-pagination-info",children:["Page ",a+1," of ",h]}),l.jsx("button",{className:"voxket-pagination-btn",onClick:()=>c(Math.min(h-1,a+1)),disabled:a===h-1,children:"→"})]})]})}function Ox(e){switch(e){case"grid":return"⊞";case"speaker":return"🎤";case"sidebar":return"⫸";case"gallery":return"⊡";case"picture-in-picture":return"⧉";default:return"⊞"}}function Lx({localTrack:e,onToggleCamera:t,onToggleScreenShare:n,onLayoutChange:s,showLayoutControls:r=!0,showCameraControls:o=!0,showScreenShareControls:i=!0,className:a=""}){const c=["voxket-video-controls",a].filter(Boolean).join(" "),d=u=>{s==null||s({type:u,showLocalVideo:!0,aspectRatio:"16:9"})};return l.jsxs("div",{className:c,children:[o&&l.jsxs("div",{className:"voxket-video-controls-section",children:[l.jsx("h4",{className:"voxket-video-controls-title",children:"Camera"}),l.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:[l.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isEnabled?"📹":"📷"}),l.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isEnabled?"Camera On":"Camera Off"})]}),(e==null?void 0:e.dimensions)&&l.jsxs("div",{className:"voxket-video-info",children:[e.dimensions.width," × ",e.dimensions.height]})]}),i&&l.jsxs("div",{className:"voxket-video-controls-section",children:[l.jsx("h4",{className:"voxket-video-controls-title",children:"Screen Share"}),l.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:[l.jsx("span",{className:"voxket-control-icon",children:e!=null&&e.isScreenShare?"🛑":"🖥️"}),l.jsx("span",{className:"voxket-control-label",children:e!=null&&e.isScreenShare?"Stop Sharing":"Share Screen"})]})]}),r&&l.jsxs("div",{className:"voxket-video-controls-section",children:[l.jsx("h4",{className:"voxket-video-controls-title",children:"Layout"}),l.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:f,label:h})=>l.jsxs("button",{className:"voxket-layout-control-btn",onClick:()=>d(u),title:`Switch to ${h} layout`,children:[l.jsx("span",{className:"voxket-control-icon",children:f}),l.jsx("span",{className:"voxket-control-label",children:h})]},u))})]}),l.jsxs("div",{className:"voxket-video-controls-section",children:[l.jsx("h4",{className:"voxket-video-controls-title",children:"Video Settings"}),l.jsxs("div",{className:"voxket-video-settings",children:[l.jsxs("div",{className:"voxket-setting-group",children:[l.jsx("label",{className:"voxket-setting-label",children:"Quality"}),l.jsxs("select",{className:"voxket-setting-select",children:[l.jsx("option",{value:"high",children:"High (720p)"}),l.jsx("option",{value:"medium",children:"Medium (480p)"}),l.jsx("option",{value:"low",children:"Low (240p)"})]})]}),l.jsxs("div",{className:"voxket-setting-group",children:[l.jsx("label",{className:"voxket-setting-label",children:"Frame Rate"}),l.jsxs("select",{className:"voxket-setting-select",children:[l.jsx("option",{value:"30",children:"30 fps"}),l.jsx("option",{value:"15",children:"15 fps"}),l.jsx("option",{value:"10",children:"10 fps"})]})]}),l.jsxs("div",{className:"voxket-setting-group",children:[l.jsx("label",{className:"voxket-setting-label",children:"Bandwidth"}),l.jsxs("select",{className:"voxket-setting-select",children:[l.jsx("option",{value:"unlimited",children:"Unlimited"}),l.jsx("option",{value:"1000",children:"1 Mbps"}),l.jsx("option",{value:"500",children:"500 Kbps"}),l.jsx("option",{value:"250",children:"250 Kbps"})]})]})]})]}),l.jsxs("div",{className:"voxket-video-controls-section",children:[l.jsx("h4",{className:"voxket-video-controls-title",children:"Statistics"}),l.jsxs("div",{className:"voxket-video-stats",children:[l.jsxs("div",{className:"voxket-stat-item",children:[l.jsx("span",{className:"voxket-stat-label",children:"Resolution:"}),l.jsx("span",{className:"voxket-stat-value",children:e!=null&&e.dimensions?`${e.dimensions.width}×${e.dimensions.height}`:"N/A"})]}),l.jsxs("div",{className:"voxket-stat-item",children:[l.jsx("span",{className:"voxket-stat-label",children:"Source:"}),l.jsx("span",{className:"voxket-stat-value",children:(e==null?void 0:e.source)||"None"})]}),l.jsxs("div",{className:"voxket-stat-item",children:[l.jsx("span",{className:"voxket-stat-label",children:"Status:"}),l.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 Md=({handler:e,loadData:t,data:n,client:s,addLocalMessage:r})=>{const[o,i]=p.useState(null),[a,c]=p.useState(!0),[d,u]=p.useState(!1),[f]=p.useState(Date.now());p.useEffect(()=>{(async()=>{try{if(c(!0),console.log("📋 AssignmentView: Loading assignment data..."),console.log("📋 AssignmentView: Received data from RPC:",n),n&&typeof n=="object"){const b={title:n.title||"Untitled Assignment",description:n.description||"No description provided",estimated_time_of_completion:n.estimated_time_of_completion||"Unknown"};i(b),console.log("📋 AssignmentView: Assignment loaded from RPC data:",b)}}catch(b){console.error("📋 AssignmentView: Error loading assignment:",b),i({title:"Assignment Loading Error",description:"There was an error loading the assignment details. Please try again.",estimated_time_of_completion:"Unknown"})}finally{c(!1)}})()},[n,t]);const h=({message:m,assignment:b})=>{const k=m.toLowerCase().includes("declined"),S=k?"bg-red-50 border-red-200":"bg-green-50 border-green-200",E=k?"text-red-700":"text-green-700",w=k?"❌":"🎉";return l.jsxs("div",{className:`max-w-sm mx-auto ${S} border rounded-lg shadow p-3 flex flex-col items-center`,children:[l.jsx("div",{className:"text-2xl mb-2",children:w}),l.jsx("div",{className:`${E} font-semibold text-sm mb-1`,children:m}),l.jsx("div",{className:"text-xs text-gray-600 text-center mb-1",children:b.title}),l.jsx("div",{className:"text-xs text-gray-500",children:"Thank you for your response!"})]})},y=async()=>{if(!(!o||!e)){u(!0);try{const m={message:"accepted"};console.log("📋 AssignmentView: Assignment accepted:",m),e.didSuccess(m,l.jsx(h,{message:"Assignment accepted!",assignment:o}))}catch(m){console.error("📋 AssignmentView: Error accepting assignment:",m),e.didFail({error:"Failed to accept assignment"})}finally{u(!1)}}},g=async()=>{if(!(!o||!e)){u(!0);try{const m={message:"declined"};console.log("📋 AssignmentView: Assignment declined:",m),e.didSuccess(m,l.jsx(h,{message:"Assignment declined",assignment:o}))}catch(m){console.error("📋 AssignmentView: Error declining assignment:",m),e.didFail({error:"Failed to decline assignment"})}finally{u(!1)}}};return a?l.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:l.jsxs("div",{className:"flex items-center justify-center py-4",children:[l.jsx("div",{className:"animate-spin rounded-full h-4 w-4 border-b-2 border-blue-600"}),l.jsx("span",{className:"ml-2 text-xs text-gray-600",children:"Loading assignment..."})]})}):o?l.jsxs("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg overflow-hidden",children:[l.jsx("div",{className:"bg-gradient-to-r from-blue-600 to-purple-600 text-white p-3",children:l.jsx("div",{className:"flex items-center justify-between",children:l.jsx("h3",{className:"text-xs font-semibold text-white truncate",children:o.title})})}),l.jsxs("div",{className:"p-3",children:[l.jsx("div",{className:"bg-gray-50 rounded p-2 mb-3",children:l.jsx("p",{className:"text-xs text-gray-700 leading-snug",children:o.description})}),l.jsx("div",{className:"mb-3",children:l.jsxs("div",{className:"flex items-center text-xs text-gray-600",children:[l.jsx("span",{className:"text-xs mr-1",children:"📅"}),l.jsxs("span",{children:["Est: ",o.estimated_time_of_completion]})]})}),l.jsxs("div",{className:"flex gap-2",children:[l.jsx("button",{onClick:y,disabled:d,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:d?l.jsxs("span",{className:"flex items-center justify-center",children:[l.jsx("div",{className:"animate-spin rounded-full h-2 w-2 border-b-2 border-white mr-1"}),l.jsx("span",{className:"text-xs",children:"Processing..."})]}):"Accept"}),l.jsx("button",{onClick:g,disabled:d,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"})]})]})]}):l.jsx("div",{className:"max-w-sm mx-auto bg-white rounded-lg shadow-lg p-3",children:l.jsxs("div",{className:"text-center py-4",children:[l.jsx("div",{className:"text-red-600 text-sm font-semibold mb-2",children:"⚠️ Assignment Error"}),l.jsx("p",{className:"text-xs text-gray-600 mb-3",children:"Failed to load assignment details."})]})})};function _x(){const[e,t]=p.useState(null),[n,s]=p.useState([]);p.useEffect(()=>{const a=new Mn({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",c=>{console.log("RPC Method Called:",c)}),a.on("rpc.interaction.completed",c=>{console.log("RPC Interaction Completed:",c)}),()=>{a.disconnect()}},[]);const r=async()=>{if(e)try{await e.registerFrontendRPC("give_assignment",Md,"embedded");const a=e.getRegisteredRpcMethods();s(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:c,timeout:d})=>{const[u,f]=p.useState(""),h=[{id:"pro",name:"Pro Plan",price:"$29/month"},{id:"enterprise",name:"Enterprise Plan",price:"$99/month"},{id:"basic",name:"Basic Plan",price:"$9/month"}],y=m=>{f(m)},g=()=>{const m=h.find(b=>b.id===u);c==null||c.didSuccess({selectedProduct:u,productName:m==null?void 0:m.name,price:m==null?void 0:m.price,timestamp:new Date().toISOString()})};return l.jsxs("div",{className:"p-6 bg-white rounded-lg",children:[l.jsx("h3",{className:"text-xl font-bold mb-4",children:"Choose Your Plan"}),l.jsx("p",{className:"text-gray-600 mb-4",children:"Select the plan that best fits your needs:"}),l.jsx("div",{className:"space-y-3 mb-6",children:h.map(m=>l.jsx("div",{onClick:()=>y(m.id),className:`p-4 border rounded-lg cursor-pointer transition-all ${u===m.id?"border-blue-500 bg-blue-50":"border-gray-200 hover:border-gray-300"}`,children:l.jsxs("div",{className:"flex justify-between items-center",children:[l.jsxs("div",{children:[l.jsx("h4",{className:"font-medium",children:m.name}),l.jsx("p",{className:"text-gray-600 text-sm",children:m.price})]}),l.jsx("div",{className:`w-4 h-4 rounded-full ${u===m.id?"bg-blue-500":"border-2 border-gray-300"}`})]})},m.id))}),l.jsxs("div",{className:"flex justify-end space-x-3",children:[l.jsx("button",{onClick:()=>c==null?void 0:c.dismissView(),className:"px-4 py-2 border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Cancel"}),l.jsx("button",{onClick:g,disabled:!u,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600 disabled:opacity-50",children:"Select Plan"})]}),d&&l.jsxs("p",{className:"text-xs text-gray-500 mt-2",children:["Time remaining: ",d," seconds"]})]})};try{await e.registerFrontendRPC("recommend_product",a,"modal");const c=e.getRegisteredRpcMethods();s(c),console.log("✅ Product Recommendation RPC registered successfully")}catch(c){console.error("❌ Failed to register product recommendation RPC:",c)}},i=async()=>{if(!e)return;const a=({handler:c})=>{const[d,u]=p.useState(0),[f,h]=p.useState(""),y=()=>{c==null||c.didSuccess({rating:d,comment:f,timestamp:new Date().toISOString()})};return l.jsxs("div",{className:"p-4 bg-white rounded-lg",children:[l.jsx("h3",{className:"text-lg font-semibold mb-3",children:"How was your experience?"}),l.jsxs("div",{className:"mb-4",children:[l.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Rate your experience:"}),l.jsx("div",{className:"flex space-x-1",children:[1,2,3,4,5].map(g=>l.jsx("button",{onClick:()=>u(g),className:`text-2xl ${g<=d?"text-yellow-400":"text-gray-300"}`,children:"⭐"},g))})]}),l.jsxs("div",{className:"mb-4",children:[l.jsx("p",{className:"text-sm text-gray-600 mb-2",children:"Additional comments:"}),l.jsx("textarea",{value:f,onChange:g=>h(g.target.value),className:"w-full p-2 border border-gray-300 rounded text-sm",rows:3,placeholder:"Tell us more about your experience..."})]}),l.jsxs("div",{className:"flex justify-end space-x-2",children:[l.jsx("button",{onClick:()=>c==null?void 0:c.dismissView(),className:"px-3 py-1 text-sm border border-gray-300 text-gray-700 rounded hover:bg-gray-50",children:"Skip"}),l.jsx("button",{onClick:y,disabled:d===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 c=e.getRegisteredRpcMethods();s(c),console.log("✅ Feedback RPC registered successfully")}catch(c){console.error("❌ Failed to register feedback RPC:",c)}};return l.jsxs("div",{className:"p-6",children:[l.jsx("h2",{className:"text-2xl font-bold mb-6",children:"Frontend RPC Examples"}),l.jsxs("div",{className:"space-y-4 mb-6",children:[l.jsxs("div",{children:[l.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Register RPC Methods"}),l.jsxs("div",{className:"space-x-2",children:[l.jsx("button",{onClick:r,className:"px-4 py-2 bg-blue-500 text-white rounded hover:bg-blue-600",children:"Register Assignment RPC"}),l.jsx("button",{onClick:o,className:"px-4 py-2 bg-green-500 text-white rounded hover:bg-green-600",children:"Register Product Recommendation RPC"}),l.jsx("button",{onClick:i,className:"px-4 py-2 bg-purple-500 text-white rounded hover:bg-purple-600",children:"Register Feedback RPC"})]})]}),l.jsxs("div",{children:[l.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Registered Methods"}),n.length>0?l.jsx("ul",{className:"list-disc list-inside space-y-1",children:n.map(a=>l.jsx("li",{className:"text-gray-700",children:l.jsx("code",{className:"bg-gray-100 px-2 py-1 rounded",children:a})},a))}):l.jsx("p",{className:"text-gray-500",children:"No methods registered yet"})]})]}),l.jsxs("div",{className:"bg-gray-50 p-4 rounded-lg",children:[l.jsx("h3",{className:"text-lg font-semibold mb-2",children:"How it works"}),l.jsxs("ol",{className:"list-decimal list-inside space-y-2 text-sm text-gray-700",children:[l.jsxs("li",{children:["Register RPC methods with React components using ",l.jsx("code",{children:"client.registerFrontendRPC()"})]}),l.jsx("li",{children:"When the agent calls an RPC method, the corresponding component will be displayed"}),l.jsx("li",{children:"Users interact with the component, and the response is sent back to the agent"}),l.jsx("li",{children:"Components can be displayed in different modes: embedded, modal, or fullscreen"}),l.jsx("li",{children:"Each component has a timeout and can handle success/failure scenarios"})]})]}),l.jsxs("div",{className:"mt-6 bg-blue-50 p-4 rounded-lg",children:[l.jsx("h3",{className:"text-lg font-semibold mb-2 text-blue-800",children:"Agent Side"}),l.jsx("p",{className:"text-sm text-blue-700 mb-2",children:"On the agent side, you can call these RPC methods like this:"}),l.jsx("pre",{className:"bg-white p-3 rounded text-xs text-gray-800 overflow-x-auto",children:`// Agent calls RPC method
33
106
  const response = await participant.performRpc({
34
107
  method: 'give_assignment',
35
108
  data: JSON.stringify({
@@ -40,4 +113,4 @@ const response = await participant.performRpc({
40
113
  })
41
114
  });
42
115
 
43
- console.log('User response:', response);`})]})]})}const N0={async checkAvailableRpcs(e){const t=e.getRegisteredRpcMethods();return console.log("🔍 Agent: Available RPC methods:",t),t},async triggerAssignment(e,t){const n={title:"Complete Q4 Sales Analysis Report",description:"Please analyze the Q4 sales data and create a comprehensive report with insights, trends, and recommendations for the upcoming quarter. Include visualizations and executive summary.",estimated_time_of_completion:"2-3 hours"};try{console.log("🤖 Agent: Triggering give_assignment RPC with data:",n);const s=await e.localParticipant.performRpc(t,"give_assignment",JSON.stringify(n),{responseTimeout:12e4}),o=JSON.parse(s);return console.log("✅ Agent: Received user response:",o),await this.processAssignmentResponse(o),o}catch(s){throw console.error("❌ Agent: RPC failed:",s),s}},async processAssignmentResponse(e){console.log("🧠 Agent: Processing assignment response...");const t=e.status,n=e.assignmentId,s=e.timeSpent;return t==="accepted"?(console.log("🎉 Agent: User accepted the assignment!"),console.log(`� Assignment ID: ${n}`),console.log(`⏱️ Time to respond: ${s}ms`),console.log("💬 Agent: Sending follow-up:","Great! I've recorded that you've accepted the assignment. You'll receive the detailed requirements and access to the data shortly. Let me know if you need any clarification!")):t==="declined"?(console.log("❌ Agent: User declined the assignment"),console.log("💬 Agent: Sending follow-up:","No problem! Is there anything specific about this assignment that doesn't work for you? I can suggest alternatives or modify the requirements.")):t==="completed"&&(console.log("✅ Agent: User completed the assignment"),console.log("💬 Agent: Sending follow-up:","Excellent work! Could you please share the completed report? I'm excited to review your analysis and insights.")),{status:t,assignmentId:n,timeSpent:s,processed:!0,followupAction:t==="accepted"?"send_requirements":t==="declined"?"offer_alternatives":"request_deliverables"}},getAssignmentExamples(){return{marketing:{title:"Create Social Media Campaign",description:"Design and plan a social media campaign for our new product launch. Include content calendar, post designs, and engagement strategy.",estimated_time_of_completion:"4-5 hours"},technical:{title:"API Integration Documentation",description:"Create comprehensive documentation for our new API endpoints, including examples, error codes, and best practices for developers.",estimated_time_of_completion:"6-8 hours"},research:{title:"Market Research Analysis",description:"Research and analyze competitor pricing strategies in our target market. Provide recommendations for our pricing model.",estimated_time_of_completion:"3-4 hours"},quick:{title:"Customer Feedback Summary",description:"Review this week's customer feedback and create a summary of key themes and actionable insights.",estimated_time_of_completion:"30-45 minutes"}}}},P0=e=>typeof window>"u"?null:h.createElement(_a,{children:h.createElement(Oa,e)});exports.AssignmentView=tl;exports.CompoundProvider=Ga;exports.InteractiveComponent=pt;exports.PluginManager=La;exports.RpcExamples=V0;exports.SessionContainer=Xa;exports.SessionContent=so;exports.SessionControls=qa;exports.SessionFooter=oo;exports.SessionHeader=no;exports.SessionLogViewer=n0;exports.SessionMetricsComponent=s0;exports.Slot=sn;exports.ThemeProvider=d0;exports.VideoControls=T0;exports.VideoGrid=A0;exports.VideoTile=on;exports.VoxketClient=_t;exports.VoxketErrorBoundary=_a;exports.VoxketEventEmitter=Qs;exports.VoxketProvider=$a;exports.VoxketSDK=_t;exports.VoxketSessionComponent=Xa;exports.agentRpcExample=N0;exports.analyticsPlugin=Kf;exports.chatModalityPlugin=x0;exports.createCustomTheme=u0;exports.createModalityPlugin=eo;exports.createPlugin=Wf;exports.darkTheme=ms;exports.debugPlugin=Gf;exports.default=P0;exports.defaultTheme=tt;exports.enterpriseTheme=fs;exports.flattenTheme=el;exports.metricsPlugin=Yf;exports.useComponentTheme=h0;exports.useCompoundContext=Ht;exports.useSessionLogging=Fa;exports.useTheme=Qa;exports.useVoxket=Ie;exports.useVoxketCamera=Ua;exports.useVoxketChat=gn;exports.useVoxketChatInput=i0;exports.useVoxketConnection=to;exports.useVoxketMetrics=Ha;exports.useVoxketMicrophone=Za;exports.useVoxketParticipants=Wa;exports.useVoxketScreenShare=za;exports.useVoxketSession=nt;exports.useVoxketVideo=o0;exports.voiceModalityPlugin=m0;exports.withCompoundComponent=Ya;
116
+ console.log('User response:', response);`})]})]})}const Bx={async checkAvailableRpcs(e){const t=e.getRegisteredRpcMethods();return console.log("🔍 Agent: Available RPC methods:",t),t},async triggerAssignment(e,t){const n={title:"Complete Q4 Sales Analysis Report",description:"Please analyze the Q4 sales data and create a comprehensive report with insights, trends, and recommendations for the upcoming quarter. Include visualizations and executive summary.",estimated_time_of_completion:"2-3 hours"};try{console.log("🤖 Agent: Triggering give_assignment RPC with data:",n);const s=await e.localParticipant.performRpc(t,"give_assignment",JSON.stringify(n),{responseTimeout:12e4}),r=JSON.parse(s);return console.log("✅ Agent: Received user response:",r),await this.processAssignmentResponse(r),r}catch(s){throw console.error("❌ Agent: RPC failed:",s),s}},async processAssignmentResponse(e){console.log("🧠 Agent: Processing assignment response...");const t=e.status,n=e.assignmentId,s=e.timeSpent;return t==="accepted"?(console.log("🎉 Agent: User accepted the assignment!"),console.log(`� Assignment ID: ${n}`),console.log(`⏱️ Time to respond: ${s}ms`),console.log("💬 Agent: Sending follow-up:","Great! I've recorded that you've accepted the assignment. You'll receive the detailed requirements and access to the data shortly. Let me know if you need any clarification!")):t==="declined"?(console.log("❌ Agent: User declined the assignment"),console.log("💬 Agent: Sending follow-up:","No problem! Is there anything specific about this assignment that doesn't work for you? I can suggest alternatives or modify the requirements.")):t==="completed"&&(console.log("✅ Agent: User completed the assignment"),console.log("💬 Agent: Sending follow-up:","Excellent work! Could you please share the completed report? I'm excited to review your analysis and insights.")),{status:t,assignmentId:n,timeSpent:s,processed:!0,followupAction:t==="accepted"?"send_requirements":t==="declined"?"offer_alternatives":"request_deliverables"}},getAssignmentExamples(){return{marketing:{title:"Create Social Media Campaign",description:"Design and plan a social media campaign for our new product launch. Include content calendar, post designs, and engagement strategy.",estimated_time_of_completion:"4-5 hours"},technical:{title:"API Integration Documentation",description:"Create comprehensive documentation for our new API endpoints, including examples, error codes, and best practices for developers.",estimated_time_of_completion:"6-8 hours"},research:{title:"Market Research Analysis",description:"Research and analyze competitor pricing strategies in our target market. Provide recommendations for our pricing model.",estimated_time_of_completion:"3-4 hours"},quick:{title:"Customer Feedback Summary",description:"Review this week's customer feedback and create a summary of key themes and actionable insights.",estimated_time_of_completion:"30-45 minutes"}}}},zx=e=>typeof window>"u"?null:p.createElement(pd,{children:p.createElement(md,e)});exports.AssignmentView=Md;exports.CompoundProvider=Sd;exports.InteractiveComponent=Gt;exports.PluginManager=ud;exports.RpcExamples=_x;exports.SessionContainer=kd;exports.SessionContent=Io;exports.SessionControls=Ed;exports.SessionFooter=Do;exports.SessionHeader=Ro;exports.SessionLogViewer=fx;exports.SessionMetricsComponent=hx;exports.Slot=Xn;exports.ThemeProvider=vx;exports.VideoControls=Lx;exports.VideoGrid=Fx;exports.VideoTile=Jn;exports.VoxketClient=Mn;exports.VoxketErrorBoundary=pd;exports.VoxketEventEmitter=Po;exports.VoxketProvider=hd;exports.VoxketSDK=Mn;exports.VoxketSessionComponent=kd;exports.agentRpcExample=Bx;exports.analyticsPlugin=sx;exports.chatModalityPlugin=Ax;exports.createCustomTheme=wx;exports.createModalityPlugin=No;exports.createPlugin=nx;exports.darkTheme=Ir;exports.debugPlugin=rx;exports.default=zx;exports.defaultTheme=Tt;exports.enterpriseTheme=Dr;exports.flattenTheme=jd;exports.metricsPlugin=ox;exports.useComponentTheme=Sx;exports.useCompoundContext=Pn;exports.useSessionLogging=dd;exports.useTheme=Ad;exports.useVoxket=Je;exports.useVoxketCamera=xd;exports.useVoxketChat=Es;exports.useVoxketChatInput=px;exports.useVoxketConnection=Vo;exports.useVoxketMetrics=gd;exports.useVoxketMicrophone=yd;exports.useVoxketParticipants=vd;exports.useVoxketScreenShare=bd;exports.useVoxketSession=jt;exports.useVoxketVideo=mx;exports.voiceModalityPlugin=Cx;exports.withCompoundComponent=Cd;